Update vendor 20210707 (#16366)
* update gitea.com/go-chi/binding * update github.com/blevesearch/bleve/v2 * update github.com/caddyserver/certmagic * update github.com/go-git/go-git/v5 * update github.com/lafriks/xormstore * update github.com/yuin/goldmark * Revert "update gitea.com/go-chi/binding" This reverts commit dea2f292b116114f9316fab95c5fd124174da404.
This commit is contained in:
		
							parent
							
								
									9543e068e9
								
							
						
					
					
						commit
						7613f31c6b
					
				
							
								
								
									
										10
									
								
								go.mod
								
								
								
								
							
							
						
						
									
										10
									
								
								go.mod
								
								
								
								
							| 
						 | 
					@ -13,9 +13,9 @@ require (
 | 
				
			||||||
	gitea.com/lunny/levelqueue v0.3.0
 | 
						gitea.com/lunny/levelqueue v0.3.0
 | 
				
			||||||
	github.com/Microsoft/go-winio v0.5.0 // indirect
 | 
						github.com/Microsoft/go-winio v0.5.0 // indirect
 | 
				
			||||||
	github.com/NYTimes/gziphandler v1.1.1
 | 
						github.com/NYTimes/gziphandler v1.1.1
 | 
				
			||||||
	github.com/ProtonMail/go-crypto v0.0.0-20210512092938-c05353c2d58c // indirect
 | 
						github.com/ProtonMail/go-crypto v0.0.0-20210705153151-cc34b1f6908b // indirect
 | 
				
			||||||
	github.com/PuerkitoBio/goquery v1.7.0
 | 
						github.com/PuerkitoBio/goquery v1.7.0
 | 
				
			||||||
	github.com/RoaringBitmap/roaring v0.8.0 // indirect
 | 
						github.com/RoaringBitmap/roaring v0.9.1 // indirect
 | 
				
			||||||
	github.com/alecthomas/chroma v0.9.2
 | 
						github.com/alecthomas/chroma v0.9.2
 | 
				
			||||||
	github.com/andybalholm/brotli v1.0.3 // indirect
 | 
						github.com/andybalholm/brotli v1.0.3 // indirect
 | 
				
			||||||
	github.com/andybalholm/cascadia v1.2.0 // indirect
 | 
						github.com/andybalholm/cascadia v1.2.0 // indirect
 | 
				
			||||||
| 
						 | 
					@ -70,7 +70,7 @@ require (
 | 
				
			||||||
	github.com/kevinburke/ssh_config v1.1.0 // indirect
 | 
						github.com/kevinburke/ssh_config v1.1.0 // indirect
 | 
				
			||||||
	github.com/keybase/go-crypto v0.0.0-20200123153347-de78d2cb44f4
 | 
						github.com/keybase/go-crypto v0.0.0-20200123153347-de78d2cb44f4
 | 
				
			||||||
	github.com/klauspost/compress v1.13.1
 | 
						github.com/klauspost/compress v1.13.1
 | 
				
			||||||
	github.com/klauspost/cpuid/v2 v2.0.7 // indirect
 | 
						github.com/klauspost/cpuid/v2 v2.0.8 // indirect
 | 
				
			||||||
	github.com/klauspost/pgzip v1.2.5 // indirect
 | 
						github.com/klauspost/pgzip v1.2.5 // indirect
 | 
				
			||||||
	github.com/lafriks/xormstore v1.4.0
 | 
						github.com/lafriks/xormstore v1.4.0
 | 
				
			||||||
	github.com/lib/pq v1.10.2
 | 
						github.com/lib/pq v1.10.2
 | 
				
			||||||
| 
						 | 
					@ -115,7 +115,7 @@ require (
 | 
				
			||||||
	github.com/urfave/cli v1.22.5
 | 
						github.com/urfave/cli v1.22.5
 | 
				
			||||||
	github.com/xanzy/go-gitlab v0.50.1
 | 
						github.com/xanzy/go-gitlab v0.50.1
 | 
				
			||||||
	github.com/yohcop/openid-go v1.0.0
 | 
						github.com/yohcop/openid-go v1.0.0
 | 
				
			||||||
	github.com/yuin/goldmark v1.3.9
 | 
						github.com/yuin/goldmark v1.4.0
 | 
				
			||||||
	github.com/yuin/goldmark-highlighting v0.0.0-20210516132338-9216f9c5aa01
 | 
						github.com/yuin/goldmark-highlighting v0.0.0-20210516132338-9216f9c5aa01
 | 
				
			||||||
	github.com/yuin/goldmark-meta v1.0.0
 | 
						github.com/yuin/goldmark-meta v1.0.0
 | 
				
			||||||
	go.etcd.io/bbolt v1.3.6 // indirect
 | 
						go.etcd.io/bbolt v1.3.6 // indirect
 | 
				
			||||||
| 
						 | 
					@ -139,7 +139,7 @@ require (
 | 
				
			||||||
	mvdan.cc/xurls/v2 v2.2.0
 | 
						mvdan.cc/xurls/v2 v2.2.0
 | 
				
			||||||
	strk.kbt.io/projects/go/libravatar v0.0.0-20191008002943-06d1c002b251
 | 
						strk.kbt.io/projects/go/libravatar v0.0.0-20191008002943-06d1c002b251
 | 
				
			||||||
	xorm.io/builder v0.3.9
 | 
						xorm.io/builder v0.3.9
 | 
				
			||||||
	xorm.io/xorm v1.1.1
 | 
						xorm.io/xorm v1.1.2
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
replace github.com/hashicorp/go-version => github.com/6543/go-version v1.3.1
 | 
					replace github.com/hashicorp/go-version => github.com/6543/go-version v1.3.1
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										22
									
								
								go.sum
								
								
								
								
							
							
						
						
									
										22
									
								
								go.sum
								
								
								
								
							| 
						 | 
					@ -68,8 +68,8 @@ github.com/NYTimes/gziphandler v1.1.1 h1:ZUDjpQae29j0ryrS0u/B8HZfJBtBQHjqw2rQ2cq
 | 
				
			||||||
github.com/NYTimes/gziphandler v1.1.1/go.mod h1:n/CVRwUEOgIxrgPvAQhUUr9oeUtvrhMomdKFjzJNB0c=
 | 
					github.com/NYTimes/gziphandler v1.1.1/go.mod h1:n/CVRwUEOgIxrgPvAQhUUr9oeUtvrhMomdKFjzJNB0c=
 | 
				
			||||||
github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU=
 | 
					github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU=
 | 
				
			||||||
github.com/ProtonMail/go-crypto v0.0.0-20210428141323-04723f9f07d7/go.mod h1:z4/9nQmJSSwwds7ejkxaJwO37dru3geImFUdJlaLzQo=
 | 
					github.com/ProtonMail/go-crypto v0.0.0-20210428141323-04723f9f07d7/go.mod h1:z4/9nQmJSSwwds7ejkxaJwO37dru3geImFUdJlaLzQo=
 | 
				
			||||||
github.com/ProtonMail/go-crypto v0.0.0-20210512092938-c05353c2d58c h1:bNpaLLv2Y4kslsdkdCwAYu8Bak1aGVtxwi8Z/wy4Yuo=
 | 
					github.com/ProtonMail/go-crypto v0.0.0-20210705153151-cc34b1f6908b h1:BF5p87XWvmgdrTPPzcRMwC0TMQbviwQ+uBKfNfWJy50=
 | 
				
			||||||
github.com/ProtonMail/go-crypto v0.0.0-20210512092938-c05353c2d58c/go.mod h1:z4/9nQmJSSwwds7ejkxaJwO37dru3geImFUdJlaLzQo=
 | 
					github.com/ProtonMail/go-crypto v0.0.0-20210705153151-cc34b1f6908b/go.mod h1:z4/9nQmJSSwwds7ejkxaJwO37dru3geImFUdJlaLzQo=
 | 
				
			||||||
github.com/PuerkitoBio/goquery v1.5.1/go.mod h1:GsLWisAFVj4WgDibEWF4pvYnkVQBpKBKeU+7zCJoLcc=
 | 
					github.com/PuerkitoBio/goquery v1.5.1/go.mod h1:GsLWisAFVj4WgDibEWF4pvYnkVQBpKBKeU+7zCJoLcc=
 | 
				
			||||||
github.com/PuerkitoBio/goquery v1.7.0 h1:O5SP3b9JWqMSVMG69zMfj577zwkSNpxrFf7ybS74eiw=
 | 
					github.com/PuerkitoBio/goquery v1.7.0 h1:O5SP3b9JWqMSVMG69zMfj577zwkSNpxrFf7ybS74eiw=
 | 
				
			||||||
github.com/PuerkitoBio/goquery v1.7.0/go.mod h1:GsLWisAFVj4WgDibEWF4pvYnkVQBpKBKeU+7zCJoLcc=
 | 
					github.com/PuerkitoBio/goquery v1.7.0/go.mod h1:GsLWisAFVj4WgDibEWF4pvYnkVQBpKBKeU+7zCJoLcc=
 | 
				
			||||||
| 
						 | 
					@ -78,10 +78,12 @@ github.com/PuerkitoBio/purell v1.1.1 h1:WEQqlqaGbrPkxLJWfBwQmfEAE1Z7ONdDLqrN38tN
 | 
				
			||||||
github.com/PuerkitoBio/purell v1.1.1/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0=
 | 
					github.com/PuerkitoBio/purell v1.1.1/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0=
 | 
				
			||||||
github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578 h1:d+Bc7a5rLufV/sSk/8dngufqelfh6jnri85riMAaF/M=
 | 
					github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578 h1:d+Bc7a5rLufV/sSk/8dngufqelfh6jnri85riMAaF/M=
 | 
				
			||||||
github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE=
 | 
					github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE=
 | 
				
			||||||
 | 
					github.com/RoaringBitmap/gocroaring v0.4.0/go.mod h1:NieMwz7ZqwU2DD73/vvYwv7r4eWBKuPVSXZIpsaMwCI=
 | 
				
			||||||
 | 
					github.com/RoaringBitmap/real-roaring-datasets v0.0.0-20190726190000-eb7c87156f76/go.mod h1:oM0MHmQ3nDsq609SS36p+oYbRi16+oVvU2Bw4Ipv0SE=
 | 
				
			||||||
github.com/RoaringBitmap/roaring v0.4.23/go.mod h1:D0gp8kJQgE1A4LQ5wFLggQEyvDi06Mq5mKs52e1TwOo=
 | 
					github.com/RoaringBitmap/roaring v0.4.23/go.mod h1:D0gp8kJQgE1A4LQ5wFLggQEyvDi06Mq5mKs52e1TwOo=
 | 
				
			||||||
github.com/RoaringBitmap/roaring v0.7.3/go.mod h1:jdT9ykXwHFNdJbEtxePexlFYH9LXucApeS0/+/g+p1I=
 | 
					github.com/RoaringBitmap/roaring v0.7.3/go.mod h1:jdT9ykXwHFNdJbEtxePexlFYH9LXucApeS0/+/g+p1I=
 | 
				
			||||||
github.com/RoaringBitmap/roaring v0.8.0 h1:3naGkGvYAANr3ntyV+OpyhH+/rDaE2om9coNpIIdWAA=
 | 
					github.com/RoaringBitmap/roaring v0.9.1 h1:5PRizBmoN/PfV17nPNQou4dHQ7NcJi8FO/bihdYyCEM=
 | 
				
			||||||
github.com/RoaringBitmap/roaring v0.8.0/go.mod h1:jdT9ykXwHFNdJbEtxePexlFYH9LXucApeS0/+/g+p1I=
 | 
					github.com/RoaringBitmap/roaring v0.9.1/go.mod h1:h1B7iIUOmnAeb5ytYMvnHJwxMc6LUrwBnzXWRuqTQUc=
 | 
				
			||||||
github.com/acomagu/bufpipe v1.0.3 h1:fxAGrHZTgQ9w5QqVItgzwj235/uYZYgbXitB+dLupOk=
 | 
					github.com/acomagu/bufpipe v1.0.3 h1:fxAGrHZTgQ9w5QqVItgzwj235/uYZYgbXitB+dLupOk=
 | 
				
			||||||
github.com/acomagu/bufpipe v1.0.3/go.mod h1:mxdxdup/WdsKVreO5GpW4+M/1CE2sMG4jeGJ2sYmHc4=
 | 
					github.com/acomagu/bufpipe v1.0.3/go.mod h1:mxdxdup/WdsKVreO5GpW4+M/1CE2sMG4jeGJ2sYmHc4=
 | 
				
			||||||
github.com/agnivade/levenshtein v1.0.1/go.mod h1:CURSv5d9Uaml+FovSIICkLbAUZ9S4RqaHDIsdSBg7lM=
 | 
					github.com/agnivade/levenshtein v1.0.1/go.mod h1:CURSv5d9Uaml+FovSIICkLbAUZ9S4RqaHDIsdSBg7lM=
 | 
				
			||||||
| 
						 | 
					@ -712,8 +714,8 @@ github.com/klauspost/cpuid v1.3.1/go.mod h1:bYW4mA6ZgKPob1/Dlai2LviZJO7KGI3uoWLd
 | 
				
			||||||
github.com/klauspost/cpuid/v2 v2.0.1/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg=
 | 
					github.com/klauspost/cpuid/v2 v2.0.1/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg=
 | 
				
			||||||
github.com/klauspost/cpuid/v2 v2.0.4/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg=
 | 
					github.com/klauspost/cpuid/v2 v2.0.4/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg=
 | 
				
			||||||
github.com/klauspost/cpuid/v2 v2.0.6/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg=
 | 
					github.com/klauspost/cpuid/v2 v2.0.6/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg=
 | 
				
			||||||
github.com/klauspost/cpuid/v2 v2.0.7 h1:U89pAFid7wpIWvTFJnMKgU+Sabb7DLEgHI7Xt8apo3Y=
 | 
					github.com/klauspost/cpuid/v2 v2.0.8 h1:bhR2mgIlno/Sfk4oUbH4sPlc83z1yGrN9bvqiq3C33I=
 | 
				
			||||||
github.com/klauspost/cpuid/v2 v2.0.7/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg=
 | 
					github.com/klauspost/cpuid/v2 v2.0.8/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg=
 | 
				
			||||||
github.com/klauspost/pgzip v1.2.4/go.mod h1:Ch1tH69qFZu15pkjo5kYi6mth2Zzwzt50oCQKQE9RUs=
 | 
					github.com/klauspost/pgzip v1.2.4/go.mod h1:Ch1tH69qFZu15pkjo5kYi6mth2Zzwzt50oCQKQE9RUs=
 | 
				
			||||||
github.com/klauspost/pgzip v1.2.5 h1:qnWYvvKqedOF2ulHpMG72XQol4ILEJ8k2wwRl/Km8oE=
 | 
					github.com/klauspost/pgzip v1.2.5 h1:qnWYvvKqedOF2ulHpMG72XQol4ILEJ8k2wwRl/Km8oE=
 | 
				
			||||||
github.com/klauspost/pgzip v1.2.5/go.mod h1:Ch1tH69qFZu15pkjo5kYi6mth2Zzwzt50oCQKQE9RUs=
 | 
					github.com/klauspost/pgzip v1.2.5/go.mod h1:Ch1tH69qFZu15pkjo5kYi6mth2Zzwzt50oCQKQE9RUs=
 | 
				
			||||||
| 
						 | 
					@ -1063,8 +1065,8 @@ github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9de
 | 
				
			||||||
github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
 | 
					github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
 | 
				
			||||||
github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
 | 
					github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
 | 
				
			||||||
github.com/yuin/goldmark v1.3.6/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k=
 | 
					github.com/yuin/goldmark v1.3.6/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k=
 | 
				
			||||||
github.com/yuin/goldmark v1.3.9 h1:XsVHmzm4P6g84IBbAj+WYMF/IEZ3J9+3I1wlqCNa/SQ=
 | 
					github.com/yuin/goldmark v1.4.0 h1:OtISOGfH6sOWa1/qXqqAiOIAO6Z5J3AEAE18WAq6BiQ=
 | 
				
			||||||
github.com/yuin/goldmark v1.3.9/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k=
 | 
					github.com/yuin/goldmark v1.4.0/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k=
 | 
				
			||||||
github.com/yuin/goldmark-highlighting v0.0.0-20210516132338-9216f9c5aa01 h1:0SJnXjE4jDClMW6grE0xpNhwpqbPwkBTn8zpVw5C0SI=
 | 
					github.com/yuin/goldmark-highlighting v0.0.0-20210516132338-9216f9c5aa01 h1:0SJnXjE4jDClMW6grE0xpNhwpqbPwkBTn8zpVw5C0SI=
 | 
				
			||||||
github.com/yuin/goldmark-highlighting v0.0.0-20210516132338-9216f9c5aa01/go.mod h1:TwKQPa5XkCCRC2GRZ5wtfNUTQ2+9/i19mGRijFeJ4BE=
 | 
					github.com/yuin/goldmark-highlighting v0.0.0-20210516132338-9216f9c5aa01/go.mod h1:TwKQPa5XkCCRC2GRZ5wtfNUTQ2+9/i19mGRijFeJ4BE=
 | 
				
			||||||
github.com/yuin/goldmark-meta v1.0.0 h1:ScsatUIT2gFS6azqzLGUjgOnELsBOxMXerM3ogdJhAM=
 | 
					github.com/yuin/goldmark-meta v1.0.0 h1:ScsatUIT2gFS6azqzLGUjgOnELsBOxMXerM3ogdJhAM=
 | 
				
			||||||
| 
						 | 
					@ -1615,5 +1617,5 @@ xorm.io/builder v0.3.8/go.mod h1:aUW0S9eb9VCaPohFCH3j7czOx1PMW3i1HrSzbLYGBSE=
 | 
				
			||||||
xorm.io/builder v0.3.9 h1:Sd65/LdWyO7LR8+Cbd+e7mm3sK/7U9k0jS3999IDHMc=
 | 
					xorm.io/builder v0.3.9 h1:Sd65/LdWyO7LR8+Cbd+e7mm3sK/7U9k0jS3999IDHMc=
 | 
				
			||||||
xorm.io/builder v0.3.9/go.mod h1:aUW0S9eb9VCaPohFCH3j7czOx1PMW3i1HrSzbLYGBSE=
 | 
					xorm.io/builder v0.3.9/go.mod h1:aUW0S9eb9VCaPohFCH3j7czOx1PMW3i1HrSzbLYGBSE=
 | 
				
			||||||
xorm.io/xorm v1.0.6/go.mod h1:uF9EtbhODq5kNWxMbnBEj8hRRZnlcNSz2t2N7HW/+A4=
 | 
					xorm.io/xorm v1.0.6/go.mod h1:uF9EtbhODq5kNWxMbnBEj8hRRZnlcNSz2t2N7HW/+A4=
 | 
				
			||||||
xorm.io/xorm v1.1.1 h1:cc1yot5rhoBucfk2lgZPZPEuI/9QsVvHuQpjI0wmcf8=
 | 
					xorm.io/xorm v1.1.2 h1:bje+1KZvK3m5AHtZNfUDlKEEyuw/IRHT+an0CLIG5TU=
 | 
				
			||||||
xorm.io/xorm v1.1.1/go.mod h1:Cb0DKYTHbyECMaSfgRnIZp5aiUgQozxcJJ0vzcLGJSg=
 | 
					xorm.io/xorm v1.1.2/go.mod h1:Cb0DKYTHbyECMaSfgRnIZp5aiUgQozxcJJ0vzcLGJSg=
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -507,6 +507,9 @@ func serializeSubpackets(to []byte, subpackets []outputSubpacket, hashed bool) {
 | 
				
			||||||
		if subpacket.hashed == hashed {
 | 
							if subpacket.hashed == hashed {
 | 
				
			||||||
			n := serializeSubpacketLength(to, len(subpacket.contents)+1)
 | 
								n := serializeSubpacketLength(to, len(subpacket.contents)+1)
 | 
				
			||||||
			to[n] = byte(subpacket.subpacketType)
 | 
								to[n] = byte(subpacket.subpacketType)
 | 
				
			||||||
 | 
								if subpacket.isCritical {
 | 
				
			||||||
 | 
									to[n] |= 0x80
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
			to = to[1+n:]
 | 
								to = to[1+n:]
 | 
				
			||||||
			n = copy(to, subpacket.contents)
 | 
								n = copy(to, subpacket.contents)
 | 
				
			||||||
			to = to[n:]
 | 
								to = to[n:]
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -3,18 +3,9 @@ module github.com/RoaringBitmap/roaring
 | 
				
			||||||
go 1.14
 | 
					go 1.14
 | 
				
			||||||
 | 
					
 | 
				
			||||||
require (
 | 
					require (
 | 
				
			||||||
 | 
						github.com/RoaringBitmap/gocroaring v0.4.0
 | 
				
			||||||
 | 
						github.com/RoaringBitmap/real-roaring-datasets v0.0.0-20190726190000-eb7c87156f76 // indirect
 | 
				
			||||||
	github.com/bits-and-blooms/bitset v1.2.0
 | 
						github.com/bits-and-blooms/bitset v1.2.0
 | 
				
			||||||
	github.com/dvyukov/go-fuzz v0.0.0-20210429054444-fca39067bc72 // indirect
 | 
					 | 
				
			||||||
	github.com/elazarl/go-bindata-assetfs v1.0.1 // indirect
 | 
					 | 
				
			||||||
	github.com/glycerine/go-unsnap-stream v0.0.0-20181221182339-f9677308dec2
 | 
					 | 
				
			||||||
	github.com/glycerine/goconvey v0.0.0-20190410193231-58a59202ab31 // indirect
 | 
					 | 
				
			||||||
	github.com/golang/snappy v0.0.1 // indirect
 | 
					 | 
				
			||||||
	github.com/gopherjs/gopherjs v0.0.0-20190910122728-9d188e94fb99 // indirect
 | 
					 | 
				
			||||||
	github.com/jtolds/gls v4.20.0+incompatible // indirect
 | 
					 | 
				
			||||||
	github.com/mschoch/smat v0.2.0
 | 
						github.com/mschoch/smat v0.2.0
 | 
				
			||||||
	github.com/philhofer/fwd v1.0.0 // indirect
 | 
					 | 
				
			||||||
	github.com/stephens2424/writerset v1.0.2 // indirect
 | 
					 | 
				
			||||||
	github.com/stretchr/testify v1.4.0
 | 
						github.com/stretchr/testify v1.4.0
 | 
				
			||||||
	golang.org/x/lint v0.0.0-20200302205851-738671d3881b // indirect
 | 
					 | 
				
			||||||
	golang.org/x/tools v0.0.0-20200928182047-19e03678916f // indirect
 | 
					 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,65 +1,18 @@
 | 
				
			||||||
github.com/Julusian/godocdown v0.0.0-20170816220326-6d19f8ff2df8/go.mod h1:INZr5t32rG59/5xeltqoCJoNY7e5x/3xoY9WSWVWg74=
 | 
					github.com/RoaringBitmap/gocroaring v0.4.0 h1:5nufXUgWpBEUNEJXw7926YAA58ZAQRpWPrQV1xCoSjc=
 | 
				
			||||||
 | 
					github.com/RoaringBitmap/gocroaring v0.4.0/go.mod h1:NieMwz7ZqwU2DD73/vvYwv7r4eWBKuPVSXZIpsaMwCI=
 | 
				
			||||||
 | 
					github.com/RoaringBitmap/real-roaring-datasets v0.0.0-20190726190000-eb7c87156f76 h1:ZYlhPbqQFU+AHfgtCdHGDTtRW1a8geZyiE8c6Q+Sl1s=
 | 
				
			||||||
 | 
					github.com/RoaringBitmap/real-roaring-datasets v0.0.0-20190726190000-eb7c87156f76/go.mod h1:oM0MHmQ3nDsq609SS36p+oYbRi16+oVvU2Bw4Ipv0SE=
 | 
				
			||||||
github.com/bits-and-blooms/bitset v1.2.0 h1:Kn4yilvwNtMACtf1eYDlG8H77R07mZSPbMjLyS07ChA=
 | 
					github.com/bits-and-blooms/bitset v1.2.0 h1:Kn4yilvwNtMACtf1eYDlG8H77R07mZSPbMjLyS07ChA=
 | 
				
			||||||
github.com/bits-and-blooms/bitset v1.2.0/go.mod h1:gIdJ4wp64HaoK2YrL1Q5/N7Y16edYb8uY+O0FJTyyDA=
 | 
					github.com/bits-and-blooms/bitset v1.2.0/go.mod h1:gIdJ4wp64HaoK2YrL1Q5/N7Y16edYb8uY+O0FJTyyDA=
 | 
				
			||||||
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
 | 
					github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
 | 
				
			||||||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
 | 
					github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
 | 
				
			||||||
github.com/dvyukov/go-fuzz v0.0.0-20210429054444-fca39067bc72 h1:XiR1YwcWcRFzxjAhWK29HQL4nocj0QWJjpeRi/YASV0=
 | 
					 | 
				
			||||||
github.com/dvyukov/go-fuzz v0.0.0-20210429054444-fca39067bc72/go.mod h1:11Gm+ccJnvAhCNLlf5+cS9KjtbaD5I5zaZpFMsTHWTw=
 | 
					 | 
				
			||||||
github.com/elazarl/go-bindata-assetfs v1.0.1 h1:m0kkaHRKEu7tUIUFVwhGGGYClXvyl4RE03qmvRTNfbw=
 | 
					 | 
				
			||||||
github.com/elazarl/go-bindata-assetfs v1.0.1/go.mod h1:v+YaWX3bdea5J/mo8dSETolEo7R71Vk1u8bnjau5yw4=
 | 
					 | 
				
			||||||
github.com/glycerine/go-unsnap-stream v0.0.0-20181221182339-f9677308dec2 h1:Ujru1hufTHVb++eG6OuNDKMxZnGIvF6o/u8q/8h2+I4=
 | 
					 | 
				
			||||||
github.com/glycerine/go-unsnap-stream v0.0.0-20181221182339-f9677308dec2/go.mod h1:/20jfyN9Y5QPEAprSgKAUr+glWDY39ZiUEAYOEv5dsE=
 | 
					 | 
				
			||||||
github.com/glycerine/goconvey v0.0.0-20190410193231-58a59202ab31 h1:gclg6gY70GLy3PbkQ1AERPfmLMMagS60DKF78eWwLn8=
 | 
					 | 
				
			||||||
github.com/glycerine/goconvey v0.0.0-20190410193231-58a59202ab31/go.mod h1:Ogl1Tioa0aV7gstGFO7KhffUsb9M4ydbEbbxpcEDc24=
 | 
					 | 
				
			||||||
github.com/golang/snappy v0.0.1 h1:Qgr9rKW7uDUkrbSmQeiDsGa8SjGyCOGtuasMWwvp2P4=
 | 
					 | 
				
			||||||
github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
 | 
					 | 
				
			||||||
github.com/gopherjs/gopherjs v0.0.0-20190910122728-9d188e94fb99 h1:twflg0XRTjwKpxb/jFExr4HGq6on2dEOmnL6FV+fgPw=
 | 
					 | 
				
			||||||
github.com/gopherjs/gopherjs v0.0.0-20190910122728-9d188e94fb99/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY=
 | 
					 | 
				
			||||||
github.com/jtolds/gls v4.20.0+incompatible h1:xdiiI2gbIgH/gLH7ADydsJ1uDOEzR8yvV7C0MuV77Wo=
 | 
					 | 
				
			||||||
github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU=
 | 
					 | 
				
			||||||
github.com/mschoch/smat v0.0.0-20160514031455-90eadee771ae h1:VeRdUYdCw49yizlSbMEn2SZ+gT+3IUKx8BqxyQdz+BY=
 | 
					 | 
				
			||||||
github.com/mschoch/smat v0.0.0-20160514031455-90eadee771ae/go.mod h1:qAyveg+e4CE+eKJXWVjKXM4ck2QobLqTDytGJbLLhJg=
 | 
					 | 
				
			||||||
github.com/mschoch/smat v0.2.0 h1:8imxQsjDm8yFEAVBe7azKmKSgzSkZXDuKkSq9374khM=
 | 
					github.com/mschoch/smat v0.2.0 h1:8imxQsjDm8yFEAVBe7azKmKSgzSkZXDuKkSq9374khM=
 | 
				
			||||||
github.com/mschoch/smat v0.2.0/go.mod h1:kc9mz7DoBKqDyiRL7VZN8KvXQMWeTaVnttLRXOlotKw=
 | 
					github.com/mschoch/smat v0.2.0/go.mod h1:kc9mz7DoBKqDyiRL7VZN8KvXQMWeTaVnttLRXOlotKw=
 | 
				
			||||||
github.com/philhofer/fwd v1.0.0 h1:UbZqGr5Y38ApvM/V/jEljVxwocdweyH+vmYvRPBnbqQ=
 | 
					 | 
				
			||||||
github.com/philhofer/fwd v1.0.0/go.mod h1:gk3iGcWd9+svBvR0sR+KPcfE+RNWozjowpeBVG3ZVNU=
 | 
					 | 
				
			||||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
 | 
					github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
 | 
				
			||||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
 | 
					github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
 | 
				
			||||||
github.com/robertkrimen/godocdown v0.0.0-20130622164427-0bfa04905481/go.mod h1:C9WhFzY47SzYBIvzFqSvHIR6ROgDo4TtdTuRaOMjF/s=
 | 
					 | 
				
			||||||
github.com/stephens2424/writerset v1.0.2 h1:znRLgU6g8RS5euYRcy004XeE4W+Tu44kALzy7ghPif8=
 | 
					 | 
				
			||||||
github.com/stephens2424/writerset v1.0.2/go.mod h1:aS2JhsMn6eA7e82oNmW4rfsgAOp9COBTTl8mzkwADnc=
 | 
					 | 
				
			||||||
github.com/stretchr/objx v0.1.0 h1:4G4v2dO3VZwixGIRoQ5Lfboy6nUhCyYzaqnIAPPhYs4=
 | 
					 | 
				
			||||||
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
 | 
					github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
 | 
				
			||||||
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
 | 
					 | 
				
			||||||
github.com/stretchr/testify v1.4.0 h1:2E4SXV/wtOkTonXsotYi4li6zVWxYlZuYNCXe9XRJyk=
 | 
					github.com/stretchr/testify v1.4.0 h1:2E4SXV/wtOkTonXsotYi4li6zVWxYlZuYNCXe9XRJyk=
 | 
				
			||||||
github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
 | 
					github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
 | 
				
			||||||
github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
 | 
					 | 
				
			||||||
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
 | 
					 | 
				
			||||||
golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
 | 
					 | 
				
			||||||
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
 | 
					 | 
				
			||||||
golang.org/x/lint v0.0.0-20200302205851-738671d3881b h1:Wh+f8QHJXR411sJR8/vRBTZ7YapZaRvUcLFFJhusH0k=
 | 
					 | 
				
			||||||
golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY=
 | 
					 | 
				
			||||||
golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg=
 | 
					 | 
				
			||||||
golang.org/x/mod v0.3.0 h1:RM4zey1++hCTbCVQfnWeKs9/IEsaBLA8vTkd0WVtmH4=
 | 
					 | 
				
			||||||
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
 | 
					 | 
				
			||||||
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
 | 
					 | 
				
			||||||
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
 | 
					 | 
				
			||||||
golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA=
 | 
					 | 
				
			||||||
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
 | 
					 | 
				
			||||||
golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
 | 
					 | 
				
			||||||
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
 | 
					 | 
				
			||||||
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 | 
					 | 
				
			||||||
golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 | 
					 | 
				
			||||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
 | 
					 | 
				
			||||||
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
 | 
					 | 
				
			||||||
golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7 h1:EBZoQjiKKPaLbPrbpssUfuHtwM6KV/vb4U85g/cigFY=
 | 
					 | 
				
			||||||
golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
 | 
					 | 
				
			||||||
golang.org/x/tools v0.0.0-20200928182047-19e03678916f h1:VwGa2Wf+rHGIxvsssCkUNIyFv8jQY0VCBCNWtikoWq0=
 | 
					 | 
				
			||||||
golang.org/x/tools v0.0.0-20200928182047-19e03678916f/go.mod h1:z6u4i615ZeAfBE4XtMziQW1fSVJXACjjbWkB/mvPzlU=
 | 
					 | 
				
			||||||
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
 | 
					 | 
				
			||||||
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
 | 
					 | 
				
			||||||
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 h1:go1bK/D/BFZV2I8cIQd1NKEZ+0owSTG1fDTci4IqFcE=
 | 
					 | 
				
			||||||
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
 | 
					 | 
				
			||||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
 | 
					gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
 | 
				
			||||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
 | 
					gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
 | 
				
			||||||
gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw=
 | 
					gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw=
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -569,7 +569,7 @@ func (ra *roaringArray) readFrom(stream internal.ByteInput, cookieHeader ...byte
 | 
				
			||||||
	var isRunBitmap []byte
 | 
						var isRunBitmap []byte
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if cookie&0x0000FFFF == serialCookie {
 | 
						if cookie&0x0000FFFF == serialCookie {
 | 
				
			||||||
		size = uint32(uint16(cookie>>16) + 1)
 | 
							size = uint32(cookie>>16 + 1)
 | 
				
			||||||
		// create is-run-container bitmap
 | 
							// create is-run-container bitmap
 | 
				
			||||||
		isRunBitmapSize := (int(size) + 7) / 8
 | 
							isRunBitmapSize := (int(size) + 7) / 8
 | 
				
			||||||
		isRunBitmap, err = stream.Next(isRunBitmapSize)
 | 
							isRunBitmap, err = stream.Next(isRunBitmapSize)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -3,6 +3,7 @@
 | 
				
			||||||
package roaring
 | 
					package roaring
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import (
 | 
					import (
 | 
				
			||||||
 | 
						"encoding/binary"
 | 
				
			||||||
	"errors"
 | 
						"errors"
 | 
				
			||||||
	"io"
 | 
						"io"
 | 
				
			||||||
	"reflect"
 | 
						"reflect"
 | 
				
			||||||
| 
						 | 
					@ -132,3 +133,284 @@ func byteSliceAsInterval16Slice(slice []byte) (result []interval16) {
 | 
				
			||||||
	// return result
 | 
						// return result
 | 
				
			||||||
	return
 | 
						return
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// FromBuffer creates a bitmap from its serialized version stored in buffer.
 | 
				
			||||||
 | 
					// It uses CRoaring's frozen bitmap format.
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// The format specification is available here:
 | 
				
			||||||
 | 
					// https://github.com/RoaringBitmap/CRoaring/blob/2c867e9f9c9e2a3a7032791f94c4c7ae3013f6e0/src/roaring.c#L2756-L2783
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// The provided byte array (buf) is expected to be a constant.
 | 
				
			||||||
 | 
					// The function makes the best effort attempt not to copy data.
 | 
				
			||||||
 | 
					// Only little endian is supported. The function will err if it detects a big
 | 
				
			||||||
 | 
					// endian serialized file.
 | 
				
			||||||
 | 
					// You should take care not to modify buff as it will likely result in
 | 
				
			||||||
 | 
					// unexpected program behavior.
 | 
				
			||||||
 | 
					// If said buffer comes from a memory map, it's advisable to give it read
 | 
				
			||||||
 | 
					// only permissions, either at creation or by calling Mprotect from the
 | 
				
			||||||
 | 
					// golang.org/x/sys/unix package.
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// Resulting bitmaps are effectively immutable in the following sense:
 | 
				
			||||||
 | 
					// a copy-on-write marker is used so that when you modify the resulting
 | 
				
			||||||
 | 
					// bitmap, copies of selected data (containers) are made.
 | 
				
			||||||
 | 
					// You should *not* change the copy-on-write status of the resulting
 | 
				
			||||||
 | 
					// bitmaps (SetCopyOnWrite).
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// If buf becomes unavailable, then a bitmap created with
 | 
				
			||||||
 | 
					// FromBuffer would be effectively broken. Furthermore, any
 | 
				
			||||||
 | 
					// bitmap derived from this bitmap (e.g., via Or, And) might
 | 
				
			||||||
 | 
					// also be broken. Thus, before making buf unavailable, you should
 | 
				
			||||||
 | 
					// call CloneCopyOnWriteContainers on all such bitmaps.
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					func (rb *Bitmap) FrozenView(buf []byte) error {
 | 
				
			||||||
 | 
						return rb.highlowcontainer.frozenView(buf)
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Verbatim specification from CRoaring.
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * FROZEN SERIALIZATION FORMAT DESCRIPTION
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * -- (beginning must be aligned by 32 bytes) --
 | 
				
			||||||
 | 
					 * <bitset_data> uint64_t[BITSET_CONTAINER_SIZE_IN_WORDS * num_bitset_containers]
 | 
				
			||||||
 | 
					 * <run_data>    rle16_t[total number of rle elements in all run containers]
 | 
				
			||||||
 | 
					 * <array_data>  uint16_t[total number of array elements in all array containers]
 | 
				
			||||||
 | 
					 * <keys>        uint16_t[num_containers]
 | 
				
			||||||
 | 
					 * <counts>      uint16_t[num_containers]
 | 
				
			||||||
 | 
					 * <typecodes>   uint8_t[num_containers]
 | 
				
			||||||
 | 
					 * <header>      uint32_t
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * <header> is a 4-byte value which is a bit union of FROZEN_COOKIE (15 bits)
 | 
				
			||||||
 | 
					 * and the number of containers (17 bits).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * <counts> stores number of elements for every container.
 | 
				
			||||||
 | 
					 * Its meaning depends on container type.
 | 
				
			||||||
 | 
					 * For array and bitset containers, this value is the container cardinality minus one.
 | 
				
			||||||
 | 
					 * For run container, it is the number of rle_t elements (n_runs).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * <bitset_data>,<array_data>,<run_data> are flat arrays of elements of
 | 
				
			||||||
 | 
					 * all containers of respective type.
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * <*_data> and <keys> are kept close together because they are not accessed
 | 
				
			||||||
 | 
					 * during deserilization. This may reduce IO in case of large mmaped bitmaps.
 | 
				
			||||||
 | 
					 * All members have their native alignments during deserilization except <header>,
 | 
				
			||||||
 | 
					 * which is not guaranteed to be aligned by 4 bytes.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					const FROZEN_COOKIE = 13766
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					var (
 | 
				
			||||||
 | 
						FrozenBitmapInvalidCookie = errors.New("header does not contain the FROZEN_COOKIE")
 | 
				
			||||||
 | 
						FrozenBitmapBigEndian = errors.New("loading big endian frozen bitmaps is not supported")
 | 
				
			||||||
 | 
						FrozenBitmapIncomplete = errors.New("input buffer too small to contain a frozen bitmap")
 | 
				
			||||||
 | 
						FrozenBitmapOverpopulated = errors.New("too many containers")
 | 
				
			||||||
 | 
						FrozenBitmapUnexpectedData = errors.New("spurious data in input")
 | 
				
			||||||
 | 
						FrozenBitmapInvalidTypecode = errors.New("unrecognized typecode")
 | 
				
			||||||
 | 
						FrozenBitmapBufferTooSmall = errors.New("buffer too small")
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (ra *roaringArray) frozenView(buf []byte) error {
 | 
				
			||||||
 | 
						if len(buf) < 4 {
 | 
				
			||||||
 | 
							return FrozenBitmapIncomplete
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						headerBE := binary.BigEndian.Uint32(buf[len(buf)-4:])
 | 
				
			||||||
 | 
						if headerBE & 0x7fff == FROZEN_COOKIE {
 | 
				
			||||||
 | 
							return FrozenBitmapBigEndian
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						header := binary.LittleEndian.Uint32(buf[len(buf)-4:])
 | 
				
			||||||
 | 
						buf = buf[:len(buf)-4]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if header & 0x7fff != FROZEN_COOKIE {
 | 
				
			||||||
 | 
							return FrozenBitmapInvalidCookie
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						nCont := int(header >> 15)
 | 
				
			||||||
 | 
						if nCont > (1 << 16) {
 | 
				
			||||||
 | 
							return FrozenBitmapOverpopulated
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// 1 byte per type, 2 bytes per key, 2 bytes per count.
 | 
				
			||||||
 | 
						if len(buf) < 5*nCont {
 | 
				
			||||||
 | 
							return FrozenBitmapIncomplete
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						types := buf[len(buf)-nCont:]
 | 
				
			||||||
 | 
						buf = buf[:len(buf)-nCont]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						counts := byteSliceAsUint16Slice(buf[len(buf)-2*nCont:])
 | 
				
			||||||
 | 
						buf = buf[:len(buf)-2*nCont]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						keys := byteSliceAsUint16Slice(buf[len(buf)-2*nCont:])
 | 
				
			||||||
 | 
						buf = buf[:len(buf)-2*nCont]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						nBitmap, nArray, nRun := uint64(0), uint64(0), uint64(0)
 | 
				
			||||||
 | 
						nArrayEl, nRunEl := uint64(0), uint64(0)
 | 
				
			||||||
 | 
						for i, t := range types {
 | 
				
			||||||
 | 
							switch (t) {
 | 
				
			||||||
 | 
							case 1:
 | 
				
			||||||
 | 
								nBitmap++
 | 
				
			||||||
 | 
							case 2:
 | 
				
			||||||
 | 
								nArray++
 | 
				
			||||||
 | 
								nArrayEl += uint64(counts[i])+1
 | 
				
			||||||
 | 
							case 3:
 | 
				
			||||||
 | 
								nRun++
 | 
				
			||||||
 | 
								nRunEl += uint64(counts[i])
 | 
				
			||||||
 | 
							default:
 | 
				
			||||||
 | 
								return FrozenBitmapInvalidTypecode
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if uint64(len(buf)) < (1 << 13)*nBitmap + 4*nRunEl + 2*nArrayEl {
 | 
				
			||||||
 | 
							return FrozenBitmapIncomplete
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						bitsetsArena := byteSliceAsUint64Slice(buf[:(1 << 13)*nBitmap])
 | 
				
			||||||
 | 
						buf = buf[(1 << 13)*nBitmap:]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						runsArena := byteSliceAsInterval16Slice(buf[:4*nRunEl])
 | 
				
			||||||
 | 
						buf = buf[4*nRunEl:]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						arraysArena := byteSliceAsUint16Slice(buf[:2*nArrayEl])
 | 
				
			||||||
 | 
						buf = buf[2*nArrayEl:]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if len(buf) != 0 {
 | 
				
			||||||
 | 
							return FrozenBitmapUnexpectedData
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// TODO: maybe arena_alloc all this.
 | 
				
			||||||
 | 
						containers := make([]container, nCont)
 | 
				
			||||||
 | 
						bitsets := make([]bitmapContainer, nBitmap)
 | 
				
			||||||
 | 
						arrays := make([]arrayContainer, nArray)
 | 
				
			||||||
 | 
						runs := make([]runContainer16, nRun)
 | 
				
			||||||
 | 
						needCOW := make([]bool, nCont)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						iBitset, iArray, iRun := uint64(0), uint64(0), uint64(0)
 | 
				
			||||||
 | 
						for i, t := range types {
 | 
				
			||||||
 | 
							needCOW[i] = true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							switch (t) {
 | 
				
			||||||
 | 
							case 1:
 | 
				
			||||||
 | 
								containers[i] = &bitsets[iBitset]
 | 
				
			||||||
 | 
								bitsets[iBitset].cardinality = int(counts[i])+1
 | 
				
			||||||
 | 
								bitsets[iBitset].bitmap = bitsetsArena[:1024]
 | 
				
			||||||
 | 
								bitsetsArena = bitsetsArena[1024:]
 | 
				
			||||||
 | 
								iBitset++
 | 
				
			||||||
 | 
							case 2:
 | 
				
			||||||
 | 
								containers[i] = &arrays[iArray]
 | 
				
			||||||
 | 
								arrays[iArray].content = arraysArena[:counts[i]+1]
 | 
				
			||||||
 | 
								arraysArena = arraysArena[counts[i]+1:]
 | 
				
			||||||
 | 
								iArray++
 | 
				
			||||||
 | 
							case 3:
 | 
				
			||||||
 | 
								containers[i] = &runs[iRun]
 | 
				
			||||||
 | 
								runs[iRun].iv = runsArena[:counts[i]]
 | 
				
			||||||
 | 
								runsArena = runsArena[counts[i]:]
 | 
				
			||||||
 | 
								iRun++
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// Not consuming the full input is a bug.
 | 
				
			||||||
 | 
						if iBitset != nBitmap || len(bitsetsArena) != 0 ||
 | 
				
			||||||
 | 
							iArray != nArray || len(arraysArena) != 0 ||
 | 
				
			||||||
 | 
							iRun != nRun || len(runsArena) != 0 {
 | 
				
			||||||
 | 
							panic("we missed something")
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						ra.keys = keys
 | 
				
			||||||
 | 
						ra.containers = containers
 | 
				
			||||||
 | 
						ra.needCopyOnWrite = needCOW
 | 
				
			||||||
 | 
						ra.copyOnWrite = true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						return nil
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (bm *Bitmap) GetFrozenSizeInBytes() uint64 {
 | 
				
			||||||
 | 
						nBits, nArrayEl, nRunEl := uint64(0), uint64(0), uint64(0)
 | 
				
			||||||
 | 
						for _, c := range bm.highlowcontainer.containers {
 | 
				
			||||||
 | 
							switch v := c.(type) {
 | 
				
			||||||
 | 
							case *bitmapContainer:
 | 
				
			||||||
 | 
								nBits++
 | 
				
			||||||
 | 
							case *arrayContainer:
 | 
				
			||||||
 | 
								nArrayEl += uint64(len(v.content))
 | 
				
			||||||
 | 
							case *runContainer16:
 | 
				
			||||||
 | 
								nRunEl += uint64(len(v.iv))
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						return 4 + 5*uint64(len(bm.highlowcontainer.containers)) +
 | 
				
			||||||
 | 
							(nBits << 13) + 2*nArrayEl + 4*nRunEl
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (bm *Bitmap) Freeze() ([]byte, error) {
 | 
				
			||||||
 | 
						sz := bm.GetFrozenSizeInBytes()
 | 
				
			||||||
 | 
						buf := make([]byte, sz)
 | 
				
			||||||
 | 
						_, err := bm.FreezeTo(buf)
 | 
				
			||||||
 | 
						return buf, err
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (bm *Bitmap) FreezeTo(buf []byte) (int, error) {
 | 
				
			||||||
 | 
						containers := bm.highlowcontainer.containers
 | 
				
			||||||
 | 
						nCont := len(containers)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						nBits, nArrayEl, nRunEl := 0, 0, 0
 | 
				
			||||||
 | 
						for _, c := range containers {
 | 
				
			||||||
 | 
							switch v := c.(type) {
 | 
				
			||||||
 | 
							case *bitmapContainer:
 | 
				
			||||||
 | 
								nBits++
 | 
				
			||||||
 | 
							case *arrayContainer:
 | 
				
			||||||
 | 
								nArrayEl += len(v.content)
 | 
				
			||||||
 | 
							case *runContainer16:
 | 
				
			||||||
 | 
								nRunEl += len(v.iv)
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						serialSize := 4 + 5*nCont + (1 << 13)*nBits + 4*nRunEl + 2*nArrayEl
 | 
				
			||||||
 | 
						if len(buf) < serialSize {
 | 
				
			||||||
 | 
							return 0, FrozenBitmapBufferTooSmall
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						bitsArena := byteSliceAsUint64Slice(buf[:(1 << 13)*nBits])
 | 
				
			||||||
 | 
						buf = buf[(1 << 13)*nBits:]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						runsArena := byteSliceAsInterval16Slice(buf[:4*nRunEl])
 | 
				
			||||||
 | 
						buf = buf[4*nRunEl:]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						arraysArena := byteSliceAsUint16Slice(buf[:2*nArrayEl])
 | 
				
			||||||
 | 
						buf = buf[2*nArrayEl:]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						keys := byteSliceAsUint16Slice(buf[:2*nCont])
 | 
				
			||||||
 | 
						buf = buf[2*nCont:]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						counts := byteSliceAsUint16Slice(buf[:2*nCont])
 | 
				
			||||||
 | 
						buf = buf[2*nCont:]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						types := buf[:nCont]
 | 
				
			||||||
 | 
						buf = buf[nCont:]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						header := uint32(FROZEN_COOKIE|(nCont << 15))
 | 
				
			||||||
 | 
						binary.LittleEndian.PutUint32(buf[:4], header)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						copy(keys, bm.highlowcontainer.keys[:])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						for i, c := range containers {
 | 
				
			||||||
 | 
							switch v := c.(type) {
 | 
				
			||||||
 | 
							case *bitmapContainer:
 | 
				
			||||||
 | 
								copy(bitsArena, v.bitmap)
 | 
				
			||||||
 | 
								bitsArena = bitsArena[1024:]
 | 
				
			||||||
 | 
								counts[i] = uint16(v.cardinality-1)
 | 
				
			||||||
 | 
								types[i] = 1
 | 
				
			||||||
 | 
							case *arrayContainer:
 | 
				
			||||||
 | 
								copy(arraysArena, v.content)
 | 
				
			||||||
 | 
								arraysArena = arraysArena[len(v.content):]
 | 
				
			||||||
 | 
								elems := len(v.content)
 | 
				
			||||||
 | 
								counts[i] = uint16(elems)-1
 | 
				
			||||||
 | 
								types[i] = 2
 | 
				
			||||||
 | 
							case *runContainer16:
 | 
				
			||||||
 | 
								copy(runsArena, v.iv)
 | 
				
			||||||
 | 
								runs := len(v.iv)
 | 
				
			||||||
 | 
								runsArena = runsArena[runs:]
 | 
				
			||||||
 | 
								counts[i] = uint16(runs)
 | 
				
			||||||
 | 
								types[i] = 3
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						return serialSize, nil
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -384,7 +384,6 @@ func (c *CPUInfo) frequencies() {
 | 
				
			||||||
		eax, ebx, ecx, _ := cpuid(0x15)
 | 
							eax, ebx, ecx, _ := cpuid(0x15)
 | 
				
			||||||
		if eax != 0 && ebx != 0 && ecx != 0 {
 | 
							if eax != 0 && ebx != 0 && ecx != 0 {
 | 
				
			||||||
			c.Hz = (int64(ecx) * int64(ebx)) / int64(eax)
 | 
								c.Hz = (int64(ecx) * int64(ebx)) / int64(eax)
 | 
				
			||||||
			fmt.Println("frequencies(): ", ecx, ebx, eax, "->", c.Hz)
 | 
					 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	if mfi >= 0x16 {
 | 
						if mfi >= 0x16 {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -8,7 +8,7 @@ goldmark
 | 
				
			||||||
 | 
					
 | 
				
			||||||
> A Markdown parser written in Go. Easy to extend, standards-compliant, well-structured.
 | 
					> A Markdown parser written in Go. Easy to extend, standards-compliant, well-structured.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
goldmark is compliant with CommonMark 0.29.
 | 
					goldmark is compliant with CommonMark 0.30.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Motivation
 | 
					Motivation
 | 
				
			||||||
----------------------
 | 
					----------------------
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -332,7 +332,7 @@ type List struct {
 | 
				
			||||||
	Marker byte
 | 
						Marker byte
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// IsTight is a true if this list is a 'tight' list.
 | 
						// IsTight is a true if this list is a 'tight' list.
 | 
				
			||||||
	// See https://spec.commonmark.org/0.29/#loose for details.
 | 
						// See https://spec.commonmark.org/0.30/#loose for details.
 | 
				
			||||||
	IsTight bool
 | 
						IsTight bool
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// Start is an initial number of this ordered list.
 | 
						// Start is an initial number of this ordered list.
 | 
				
			||||||
| 
						 | 
					@ -414,7 +414,7 @@ func NewListItem(offset int) *ListItem {
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// HTMLBlockType represents kinds of an html blocks.
 | 
					// HTMLBlockType represents kinds of an html blocks.
 | 
				
			||||||
// See https://spec.commonmark.org/0.29/#html-blocks
 | 
					// See https://spec.commonmark.org/0.30/#html-blocks
 | 
				
			||||||
type HTMLBlockType int
 | 
					type HTMLBlockType int
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const (
 | 
					const (
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -111,7 +111,7 @@ func (n *Text) SetRaw(v bool) {
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// HardLineBreak returns true if this node ends with a hard line break.
 | 
					// HardLineBreak returns true if this node ends with a hard line break.
 | 
				
			||||||
// See https://spec.commonmark.org/0.29/#hard-line-breaks for details.
 | 
					// See https://spec.commonmark.org/0.30/#hard-line-breaks for details.
 | 
				
			||||||
func (n *Text) HardLineBreak() bool {
 | 
					func (n *Text) HardLineBreak() bool {
 | 
				
			||||||
	return n.flags&textHardLineBreak != 0
 | 
						return n.flags&textHardLineBreak != 0
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -30,11 +30,11 @@ type Delimiter struct {
 | 
				
			||||||
	Segment text.Segment
 | 
						Segment text.Segment
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// CanOpen is set true if this delimiter can open a span for a new node.
 | 
						// CanOpen is set true if this delimiter can open a span for a new node.
 | 
				
			||||||
	// See https://spec.commonmark.org/0.29/#can-open-emphasis for details.
 | 
						// See https://spec.commonmark.org/0.30/#can-open-emphasis for details.
 | 
				
			||||||
	CanOpen bool
 | 
						CanOpen bool
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// CanClose is set true if this delimiter can close a span for a new node.
 | 
						// CanClose is set true if this delimiter can close a span for a new node.
 | 
				
			||||||
	// See https://spec.commonmark.org/0.29/#can-open-emphasis for details.
 | 
						// See https://spec.commonmark.org/0.30/#can-open-emphasis for details.
 | 
				
			||||||
	CanClose bool
 | 
						CanClose bool
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// Length is a remaining length of this delimiter.
 | 
						// Length is a remaining length of this delimiter.
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -76,8 +76,8 @@ var allowedBlockTags = map[string]bool{
 | 
				
			||||||
	"ul":         true,
 | 
						"ul":         true,
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
var htmlBlockType1OpenRegexp = regexp.MustCompile(`(?i)^[ ]{0,3}<(script|pre|style)(?:\s.*|>.*|/>.*|)\n?$`)
 | 
					var htmlBlockType1OpenRegexp = regexp.MustCompile(`(?i)^[ ]{0,3}<(script|pre|style|textarea)(?:\s.*|>.*|/>.*|)\n?$`)
 | 
				
			||||||
var htmlBlockType1CloseRegexp = regexp.MustCompile(`(?i)^.*</(?:script|pre|style)>.*`)
 | 
					var htmlBlockType1CloseRegexp = regexp.MustCompile(`(?i)^.*</(?:script|pre|style|textarea)>.*`)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
var htmlBlockType2OpenRegexp = regexp.MustCompile(`^[ ]{0,3}<!\-\-`)
 | 
					var htmlBlockType2OpenRegexp = regexp.MustCompile(`^[ ]{0,3}<!\-\-`)
 | 
				
			||||||
var htmlBlockType2Close = []byte{'-', '-', '>'}
 | 
					var htmlBlockType2Close = []byte{'-', '-', '>'}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1148,7 +1148,7 @@ func (p *parser) parseBlock(block text.BlockReader, parent ast.Node, pc Context)
 | 
				
			||||||
		} else if hasNewLine {
 | 
							} else if hasNewLine {
 | 
				
			||||||
			// If the line ends with a newline character, but it is not a hardlineBreak, then it is a softLinebreak
 | 
								// If the line ends with a newline character, but it is not a hardlineBreak, then it is a softLinebreak
 | 
				
			||||||
			// If the line ends with a hardlineBreak, then it cannot end with a softLinebreak
 | 
								// If the line ends with a hardlineBreak, then it cannot end with a softLinebreak
 | 
				
			||||||
			// See https://spec.commonmark.org/0.29/#soft-line-breaks
 | 
								// See https://spec.commonmark.org/0.30/#soft-line-breaks
 | 
				
			||||||
			softLinebreak = true
 | 
								softLinebreak = true
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -37,7 +37,7 @@ github.com/Microsoft/go-winio/pkg/guid
 | 
				
			||||||
# github.com/NYTimes/gziphandler v1.1.1
 | 
					# github.com/NYTimes/gziphandler v1.1.1
 | 
				
			||||||
## explicit
 | 
					## explicit
 | 
				
			||||||
github.com/NYTimes/gziphandler
 | 
					github.com/NYTimes/gziphandler
 | 
				
			||||||
# github.com/ProtonMail/go-crypto v0.0.0-20210512092938-c05353c2d58c
 | 
					# github.com/ProtonMail/go-crypto v0.0.0-20210705153151-cc34b1f6908b
 | 
				
			||||||
## explicit
 | 
					## explicit
 | 
				
			||||||
github.com/ProtonMail/go-crypto/bitcurves
 | 
					github.com/ProtonMail/go-crypto/bitcurves
 | 
				
			||||||
github.com/ProtonMail/go-crypto/brainpool
 | 
					github.com/ProtonMail/go-crypto/brainpool
 | 
				
			||||||
| 
						 | 
					@ -62,7 +62,7 @@ github.com/PuerkitoBio/goquery
 | 
				
			||||||
github.com/PuerkitoBio/purell
 | 
					github.com/PuerkitoBio/purell
 | 
				
			||||||
# github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578
 | 
					# github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578
 | 
				
			||||||
github.com/PuerkitoBio/urlesc
 | 
					github.com/PuerkitoBio/urlesc
 | 
				
			||||||
# github.com/RoaringBitmap/roaring v0.8.0
 | 
					# github.com/RoaringBitmap/roaring v0.9.1
 | 
				
			||||||
## explicit
 | 
					## explicit
 | 
				
			||||||
github.com/RoaringBitmap/roaring
 | 
					github.com/RoaringBitmap/roaring
 | 
				
			||||||
github.com/RoaringBitmap/roaring/internal
 | 
					github.com/RoaringBitmap/roaring/internal
 | 
				
			||||||
| 
						 | 
					@ -539,7 +539,7 @@ github.com/klauspost/compress/gzip
 | 
				
			||||||
github.com/klauspost/compress/huff0
 | 
					github.com/klauspost/compress/huff0
 | 
				
			||||||
github.com/klauspost/compress/zstd
 | 
					github.com/klauspost/compress/zstd
 | 
				
			||||||
github.com/klauspost/compress/zstd/internal/xxhash
 | 
					github.com/klauspost/compress/zstd/internal/xxhash
 | 
				
			||||||
# github.com/klauspost/cpuid/v2 v2.0.7
 | 
					# github.com/klauspost/cpuid/v2 v2.0.8
 | 
				
			||||||
## explicit
 | 
					## explicit
 | 
				
			||||||
github.com/klauspost/cpuid/v2
 | 
					github.com/klauspost/cpuid/v2
 | 
				
			||||||
# github.com/klauspost/pgzip v1.2.5
 | 
					# github.com/klauspost/pgzip v1.2.5
 | 
				
			||||||
| 
						 | 
					@ -797,7 +797,7 @@ github.com/xi2/xz
 | 
				
			||||||
# github.com/yohcop/openid-go v1.0.0
 | 
					# github.com/yohcop/openid-go v1.0.0
 | 
				
			||||||
## explicit
 | 
					## explicit
 | 
				
			||||||
github.com/yohcop/openid-go
 | 
					github.com/yohcop/openid-go
 | 
				
			||||||
# github.com/yuin/goldmark v1.3.9
 | 
					# github.com/yuin/goldmark v1.4.0
 | 
				
			||||||
## explicit
 | 
					## explicit
 | 
				
			||||||
github.com/yuin/goldmark
 | 
					github.com/yuin/goldmark
 | 
				
			||||||
github.com/yuin/goldmark/ast
 | 
					github.com/yuin/goldmark/ast
 | 
				
			||||||
| 
						 | 
					@ -1037,7 +1037,7 @@ strk.kbt.io/projects/go/libravatar
 | 
				
			||||||
# xorm.io/builder v0.3.9
 | 
					# xorm.io/builder v0.3.9
 | 
				
			||||||
## explicit
 | 
					## explicit
 | 
				
			||||||
xorm.io/builder
 | 
					xorm.io/builder
 | 
				
			||||||
# xorm.io/xorm v1.1.1
 | 
					# xorm.io/xorm v1.1.2
 | 
				
			||||||
## explicit
 | 
					## explicit
 | 
				
			||||||
xorm.io/xorm
 | 
					xorm.io/xorm
 | 
				
			||||||
xorm.io/xorm/caches
 | 
					xorm.io/xorm/caches
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -347,3 +347,19 @@ steps:
 | 
				
			||||||
  image: golang:1.15
 | 
					  image: golang:1.15
 | 
				
			||||||
  commands:
 | 
					  commands:
 | 
				
			||||||
  - make coverage
 | 
					  - make coverage
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					kind: pipeline
 | 
				
			||||||
 | 
					name: release-tag
 | 
				
			||||||
 | 
					trigger:
 | 
				
			||||||
 | 
					  event:
 | 
				
			||||||
 | 
					    - tag
 | 
				
			||||||
 | 
					steps:
 | 
				
			||||||
 | 
					- name: release-tag-gitea
 | 
				
			||||||
 | 
					  pull: always
 | 
				
			||||||
 | 
					  image: plugins/gitea-release:latest
 | 
				
			||||||
 | 
					  settings:
 | 
				
			||||||
 | 
					    base_url: https://gitea.com
 | 
				
			||||||
 | 
					    title: '${DRONE_TAG} is released'
 | 
				
			||||||
 | 
					    api_key:
 | 
				
			||||||
 | 
					      from_secret: gitea_token
 | 
				
			||||||
| 
						 | 
					@ -3,6 +3,11 @@
 | 
				
			||||||
This changelog goes through all the changes that have been made in each release
 | 
					This changelog goes through all the changes that have been made in each release
 | 
				
			||||||
without substantial changes to our git log.
 | 
					without substantial changes to our git log.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## [1.1.2](https://gitea.com/xorm/xorm/releases/tag/1.1.2) - 2021-07-04
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* BUILD
 | 
				
			||||||
 | 
					  * Add release tag (#1966)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## [1.1.1](https://gitea.com/xorm/xorm/releases/tag/1.1.1) - 2021-07-03
 | 
					## [1.1.1](https://gitea.com/xorm/xorm/releases/tag/1.1.1) - 2021-07-03
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* BUGFIXES
 | 
					* BUGFIXES
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue