mirror of
				https://github.com/gofiber/storage.git
				synced 2025-10-31 11:46:32 +08:00 
			
		
		
		
	Compare commits
	
		
			242 Commits
		
	
	
		
			mockstorag
			...
			Update-pkg
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|   | f01f10c006 | ||
|   | 3bfea340e7 | ||
|   | 0fe8e5fda3 | ||
|   | ff55ec3477 | ||
|   | ff83043d09 | ||
|   | 5a6ee123cf | ||
|   | a9f76af4ba | ||
|   | 2aa6a93b98 | ||
|   | 33e4479ce7 | ||
|   | adea65d290 | ||
|   | 537b31756b | ||
|   | 3b91f93611 | ||
|   | 42831dcee6 | ||
|   | 89a0a97fe8 | ||
|   | 86f1b406e3 | ||
|   | 102acc252b | ||
|   | 40a6167b74 | ||
|   | e4d46ce66c | ||
|   | 386b6f431f | ||
|   | d2af2eb76b | ||
|   | 395f8a80da | ||
|   | 76c52119bf | ||
|   | 87c2b454f8 | ||
|   | 12ea6b4978 | ||
|   | cce70b9e7f | ||
|   | f8776d0233 | ||
|   | 740eed9579 | ||
|   | baaf5c76e0 | ||
|   | 9fa1710604 | ||
|   | 674175ded7 | ||
|   | fae399ccdc | ||
|   | 381f0c134e | ||
|   | 9013b623ea | ||
|   | 512c66712a | ||
|   | 692f78abb0 | ||
|   | 1a7044aded | ||
|   | 88906bb82b | ||
|   | 5d095dc16b | ||
|   | a18385a6ba | ||
|   | 1da3514e71 | ||
|   | a0d6e6df5a | ||
|   | 603305cf39 | ||
|   | f9f9ee6734 | ||
|   | cb106882f0 | ||
|   | a5f954c505 | ||
|   | 53c5ec01a5 | ||
|   | f7b7345f06 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | cd119d0f9e | ||
|   | 2f1c0cbba5 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 4a558d04d2 | ||
|   | 29406b2354 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 6f09eca26d | ||
|   | 304babaae6 | ||
|   | fe56bc56be | ||
|   | d2c20a1452 | ||
|   | 8a873c0c1d | ||
|   | 8d24b7710e | ||
|   | 2c3433f532 | ||
|   | f35a941b18 | ||
|   | 01d0e07203 | ||
|   | 07d3b2ee60 | ||
|   | 91125ae1ff | ||
|   | 8987519886 | ||
|   | ae1a58f409 | ||
|   | 6cd2a04347 | ||
|   | d6045366f3 | ||
|   | eba6a80a13 | ||
|   | d296a7f0da | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 30d1c4aeb1 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | c9bf60b822 | ||
|   | 526f70b1de | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 46b8c41b07 | ||
|   | 920adaf9d1 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 33479fdf80 | ||
|   | b8e131cbdc | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | efae25917f | ||
|   | 87cb35a875 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | b54ef2f223 | ||
|   | f0d3888c13 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | f6e1c398df | ||
|   | fffd10e474 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | a5e5b6c392 | ||
|   | 730aba1fc4 | ||
|   | 8819ff54b7 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 3b5fbcdce6 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 9942341b72 | ||
|   | 9e27843919 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 7c94391d11 | ||
|   | c3094e4ae5 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 5e11a89904 | ||
|   | 20c2931600 | ||
|   | 448cdd08e2 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | ea41c3d45e | ||
|   | 662c591519 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | d129128328 | ||
|   | aa21992fd5 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | b02937835f | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 7907504d75 | ||
|   | 2886d67714 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | eee0d7df2c | ||
|   | 60b43cf9d6 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | fe3cc059c4 | ||
|   | b648905d66 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 69e62f0b54 | ||
|   | ec227440cd | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 0344cbd5f0 | ||
|   | da28b6f39d | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | dec716bf98 | ||
|   | 5da8c389a1 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | bf3ba3e751 | ||
|   | e23626edef | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 897a80879d | ||
|   | 2aa7735a92 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 2cea147aa4 | ||
|   | 920bb093a4 | ||
|   | b5f9269fff | ||
|   | 04fb90595f | ||
|   | 8b1d41dde3 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | b784766b97 | ||
|   | f520ae0b54 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | e38586e901 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | df05331a78 | ||
|   | 4ba6faaa00 | ||
|   | 76acc99239 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 43d47119b3 | ||
|   | d72125bb60 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | e4aaaf76a8 | ||
|   | 0cc27ea7ce | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 9524b39ca6 | ||
|   | 13a14cd6fb | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 1fb6cd1a3f | ||
|   | 9209ae4617 | ||
|   | cfd5f691c9 | ||
|   | 39412ce785 | ||
|   | ea065c4ab8 | ||
|   | 337546b077 | ||
|   | f9d76aa3d6 | ||
|   | d2d34d8777 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | f25f8b8446 | ||
|   | acb19da9e9 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 66c8914256 | ||
|   | 038a286c3b | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 0701e6f1c3 | ||
|   | e744bc09fa | ||
|   | 0228c63316 | ||
|   | f27f7b1055 | ||
|   | ad10412020 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 13e9acc454 | ||
|   | f4bd2a5db4 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 5304e96e7c | ||
|   | 773d4f2e73 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 7c81cf0dd5 | ||
|   | d237896b37 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | f7fab78724 | ||
|   | 6c59a5f1a3 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 662c06d9c7 | ||
|   | b0d06ae093 | ||
|   | 88b0adfcef | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 95d5b96b36 | ||
|   | 7fb2efee17 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | be0f16541b | ||
|   | eea17d4cd7 | ||
|   | d872a8574b | ||
|   | 6b75862f66 | ||
|   | f4ee2db62c | ||
|   | 4311191155 | ||
|   | 78138c978a | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 9a1f09c741 | ||
|   | 275be22a4c | ||
|   | 292cee6539 | ||
|   | d27ee3679c | ||
|   | bf0d8fc9d0 | ||
|   | 1f3a53a755 | ||
|   | 0887a66d65 | ||
|   | 2db9736872 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 492df714dd | ||
|   | 06cf69e024 | ||
|   | 7c1ec06ddc | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | b52bac5100 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 7fab4c8cbb | ||
|   | 543f422b30 | ||
|   | 626ede4760 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | eef89b1660 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 895dc1f61a | ||
|   | de58d8c006 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 3e9063102a | ||
|   | c70e44944d | ||
|   | ad436b5d82 | ||
|   | c62c0af76c | ||
|   | 3ef00028e6 | ||
|   | 169c891474 | ||
|   | 5434d25098 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | f5b36b4517 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | e5cb562af7 | ||
|   | 17f0d6da43 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 25dc910491 | ||
|   | d1087b6477 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 50e94bf6fe | ||
|   | 9b92a5ed83 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | e000f78db3 | ||
|   | 05dff2a932 | ||
|   | 41dea6c121 | ||
|   | 6c74d0b864 | ||
|   | 6f85e022d4 | ||
|   | bbae53fb35 | ||
|   | 16f9e43d82 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 0231178416 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 4c2a305e61 | ||
|   | fae42e4592 | ||
|   | 9b24adebf2 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | f1de042f2d | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 6817772063 | ||
|   | d91341723b | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 9ae9f31fe9 | ||
|   | 9e2901b3d4 | ||
|   | b35dab26c8 | ||
|   | 9a0102b257 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 6321a10f61 | ||
|   | df5c2b3c7a | ||
|   | bdf87e3718 | ||
|   | 11d7b5f886 | ||
|   | ca256c013f | ||
|   | 0c53f4588b | ||
|   | bfd7ccc79e | ||
|   | 812032288e | ||
|   | 2faf1587e0 | ||
|   | f212e66726 | ||
|   | 3b83def333 | ||
|   | 3f5fda6bd8 | ||
|   | 21ac41f961 | ||
|   | 99c099431a | ||
|   | 81b668ae40 | ||
|   | 8a64cac72f | ||
|   | 8f7781ce20 | ||
|   | 4c5f2ef1b8 | ||
|   | de3083f492 | ||
|   | 2baf7d7e47 | ||
|   | de69aa6ceb | ||
|   | b8c51d1779 | ||
|   | efea419043 | ||
|   | 5ecaadb118 | ||
|   | f9a22ee538 | 
							
								
								
									
										150
									
								
								.github/dependabot.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										150
									
								
								.github/dependabot.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,165 +1,23 @@ | |||||||
| # https://help.github.com/github/administering-a-repository/configuration-options-for-dependency-updates | # https://help.github.com/github/administering-a-repository/configuration-options-for-dependency-updates | ||||||
|  | # https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#directories | ||||||
|  |  | ||||||
| version: 2 | version: 2 | ||||||
| updates: | updates: | ||||||
|     - package-ecosystem: "github-actions" |     - package-ecosystem: "github-actions" | ||||||
|       directory: "/" |       directory: "/" | ||||||
|         schedule: |  | ||||||
|             interval: daily |  | ||||||
|         labels: |  | ||||||
|             - "🤖 Dependencies" |  | ||||||
|     -   package-ecosystem: "gomod" |  | ||||||
|         directory: "/" # Location of package manifests |  | ||||||
|       labels: |       labels: | ||||||
|           - "🤖 Dependencies" |           - "🤖 Dependencies" | ||||||
|       schedule: |       schedule: | ||||||
|           interval: "daily" |           interval: "daily" | ||||||
|     - package-ecosystem: "gomod" |     - package-ecosystem: "gomod" | ||||||
|         directory: "/arangodb/" # Location of package manifests |       directories: | ||||||
|  |           - "**/*" | ||||||
|       labels: |       labels: | ||||||
|           - "🤖 Dependencies" |           - "🤖 Dependencies" | ||||||
|       schedule: |       schedule: | ||||||
|           interval: "daily" |           interval: "daily" | ||||||
|     - package-ecosystem: "gomod" |     - package-ecosystem: "gomod" | ||||||
|         directory: "/badger/" # Location of package manifests |       directory: "/clickhouse/" # Location of package manifests | ||||||
|         labels: |  | ||||||
|             - "🤖 Dependencies" |  | ||||||
|         schedule: |  | ||||||
|             interval: "daily" |  | ||||||
|     -   package-ecosystem: "gomod" |  | ||||||
|         directory: "/cloudflarekv/" # Location of package manifests |  | ||||||
|         labels: |  | ||||||
|             - "🤖 Dependencies" |  | ||||||
|         schedule: |  | ||||||
|             interval: "daily" |  | ||||||
|     -   package-ecosystem: "gomod" |  | ||||||
|         directory: "/couchbase/" # Location of package manifests |  | ||||||
|         labels: |  | ||||||
|             - "🤖 Dependencies" |  | ||||||
|         schedule: |  | ||||||
|             interval: "daily" |  | ||||||
|     -   package-ecosystem: "gomod" |  | ||||||
|         directory: "/coherence/" # Location of package manifests |  | ||||||
|         labels: |  | ||||||
|             - "🤖 Dependencies" |  | ||||||
|         schedule: |  | ||||||
|             interval: "daily" |  | ||||||
|     -   package-ecosystem: "gomod" |  | ||||||
|         directory: "/etcd/" # Location of package manifests |  | ||||||
|         labels: |  | ||||||
|             - "🤖 Dependencies" |  | ||||||
|         schedule: |  | ||||||
|             interval: "daily" |  | ||||||
|     -   package-ecosystem: "gomod" |  | ||||||
|         directory: "/pebble/" # Location of package manifests |  | ||||||
|         labels: |  | ||||||
|             - "🤖 Dependencies" |  | ||||||
|         schedule: |  | ||||||
|             interval: "daily" |  | ||||||
|     -   package-ecosystem: "gomod" |  | ||||||
|         directory: "/dynamodb/" # Location of package manifests |  | ||||||
|         labels: |  | ||||||
|             - "🤖 Dependencies" |  | ||||||
|         schedule: |  | ||||||
|             interval: "weekly" |  | ||||||
|     -   package-ecosystem: "gomod" |  | ||||||
|         directory: "/memcache/" # Location of package manifests |  | ||||||
|         labels: |  | ||||||
|             - "🤖 Dependencies" |  | ||||||
|         schedule: |  | ||||||
|             interval: "daily" |  | ||||||
|     -   package-ecosystem: "gomod" |  | ||||||
|         directory: "/memory/" # Location of package manifests |  | ||||||
|         labels: |  | ||||||
|             - "🤖 Dependencies" |  | ||||||
|         schedule: |  | ||||||
|             interval: "daily" |  | ||||||
|     - package-ecosystem: "gomod" |  | ||||||
|       directory: "/minio/" # Location of package manifests |  | ||||||
|       labels: |  | ||||||
|           - "🤖 Dependencies" |  | ||||||
|       schedule: |  | ||||||
|           interval: "daily" |  | ||||||
|     - package-ecosystem: "gomod" |  | ||||||
|       directory: "/mockstorage/" # Location of package manifests |  | ||||||
|       labels: |  | ||||||
|           - "🤖 Dependencies" |  | ||||||
|       schedule: |  | ||||||
|           interval: "daily" |  | ||||||
|     -   package-ecosystem: "gomod" |  | ||||||
|         directory: "/mongodb/" # Location of package manifests |  | ||||||
|         labels: |  | ||||||
|             - "🤖 Dependencies" |  | ||||||
|         schedule: |  | ||||||
|             interval: "daily" |  | ||||||
|     -   package-ecosystem: "gomod" |  | ||||||
|         directory: "/mysql/" # Location of package manifests |  | ||||||
|         labels: |  | ||||||
|             - "🤖 Dependencies" |  | ||||||
|         schedule: |  | ||||||
|             interval: "daily" |  | ||||||
|     -   package-ecosystem: "gomod" |  | ||||||
|         directory: "/postgres/" # Location of package manifests |  | ||||||
|         labels: |  | ||||||
|             - "🤖 Dependencies" |  | ||||||
|         schedule: |  | ||||||
|             interval: "daily" |  | ||||||
|     -   package-ecosystem: "gomod" |  | ||||||
|         directory: "/redis/" # Location of package manifests |  | ||||||
|         labels: |  | ||||||
|             - "🤖 Dependencies" |  | ||||||
|         schedule: |  | ||||||
|             interval: "daily" |  | ||||||
|     -   package-ecosystem: "gomod" |  | ||||||
|         directory: "/sqlite3/" # Location of package manifests |  | ||||||
|         labels: |  | ||||||
|             - "🤖 Dependencies" |  | ||||||
|         schedule: |  | ||||||
|             interval: "daily" |  | ||||||
|     -   package-ecosystem: "gomod" |  | ||||||
|         directory: "/ristretto/" # Location of package manifests |  | ||||||
|         labels: |  | ||||||
|             - "🤖 Dependencies" |  | ||||||
|         schedule: |  | ||||||
|             interval: "daily" |  | ||||||
|     -   package-ecosystem: "gomod" |  | ||||||
|         directory: "/s3/" # Location of package manifests |  | ||||||
|         labels: |  | ||||||
|             - "🤖 Dependencies" |  | ||||||
|         schedule: |  | ||||||
|             interval: "weekly" |  | ||||||
|     -   package-ecosystem: "gomod" |  | ||||||
|         directory: "/bbolt/" # Location of package manifests |  | ||||||
|         labels: |  | ||||||
|             - "🤖 Dependencies" |  | ||||||
|         schedule: |  | ||||||
|             interval: "daily" |  | ||||||
|     -   package-ecosystem: "gomod" |  | ||||||
|         directory: "/azureblob/" # Location of package manifests |  | ||||||
|         labels: |  | ||||||
|             - "🤖 Dependencies" |  | ||||||
|         schedule: |  | ||||||
|             interval: "daily" |  | ||||||
|     -   package-ecosystem: "gomod" |  | ||||||
|         directory: "/mssql/" # Location of package manifests |  | ||||||
|         labels: |  | ||||||
|             - "🤖 Dependencies" |  | ||||||
|         schedule: |  | ||||||
|             interval: "daily" |  | ||||||
|     -   package-ecosystem: "gomod" |  | ||||||
|         directory: "/rueidis/" # Location of package manifests |  | ||||||
|         labels: |  | ||||||
|             - "🤖 Dependencies" |  | ||||||
|         schedule: |  | ||||||
|             interval: "daily" |  | ||||||
|     - package-ecosystem: "gomod" |  | ||||||
|       directory: "/scylladb/" # Location of package manifests |  | ||||||
|       labels: |  | ||||||
|           - "🤖 Dependencies" |  | ||||||
|       schedule: |  | ||||||
|           interval: "daily" |  | ||||||
|     - package-ecosystem: "gomod" |  | ||||||
|       directory: "/nats/" # Location of package manifests |  | ||||||
|       labels: |       labels: | ||||||
|           - "🤖 Dependencies" |           - "🤖 Dependencies" | ||||||
|       schedule: |       schedule: | ||||||
|   | |||||||
							
								
								
									
										50
									
								
								.github/release-drafter-azureblob.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										50
									
								
								.github/release-drafter-azureblob.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,50 +0,0 @@ | |||||||
| name-template: 'Azure Blob - v$RESOLVED_VERSION' |  | ||||||
| tag-template: 'azureblob/v$RESOLVED_VERSION' |  | ||||||
| tag-prefix: azureblob/v |  | ||||||
| include-paths: |  | ||||||
|   - azureblob |  | ||||||
| categories: |  | ||||||
|     - title: '❗ Breaking Changes' |  | ||||||
|       labels: |  | ||||||
|           - '❗ BreakingChange' |  | ||||||
|     - title: '🚀 New' |  | ||||||
|       labels: |  | ||||||
|           - '✏️ Feature' |  | ||||||
|     - title: '🧹 Updates' |  | ||||||
|       labels: |  | ||||||
|           - '🧹 Updates' |  | ||||||
|           - '🤖 Dependencies' |  | ||||||
|     - title: '🐛 Fixes' |  | ||||||
|       labels: |  | ||||||
|           - '☢️ Bug' |  | ||||||
|     - title: '📚 Documentation' |  | ||||||
|       labels: |  | ||||||
|           - '📒 Documentation' |  | ||||||
| change-template: '- $TITLE (#$NUMBER)' |  | ||||||
| change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks. |  | ||||||
| exclude-contributors: |  | ||||||
|     - dependabot |  | ||||||
|     - dependabot[bot] |  | ||||||
| version-resolver: |  | ||||||
|     major: |  | ||||||
|         labels: |  | ||||||
|             - 'major' |  | ||||||
|             - '❗ BreakingChange' |  | ||||||
|     minor: |  | ||||||
|         labels: |  | ||||||
|             - 'minor' |  | ||||||
|             - '✏️ Feature' |  | ||||||
|     patch: |  | ||||||
|         labels: |  | ||||||
|             - 'patch' |  | ||||||
|             - '📒 Documentation' |  | ||||||
|             - '☢️ Bug' |  | ||||||
|             - '🤖 Dependencies' |  | ||||||
|             - '🧹 Updates' |  | ||||||
|     default: patch |  | ||||||
| template: | |  | ||||||
|     $CHANGES |  | ||||||
|  |  | ||||||
|     **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...azureblob/v$RESOLVED_VERSION |  | ||||||
|  |  | ||||||
|     Thank you $CONTRIBUTORS for making this update possible. |  | ||||||
							
								
								
									
										50
									
								
								.github/release-drafter-badger.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										50
									
								
								.github/release-drafter-badger.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,50 +0,0 @@ | |||||||
| name-template: 'Badger - v$RESOLVED_VERSION' |  | ||||||
| tag-template: 'badger/v$RESOLVED_VERSION' |  | ||||||
| tag-prefix: badger/v |  | ||||||
| include-paths: |  | ||||||
|   - badger |  | ||||||
| categories: |  | ||||||
|     - title: '❗ Breaking Changes' |  | ||||||
|       labels: |  | ||||||
|           - '❗ BreakingChange' |  | ||||||
|     - title: '🚀 New' |  | ||||||
|       labels: |  | ||||||
|           - '✏️ Feature' |  | ||||||
|     - title: '🧹 Updates' |  | ||||||
|       labels: |  | ||||||
|           - '🧹 Updates' |  | ||||||
|           - '🤖 Dependencies' |  | ||||||
|     - title: '🐛 Fixes' |  | ||||||
|       labels: |  | ||||||
|           - '☢️ Bug' |  | ||||||
|     - title: '📚 Documentation' |  | ||||||
|       labels: |  | ||||||
|           - '📒 Documentation' |  | ||||||
| change-template: '- $TITLE (#$NUMBER)' |  | ||||||
| change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks. |  | ||||||
| exclude-contributors: |  | ||||||
|     - dependabot |  | ||||||
|     - dependabot[bot] |  | ||||||
| version-resolver: |  | ||||||
|     major: |  | ||||||
|         labels: |  | ||||||
|             - 'major' |  | ||||||
|             - '❗ BreakingChange' |  | ||||||
|     minor: |  | ||||||
|         labels: |  | ||||||
|             - 'minor' |  | ||||||
|             - '✏️ Feature' |  | ||||||
|     patch: |  | ||||||
|         labels: |  | ||||||
|             - 'patch' |  | ||||||
|             - '📒 Documentation' |  | ||||||
|             - '☢️ Bug' |  | ||||||
|             - '🤖 Dependencies' |  | ||||||
|             - '🧹 Updates' |  | ||||||
|     default: patch |  | ||||||
| template: | |  | ||||||
|     $CHANGES |  | ||||||
|  |  | ||||||
|     **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...badger/v$RESOLVED_VERSION |  | ||||||
|  |  | ||||||
|     Thank you $CONTRIBUTORS for making this update possible. |  | ||||||
							
								
								
									
										50
									
								
								.github/release-drafter-bbolt.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										50
									
								
								.github/release-drafter-bbolt.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,50 +0,0 @@ | |||||||
| name-template: 'Bbolt - v$RESOLVED_VERSION' |  | ||||||
| tag-template: 'bbolt/v$RESOLVED_VERSION' |  | ||||||
| tag-prefix: bbolt/v |  | ||||||
| include-paths: |  | ||||||
|   - bbolt |  | ||||||
| categories: |  | ||||||
|     - title: '❗ Breaking Changes' |  | ||||||
|       labels: |  | ||||||
|           - '❗ BreakingChange' |  | ||||||
|     - title: '🚀 New' |  | ||||||
|       labels: |  | ||||||
|           - '✏️ Feature' |  | ||||||
|     - title: '🧹 Updates' |  | ||||||
|       labels: |  | ||||||
|           - '🧹 Updates' |  | ||||||
|           - '🤖 Dependencies' |  | ||||||
|     - title: '🐛 Fixes' |  | ||||||
|       labels: |  | ||||||
|           - '☢️ Bug' |  | ||||||
|     - title: '📚 Documentation' |  | ||||||
|       labels: |  | ||||||
|           - '📒 Documentation' |  | ||||||
| change-template: '- $TITLE (#$NUMBER)' |  | ||||||
| change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks. |  | ||||||
| exclude-contributors: |  | ||||||
|     - dependabot |  | ||||||
|     - dependabot[bot] |  | ||||||
| version-resolver: |  | ||||||
|     major: |  | ||||||
|         labels: |  | ||||||
|             - 'major' |  | ||||||
|             - '❗ BreakingChange' |  | ||||||
|     minor: |  | ||||||
|         labels: |  | ||||||
|             - 'minor' |  | ||||||
|             - '✏️ Feature' |  | ||||||
|     patch: |  | ||||||
|         labels: |  | ||||||
|             - 'patch' |  | ||||||
|             - '📒 Documentation' |  | ||||||
|             - '☢️ Bug' |  | ||||||
|             - '🤖 Dependencies' |  | ||||||
|             - '🧹 Updates' |  | ||||||
|     default: patch |  | ||||||
| template: | |  | ||||||
|     $CHANGES |  | ||||||
|  |  | ||||||
|     **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...bbolt/v$RESOLVED_VERSION |  | ||||||
|  |  | ||||||
|     Thank you $CONTRIBUTORS for making this update possible. |  | ||||||
							
								
								
									
										46
									
								
								.github/release-drafter-cloudflarekv.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										46
									
								
								.github/release-drafter-cloudflarekv.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,46 +0,0 @@ | |||||||
| name-template: "CloudflareKV - v$RESOLVED_VERSION" |  | ||||||
| tag-template: "cloudflarekv/v$RESOLVED_VERSION" |  | ||||||
| tag-prefix: cloudflarekv/v |  | ||||||
| include-paths: |  | ||||||
|   - cloudflarekv |  | ||||||
| categories: |  | ||||||
|   - title: "🚀 New" |  | ||||||
|     labels: |  | ||||||
|       - "✏️ Feature" |  | ||||||
|   - title: "🧹 Updates" |  | ||||||
|     labels: |  | ||||||
|       - "🧹 Updates" |  | ||||||
|       - "🤖 Dependencies" |  | ||||||
|   - title: "🐛 Fixes" |  | ||||||
|     labels: |  | ||||||
|       - "☢️ Bug" |  | ||||||
|   - title: "📚 Documentation" |  | ||||||
|     labels: |  | ||||||
|       - "📒 Documentation" |  | ||||||
| change-template: "- $TITLE (#$NUMBER)" |  | ||||||
| change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks. |  | ||||||
| exclude-contributors: |  | ||||||
|   - dependabot |  | ||||||
|   - dependabot[bot] |  | ||||||
| version-resolver: |  | ||||||
|   major: |  | ||||||
|     labels: |  | ||||||
|       - "major" |  | ||||||
|   minor: |  | ||||||
|     labels: |  | ||||||
|       - "minor" |  | ||||||
|       - "✏️ Feature" |  | ||||||
|   patch: |  | ||||||
|     labels: |  | ||||||
|       - "patch" |  | ||||||
|       - "📒 Documentation" |  | ||||||
|       - "☢️ Bug" |  | ||||||
|       - "🤖 Dependencies" |  | ||||||
|       - "🧹 Updates" |  | ||||||
|   default: patch |  | ||||||
| template: | |  | ||||||
|   $CHANGES |  | ||||||
|    |  | ||||||
|   **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...cloudflarekv/v$RESOLVED_VERSION |  | ||||||
|    |  | ||||||
|   Thank you $CONTRIBUTORS for making this update possible. |  | ||||||
							
								
								
									
										50
									
								
								.github/release-drafter-coherence.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										50
									
								
								.github/release-drafter-coherence.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,50 +0,0 @@ | |||||||
| name-template: 'Coherence - v$RESOLVED_VERSION' |  | ||||||
| tag-template: 'coherence/v$RESOLVED_VERSION' |  | ||||||
| tag-prefix: coherence/v |  | ||||||
| include-paths: |  | ||||||
|   - coherence |  | ||||||
| categories: |  | ||||||
|     - title: '❗ Breaking Changes' |  | ||||||
|       labels: |  | ||||||
|           - '❗ BreakingChange' |  | ||||||
|     - title: '🚀 New' |  | ||||||
|       labels: |  | ||||||
|           - '✏️ Feature' |  | ||||||
|     - title: '🧹 Updates' |  | ||||||
|       labels: |  | ||||||
|           - '🧹 Updates' |  | ||||||
|           - '🤖 Dependencies' |  | ||||||
|     - title: '🐛 Fixes' |  | ||||||
|       labels: |  | ||||||
|           - '☢️ Bug' |  | ||||||
|     - title: '📚 Documentation' |  | ||||||
|       labels: |  | ||||||
|           - '📒 Documentation' |  | ||||||
| change-template: '- $TITLE (#$NUMBER)' |  | ||||||
| change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks. |  | ||||||
| exclude-contributors: |  | ||||||
|     - dependabot |  | ||||||
|     - dependabot[bot] |  | ||||||
| version-resolver: |  | ||||||
|     major: |  | ||||||
|         labels: |  | ||||||
|             - 'major' |  | ||||||
|             - '❗ BreakingChange' |  | ||||||
|     minor: |  | ||||||
|         labels: |  | ||||||
|             - 'minor' |  | ||||||
|             - '✏️ Feature' |  | ||||||
|     patch: |  | ||||||
|         labels: |  | ||||||
|             - 'patch' |  | ||||||
|             - '📒 Documentation' |  | ||||||
|             - '☢️ Bug' |  | ||||||
|             - '🤖 Dependencies' |  | ||||||
|             - '🧹 Updates' |  | ||||||
|     default: patch |  | ||||||
| template: | |  | ||||||
|     $CHANGES |  | ||||||
|  |  | ||||||
|     **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...coherence/v$RESOLVED_VERSION |  | ||||||
|  |  | ||||||
|     Thank you $CONTRIBUTORS for making this update possible. |  | ||||||
							
								
								
									
										50
									
								
								.github/release-drafter-couchbase.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										50
									
								
								.github/release-drafter-couchbase.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,50 +0,0 @@ | |||||||
| name-template: 'Couchbase - v$RESOLVED_VERSION' |  | ||||||
| tag-template: 'couchbase/v$RESOLVED_VERSION' |  | ||||||
| tag-prefix: couchbase/v |  | ||||||
| include-paths: |  | ||||||
|   - couchbase |  | ||||||
| categories: |  | ||||||
|     - title: '❗ Breaking Changes' |  | ||||||
|       labels: |  | ||||||
|           - '❗ BreakingChange' |  | ||||||
|     - title: '🚀 New' |  | ||||||
|       labels: |  | ||||||
|           - '✏️ Feature' |  | ||||||
|     - title: '🧹 Updates' |  | ||||||
|       labels: |  | ||||||
|           - '🧹 Updates' |  | ||||||
|           - '🤖 Dependencies' |  | ||||||
|     - title: '🐛 Fixes' |  | ||||||
|       labels: |  | ||||||
|           - '☢️ Bug' |  | ||||||
|     - title: '📚 Documentation' |  | ||||||
|       labels: |  | ||||||
|           - '📒 Documentation' |  | ||||||
| change-template: '- $TITLE (#$NUMBER)' |  | ||||||
| change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks. |  | ||||||
| exclude-contributors: |  | ||||||
|     - dependabot |  | ||||||
|     - dependabot[bot] |  | ||||||
| version-resolver: |  | ||||||
|     major: |  | ||||||
|         labels: |  | ||||||
|             - 'major' |  | ||||||
|             - '❗ BreakingChange' |  | ||||||
|     minor: |  | ||||||
|         labels: |  | ||||||
|             - 'minor' |  | ||||||
|             - '✏️ Feature' |  | ||||||
|     patch: |  | ||||||
|         labels: |  | ||||||
|             - 'patch' |  | ||||||
|             - '📒 Documentation' |  | ||||||
|             - '☢️ Bug' |  | ||||||
|             - '🤖 Dependencies' |  | ||||||
|             - '🧹 Updates' |  | ||||||
|     default: patch |  | ||||||
| template: | |  | ||||||
|   $CHANGES |  | ||||||
|  |  | ||||||
|   **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...couchbase/v$RESOLVED_VERSION |  | ||||||
|  |  | ||||||
|   Thank you $CONTRIBUTORS for making this update possible. |  | ||||||
							
								
								
									
										50
									
								
								.github/release-drafter-dynamodb.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										50
									
								
								.github/release-drafter-dynamodb.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,50 +0,0 @@ | |||||||
| name-template: 'DynamoDB - v$RESOLVED_VERSION' |  | ||||||
| tag-template: 'dynamodb/v$RESOLVED_VERSION' |  | ||||||
| tag-prefix: dynamodb/v |  | ||||||
| include-paths: |  | ||||||
|   - dynamodb |  | ||||||
| categories: |  | ||||||
|     - title: '❗ Breaking Changes' |  | ||||||
|       labels: |  | ||||||
|           - '❗ BreakingChange' |  | ||||||
|     - title: '🚀 New' |  | ||||||
|       labels: |  | ||||||
|           - '✏️ Feature' |  | ||||||
|     - title: '🧹 Updates' |  | ||||||
|       labels: |  | ||||||
|           - '🧹 Updates' |  | ||||||
|           - '🤖 Dependencies' |  | ||||||
|     - title: '🐛 Fixes' |  | ||||||
|       labels: |  | ||||||
|           - '☢️ Bug' |  | ||||||
|     - title: '📚 Documentation' |  | ||||||
|       labels: |  | ||||||
|           - '📒 Documentation' |  | ||||||
| change-template: '- $TITLE (#$NUMBER)' |  | ||||||
| change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks. |  | ||||||
| exclude-contributors: |  | ||||||
|     - dependabot |  | ||||||
|     - dependabot[bot] |  | ||||||
| version-resolver: |  | ||||||
|     major: |  | ||||||
|         labels: |  | ||||||
|             - 'major' |  | ||||||
|             - '❗ BreakingChange' |  | ||||||
|     minor: |  | ||||||
|         labels: |  | ||||||
|             - 'minor' |  | ||||||
|             - '✏️ Feature' |  | ||||||
|     patch: |  | ||||||
|         labels: |  | ||||||
|             - 'patch' |  | ||||||
|             - '📒 Documentation' |  | ||||||
|             - '☢️ Bug' |  | ||||||
|             - '🤖 Dependencies' |  | ||||||
|             - '🧹 Updates' |  | ||||||
|     default: patch |  | ||||||
| template: | |  | ||||||
|     $CHANGES |  | ||||||
|  |  | ||||||
|     **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...dynamodb/v$RESOLVED_VERSION |  | ||||||
|  |  | ||||||
|     Thank you $CONTRIBUTORS for making this update possible. |  | ||||||
							
								
								
									
										50
									
								
								.github/release-drafter-etcd.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										50
									
								
								.github/release-drafter-etcd.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,50 +0,0 @@ | |||||||
| name-template: 'Etcd - v$RESOLVED_VERSION' |  | ||||||
| tag-template: 'etcd/v$RESOLVED_VERSION' |  | ||||||
| tag-prefix: etcd/v |  | ||||||
| include-paths: |  | ||||||
|     - etcd |  | ||||||
| categories: |  | ||||||
|     - title: '❗ Breaking Changes' |  | ||||||
|       labels: |  | ||||||
|           - '❗ BreakingChange' |  | ||||||
|     - title: '🚀 New' |  | ||||||
|       labels: |  | ||||||
|           - '✏️ Feature' |  | ||||||
|     - title: '🧹 Updates' |  | ||||||
|       labels: |  | ||||||
|           - '🧹 Updates' |  | ||||||
|           - '🤖 Dependencies' |  | ||||||
|     - title: '🐛 Fixes' |  | ||||||
|       labels: |  | ||||||
|           - '☢️ Bug' |  | ||||||
|     - title: '📚 Documentation' |  | ||||||
|       labels: |  | ||||||
|           - '📒 Documentation' |  | ||||||
| change-template: '- $TITLE (#$NUMBER)' |  | ||||||
| change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks. |  | ||||||
| exclude-contributors: |  | ||||||
|     - dependabot |  | ||||||
|     - dependabot[bot] |  | ||||||
| version-resolver: |  | ||||||
|     major: |  | ||||||
|         labels: |  | ||||||
|             - 'major' |  | ||||||
|             - '❗ BreakingChange' |  | ||||||
|     minor: |  | ||||||
|         labels: |  | ||||||
|             - 'minor' |  | ||||||
|             - '✏️ Feature' |  | ||||||
|     patch: |  | ||||||
|         labels: |  | ||||||
|             - 'patch' |  | ||||||
|             - '📒 Documentation' |  | ||||||
|             - '☢️ Bug' |  | ||||||
|             - '🤖 Dependencies' |  | ||||||
|             - '🧹 Updates' |  | ||||||
|     default: patch |  | ||||||
| template: | |  | ||||||
|     $CHANGES |  | ||||||
|  |  | ||||||
|     **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...etcd/v$RESOLVED_VERSION |  | ||||||
|  |  | ||||||
|     Thank you $CONTRIBUTORS for making this update possible. |  | ||||||
							
								
								
									
										50
									
								
								.github/release-drafter-memcache.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										50
									
								
								.github/release-drafter-memcache.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,50 +0,0 @@ | |||||||
| name-template: 'Memcache - v$RESOLVED_VERSION' |  | ||||||
| tag-template: 'memcache/v$RESOLVED_VERSION' |  | ||||||
| tag-prefix: memcache/v |  | ||||||
| include-paths: |  | ||||||
|   - memcache |  | ||||||
| categories: |  | ||||||
|     - title: '❗ Breaking Changes' |  | ||||||
|       labels: |  | ||||||
|           - '❗ BreakingChange' |  | ||||||
|     - title: '🚀 New' |  | ||||||
|       labels: |  | ||||||
|           - '✏️ Feature' |  | ||||||
|     - title: '🧹 Updates' |  | ||||||
|       labels: |  | ||||||
|           - '🧹 Updates' |  | ||||||
|           - '🤖 Dependencies' |  | ||||||
|     - title: '🐛 Fixes' |  | ||||||
|       labels: |  | ||||||
|           - '☢️ Bug' |  | ||||||
|     - title: '📚 Documentation' |  | ||||||
|       labels: |  | ||||||
|           - '📒 Documentation' |  | ||||||
| change-template: '- $TITLE (#$NUMBER)' |  | ||||||
| change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks. |  | ||||||
| exclude-contributors: |  | ||||||
|     - dependabot |  | ||||||
|     - dependabot[bot] |  | ||||||
| version-resolver: |  | ||||||
|     major: |  | ||||||
|         labels: |  | ||||||
|             - 'major' |  | ||||||
|             - '❗ BreakingChange' |  | ||||||
|     minor: |  | ||||||
|         labels: |  | ||||||
|             - 'minor' |  | ||||||
|             - '✏️ Feature' |  | ||||||
|     patch: |  | ||||||
|         labels: |  | ||||||
|             - 'patch' |  | ||||||
|             - '📒 Documentation' |  | ||||||
|             - '☢️ Bug' |  | ||||||
|             - '🤖 Dependencies' |  | ||||||
|             - '🧹 Updates' |  | ||||||
|     default: patch |  | ||||||
| template: | |  | ||||||
|     $CHANGES |  | ||||||
|  |  | ||||||
|     **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...memcache/v$RESOLVED_VERSION |  | ||||||
|  |  | ||||||
|     Thank you $CONTRIBUTORS for making this update possible. |  | ||||||
							
								
								
									
										50
									
								
								.github/release-drafter-memory.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										50
									
								
								.github/release-drafter-memory.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,50 +0,0 @@ | |||||||
| name-template: 'Memory - v$RESOLVED_VERSION' |  | ||||||
| tag-template: 'memory/v$RESOLVED_VERSION' |  | ||||||
| tag-prefix: memory/v |  | ||||||
| include-paths: |  | ||||||
|   - memory |  | ||||||
| categories: |  | ||||||
|     - title: '❗ Breaking Changes' |  | ||||||
|       labels: |  | ||||||
|           - '❗ BreakingChange' |  | ||||||
|     - title: '🚀 New' |  | ||||||
|       labels: |  | ||||||
|           - '✏️ Feature' |  | ||||||
|     - title: '🧹 Updates' |  | ||||||
|       labels: |  | ||||||
|           - '🧹 Updates' |  | ||||||
|           - '🤖 Dependencies' |  | ||||||
|     - title: '🐛 Fixes' |  | ||||||
|       labels: |  | ||||||
|           - '☢️ Bug' |  | ||||||
|     - title: '📚 Documentation' |  | ||||||
|       labels: |  | ||||||
|           - '📒 Documentation' |  | ||||||
| change-template: '- $TITLE (#$NUMBER)' |  | ||||||
| change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks. |  | ||||||
| exclude-contributors: |  | ||||||
|     - dependabot |  | ||||||
|     - dependabot[bot] |  | ||||||
| version-resolver: |  | ||||||
|     major: |  | ||||||
|         labels: |  | ||||||
|             - 'major' |  | ||||||
|             - '❗ BreakingChange' |  | ||||||
|     minor: |  | ||||||
|         labels: |  | ||||||
|             - 'minor' |  | ||||||
|             - '✏️ Feature' |  | ||||||
|     patch: |  | ||||||
|         labels: |  | ||||||
|             - 'patch' |  | ||||||
|             - '📒 Documentation' |  | ||||||
|             - '☢️ Bug' |  | ||||||
|             - '🤖 Dependencies' |  | ||||||
|             - '🧹 Updates' |  | ||||||
|     default: patch |  | ||||||
| template: | |  | ||||||
|     $CHANGES |  | ||||||
|  |  | ||||||
|     **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...memory/v$RESOLVED_VERSION |  | ||||||
|  |  | ||||||
|     Thank you $CONTRIBUTORS for making this update possible. |  | ||||||
							
								
								
									
										50
									
								
								.github/release-drafter-minio.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										50
									
								
								.github/release-drafter-minio.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,50 +0,0 @@ | |||||||
| name-template: 'Minio - v$RESOLVED_VERSION' |  | ||||||
| tag-template: 'minio/v$RESOLVED_VERSION' |  | ||||||
| tag-prefix: minio/v |  | ||||||
| include-paths: |  | ||||||
|   - minio |  | ||||||
| categories: |  | ||||||
|     - title: '❗ Breaking Changes' |  | ||||||
|       labels: |  | ||||||
|           - '❗ BreakingChange' |  | ||||||
|     - title: '🚀 New' |  | ||||||
|       labels: |  | ||||||
|           - '✏️ Feature' |  | ||||||
|     - title: '🧹 Updates' |  | ||||||
|       labels: |  | ||||||
|           - '🧹 Updates' |  | ||||||
|           - '🤖 Dependencies' |  | ||||||
|     - title: '🐛 Fixes' |  | ||||||
|       labels: |  | ||||||
|           - '☢️ Bug' |  | ||||||
|     - title: '📚 Documentation' |  | ||||||
|       labels: |  | ||||||
|           - '📒 Documentation' |  | ||||||
| change-template: '- $TITLE (#$NUMBER)' |  | ||||||
| change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks. |  | ||||||
| exclude-contributors: |  | ||||||
|     - dependabot |  | ||||||
|     - dependabot[bot] |  | ||||||
| version-resolver: |  | ||||||
|     major: |  | ||||||
|         labels: |  | ||||||
|             - 'major' |  | ||||||
|             - '❗ BreakingChange' |  | ||||||
|     minor: |  | ||||||
|         labels: |  | ||||||
|             - 'minor' |  | ||||||
|             - '✏️ Feature' |  | ||||||
|     patch: |  | ||||||
|         labels: |  | ||||||
|             - 'patch' |  | ||||||
|             - '📒 Documentation' |  | ||||||
|             - '☢️ Bug' |  | ||||||
|             - '🤖 Dependencies' |  | ||||||
|             - '🧹 Updates' |  | ||||||
|     default: patch |  | ||||||
| template: | |  | ||||||
|     $CHANGES |  | ||||||
|  |  | ||||||
|     **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...minio/v$RESOLVED_VERSION |  | ||||||
|  |  | ||||||
|     Thank you $CONTRIBUTORS for making this update possible. |  | ||||||
							
								
								
									
										50
									
								
								.github/release-drafter-mockstorage.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										50
									
								
								.github/release-drafter-mockstorage.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,50 +0,0 @@ | |||||||
| name-template: 'MockStorage - v$RESOLVED_VERSION' |  | ||||||
| tag-template: 'mockstorage/v$RESOLVED_VERSION' |  | ||||||
| tag-prefix: mockstorage/v |  | ||||||
| include-paths: |  | ||||||
|   - mockstorage |  | ||||||
| categories: |  | ||||||
|     - title: '❗ Breaking Changes' |  | ||||||
|       labels: |  | ||||||
|           - '❗ BreakingChange' |  | ||||||
|     - title: '🚀 New' |  | ||||||
|       labels: |  | ||||||
|           - '✏️ Feature' |  | ||||||
|     - title: '🧹 Updates' |  | ||||||
|       labels: |  | ||||||
|           - '🧹 Updates' |  | ||||||
|           - '🤖 Dependencies' |  | ||||||
|     - title: '🐛 Fixes' |  | ||||||
|       labels: |  | ||||||
|           - '☢️ Bug' |  | ||||||
|     - title: '📚 Documentation' |  | ||||||
|       labels: |  | ||||||
|           - '📒 Documentation' |  | ||||||
| change-template: '- $TITLE (#$NUMBER)' |  | ||||||
| change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks. |  | ||||||
| exclude-contributors: |  | ||||||
|     - dependabot |  | ||||||
|     - dependabot[bot] |  | ||||||
| version-resolver: |  | ||||||
|     major: |  | ||||||
|         labels: |  | ||||||
|             - 'major' |  | ||||||
|             - '❗ BreakingChange' |  | ||||||
|     minor: |  | ||||||
|         labels: |  | ||||||
|             - 'minor' |  | ||||||
|             - '✏️ Feature' |  | ||||||
|     patch: |  | ||||||
|         labels: |  | ||||||
|             - 'patch' |  | ||||||
|             - '📒 Documentation' |  | ||||||
|             - '☢️ Bug' |  | ||||||
|             - '🤖 Dependencies' |  | ||||||
|             - '🧹 Updates' |  | ||||||
|     default: patch |  | ||||||
| template: | |  | ||||||
|     $CHANGES |  | ||||||
|  |  | ||||||
|     **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...mockstorage/v$RESOLVED_VERSION |  | ||||||
|  |  | ||||||
|     Thank you $CONTRIBUTORS for making this update possible. |  | ||||||
							
								
								
									
										50
									
								
								.github/release-drafter-mongodb.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										50
									
								
								.github/release-drafter-mongodb.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,50 +0,0 @@ | |||||||
| name-template: 'MongoDB - v$RESOLVED_VERSION' |  | ||||||
| tag-template: 'mongodb/v$RESOLVED_VERSION' |  | ||||||
| tag-prefix: mongodb/v |  | ||||||
| include-paths: |  | ||||||
|   - mongodb |  | ||||||
| categories: |  | ||||||
|     - title: '❗ Breaking Changes' |  | ||||||
|       labels: |  | ||||||
|           - '❗ BreakingChange' |  | ||||||
|     - title: '🚀 New' |  | ||||||
|       labels: |  | ||||||
|           - '✏️ Feature' |  | ||||||
|     - title: '🧹 Updates' |  | ||||||
|       labels: |  | ||||||
|           - '🧹 Updates' |  | ||||||
|           - '🤖 Dependencies' |  | ||||||
|     - title: '🐛 Fixes' |  | ||||||
|       labels: |  | ||||||
|           - '☢️ Bug' |  | ||||||
|     - title: '📚 Documentation' |  | ||||||
|       labels: |  | ||||||
|           - '📒 Documentation' |  | ||||||
| change-template: '- $TITLE (#$NUMBER)' |  | ||||||
| change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks. |  | ||||||
| exclude-contributors: |  | ||||||
|     - dependabot |  | ||||||
|     - dependabot[bot] |  | ||||||
| version-resolver: |  | ||||||
|     major: |  | ||||||
|         labels: |  | ||||||
|             - 'major' |  | ||||||
|             - '❗ BreakingChange' |  | ||||||
|     minor: |  | ||||||
|         labels: |  | ||||||
|             - 'minor' |  | ||||||
|             - '✏️ Feature' |  | ||||||
|     patch: |  | ||||||
|         labels: |  | ||||||
|             - 'patch' |  | ||||||
|             - '📒 Documentation' |  | ||||||
|             - '☢️ Bug' |  | ||||||
|             - '🤖 Dependencies' |  | ||||||
|             - '🧹 Updates' |  | ||||||
|     default: patch |  | ||||||
| template: | |  | ||||||
|     $CHANGES |  | ||||||
|  |  | ||||||
|     **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...mongodb/v$RESOLVED_VERSION |  | ||||||
|  |  | ||||||
|     Thank you $CONTRIBUTORS for making this update possible. |  | ||||||
							
								
								
									
										50
									
								
								.github/release-drafter-mssql.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										50
									
								
								.github/release-drafter-mssql.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,50 +0,0 @@ | |||||||
| name-template: 'MSSQL - v$RESOLVED_VERSION' |  | ||||||
| tag-template: 'mssql/v$RESOLVED_VERSION' |  | ||||||
| tag-prefix: mssql/v |  | ||||||
| include-paths: |  | ||||||
|   - mssql |  | ||||||
| categories: |  | ||||||
|     - title: '❗ Breaking Changes' |  | ||||||
|       labels: |  | ||||||
|           - '❗ BreakingChange' |  | ||||||
|     - title: '🚀 New' |  | ||||||
|       labels: |  | ||||||
|           - '✏️ Feature' |  | ||||||
|     - title: '🧹 Updates' |  | ||||||
|       labels: |  | ||||||
|           - '🧹 Updates' |  | ||||||
|           - '🤖 Dependencies' |  | ||||||
|     - title: '🐛 Fixes' |  | ||||||
|       labels: |  | ||||||
|           - '☢️ Bug' |  | ||||||
|     - title: '📚 Documentation' |  | ||||||
|       labels: |  | ||||||
|           - '📒 Documentation' |  | ||||||
| change-template: '- $TITLE (#$NUMBER)' |  | ||||||
| change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks. |  | ||||||
| exclude-contributors: |  | ||||||
|     - dependabot |  | ||||||
|     - dependabot[bot] |  | ||||||
| version-resolver: |  | ||||||
|     major: |  | ||||||
|         labels: |  | ||||||
|             - 'major' |  | ||||||
|             - '❗ BreakingChange' |  | ||||||
|     minor: |  | ||||||
|         labels: |  | ||||||
|             - 'minor' |  | ||||||
|             - '✏️ Feature' |  | ||||||
|     patch: |  | ||||||
|         labels: |  | ||||||
|             - 'patch' |  | ||||||
|             - '📒 Documentation' |  | ||||||
|             - '☢️ Bug' |  | ||||||
|             - '🤖 Dependencies' |  | ||||||
|             - '🧹 Updates' |  | ||||||
|     default: patch |  | ||||||
| template: | |  | ||||||
|     $CHANGES |  | ||||||
|  |  | ||||||
|     **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...mssql/v$RESOLVED_VERSION |  | ||||||
|  |  | ||||||
|     Thank you $CONTRIBUTORS for making this update possible. |  | ||||||
							
								
								
									
										50
									
								
								.github/release-drafter-mysql.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										50
									
								
								.github/release-drafter-mysql.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,50 +0,0 @@ | |||||||
| name-template: 'MySQL - v$RESOLVED_VERSION' |  | ||||||
| tag-template: 'mysql/v$RESOLVED_VERSION' |  | ||||||
| tag-prefix: mysql/v |  | ||||||
| include-paths: |  | ||||||
|   - mysql |  | ||||||
| categories: |  | ||||||
|     - title: '❗ Breaking Changes' |  | ||||||
|       labels: |  | ||||||
|           - '❗ BreakingChange' |  | ||||||
|     - title: '🚀 New' |  | ||||||
|       labels: |  | ||||||
|           - '✏️ Feature' |  | ||||||
|     - title: '🧹 Updates' |  | ||||||
|       labels: |  | ||||||
|           - '🧹 Updates' |  | ||||||
|           - '🤖 Dependencies' |  | ||||||
|     - title: '🐛 Fixes' |  | ||||||
|       labels: |  | ||||||
|           - '☢️ Bug' |  | ||||||
|     - title: '📚 Documentation' |  | ||||||
|       labels: |  | ||||||
|           - '📒 Documentation' |  | ||||||
| change-template: '- $TITLE (#$NUMBER)' |  | ||||||
| change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks. |  | ||||||
| exclude-contributors: |  | ||||||
|     - dependabot |  | ||||||
|     - dependabot[bot] |  | ||||||
| version-resolver: |  | ||||||
|     major: |  | ||||||
|         labels: |  | ||||||
|             - 'major' |  | ||||||
|             - '❗ BreakingChange' |  | ||||||
|     minor: |  | ||||||
|         labels: |  | ||||||
|             - 'minor' |  | ||||||
|             - '✏️ Feature' |  | ||||||
|     patch: |  | ||||||
|         labels: |  | ||||||
|             - 'patch' |  | ||||||
|             - '📒 Documentation' |  | ||||||
|             - '☢️ Bug' |  | ||||||
|             - '🤖 Dependencies' |  | ||||||
|             - '🧹 Updates' |  | ||||||
|     default: patch |  | ||||||
| template: | |  | ||||||
|     $CHANGES |  | ||||||
|  |  | ||||||
|     **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...mysql/v$RESOLVED_VERSION |  | ||||||
|  |  | ||||||
|     Thank you $CONTRIBUTORS for making this update possible. |  | ||||||
							
								
								
									
										50
									
								
								.github/release-drafter-nats.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										50
									
								
								.github/release-drafter-nats.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,50 +0,0 @@ | |||||||
| name-template: 'Nats - v$RESOLVED_VERSION' |  | ||||||
| tag-template: 'nats/v$RESOLVED_VERSION' |  | ||||||
| tag-prefix: nats/v |  | ||||||
| include-paths: |  | ||||||
|   - nats |  | ||||||
| categories: |  | ||||||
|     - title: '❗ Breaking Changes' |  | ||||||
|       labels: |  | ||||||
|           - '❗ BreakingChange' |  | ||||||
|     - title: '🚀 New' |  | ||||||
|       labels: |  | ||||||
|           - '✏️ Feature' |  | ||||||
|     - title: '🧹 Updates' |  | ||||||
|       labels: |  | ||||||
|           - '🧹 Updates' |  | ||||||
|           - '🤖 Dependencies' |  | ||||||
|     - title: '🐛 Fixes' |  | ||||||
|       labels: |  | ||||||
|           - '☢️ Bug' |  | ||||||
|     - title: '📚 Documentation' |  | ||||||
|       labels: |  | ||||||
|           - '📒 Documentation' |  | ||||||
| change-template: '- $TITLE (#$NUMBER)' |  | ||||||
| change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks. |  | ||||||
| exclude-contributors: |  | ||||||
|     - dependabot |  | ||||||
|     - dependabot[bot] |  | ||||||
| version-resolver: |  | ||||||
|     major: |  | ||||||
|         labels: |  | ||||||
|             - 'major' |  | ||||||
|             - '❗ BreakingChange' |  | ||||||
|     minor: |  | ||||||
|         labels: |  | ||||||
|             - 'minor' |  | ||||||
|             - '✏️ Feature' |  | ||||||
|     patch: |  | ||||||
|         labels: |  | ||||||
|             - 'patch' |  | ||||||
|             - '📒 Documentation' |  | ||||||
|             - '☢️ Bug' |  | ||||||
|             - '🤖 Dependencies' |  | ||||||
|             - '🧹 Updates' |  | ||||||
|     default: patch |  | ||||||
| template: | |  | ||||||
|     $CHANGES |  | ||||||
|  |  | ||||||
|     **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...nats/v$RESOLVED_VERSION |  | ||||||
|  |  | ||||||
|     Thank you $CONTRIBUTORS for making this update possible. |  | ||||||
							
								
								
									
										50
									
								
								.github/release-drafter-pebble.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										50
									
								
								.github/release-drafter-pebble.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,50 +0,0 @@ | |||||||
| name-template: "Pebble - v$RESOLVED_VERSION" |  | ||||||
| tag-template: "pebble/v$RESOLVED_VERSION" |  | ||||||
| tag-prefix: pebble/v |  | ||||||
| include-paths: |  | ||||||
|   - pebble |  | ||||||
| categories: |  | ||||||
|     - title: '❗ Breaking Changes' |  | ||||||
|       labels: |  | ||||||
|           - '❗ BreakingChange' |  | ||||||
|     - title: '🚀 New' |  | ||||||
|       labels: |  | ||||||
|           - '✏️ Feature' |  | ||||||
|     - title: '🧹 Updates' |  | ||||||
|       labels: |  | ||||||
|           - '🧹 Updates' |  | ||||||
|           - '🤖 Dependencies' |  | ||||||
|     - title: '🐛 Fixes' |  | ||||||
|       labels: |  | ||||||
|           - '☢️ Bug' |  | ||||||
|     - title: '📚 Documentation' |  | ||||||
|       labels: |  | ||||||
|           - '📒 Documentation' |  | ||||||
| change-template: '- $TITLE (#$NUMBER)' |  | ||||||
| change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks. |  | ||||||
| exclude-contributors: |  | ||||||
|     - dependabot |  | ||||||
|     - dependabot[bot] |  | ||||||
| version-resolver: |  | ||||||
|     major: |  | ||||||
|         labels: |  | ||||||
|             - 'major' |  | ||||||
|             - '❗ BreakingChange' |  | ||||||
|     minor: |  | ||||||
|         labels: |  | ||||||
|             - 'minor' |  | ||||||
|             - '✏️ Feature' |  | ||||||
|     patch: |  | ||||||
|         labels: |  | ||||||
|             - 'patch' |  | ||||||
|             - '📒 Documentation' |  | ||||||
|             - '☢️ Bug' |  | ||||||
|             - '🤖 Dependencies' |  | ||||||
|             - '🧹 Updates' |  | ||||||
|     default: patch |  | ||||||
| template: | |  | ||||||
|   $CHANGES |  | ||||||
|  |  | ||||||
|   **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...pebble/v$RESOLVED_VERSION |  | ||||||
|  |  | ||||||
|   Thank you $CONTRIBUTORS for making this update possible. |  | ||||||
							
								
								
									
										50
									
								
								.github/release-drafter-postgres.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										50
									
								
								.github/release-drafter-postgres.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,50 +0,0 @@ | |||||||
| name-template: 'Postgres - v$RESOLVED_VERSION' |  | ||||||
| tag-template: 'postgres/v$RESOLVED_VERSION' |  | ||||||
| tag-prefix: postgres/v |  | ||||||
| include-paths: |  | ||||||
|   - postgres |  | ||||||
| categories: |  | ||||||
|     - title: '❗ Breaking Changes' |  | ||||||
|       labels: |  | ||||||
|           - '❗ BreakingChange' |  | ||||||
|     - title: '🚀 New' |  | ||||||
|       labels: |  | ||||||
|           - '✏️ Feature' |  | ||||||
|     - title: '🧹 Updates' |  | ||||||
|       labels: |  | ||||||
|           - '🧹 Updates' |  | ||||||
|           - '🤖 Dependencies' |  | ||||||
|     - title: '🐛 Fixes' |  | ||||||
|       labels: |  | ||||||
|           - '☢️ Bug' |  | ||||||
|     - title: '📚 Documentation' |  | ||||||
|       labels: |  | ||||||
|           - '📒 Documentation' |  | ||||||
| change-template: '- $TITLE (#$NUMBER)' |  | ||||||
| change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks. |  | ||||||
| exclude-contributors: |  | ||||||
|     - dependabot |  | ||||||
|     - dependabot[bot] |  | ||||||
| version-resolver: |  | ||||||
|     major: |  | ||||||
|         labels: |  | ||||||
|             - 'major' |  | ||||||
|             - '❗ BreakingChange' |  | ||||||
|     minor: |  | ||||||
|         labels: |  | ||||||
|             - 'minor' |  | ||||||
|             - '✏️ Feature' |  | ||||||
|     patch: |  | ||||||
|         labels: |  | ||||||
|             - 'patch' |  | ||||||
|             - '📒 Documentation' |  | ||||||
|             - '☢️ Bug' |  | ||||||
|             - '🤖 Dependencies' |  | ||||||
|             - '🧹 Updates' |  | ||||||
|     default: patch |  | ||||||
| template: | |  | ||||||
|     $CHANGES |  | ||||||
|  |  | ||||||
|     **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...postgres/v$RESOLVED_VERSION |  | ||||||
|  |  | ||||||
|     Thank you $CONTRIBUTORS for making this update possible. |  | ||||||
							
								
								
									
										50
									
								
								.github/release-drafter-redis.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										50
									
								
								.github/release-drafter-redis.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,50 +0,0 @@ | |||||||
| name-template: 'Redis - v$RESOLVED_VERSION' |  | ||||||
| tag-template: 'redis/v$RESOLVED_VERSION' |  | ||||||
| tag-prefix: redis/v |  | ||||||
| include-paths: |  | ||||||
|   - redis |  | ||||||
| categories: |  | ||||||
|     - title: '❗ Breaking Changes' |  | ||||||
|       labels: |  | ||||||
|           - '❗ BreakingChange' |  | ||||||
|     - title: '🚀 New' |  | ||||||
|       labels: |  | ||||||
|           - '✏️ Feature' |  | ||||||
|     - title: '🧹 Updates' |  | ||||||
|       labels: |  | ||||||
|           - '🧹 Updates' |  | ||||||
|           - '🤖 Dependencies' |  | ||||||
|     - title: '🐛 Fixes' |  | ||||||
|       labels: |  | ||||||
|           - '☢️ Bug' |  | ||||||
|     - title: '📚 Documentation' |  | ||||||
|       labels: |  | ||||||
|           - '📒 Documentation' |  | ||||||
| change-template: '- $TITLE (#$NUMBER)' |  | ||||||
| change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks. |  | ||||||
| exclude-contributors: |  | ||||||
|     - dependabot |  | ||||||
|     - dependabot[bot] |  | ||||||
| version-resolver: |  | ||||||
|     major: |  | ||||||
|         labels: |  | ||||||
|             - 'major' |  | ||||||
|             - '❗ BreakingChange' |  | ||||||
|     minor: |  | ||||||
|         labels: |  | ||||||
|             - 'minor' |  | ||||||
|             - '✏️ Feature' |  | ||||||
|     patch: |  | ||||||
|         labels: |  | ||||||
|             - 'patch' |  | ||||||
|             - '📒 Documentation' |  | ||||||
|             - '☢️ Bug' |  | ||||||
|             - '🤖 Dependencies' |  | ||||||
|             - '🧹 Updates' |  | ||||||
|     default: patch |  | ||||||
| template: | |  | ||||||
|     $CHANGES |  | ||||||
|  |  | ||||||
|     **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...redis/v$RESOLVED_VERSION |  | ||||||
|  |  | ||||||
|     Thank you $CONTRIBUTORS for making this update possible. |  | ||||||
							
								
								
									
										50
									
								
								.github/release-drafter-ristretto.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										50
									
								
								.github/release-drafter-ristretto.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,50 +0,0 @@ | |||||||
| name-template: 'Ristretto - v$RESOLVED_VERSION' |  | ||||||
| tag-template: 'ristretto/v$RESOLVED_VERSION' |  | ||||||
| tag-prefix: ristretto/v |  | ||||||
| include-paths: |  | ||||||
|   - ristretto |  | ||||||
| categories: |  | ||||||
|     - title: '❗ Breaking Changes' |  | ||||||
|       labels: |  | ||||||
|           - '❗ BreakingChange' |  | ||||||
|     - title: '🚀 New' |  | ||||||
|       labels: |  | ||||||
|           - '✏️ Feature' |  | ||||||
|     - title: '🧹 Updates' |  | ||||||
|       labels: |  | ||||||
|           - '🧹 Updates' |  | ||||||
|           - '🤖 Dependencies' |  | ||||||
|     - title: '🐛 Fixes' |  | ||||||
|       labels: |  | ||||||
|           - '☢️ Bug' |  | ||||||
|     - title: '📚 Documentation' |  | ||||||
|       labels: |  | ||||||
|           - '📒 Documentation' |  | ||||||
| change-template: '- $TITLE (#$NUMBER)' |  | ||||||
| change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks. |  | ||||||
| exclude-contributors: |  | ||||||
|     - dependabot |  | ||||||
|     - dependabot[bot] |  | ||||||
| version-resolver: |  | ||||||
|     major: |  | ||||||
|         labels: |  | ||||||
|             - 'major' |  | ||||||
|             - '❗ BreakingChange' |  | ||||||
|     minor: |  | ||||||
|         labels: |  | ||||||
|             - 'minor' |  | ||||||
|             - '✏️ Feature' |  | ||||||
|     patch: |  | ||||||
|         labels: |  | ||||||
|             - 'patch' |  | ||||||
|             - '📒 Documentation' |  | ||||||
|             - '☢️ Bug' |  | ||||||
|             - '🤖 Dependencies' |  | ||||||
|             - '🧹 Updates' |  | ||||||
|     default: patch |  | ||||||
| template: | |  | ||||||
|     $CHANGES |  | ||||||
|  |  | ||||||
|     **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...ristretto/v$RESOLVED_VERSION |  | ||||||
|  |  | ||||||
|     Thank you $CONTRIBUTORS for making this update possible. |  | ||||||
							
								
								
									
										50
									
								
								.github/release-drafter-rueidis.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										50
									
								
								.github/release-drafter-rueidis.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,50 +0,0 @@ | |||||||
| name-template: 'Rueidis - v$RESOLVED_VERSION' |  | ||||||
| tag-template: 'rueidis/v$RESOLVED_VERSION' |  | ||||||
| tag-prefix: rueidis/v |  | ||||||
| include-paths: |  | ||||||
|   - rueidis |  | ||||||
| categories: |  | ||||||
|     - title: '❗ Breaking Changes' |  | ||||||
|       labels: |  | ||||||
|           - '❗ BreakingChange' |  | ||||||
|     - title: '🚀 New' |  | ||||||
|       labels: |  | ||||||
|           - '✏️ Feature' |  | ||||||
|     - title: '🧹 Updates' |  | ||||||
|       labels: |  | ||||||
|           - '🧹 Updates' |  | ||||||
|           - '🤖 Dependencies' |  | ||||||
|     - title: '🐛 Fixes' |  | ||||||
|       labels: |  | ||||||
|           - '☢️ Bug' |  | ||||||
|     - title: '📚 Documentation' |  | ||||||
|       labels: |  | ||||||
|           - '📒 Documentation' |  | ||||||
| change-template: '- $TITLE (#$NUMBER)' |  | ||||||
| change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks. |  | ||||||
| exclude-contributors: |  | ||||||
|     - dependabot |  | ||||||
|     - dependabot[bot] |  | ||||||
| version-resolver: |  | ||||||
|     major: |  | ||||||
|         labels: |  | ||||||
|             - 'major' |  | ||||||
|             - '❗ BreakingChange' |  | ||||||
|     minor: |  | ||||||
|         labels: |  | ||||||
|             - 'minor' |  | ||||||
|             - '✏️ Feature' |  | ||||||
|     patch: |  | ||||||
|         labels: |  | ||||||
|             - 'patch' |  | ||||||
|             - '📒 Documentation' |  | ||||||
|             - '☢️ Bug' |  | ||||||
|             - '🤖 Dependencies' |  | ||||||
|             - '🧹 Updates' |  | ||||||
|     default: patch |  | ||||||
| template: | |  | ||||||
|     $CHANGES |  | ||||||
|  |  | ||||||
|     **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...rueidis/v$RESOLVED_VERSION |  | ||||||
|  |  | ||||||
|     Thank you $CONTRIBUTORS for making this update possible. |  | ||||||
							
								
								
									
										50
									
								
								.github/release-drafter-s3.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										50
									
								
								.github/release-drafter-s3.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,50 +0,0 @@ | |||||||
| name-template: 'S3 - v$RESOLVED_VERSION' |  | ||||||
| tag-template: 's3/v$RESOLVED_VERSION' |  | ||||||
| tag-prefix: s3/v |  | ||||||
| include-paths: |  | ||||||
|   - s3 |  | ||||||
| categories: |  | ||||||
|     - title: '❗ Breaking Changes' |  | ||||||
|       labels: |  | ||||||
|           - '❗ BreakingChange' |  | ||||||
|     - title: '🚀 New' |  | ||||||
|       labels: |  | ||||||
|           - '✏️ Feature' |  | ||||||
|     - title: '🧹 Updates' |  | ||||||
|       labels: |  | ||||||
|           - '🧹 Updates' |  | ||||||
|           - '🤖 Dependencies' |  | ||||||
|     - title: '🐛 Fixes' |  | ||||||
|       labels: |  | ||||||
|           - '☢️ Bug' |  | ||||||
|     - title: '📚 Documentation' |  | ||||||
|       labels: |  | ||||||
|           - '📒 Documentation' |  | ||||||
| change-template: '- $TITLE (#$NUMBER)' |  | ||||||
| change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks. |  | ||||||
| exclude-contributors: |  | ||||||
|     - dependabot |  | ||||||
|     - dependabot[bot] |  | ||||||
| version-resolver: |  | ||||||
|     major: |  | ||||||
|         labels: |  | ||||||
|             - 'major' |  | ||||||
|             - '❗ BreakingChange' |  | ||||||
|     minor: |  | ||||||
|         labels: |  | ||||||
|             - 'minor' |  | ||||||
|             - '✏️ Feature' |  | ||||||
|     patch: |  | ||||||
|         labels: |  | ||||||
|             - 'patch' |  | ||||||
|             - '📒 Documentation' |  | ||||||
|             - '☢️ Bug' |  | ||||||
|             - '🤖 Dependencies' |  | ||||||
|             - '🧹 Updates' |  | ||||||
|     default: patch |  | ||||||
| template: | |  | ||||||
|     $CHANGES |  | ||||||
|  |  | ||||||
|     **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...s3/v$RESOLVED_VERSION |  | ||||||
|  |  | ||||||
|     Thank you $CONTRIBUTORS for making this update possible. |  | ||||||
							
								
								
									
										50
									
								
								.github/release-drafter-scylladb.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										50
									
								
								.github/release-drafter-scylladb.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,50 +0,0 @@ | |||||||
| name-template: 'ScyllaDb - v$RESOLVED_VERSION' |  | ||||||
| tag-template: 'scylladb/v$RESOLVED_VERSION' |  | ||||||
| tag-prefix: scylladb/v |  | ||||||
| include-paths: |  | ||||||
|   - scylladb |  | ||||||
| categories: |  | ||||||
|     - title: '❗ Breaking Changes' |  | ||||||
|       labels: |  | ||||||
|           - '❗ BreakingChange' |  | ||||||
|     - title: '🚀 New' |  | ||||||
|       labels: |  | ||||||
|           - '✏️ Feature' |  | ||||||
|     - title: '🧹 Updates' |  | ||||||
|       labels: |  | ||||||
|           - '🧹 Updates' |  | ||||||
|           - '🤖 Dependencies' |  | ||||||
|     - title: '🐛 Fixes' |  | ||||||
|       labels: |  | ||||||
|           - '☢️ Bug' |  | ||||||
|     - title: '📚 Documentation' |  | ||||||
|       labels: |  | ||||||
|           - '📒 Documentation' |  | ||||||
| change-template: '- $TITLE (#$NUMBER)' |  | ||||||
| change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks. |  | ||||||
| exclude-contributors: |  | ||||||
|     - dependabot |  | ||||||
|     - dependabot[bot] |  | ||||||
| version-resolver: |  | ||||||
|     major: |  | ||||||
|         labels: |  | ||||||
|             - 'major' |  | ||||||
|             - '❗ BreakingChange' |  | ||||||
|     minor: |  | ||||||
|         labels: |  | ||||||
|             - 'minor' |  | ||||||
|             - '✏️ Feature' |  | ||||||
|     patch: |  | ||||||
|         labels: |  | ||||||
|             - 'patch' |  | ||||||
|             - '📒 Documentation' |  | ||||||
|             - '☢️ Bug' |  | ||||||
|             - '🤖 Dependencies' |  | ||||||
|             - '🧹 Updates' |  | ||||||
|     default: patch |  | ||||||
| template: | |  | ||||||
|     $CHANGES |  | ||||||
|  |  | ||||||
|     **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...scylladb/v$RESOLVED_VERSION |  | ||||||
|  |  | ||||||
|     Thank you $CONTRIBUTORS for making this update possible. |  | ||||||
							
								
								
									
										50
									
								
								.github/release-drafter-sqlite3.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										50
									
								
								.github/release-drafter-sqlite3.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,50 +0,0 @@ | |||||||
| name-template: 'SQLite3 - v$RESOLVED_VERSION' |  | ||||||
| tag-template: 'sqlite3/v$RESOLVED_VERSION' |  | ||||||
| tag-prefix: sqlite3/v |  | ||||||
| include-paths: |  | ||||||
|   - sqlite3 |  | ||||||
| categories: |  | ||||||
|     - title: '❗ Breaking Changes' |  | ||||||
|       labels: |  | ||||||
|           - '❗ BreakingChange' |  | ||||||
|     - title: '🚀 New' |  | ||||||
|       labels: |  | ||||||
|           - '✏️ Feature' |  | ||||||
|     - title: '🧹 Updates' |  | ||||||
|       labels: |  | ||||||
|           - '🧹 Updates' |  | ||||||
|           - '🤖 Dependencies' |  | ||||||
|     - title: '🐛 Fixes' |  | ||||||
|       labels: |  | ||||||
|           - '☢️ Bug' |  | ||||||
|     - title: '📚 Documentation' |  | ||||||
|       labels: |  | ||||||
|           - '📒 Documentation' |  | ||||||
| change-template: '- $TITLE (#$NUMBER)' |  | ||||||
| change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks. |  | ||||||
| exclude-contributors: |  | ||||||
|     - dependabot |  | ||||||
|     - dependabot[bot] |  | ||||||
| version-resolver: |  | ||||||
|     major: |  | ||||||
|         labels: |  | ||||||
|             - 'major' |  | ||||||
|             - '❗ BreakingChange' |  | ||||||
|     minor: |  | ||||||
|         labels: |  | ||||||
|             - 'minor' |  | ||||||
|             - '✏️ Feature' |  | ||||||
|     patch: |  | ||||||
|         labels: |  | ||||||
|             - 'patch' |  | ||||||
|             - '📒 Documentation' |  | ||||||
|             - '☢️ Bug' |  | ||||||
|             - '🤖 Dependencies' |  | ||||||
|             - '🧹 Updates' |  | ||||||
|     default: patch |  | ||||||
| template: | |  | ||||||
|     $CHANGES |  | ||||||
|  |  | ||||||
|     **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...sqlite3/v$RESOLVED_VERSION |  | ||||||
|  |  | ||||||
|     Thank you $CONTRIBUTORS for making this update possible. |  | ||||||
| @@ -1,8 +1,8 @@ | |||||||
| name-template: 'ArangoDB - v$RESOLVED_VERSION' | name-template: '{{FOLDER}} - v$RESOLVED_VERSION' | ||||||
| tag-template: 'arangodb/v$RESOLVED_VERSION' | tag-template: '{{FOLDER}}/v$RESOLVED_VERSION' | ||||||
| tag-prefix: arangodb/v | tag-prefix: {{FOLDER}}/v | ||||||
| include-paths: | include-paths: | ||||||
|   - arangodb |   - {{FOLDER}} | ||||||
| categories: | categories: | ||||||
|     - title: '❗ Breaking Changes' |     - title: '❗ Breaking Changes' | ||||||
|       labels: |       labels: | ||||||
| @@ -45,6 +45,6 @@ version-resolver: | |||||||
| template: | | template: | | ||||||
|     $CHANGES |     $CHANGES | ||||||
| 
 | 
 | ||||||
|     **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...arangodb/v$RESOLVED_VERSION |     **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...{{FOLDER}}/v$RESOLVED_VERSION | ||||||
| 
 | 
 | ||||||
|     Thank you $CONTRIBUTORS for making this update possible. |     Thank you $CONTRIBUTORS for making this update possible. | ||||||
							
								
								
									
										1
									
								
								.github/scripts/gen-test-certs.sh
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								.github/scripts/gen-test-certs.sh
									
									
									
									
										vendored
									
									
								
							| @@ -56,6 +56,7 @@ _END_ | |||||||
| generate_cert server "Server-only" "-extfile ./tls/openssl.cnf -extensions server_cert" | generate_cert server "Server-only" "-extfile ./tls/openssl.cnf -extensions server_cert" | ||||||
| generate_cert client "Client-only" "-extfile ./tls/openssl.cnf -extensions client_cert" | generate_cert client "Client-only" "-extfile ./tls/openssl.cnf -extensions client_cert" | ||||||
| generate_cert redis "localhost" "-extfile ./tls/openssl.cnf -extensions server_cert" | generate_cert redis "localhost" "-extfile ./tls/openssl.cnf -extensions server_cert" | ||||||
|  | generate_cert valkey "localhost" "-extfile ./tls/openssl.cnf -extensions server_cert" | ||||||
|  |  | ||||||
| # List generated certs | # List generated certs | ||||||
| ls -la ./tls | ls -la ./tls | ||||||
|   | |||||||
							
								
								
									
										19
									
								
								.github/workflows/benchmark.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								.github/workflows/benchmark.yml
									
									
									
									
										vendored
									
									
								
							| @@ -86,7 +86,7 @@ jobs: | |||||||
|         uses: actions/setup-go@v5 |         uses: actions/setup-go@v5 | ||||||
|         with: |         with: | ||||||
|           # NOTE: Keep this in sync with the version from go.mod |           # NOTE: Keep this in sync with the version from go.mod | ||||||
|           go-version: "1.20.x" |           go-version: "1.21.x" | ||||||
|  |  | ||||||
|       - name: Setup Node.js |       - name: Setup Node.js | ||||||
|         uses: actions/setup-node@v4 |         uses: actions/setup-node@v4 | ||||||
| @@ -108,14 +108,6 @@ jobs: | |||||||
|           docker run -d -p 1408:1408 -p 30000:30000 ghcr.io/oracle/coherence-ce:22.06.5 |           docker run -d -p 1408:1408 -p 30000:30000 ghcr.io/oracle/coherence-ce:22.06.5 | ||||||
|           sleep 30 |           sleep 30 | ||||||
|  |  | ||||||
|       - name: Install couchbase |  | ||||||
|         run: | |  | ||||||
|           docker run --name couchbase -d -p 8091-8097:8091-8097 -p 9123:9123 -p 11207:11207 -p 11210:11210 -p 11280:11280 -p 18091-18097:18091-18097 couchbase:enterprise-7.1.1 |  | ||||||
|           sleep 10 |  | ||||||
|           docker exec --tty couchbase couchbase-cli cluster-init -c localhost:8091 --cluster-username admin --cluster-password 123456 --cluster-ramsize 256 --services data |  | ||||||
|           sleep 10 |  | ||||||
|           docker exec --tty couchbase couchbase-cli bucket-create -c localhost:8091 --username admin --password 123456 --bucket fiber_storage --bucket-type couchbase --bucket-ramsize 100 --enable-flush 1 |  | ||||||
|  |  | ||||||
|       - name: Install etcd |       - name: Install etcd | ||||||
|         run: | |         run: | | ||||||
|           docker run -d --name Etcd-server \ |           docker run -d --name Etcd-server \ | ||||||
| @@ -125,10 +117,6 @@ jobs: | |||||||
|             --env ETCD_ADVERTISE_CLIENT_URLS=http://etcd-server:2379 \ |             --env ETCD_ADVERTISE_CLIENT_URLS=http://etcd-server:2379 \ | ||||||
|             bitnami/etcd:latest |             bitnami/etcd:latest | ||||||
|  |  | ||||||
|       - name: Install MinIO |  | ||||||
|         run: | |  | ||||||
|           docker run -d --restart always -p 9000:9000 --name storage-minio -e MINIO_ROOT_USER='minio-user' -e MINIO_ROOT_PASSWORD='minio-password' minio/minio server /data |  | ||||||
|  |  | ||||||
|       - name: Install ScyllaDb |       - name: Install ScyllaDb | ||||||
|         run: | |         run: | | ||||||
|           docker run --name scylladb -p 9042:9042 -p 19042:19042 -p 9160:9160 -p 7000:7000 -p 7001:7001 -p 7199:7199 -p 9180:9180 -d scylladb/scylla:latest --broadcast-address 127.0.0.1 --listen-address 0.0.0.0 --broadcast-rpc-address 127.0.0.1 |           docker run --name scylladb -p 9042:9042 -p 19042:19042 -p 9160:9160 -p 7000:7000 -p 7001:7001 -p 7199:7199 -p 9180:9180 -d scylladb/scylla:latest --broadcast-address 127.0.0.1 --listen-address 0.0.0.0 --broadcast-rpc-address 127.0.0.1 | ||||||
| @@ -173,6 +161,9 @@ jobs: | |||||||
|           POSTGRES_DATABASE: fiber |           POSTGRES_DATABASE: fiber | ||||||
|           POSTGRES_USERNAME: username |           POSTGRES_USERNAME: username | ||||||
|           POSTGRES_PASSWORD: "pass#w%rd" |           POSTGRES_PASSWORD: "pass#w%rd" | ||||||
|  |           TEST_CLICKHOUSE_IMAGE: "clickhouse/clickhouse-server:23-alpine" | ||||||
|  |           TEST_COUCHBASE_IMAGE: "couchbase:enterprise-7.1.1" | ||||||
|  |           TEST_MINIO_IMAGE: "docker.io/minio/minio:RELEASE.2024-08-17T01-24-54Z" | ||||||
|  |  | ||||||
|       - name: Get Previous Benchmark Results |       - name: Get Previous Benchmark Results | ||||||
|         uses: actions/cache@v4 |         uses: actions/cache@v4 | ||||||
| @@ -181,7 +172,7 @@ jobs: | |||||||
|           key: ${{ runner.os }}-benchmark |           key: ${{ runner.os }}-benchmark | ||||||
|  |  | ||||||
|       - name: Save Benchmark Results |       - name: Save Benchmark Results | ||||||
|         uses: benchmark-action/github-action-benchmark@v1.20.3 |         uses: benchmark-action/github-action-benchmark@v1.20.4 | ||||||
|         with: |         with: | ||||||
|           tool: "go" |           tool: "go" | ||||||
|           output-file-path: output.txt |           output-file-path: output.txt | ||||||
|   | |||||||
							
								
								
									
										54
									
								
								.github/workflows/codeql-analysis.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										54
									
								
								.github/workflows/codeql-analysis.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,54 +0,0 @@ | |||||||
| name: "CodeQL" |  | ||||||
|  |  | ||||||
| on: |  | ||||||
|   push: |  | ||||||
|     branches: [master, main] |  | ||||||
|   pull_request: |  | ||||||
|     # The branches below must be a subset of the branches above |  | ||||||
|     branches: [master, main] |  | ||||||
|   schedule: |  | ||||||
|     - cron: '0 3 * * 6' |  | ||||||
|  |  | ||||||
| jobs: |  | ||||||
|   analyse: |  | ||||||
|     name: Analyse |  | ||||||
|     runs-on: ubuntu-latest |  | ||||||
|  |  | ||||||
|     steps: |  | ||||||
|     - name: Checkout repository |  | ||||||
|       uses: actions/checkout@v4 |  | ||||||
|       with: |  | ||||||
|         # We must fetch at least the immediate parents so that if this is |  | ||||||
|         # a pull request then we can checkout the head. |  | ||||||
|         fetch-depth: 2 |  | ||||||
|  |  | ||||||
|     # If this run was triggered by a pull request event, then checkout |  | ||||||
|     # the head of the pull request instead of the merge commit. |  | ||||||
|     - run: git checkout HEAD^2 |  | ||||||
|       if: ${{ github.event_name == 'pull_request' }} |  | ||||||
|  |  | ||||||
|     # Initializes the CodeQL tools for scanning. |  | ||||||
|     - name: Initialize CodeQL |  | ||||||
|       uses: github/codeql-action/init@v3 |  | ||||||
|       # Override language selection by uncommenting this and choosing your languages |  | ||||||
|       with: |  | ||||||
|         languages: go |  | ||||||
|  |  | ||||||
|     # Autobuild attempts to build any compiled languages  (C/C++, C#, or Java). |  | ||||||
|     # If this step fails, then you should remove it and run the build manually (see below) |  | ||||||
|     - name: Autobuild |  | ||||||
|       uses: github/codeql-action/autobuild@v3 |  | ||||||
|  |  | ||||||
|     # ℹ️ Command-line programs to run using the OS shell. |  | ||||||
|     # 📚 https://git.io/JvXDl |  | ||||||
|  |  | ||||||
|     # ✏️ If the Autobuild fails above, remove it and uncomment the following three lines |  | ||||||
|     #    and modify them (or add more) to build your code if your project |  | ||||||
|     #    uses a compiled language |  | ||||||
|  |  | ||||||
|     #- run: | |  | ||||||
|     #   make bootstrap |  | ||||||
|     #   make release |  | ||||||
|  |  | ||||||
|     - name: Perform CodeQL Analysis |  | ||||||
|       uses: github/codeql-action/analyze@v3 |  | ||||||
							
								
								
									
										2
									
								
								.github/workflows/dependabot_automerge.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/dependabot_automerge.yml
									
									
									
									
										vendored
									
									
								
							| @@ -28,7 +28,7 @@ jobs: | |||||||
|     steps: |     steps: | ||||||
|       - name: Dependabot metadata |       - name: Dependabot metadata | ||||||
|         id: metadata |         id: metadata | ||||||
|         uses: dependabot/fetch-metadata@v2.1.0 |         uses: dependabot/fetch-metadata@v2.2.0 | ||||||
|         with: |         with: | ||||||
|           github-token: "${{ secrets.PR_TOKEN }}" |           github-token: "${{ secrets.PR_TOKEN }}" | ||||||
|       - name: Enable auto-merge for Dependabot PRs |       - name: Enable auto-merge for Dependabot PRs | ||||||
|   | |||||||
							
								
								
									
										2
									
								
								.github/workflows/golangci-lint.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/golangci-lint.yml
									
									
									
									
										vendored
									
									
								
							| @@ -64,5 +64,5 @@ jobs: | |||||||
|         with: |         with: | ||||||
|           golangci_lint_flags: "--tests=false --timeout=5m" |           golangci_lint_flags: "--tests=false --timeout=5m" | ||||||
|           workdir: ${{ matrix.modules }} |           workdir: ${{ matrix.modules }} | ||||||
|           fail_on_error: true |           fail_level: "warning" | ||||||
|           filter_mode: nofilter |           filter_mode: nofilter | ||||||
|   | |||||||
							
								
								
									
										65
									
								
								.github/workflows/gosec.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										65
									
								
								.github/workflows/gosec.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,65 +0,0 @@ | |||||||
| name: Gosec Security Scan |  | ||||||
|  |  | ||||||
| on: |  | ||||||
|   push: |  | ||||||
|     branches: |  | ||||||
|       - "master" |  | ||||||
|       - "main" |  | ||||||
|     paths-ignore: |  | ||||||
|       - "**.md" |  | ||||||
|       - LICENSE |  | ||||||
|       - ".github/ISSUE_TEMPLATE/*.yml" |  | ||||||
|       - ".github/dependabot.yml" |  | ||||||
|   pull_request: |  | ||||||
|     branches: |  | ||||||
|       - "*" |  | ||||||
|     paths-ignore: |  | ||||||
|       - "**.md" |  | ||||||
|       - LICENSE |  | ||||||
|       - ".github/ISSUE_TEMPLATE/*.yml" |  | ||||||
|       - ".github/dependabot.yml" |  | ||||||
|  |  | ||||||
| jobs: |  | ||||||
|   detect-changes: |  | ||||||
|     runs-on: ubuntu-latest |  | ||||||
|     outputs: |  | ||||||
|       matrix: ${{ steps.changed-files.outputs.all_changed_files }} |  | ||||||
|     steps: |  | ||||||
|       - uses: actions/checkout@v4 |  | ||||||
|         with: |  | ||||||
|           fetch-depth: 0 |  | ||||||
|       - name: Changed Files |  | ||||||
|         uses: tj-actions/changed-files@v44 |  | ||||||
|         id: changed-files |  | ||||||
|         with: |  | ||||||
|           files_ignore: | |  | ||||||
|             .github/** |  | ||||||
|             **.md |  | ||||||
|           json: true |  | ||||||
|           escape_json: false |  | ||||||
|           dir_names: true |  | ||||||
|           dir_names_max_depth: '1' |  | ||||||
|           dir_names_exclude_current_dir: true |  | ||||||
|  |  | ||||||
|   gosec-scan: |  | ||||||
|     runs-on: ubuntu-latest |  | ||||||
|     needs: detect-changes |  | ||||||
|     env: |  | ||||||
|       GO111MODULE: on |  | ||||||
|     strategy: |  | ||||||
|       matrix: |  | ||||||
|         modules: ${{ fromJSON(needs.detect-changes.outputs.matrix) }} |  | ||||||
|     steps: |  | ||||||
|       - name: Fetch Repository |  | ||||||
|         uses: actions/checkout@v4 |  | ||||||
|       - name: Install Go |  | ||||||
|         uses: actions/setup-go@v5 |  | ||||||
|         with: |  | ||||||
|           go-version: '^1.19.x' |  | ||||||
|           check-latest: true |  | ||||||
|           cache: false |  | ||||||
|       - name: Install gosec |  | ||||||
|         run: go install github.com/securego/gosec/v2/cmd/gosec@latest |  | ||||||
|       - name: Run gosec |  | ||||||
|         working-directory: ${{ matrix.modules }} |  | ||||||
|         run: gosec ./... |  | ||||||
							
								
								
									
										39
									
								
								.github/workflows/govulncheck.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										39
									
								
								.github/workflows/govulncheck.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,39 +0,0 @@ | |||||||
| name: Govulncheck Security Scan |  | ||||||
|  |  | ||||||
| on: |  | ||||||
|   push: |  | ||||||
|     branches: |  | ||||||
|       - "master" |  | ||||||
|       - "main" |  | ||||||
|     paths-ignore: |  | ||||||
|       - "**.md" |  | ||||||
|       - LICENSE |  | ||||||
|       - ".github/ISSUE_TEMPLATE/*.yml" |  | ||||||
|       - ".github/dependabot.yml" |  | ||||||
|   pull_request: |  | ||||||
|     branches: |  | ||||||
|       - "*" |  | ||||||
|     paths-ignore: |  | ||||||
|       - "**.md" |  | ||||||
|       - LICENSE |  | ||||||
|       - ".github/ISSUE_TEMPLATE/*.yml" |  | ||||||
|       - ".github/dependabot.yml" |  | ||||||
|  |  | ||||||
| jobs: |  | ||||||
|   govulncheck-check: |  | ||||||
|     runs-on: ubuntu-latest |  | ||||||
|     env: |  | ||||||
|       GO111MODULE: on |  | ||||||
|     steps: |  | ||||||
|     - name: Fetch Repository |  | ||||||
|       uses: actions/checkout@v4 |  | ||||||
|     - name: Install Go |  | ||||||
|       uses: actions/setup-go@v5 |  | ||||||
|       with: |  | ||||||
|         go-version: 'stable' |  | ||||||
|         check-latest: true |  | ||||||
|         cache: false |  | ||||||
|     - name: Install Govulncheck |  | ||||||
|       run: go install golang.org/x/vuln/cmd/govulncheck@latest |  | ||||||
|     - name: Run Govulncheck |  | ||||||
|       run: govulncheck ./... |  | ||||||
							
								
								
									
										19
									
								
								.github/workflows/release-drafter-arangodb.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								.github/workflows/release-drafter-arangodb.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,19 +0,0 @@ | |||||||
| name: Release Drafter Arangodb |  | ||||||
| on: |  | ||||||
|     push: |  | ||||||
|         # branches to consider in the event; optional, defaults to all |  | ||||||
|         branches: |  | ||||||
|             - master |  | ||||||
|             - main |  | ||||||
|         paths: |  | ||||||
|             - 'arangodb/**' |  | ||||||
| jobs: |  | ||||||
|     draft_release_arangodb: |  | ||||||
|         runs-on: ubuntu-latest |  | ||||||
|         timeout-minutes: 30 |  | ||||||
|         steps: |  | ||||||
|             -   uses: release-drafter/release-drafter@v6 |  | ||||||
|                 with: |  | ||||||
|                     config-name: release-drafter-arangodb.yml |  | ||||||
|                 env: |  | ||||||
|                     GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |  | ||||||
							
								
								
									
										19
									
								
								.github/workflows/release-drafter-azureblob.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								.github/workflows/release-drafter-azureblob.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,19 +0,0 @@ | |||||||
| name: Release Drafter Azureblob |  | ||||||
| on: |  | ||||||
|     push: |  | ||||||
|         # branches to consider in the event; optional, defaults to all |  | ||||||
|         branches: |  | ||||||
|             - master |  | ||||||
|             - main |  | ||||||
|         paths: |  | ||||||
|             - 'azureblob/**' |  | ||||||
| jobs: |  | ||||||
|     draft_release_azureblob: |  | ||||||
|         runs-on: ubuntu-latest |  | ||||||
|         timeout-minutes: 30 |  | ||||||
|         steps: |  | ||||||
|             -   uses: release-drafter/release-drafter@v6 |  | ||||||
|                 with: |  | ||||||
|                     config-name: release-drafter-azureblob.yml |  | ||||||
|                 env: |  | ||||||
|                     GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |  | ||||||
							
								
								
									
										19
									
								
								.github/workflows/release-drafter-badger.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								.github/workflows/release-drafter-badger.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,19 +0,0 @@ | |||||||
| name: Release Drafter Badger |  | ||||||
| on: |  | ||||||
|     push: |  | ||||||
|         # branches to consider in the event; optional, defaults to all |  | ||||||
|         branches: |  | ||||||
|             - master |  | ||||||
|             - main |  | ||||||
|         paths: |  | ||||||
|             - 'badger/**' |  | ||||||
| jobs: |  | ||||||
|     draft_release_badger: |  | ||||||
|         runs-on: ubuntu-latest |  | ||||||
|         timeout-minutes: 30 |  | ||||||
|         steps: |  | ||||||
|             -   uses: release-drafter/release-drafter@v6 |  | ||||||
|                 with: |  | ||||||
|                     config-name: release-drafter-badger.yml |  | ||||||
|                 env: |  | ||||||
|                     GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |  | ||||||
							
								
								
									
										19
									
								
								.github/workflows/release-drafter-bbolt.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								.github/workflows/release-drafter-bbolt.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,19 +0,0 @@ | |||||||
| name: Release Drafter Bbolt |  | ||||||
| on: |  | ||||||
|     push: |  | ||||||
|         # branches to consider in the event; optional, defaults to all |  | ||||||
|         branches: |  | ||||||
|             - master |  | ||||||
|             - main |  | ||||||
|         paths: |  | ||||||
|             - 'bbolt/**' |  | ||||||
| jobs: |  | ||||||
|     draft_release_bbolt: |  | ||||||
|         runs-on: ubuntu-latest |  | ||||||
|         timeout-minutes: 30 |  | ||||||
|         steps: |  | ||||||
|             -   uses: release-drafter/release-drafter@v6 |  | ||||||
|                 with: |  | ||||||
|                     config-name: release-drafter-bbolt.yml |  | ||||||
|                 env: |  | ||||||
|                     GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |  | ||||||
| @@ -1,19 +0,0 @@ | |||||||
| name: Release Drafter Cloudflare KV |  | ||||||
| on: |  | ||||||
|   push: |  | ||||||
|     # branches to consider in the event; optional, defaults to all |  | ||||||
|     branches: |  | ||||||
|       - master |  | ||||||
|       - main |  | ||||||
|     paths: |  | ||||||
|       - "cloudflarekv/**" |  | ||||||
| jobs: |  | ||||||
|   draft_release_cloudflarekv: |  | ||||||
|     runs-on: ubuntu-latest |  | ||||||
|     timeout-minutes: 30 |  | ||||||
|     steps: |  | ||||||
|       - uses: release-drafter/release-drafter@v6 |  | ||||||
|         with: |  | ||||||
|           config-name: release-drafter-cloudflarekv.yml |  | ||||||
|         env: |  | ||||||
|           GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |  | ||||||
							
								
								
									
										19
									
								
								.github/workflows/release-drafter-coherence.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								.github/workflows/release-drafter-coherence.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,19 +0,0 @@ | |||||||
| name: Release Drafter Coherence |  | ||||||
| on: |  | ||||||
|     push: |  | ||||||
|         # branches to consider in the event; optional, defaults to all |  | ||||||
|         branches: |  | ||||||
|             - master |  | ||||||
|             - main |  | ||||||
|         paths: |  | ||||||
|             - 'coherence/**' |  | ||||||
| jobs: |  | ||||||
|     draft_release_coherence: |  | ||||||
|         runs-on: ubuntu-latest |  | ||||||
|         timeout-minutes: 30 |  | ||||||
|         steps: |  | ||||||
|             -   uses: release-drafter/release-drafter@v6 |  | ||||||
|                 with: |  | ||||||
|                     config-name: release-drafter-coherence.yml |  | ||||||
|                 env: |  | ||||||
|                     GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |  | ||||||
							
								
								
									
										19
									
								
								.github/workflows/release-drafter-couchbase.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								.github/workflows/release-drafter-couchbase.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,19 +0,0 @@ | |||||||
| name: Release Drafter Couchbase |  | ||||||
| on: |  | ||||||
|   push: |  | ||||||
|     # branches to consider in the event; optional, defaults to all |  | ||||||
|     branches: |  | ||||||
|       - master |  | ||||||
|       - main |  | ||||||
|     paths: |  | ||||||
|       - 'couchbase/**' |  | ||||||
| jobs: |  | ||||||
|   draft_release_couchbase: |  | ||||||
|     runs-on: ubuntu-latest |  | ||||||
|     timeout-minutes: 30 |  | ||||||
|     steps: |  | ||||||
|       -   uses: release-drafter/release-drafter@v6 |  | ||||||
|           with: |  | ||||||
|             config-name: release-drafter-couchbase.yml |  | ||||||
|           env: |  | ||||||
|             GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |  | ||||||
							
								
								
									
										19
									
								
								.github/workflows/release-drafter-dynamodb.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								.github/workflows/release-drafter-dynamodb.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,19 +0,0 @@ | |||||||
| name: Release Drafter Dynamodb |  | ||||||
| on: |  | ||||||
|     push: |  | ||||||
|         # branches to consider in the event; optional, defaults to all |  | ||||||
|         branches: |  | ||||||
|             - master |  | ||||||
|             - main |  | ||||||
|         paths: |  | ||||||
|             - 'dynamodb/**' |  | ||||||
| jobs: |  | ||||||
|     draft_release_dynamodb: |  | ||||||
|         runs-on: ubuntu-latest |  | ||||||
|         timeout-minutes: 30 |  | ||||||
|         steps: |  | ||||||
|             -   uses: release-drafter/release-drafter@v6 |  | ||||||
|                 with: |  | ||||||
|                     config-name: release-drafter-dynamodb.yml |  | ||||||
|                 env: |  | ||||||
|                     GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |  | ||||||
							
								
								
									
										19
									
								
								.github/workflows/release-drafter-etcd.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								.github/workflows/release-drafter-etcd.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,19 +0,0 @@ | |||||||
| name: Release Drafter Etcd |  | ||||||
| on: |  | ||||||
|     push: |  | ||||||
|         # branches to consider in the event; optional, defaults to all |  | ||||||
|         branches: |  | ||||||
|             - master |  | ||||||
|             - main |  | ||||||
|         paths: |  | ||||||
|             - 'etcd/**' |  | ||||||
| jobs: |  | ||||||
|     draft_release_etcd: |  | ||||||
|         runs-on: ubuntu-latest |  | ||||||
|         timeout-minutes: 30 |  | ||||||
|         steps: |  | ||||||
|             -   uses: release-drafter/release-drafter@v6 |  | ||||||
|                 with: |  | ||||||
|                     config-name: release-drafter-etcd.yml |  | ||||||
|                 env: |  | ||||||
|                     GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |  | ||||||
							
								
								
									
										19
									
								
								.github/workflows/release-drafter-memcache.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								.github/workflows/release-drafter-memcache.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,19 +0,0 @@ | |||||||
| name: Release Drafter Memcache |  | ||||||
| on: |  | ||||||
|     push: |  | ||||||
|         # branches to consider in the event; optional, defaults to all |  | ||||||
|         branches: |  | ||||||
|             - master |  | ||||||
|             - main |  | ||||||
|         paths: |  | ||||||
|             - 'memcache/**' |  | ||||||
| jobs: |  | ||||||
|     draft_release_memcache: |  | ||||||
|         runs-on: ubuntu-latest |  | ||||||
|         timeout-minutes: 30 |  | ||||||
|         steps: |  | ||||||
|             -   uses: release-drafter/release-drafter@v6 |  | ||||||
|                 with: |  | ||||||
|                     config-name: release-drafter-memcache.yml |  | ||||||
|                 env: |  | ||||||
|                     GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |  | ||||||
							
								
								
									
										19
									
								
								.github/workflows/release-drafter-memory.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								.github/workflows/release-drafter-memory.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,19 +0,0 @@ | |||||||
| name: Release Drafter Memory |  | ||||||
| on: |  | ||||||
|     push: |  | ||||||
|         # branches to consider in the event; optional, defaults to all |  | ||||||
|         branches: |  | ||||||
|             - master |  | ||||||
|             - main |  | ||||||
|         paths: |  | ||||||
|             - 'memory/**' |  | ||||||
| jobs: |  | ||||||
|     draft_release_memcache: |  | ||||||
|         runs-on: ubuntu-latest |  | ||||||
|         timeout-minutes: 30 |  | ||||||
|         steps: |  | ||||||
|             -   uses: release-drafter/release-drafter@v6 |  | ||||||
|                 with: |  | ||||||
|                     config-name: release-drafter-memory.yml |  | ||||||
|                 env: |  | ||||||
|                     GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |  | ||||||
							
								
								
									
										19
									
								
								.github/workflows/release-drafter-minio.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								.github/workflows/release-drafter-minio.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,19 +0,0 @@ | |||||||
| name: Release Drafter Minio |  | ||||||
| on: |  | ||||||
|     push: |  | ||||||
|         # branches to consider in the event; optional, defaults to all |  | ||||||
|         branches: |  | ||||||
|             - master |  | ||||||
|             - main |  | ||||||
|         paths: |  | ||||||
|             - 'minio/**' |  | ||||||
| jobs: |  | ||||||
|     draft_release_minio: |  | ||||||
|         runs-on: ubuntu-latest |  | ||||||
|         timeout-minutes: 30 |  | ||||||
|         steps: |  | ||||||
|             -   uses: release-drafter/release-drafter@v6 |  | ||||||
|                 with: |  | ||||||
|                     config-name: release-drafter-minio.yml |  | ||||||
|                 env: |  | ||||||
|                     GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |  | ||||||
| @@ -1,19 +0,0 @@ | |||||||
| name: Release Drafter MockStorage |  | ||||||
| on: |  | ||||||
|     push: |  | ||||||
|         # branches to consider in the event; optional, defaults to all |  | ||||||
|         branches: |  | ||||||
|             - master |  | ||||||
|             - main |  | ||||||
|         paths: |  | ||||||
|             - 'mockstorage/**' |  | ||||||
| jobs: |  | ||||||
|     draft_release_memcache: |  | ||||||
|         runs-on: ubuntu-latest |  | ||||||
|         timeout-minutes: 30 |  | ||||||
|         steps: |  | ||||||
|             -   uses: release-drafter/release-drafter@v6 |  | ||||||
|                 with: |  | ||||||
|                     config-name: release-drafter-mockstorage.yml |  | ||||||
|                 env: |  | ||||||
|                     GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |  | ||||||
							
								
								
									
										19
									
								
								.github/workflows/release-drafter-mongodb.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								.github/workflows/release-drafter-mongodb.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,19 +0,0 @@ | |||||||
| name: Release Drafter Mongodb |  | ||||||
| on: |  | ||||||
|     push: |  | ||||||
|         # branches to consider in the event; optional, defaults to all |  | ||||||
|         branches: |  | ||||||
|             - master |  | ||||||
|             - main |  | ||||||
|         paths: |  | ||||||
|             - 'mongodb/**' |  | ||||||
| jobs: |  | ||||||
|     draft_release_mongodb: |  | ||||||
|         runs-on: ubuntu-latest |  | ||||||
|         timeout-minutes: 30 |  | ||||||
|         steps: |  | ||||||
|             -   uses: release-drafter/release-drafter@v6 |  | ||||||
|                 with: |  | ||||||
|                     config-name: release-drafter-mongodb.yml |  | ||||||
|                 env: |  | ||||||
|                     GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |  | ||||||
							
								
								
									
										19
									
								
								.github/workflows/release-drafter-mssql.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								.github/workflows/release-drafter-mssql.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,19 +0,0 @@ | |||||||
| name: Release Drafter Mssql |  | ||||||
| on: |  | ||||||
|     push: |  | ||||||
|         # branches to consider in the event; optional, defaults to all |  | ||||||
|         branches: |  | ||||||
|             - master |  | ||||||
|             - main |  | ||||||
|         paths: |  | ||||||
|             - 'mssql/**' |  | ||||||
| jobs: |  | ||||||
|     draft_release_mssql: |  | ||||||
|         runs-on: ubuntu-latest |  | ||||||
|         timeout-minutes: 30 |  | ||||||
|         steps: |  | ||||||
|             -   uses: release-drafter/release-drafter@v6 |  | ||||||
|                 with: |  | ||||||
|                     config-name: release-drafter-mssql.yml |  | ||||||
|                 env: |  | ||||||
|                     GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |  | ||||||
							
								
								
									
										19
									
								
								.github/workflows/release-drafter-mysql.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								.github/workflows/release-drafter-mysql.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,19 +0,0 @@ | |||||||
| name: Release Drafter Mysql |  | ||||||
| on: |  | ||||||
|     push: |  | ||||||
|         # branches to consider in the event; optional, defaults to all |  | ||||||
|         branches: |  | ||||||
|             - master |  | ||||||
|             - main |  | ||||||
|         paths: |  | ||||||
|             - 'mysql/**' |  | ||||||
| jobs: |  | ||||||
|     draft_release_mysql: |  | ||||||
|         runs-on: ubuntu-latest |  | ||||||
|         timeout-minutes: 30 |  | ||||||
|         steps: |  | ||||||
|             -   uses: release-drafter/release-drafter@v6 |  | ||||||
|                 with: |  | ||||||
|                     config-name: release-drafter-mysql.yml |  | ||||||
|                 env: |  | ||||||
|                     GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |  | ||||||
							
								
								
									
										19
									
								
								.github/workflows/release-drafter-nats.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								.github/workflows/release-drafter-nats.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,19 +0,0 @@ | |||||||
| name: Release Drafter Nats |  | ||||||
| on: |  | ||||||
|     push: |  | ||||||
|         # branches to consider in the event; optional, defaults to all |  | ||||||
|         branches: |  | ||||||
|             - master |  | ||||||
|             - main |  | ||||||
|         paths: |  | ||||||
|             - 'nats/**' |  | ||||||
| jobs: |  | ||||||
|     draft_release_nats: |  | ||||||
|         runs-on: ubuntu-latest |  | ||||||
|         timeout-minutes: 30 |  | ||||||
|         steps: |  | ||||||
|             -   uses: release-drafter/release-drafter@v6 |  | ||||||
|                 with: |  | ||||||
|                     config-name: release-drafter-nats.yml |  | ||||||
|                 env: |  | ||||||
|                     GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |  | ||||||
							
								
								
									
										19
									
								
								.github/workflows/release-drafter-pebble.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								.github/workflows/release-drafter-pebble.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,19 +0,0 @@ | |||||||
| name: Release Drafter Pebble |  | ||||||
| on: |  | ||||||
|   push: |  | ||||||
|     # branches to consider in the event; optional, defaults to all |  | ||||||
|     branches: |  | ||||||
|       - master |  | ||||||
|       - main |  | ||||||
|     paths: |  | ||||||
|       - "pebble/**" |  | ||||||
| jobs: |  | ||||||
|   draft_release_pebble: |  | ||||||
|     runs-on: ubuntu-latest |  | ||||||
|     timeout-minutes: 30 |  | ||||||
|     steps: |  | ||||||
|       - uses: release-drafter/release-drafter@v6 |  | ||||||
|         with: |  | ||||||
|           config-name: release-drafter-pebble.yml |  | ||||||
|         env: |  | ||||||
|           GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |  | ||||||
							
								
								
									
										19
									
								
								.github/workflows/release-drafter-postgres.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								.github/workflows/release-drafter-postgres.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,19 +0,0 @@ | |||||||
| name: Release Drafter Postgres |  | ||||||
| on: |  | ||||||
|     push: |  | ||||||
|         # branches to consider in the event; optional, defaults to all |  | ||||||
|         branches: |  | ||||||
|             - master |  | ||||||
|             - main |  | ||||||
|         paths: |  | ||||||
|             - 'postgres/**' |  | ||||||
| jobs: |  | ||||||
|     draft_release_postgres: |  | ||||||
|         runs-on: ubuntu-latest |  | ||||||
|         timeout-minutes: 30 |  | ||||||
|         steps: |  | ||||||
|             -   uses: release-drafter/release-drafter@v6 |  | ||||||
|                 with: |  | ||||||
|                     config-name: release-drafter-postgres.yml |  | ||||||
|                 env: |  | ||||||
|                     GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |  | ||||||
							
								
								
									
										19
									
								
								.github/workflows/release-drafter-redis.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								.github/workflows/release-drafter-redis.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,19 +0,0 @@ | |||||||
| name: Release Drafter Redis |  | ||||||
| on: |  | ||||||
|     push: |  | ||||||
|         # branches to consider in the event; optional, defaults to all |  | ||||||
|         branches: |  | ||||||
|             - master |  | ||||||
|             - main |  | ||||||
|         paths: |  | ||||||
|             - 'redis/**' |  | ||||||
| jobs: |  | ||||||
|     draft_release_redis: |  | ||||||
|         runs-on: ubuntu-latest |  | ||||||
|         timeout-minutes: 30 |  | ||||||
|         steps: |  | ||||||
|             -   uses: release-drafter/release-drafter@v6 |  | ||||||
|                 with: |  | ||||||
|                     config-name: release-drafter-redis.yml |  | ||||||
|                 env: |  | ||||||
|                     GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |  | ||||||
							
								
								
									
										19
									
								
								.github/workflows/release-drafter-ristretto.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								.github/workflows/release-drafter-ristretto.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,19 +0,0 @@ | |||||||
| name: Release Drafter Ristretto |  | ||||||
| on: |  | ||||||
|     push: |  | ||||||
|         # branches to consider in the event; optional, defaults to all |  | ||||||
|         branches: |  | ||||||
|             - master |  | ||||||
|             - main |  | ||||||
|         paths: |  | ||||||
|             - 'ristretto/**' |  | ||||||
| jobs: |  | ||||||
|     draft_release_ristretto: |  | ||||||
|         runs-on: ubuntu-latest |  | ||||||
|         timeout-minutes: 30 |  | ||||||
|         steps: |  | ||||||
|             -   uses: release-drafter/release-drafter@v6 |  | ||||||
|                 with: |  | ||||||
|                     config-name: release-drafter-ristretto.yml |  | ||||||
|                 env: |  | ||||||
|                     GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |  | ||||||
							
								
								
									
										19
									
								
								.github/workflows/release-drafter-rueidis.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								.github/workflows/release-drafter-rueidis.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,19 +0,0 @@ | |||||||
| name: Release Drafter Rueidis |  | ||||||
| on: |  | ||||||
|     push: |  | ||||||
|         # branches to consider in the event; optional, defaults to all |  | ||||||
|         branches: |  | ||||||
|             - master |  | ||||||
|             - main |  | ||||||
|         paths: |  | ||||||
|             - 'rueidis/**' |  | ||||||
| jobs: |  | ||||||
|     draft_release_rueidis: |  | ||||||
|         runs-on: ubuntu-latest |  | ||||||
|         timeout-minutes: 30 |  | ||||||
|         steps: |  | ||||||
|             -   uses: release-drafter/release-drafter@v6 |  | ||||||
|                 with: |  | ||||||
|                     config-name: release-drafter-rueidis.yml |  | ||||||
|                 env: |  | ||||||
|                     GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |  | ||||||
							
								
								
									
										19
									
								
								.github/workflows/release-drafter-s3.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								.github/workflows/release-drafter-s3.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,19 +0,0 @@ | |||||||
| name: Release Drafter S3 |  | ||||||
| on: |  | ||||||
|     push: |  | ||||||
|         # branches to consider in the event; optional, defaults to all |  | ||||||
|         branches: |  | ||||||
|             - master |  | ||||||
|             - main |  | ||||||
|         paths: |  | ||||||
|             - 's3/**' |  | ||||||
| jobs: |  | ||||||
|     draft_release_s3: |  | ||||||
|         runs-on: ubuntu-latest |  | ||||||
|         timeout-minutes: 30 |  | ||||||
|         steps: |  | ||||||
|             -   uses: release-drafter/release-drafter@v6 |  | ||||||
|                 with: |  | ||||||
|                     config-name: release-drafter-s3.yml |  | ||||||
|                 env: |  | ||||||
|                     GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |  | ||||||
							
								
								
									
										19
									
								
								.github/workflows/release-drafter-scylladb.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								.github/workflows/release-drafter-scylladb.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,19 +0,0 @@ | |||||||
| name: Release Drafter ScyllaDb |  | ||||||
| on: |  | ||||||
|   push: |  | ||||||
|     # branches to consider in the event; optional, defaults to all |  | ||||||
|     branches: |  | ||||||
|       - master |  | ||||||
|       - main |  | ||||||
|     paths: |  | ||||||
|       - 'scylladb/**' |  | ||||||
| jobs: |  | ||||||
|   draft_release_scylladb: |  | ||||||
|     runs-on: ubuntu-latest |  | ||||||
|     timeout-minutes: 30 |  | ||||||
|     steps: |  | ||||||
|       -   uses: release-drafter/release-drafter@v6 |  | ||||||
|           with: |  | ||||||
|             config-name: release-drafter-scylladb.yml |  | ||||||
|           env: |  | ||||||
|             GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |  | ||||||
							
								
								
									
										20
									
								
								.github/workflows/release-drafter-sqlite3.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										20
									
								
								.github/workflows/release-drafter-sqlite3.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,20 +0,0 @@ | |||||||
| name: Release Drafter Sqlite3 |  | ||||||
| on: |  | ||||||
|     push: |  | ||||||
|         # branches to consider in the event; optional, defaults to all |  | ||||||
|         branches: |  | ||||||
|             - master |  | ||||||
|             - main |  | ||||||
|         paths: |  | ||||||
|             - 'sqlite3/**' |  | ||||||
| jobs: |  | ||||||
|     draft_release_sqlite3: |  | ||||||
|         runs-on: ubuntu-latest |  | ||||||
|         timeout-minutes: 30 |  | ||||||
|         steps: |  | ||||||
|             -   uses: release-drafter/release-drafter@v6 |  | ||||||
|                 with: |  | ||||||
|                     config-name: release-drafter-sqlite3.yml |  | ||||||
|                 env: |  | ||||||
|                     GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |  | ||||||
|  |  | ||||||
							
								
								
									
										59
									
								
								.github/workflows/release-drafter.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										59
									
								
								.github/workflows/release-drafter.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,59 @@ | |||||||
|  | name: Release Drafter (All) | ||||||
|  |  | ||||||
|  | on: | ||||||
|  |     push: | ||||||
|  |         branches: | ||||||
|  |             - master | ||||||
|  |             - main | ||||||
|  |  | ||||||
|  | jobs: | ||||||
|  |     changes: | ||||||
|  |         runs-on: ubuntu-latest | ||||||
|  |         permissions: | ||||||
|  |             pull-requests: read | ||||||
|  |         steps: | ||||||
|  |             - name: Checkout repository | ||||||
|  |               uses: actions/checkout@v4 | ||||||
|  |  | ||||||
|  |             - name: Generate filters | ||||||
|  |               id: filter-setup | ||||||
|  |               run: | | ||||||
|  |                   filters=$(find . -maxdepth 1 -type d ! -path ./.git ! -path . -exec basename {} \; | grep -v '^\.' | awk '{printf "%s: \"%s/**\"\n", $1, $1}') | ||||||
|  |                   echo "filters<<EOF" >> $GITHUB_OUTPUT | ||||||
|  |                   echo "$filters" >> $GITHUB_OUTPUT | ||||||
|  |                   echo "EOF" >> $GITHUB_OUTPUT | ||||||
|  |               shell: bash | ||||||
|  |             - name: Filter changes | ||||||
|  |               id: filter | ||||||
|  |               uses: dorny/paths-filter@v3 | ||||||
|  |               with: | ||||||
|  |                   filters: ${{ steps.filter-setup.outputs.filters }} | ||||||
|  |  | ||||||
|  |         outputs: | ||||||
|  |             packages: ${{ steps.filter.outputs.changes || '[]' }} | ||||||
|  |  | ||||||
|  |     release-drafter: | ||||||
|  |         needs: changes | ||||||
|  |         runs-on: ubuntu-latest | ||||||
|  |         timeout-minutes: 30 | ||||||
|  |         if: needs.changes.outputs.packages != '[]' # Ensure job runs only if there are changes | ||||||
|  |         env: | ||||||
|  |             GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||||||
|  |         strategy: | ||||||
|  |             matrix: | ||||||
|  |                 package: ${{ fromJSON(needs.changes.outputs.packages || '[]') }} | ||||||
|  |         steps: | ||||||
|  |             - name: Checkout repository | ||||||
|  |               uses: actions/checkout@v4 | ||||||
|  |  | ||||||
|  |             - name: Generate dynamic config from template | ||||||
|  |               run: | | ||||||
|  |                   folder="${{ matrix.package }}" | ||||||
|  |                   sed "s|{{FOLDER}}|$folder|g" .github/release-drafter-template.yml > .github/release-drafter-$folder.yml | ||||||
|  |                   echo "Generated config for folder: $folder" | ||||||
|  |                   cat .github/release-drafter-$folder.yml | ||||||
|  |  | ||||||
|  |             - name: Use dynamic release-drafter configuration | ||||||
|  |               uses: release-drafter/release-drafter@v6 | ||||||
|  |               with: | ||||||
|  |                   config-name: release-drafter-${{ matrix.package }}.yml | ||||||
							
								
								
									
										30
									
								
								.github/workflows/test-clickhouse.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								.github/workflows/test-clickhouse.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,30 @@ | |||||||
|  | on: | ||||||
|  |   push: | ||||||
|  |     branches: | ||||||
|  |       - master | ||||||
|  |       - main | ||||||
|  |     paths: | ||||||
|  |       - 'clickhouse/**' | ||||||
|  |   pull_request: | ||||||
|  |     paths: | ||||||
|  |       - 'clickhouse/**' | ||||||
|  | name: 'Tests Clickhouse' | ||||||
|  | jobs: | ||||||
|  |   Tests: | ||||||
|  |     runs-on: ubuntu-latest | ||||||
|  |     strategy: | ||||||
|  |       matrix: | ||||||
|  |         go-version: | ||||||
|  |           - 1.21.x | ||||||
|  |           - 1.22.x | ||||||
|  |     steps: | ||||||
|  |       - name: Fetch Repository | ||||||
|  |         uses: actions/checkout@v4 | ||||||
|  |       - name: Install Go | ||||||
|  |         uses: actions/setup-go@v5 | ||||||
|  |         with: | ||||||
|  |           go-version: '${{ matrix.go-version }}' | ||||||
|  |       - name: Run Test | ||||||
|  |         env: | ||||||
|  |           TEST_CLICKHOUSE_IMAGE: clickhouse/clickhouse-server:23-alpine | ||||||
|  |         run: cd ./clickhouse && go clean -testcache && go test ./... -v -race | ||||||
							
								
								
									
										8
									
								
								.github/workflows/test-cloudflarekv.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										8
									
								
								.github/workflows/test-cloudflarekv.yml
									
									
									
									
										vendored
									
									
								
							| @@ -3,10 +3,13 @@ name: Tests CloudflareKV | |||||||
| on: | on: | ||||||
|   push: |   push: | ||||||
|     branches: |     branches: | ||||||
|  |       - master | ||||||
|       - main |       - main | ||||||
|  |     paths: | ||||||
|  |       - 'cloudflarekv/**' | ||||||
|   pull_request: |   pull_request: | ||||||
|     branches: |     paths: | ||||||
|       - main |       - 'cloudflarekv/**' | ||||||
|  |  | ||||||
| jobs: | jobs: | ||||||
|   Tests: |   Tests: | ||||||
| @@ -16,7 +19,6 @@ jobs: | |||||||
|           go-version: |           go-version: | ||||||
|               - 1.21.x |               - 1.21.x | ||||||
|               - 1.22.x |               - 1.22.x | ||||||
|  |  | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout Repository |       - name: Checkout Repository | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v4 | ||||||
|   | |||||||
							
								
								
									
										2
									
								
								.github/workflows/test-coherence.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/test-coherence.yml
									
									
									
									
										vendored
									
									
								
							| @@ -24,7 +24,7 @@ jobs: | |||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v4 | ||||||
|       - name: Startup Coherence |       - name: Startup Coherence | ||||||
|         run: | |         run: | | ||||||
|           docker run -d -p 1408:1408 -p 30000:30000 ghcr.io/oracle/coherence-ce:23.09.2 |           docker run -d -p 1408:1408 -p 30000:30000 ghcr.io/oracle/coherence-ce:24.09 | ||||||
|           sleep 30 |           sleep 30 | ||||||
|       -   name: Install Go |       -   name: Install Go | ||||||
|           uses: actions/setup-go@v5 |           uses: actions/setup-go@v5 | ||||||
|   | |||||||
							
								
								
									
										13
									
								
								.github/workflows/test-couchbase.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										13
									
								
								.github/workflows/test-couchbase.yml
									
									
									
									
										vendored
									
									
								
							| @@ -15,22 +15,17 @@ jobs: | |||||||
|     strategy: |     strategy: | ||||||
|       matrix: |       matrix: | ||||||
|         go-version: |         go-version: | ||||||
|           - 1.19.x |  | ||||||
|           - 1.20.x |  | ||||||
|           - 1.21.x |           - 1.21.x | ||||||
|  |           - 1.22.x | ||||||
|  |           - 1.23.x | ||||||
|     steps: |     steps: | ||||||
|       - name: Fetch Repository |       - name: Fetch Repository | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v4 | ||||||
|       - name: Install couchbase |  | ||||||
|         run: | |  | ||||||
|           docker run --name couchbase -d -p 8091-8097:8091-8097 -p 9123:9123 -p 11207:11207 -p 11210:11210 -p 11280:11280 -p 18091-18097:18091-18097 couchbase:enterprise-7.1.1 |  | ||||||
|           sleep 10 |  | ||||||
|           docker exec --tty couchbase couchbase-cli cluster-init -c localhost:8091 --cluster-username admin --cluster-password 123456 --cluster-ramsize 256 --services data |  | ||||||
|           sleep 10 |  | ||||||
|           docker exec --tty couchbase couchbase-cli bucket-create -c localhost:8091 --username admin --password 123456 --bucket fiber_storage --bucket-type couchbase --bucket-ramsize 100 --enable-flush 1 |  | ||||||
|       -   name: Install Go |       -   name: Install Go | ||||||
|           uses: actions/setup-go@v5 |           uses: actions/setup-go@v5 | ||||||
|           with: |           with: | ||||||
|             go-version: '${{ matrix.go-version }}' |             go-version: '${{ matrix.go-version }}' | ||||||
|       -   name: Run Test |       -   name: Run Test | ||||||
|  |           env: | ||||||
|  |             TEST_COUCHBASE_IMAGE: couchbase:enterprise-7.1.1 | ||||||
|           run: cd ./couchbase && go test ./... -v -race |           run: cd ./couchbase && go test ./... -v -race | ||||||
|   | |||||||
							
								
								
									
										10
									
								
								.github/workflows/test-minio.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										10
									
								
								.github/workflows/test-minio.yml
									
									
									
									
										vendored
									
									
								
							| @@ -15,14 +15,10 @@ jobs: | |||||||
|         strategy: |         strategy: | ||||||
|             matrix: |             matrix: | ||||||
|                 go-version: |                 go-version: | ||||||
|                     - 1.19.x |  | ||||||
|                     - 1.20.x |  | ||||||
|                     - 1.21.x |                     - 1.21.x | ||||||
|  |                     - 1.22.x | ||||||
|  |                     - 1.23.x | ||||||
|         steps: |         steps: | ||||||
|             -   name: Install MinIO |  | ||||||
|                 run: | |  | ||||||
|                     docker run -d --restart always -p 9000:9000 --name storage-minio -e MINIO_ROOT_USER='minio-user' -e MINIO_ROOT_PASSWORD='minio-password' minio/minio server /data |  | ||||||
|  |  | ||||||
|             -   name: Fetch Repository |             -   name: Fetch Repository | ||||||
|                 uses: actions/checkout@v4 |                 uses: actions/checkout@v4 | ||||||
|             -   name: Install Go |             -   name: Install Go | ||||||
| @@ -30,4 +26,6 @@ jobs: | |||||||
|                 with: |                 with: | ||||||
|                     go-version: '${{ matrix.go-version }}' |                     go-version: '${{ matrix.go-version }}' | ||||||
|             -   name: Run Test |             -   name: Run Test | ||||||
|  |                 env: | ||||||
|  |                     TEST_MINIO_IMAGE: docker.io/minio/minio:RELEASE.2024-08-17T01-24-54Z | ||||||
|                 run: cd ./minio && go test ./... -v -race |                 run: cd ./minio && go test ./... -v -race | ||||||
|   | |||||||
							
								
								
									
										3
									
								
								.github/workflows/test-nats.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								.github/workflows/test-nats.yml
									
									
									
									
										vendored
									
									
								
							| @@ -16,6 +16,7 @@ jobs: | |||||||
|                 go-version: |                 go-version: | ||||||
|                     - 1.20.x |                     - 1.20.x | ||||||
|                     - 1.21.x |                     - 1.21.x | ||||||
|  |                     - 1.22.x | ||||||
|         runs-on: ubuntu-latest |         runs-on: ubuntu-latest | ||||||
|         steps: |         steps: | ||||||
|             -   name: Fetch Repository |             -   name: Fetch Repository | ||||||
| @@ -29,6 +30,6 @@ jobs: | |||||||
|             -   name: Run NATS |             -   name: Run NATS | ||||||
|                 run: | |                 run: | | ||||||
|                     docker run -d --name nats-jetstream -p 4443:4443 -v ./nats/testdata:/testdata -v ./tls:/tls nats:latest --jetstream -c /testdata/nats-tls.conf |                     docker run -d --name nats-jetstream -p 4443:4443 -v ./nats/testdata:/testdata -v ./tls:/tls nats:latest --jetstream -c /testdata/nats-tls.conf | ||||||
|                     sleep 2 |                     sleep 5 | ||||||
|             -   name: Test Nats |             -   name: Test Nats | ||||||
|                 run: cd ./nats && go test ./... -v -race |                 run: cd ./nats && go test ./... -v -race | ||||||
|   | |||||||
							
								
								
									
										2
									
								
								.github/workflows/test-postgres.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/test-postgres.yml
									
									
									
									
										vendored
									
									
								
							| @@ -27,9 +27,9 @@ jobs: | |||||||
|         strategy: |         strategy: | ||||||
|             matrix: |             matrix: | ||||||
|                 go-version: |                 go-version: | ||||||
|                     - 1.19.x |  | ||||||
|                     - 1.20.x |                     - 1.20.x | ||||||
|                     - 1.21.x |                     - 1.21.x | ||||||
|  |                     - 1.22.x | ||||||
|         steps: |         steps: | ||||||
|             -   name: Fetch Repository |             -   name: Fetch Repository | ||||||
|                 uses: actions/checkout@v4 |                 uses: actions/checkout@v4 | ||||||
|   | |||||||
							
								
								
									
										63
									
								
								.github/workflows/test-valkey.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										63
									
								
								.github/workflows/test-valkey.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,63 @@ | |||||||
|  | on: | ||||||
|  |     push: | ||||||
|  |         branches: | ||||||
|  |             - master | ||||||
|  |             - main | ||||||
|  |         paths: | ||||||
|  |             - 'valkey/**' | ||||||
|  |     pull_request: | ||||||
|  |         paths: | ||||||
|  |             - 'valkey/**' | ||||||
|  |             - '.github/workflows/test-valkey.yml' | ||||||
|  | name: "Tests Valkey" | ||||||
|  | jobs: | ||||||
|  |     Tests: | ||||||
|  |         runs-on: ubuntu-latest | ||||||
|  |         strategy: | ||||||
|  |             matrix: | ||||||
|  |                 go-version: | ||||||
|  |                     - 1.23.x | ||||||
|  |                 valkey: | ||||||
|  |                     - '7.x' | ||||||
|  |                     - '8.x' | ||||||
|  |         steps: | ||||||
|  |             -   name: Fetch Repository | ||||||
|  |                 uses: actions/checkout@v4 | ||||||
|  |  | ||||||
|  |             -   name: Generate TLS certs | ||||||
|  |                 run: ./.github/scripts/gen-test-certs.sh | ||||||
|  |  | ||||||
|  |             -   name: Setup Valkey | ||||||
|  |                 uses: shogo82148/actions-setup-redis@v1 | ||||||
|  |                 with: | ||||||
|  |                     distribution: 'valkey' | ||||||
|  |                     redis-version: ${{ matrix.valkey }} | ||||||
|  |                     auto-start: 'false' | ||||||
|  |                     redis-port: '6379' | ||||||
|  |                     redis-tls-port: '6380' | ||||||
|  |  | ||||||
|  |             -   name: Run Valkey | ||||||
|  |                 run: | | ||||||
|  |                     valkey-server --tls-port 6380 --port 6379 \ | ||||||
|  |                     --tls-cert-file /home/runner/work/storage/storage/tls/valkey.crt \ | ||||||
|  |                     --tls-key-file /home/runner/work/storage/storage/tls/valkey.key \ | ||||||
|  |                     --tls-ca-cert-file /home/runner/work/storage/storage/tls/ca.crt & | ||||||
|  |  | ||||||
|  |             -   name: Setup Valkey Cluster | ||||||
|  |                 uses: vishnudxb/redis-cluster@1.0.9 | ||||||
|  |                 with: | ||||||
|  |                     master1-port: 7000 | ||||||
|  |                     master2-port: 7001 | ||||||
|  |                     master3-port: 7002 | ||||||
|  |                     slave1-port: 7003 | ||||||
|  |                     slave2-port: 7004 | ||||||
|  |                     slave3-port: 7005 | ||||||
|  |                     sleep-duration: 10 | ||||||
|  |  | ||||||
|  |             -   name: Install Go | ||||||
|  |                 uses: actions/setup-go@v5 | ||||||
|  |                 with: | ||||||
|  |                     go-version: '${{ matrix.go-version }}' | ||||||
|  |  | ||||||
|  |             -   name: Run Test | ||||||
|  |                 run: cd ./valkey && go test ./... -v -race | ||||||
| @@ -74,3 +74,5 @@ type Storage interface { | |||||||
| - [S3](./s3/README.md) <a href="https://github.com/gofiber/storage/actions?query=workflow%3A%22Tests+S3%22"> <img src="https://img.shields.io/github/actions/workflow/status/gofiber/storage/test-s3.yml?branch=main&label=%F0%9F%A7%AA%20&style=flat&color=75C46B" /> </a> | - [S3](./s3/README.md) <a href="https://github.com/gofiber/storage/actions?query=workflow%3A%22Tests+S3%22"> <img src="https://img.shields.io/github/actions/workflow/status/gofiber/storage/test-s3.yml?branch=main&label=%F0%9F%A7%AA%20&style=flat&color=75C46B" /> </a> | ||||||
| - [ScyllaDB](./scylladb/README.md) <a href="https://github.com/gofiber/storage/actions?query=workflow%3A%22Tests+scylladb%22"> <img src="https://img.shields.io/github/actions/workflow/status/gofiber/storage/test-scylladb.yml?branch=main&label=%F0%9F%A7%AA%20&style=flat&color=75C46B" /> </a> | - [ScyllaDB](./scylladb/README.md) <a href="https://github.com/gofiber/storage/actions?query=workflow%3A%22Tests+scylladb%22"> <img src="https://img.shields.io/github/actions/workflow/status/gofiber/storage/test-scylladb.yml?branch=main&label=%F0%9F%A7%AA%20&style=flat&color=75C46B" /> </a> | ||||||
| - [SQLite3](./sqlite3/README.md) <a href="https://github.com/gofiber/storage/actions?query=workflow%3A%22Tests+Sqlite3%22"> <img src="https://img.shields.io/github/actions/workflow/status/gofiber/storage/test-sqlite3.yml?branch=main&label=%F0%9F%A7%AA%20&style=flat&color=75C46B" /> </a> | - [SQLite3](./sqlite3/README.md) <a href="https://github.com/gofiber/storage/actions?query=workflow%3A%22Tests+Sqlite3%22"> <img src="https://img.shields.io/github/actions/workflow/status/gofiber/storage/test-sqlite3.yml?branch=main&label=%F0%9F%A7%AA%20&style=flat&color=75C46B" /> </a> | ||||||
|  | - [ClickHouse](./clickhouse/README.md) <a href="https://github.com/gofiber/storage/actions?query=workflow%3A%22Tests+Clickhouse%22"> <img src="https://img.shields.io/github/actions/workflow/status/gofiber/storage/test-clickhouse.yml?branch=main&label=%F0%9F%A7%AA%20&style=flat&color=75C46B" /> </a> | ||||||
|  | - [Valkey](./valkey/README.md) <a href="https://github.com/gofiber/storage/actions?query=workflow%3A%22Tests+valkey%22"> <img src="https://img.shields.io/github/actions/workflow/status/gofiber/storage/test-valkey.yml?branch=main&label=%F0%9F%A7%AA%20&style=flat&color=75C46B" /> </a> | ||||||
|   | |||||||
| @@ -3,16 +3,16 @@ module github.com/gofiber/storage/azureblob/v2 | |||||||
| go 1.19 | go 1.19 | ||||||
|  |  | ||||||
| require ( | require ( | ||||||
| 	github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v1.3.2 | 	github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v1.4.0 | ||||||
| 	github.com/stretchr/testify v1.9.0 | 	github.com/stretchr/testify v1.9.0 | ||||||
| ) | ) | ||||||
|  |  | ||||||
| require ( | require ( | ||||||
| 	github.com/Azure/azure-sdk-for-go/sdk/azcore v1.11.1 // indirect | 	github.com/Azure/azure-sdk-for-go/sdk/azcore v1.13.0 // indirect | ||||||
| 	github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.2 // indirect | 	github.com/Azure/azure-sdk-for-go/sdk/internal v1.10.0 // indirect | ||||||
| 	github.com/davecgh/go-spew v1.1.1 // indirect | 	github.com/davecgh/go-spew v1.1.1 // indirect | ||||||
| 	github.com/pmezard/go-difflib v1.0.0 // indirect | 	github.com/pmezard/go-difflib v1.0.0 // indirect | ||||||
| 	golang.org/x/net v0.23.0 // indirect | 	golang.org/x/net v0.27.0 // indirect | ||||||
| 	golang.org/x/text v0.14.0 // indirect | 	golang.org/x/text v0.16.0 // indirect | ||||||
| 	gopkg.in/yaml.v3 v3.0.1 // indirect | 	gopkg.in/yaml.v3 v3.0.1 // indirect | ||||||
| ) | ) | ||||||
|   | |||||||
| @@ -1,31 +1,32 @@ | |||||||
| github.com/Azure/azure-sdk-for-go/sdk/azcore v1.11.1 h1:E+OJmp2tPvt1W+amx48v1eqbjDYsgN+RzP4q16yV5eM= | github.com/Azure/azure-sdk-for-go/sdk/azcore v1.13.0 h1:GJHeeA2N7xrG3q30L2UXDyuWRzDM900/65j70wcM4Ww= | ||||||
| github.com/Azure/azure-sdk-for-go/sdk/azcore v1.11.1/go.mod h1:a6xsAQUZg+VsS3TJ05SRp524Hs4pZ/AeFSr5ENf0Yjo= | github.com/Azure/azure-sdk-for-go/sdk/azcore v1.13.0/go.mod h1:l38EPgmsp71HHLq9j7De57JcKOWPyhrsW1Awm1JS6K0= | ||||||
| github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.5.1 h1:sO0/P7g68FrryJzljemN+6GTssUXdANk6aJ7T1ZxnsQ= | github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.7.0 h1:tfLQ34V6F7tVSwoTf/4lH5sE0o6eCJuNDTmH09nDpbc= | ||||||
| github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.2 h1:LqbJ/WzJUwBf8UiaSzgX7aMclParm9/5Vgp+TY51uBQ= | github.com/Azure/azure-sdk-for-go/sdk/internal v1.10.0 h1:ywEEhmNahHBihViHepv3xPBn1663uRv2t2q/ESv9seY= | ||||||
| github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.2/go.mod h1:yInRyqWXAuaPrgI7p70+lDDgh3mlBohis29jGMISnmc= | github.com/Azure/azure-sdk-for-go/sdk/internal v1.10.0/go.mod h1:iZDifYGJTIgIIkYRNWPENUnqx6bJ2xnSDFI2tjwZNuY= | ||||||
| github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/storage/armstorage v1.5.0 h1:AifHbc4mg0x9zW52WOpKbsHaDKuRhlI7TVl47thgQ70= | github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/storage/armstorage v1.6.0 h1:PiSrjRPpkQNjrM8H0WwKMnZUdu1RGMtd/LdGKUrOo+c= | ||||||
| github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v1.3.2 h1:YUUxeiOWgdAQE3pXt2H7QXzZs0q8UBjgRbl56qo8GYM= | github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v1.4.0 h1:Be6KInmFEKV81c0pOAEbRYehLMwmmGI1exuFj248AMk= | ||||||
| github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v1.3.2/go.mod h1:dmXQgZuiSubAecswZE+Sm8jkvEa7kQgTPVRvwL/nd0E= | github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v1.4.0/go.mod h1:WCPBHsOXfBVnivScjs2ypRfimjEW0qPVLGgJkZlrIOA= | ||||||
| github.com/AzureAD/microsoft-authentication-library-for-go v1.2.1 h1:DzHpqpoJVaCgOUdVHxE8QB52S6NiVdDQvGlny1qvPqA= | github.com/AzureAD/microsoft-authentication-library-for-go v1.2.2 h1:XHOnouVk1mxXfQidrMEnLlPk9UMeRtyBTnEFtxkV0kU= | ||||||
| github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= | github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= | ||||||
| github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= | github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= | ||||||
| github.com/dnaeon/go-vcr v1.2.0 h1:zHCHvJYTMh1N7xnV7zf1m1GPBF9Ad0Jk/whtQ1663qI= | github.com/golang-jwt/jwt/v5 v5.2.1 h1:OuVbFODueb089Lh128TAcimifWaLhJwVflnrgM17wHk= | ||||||
| github.com/golang-jwt/jwt/v5 v5.2.0 h1:d/ix8ftRUorsN+5eMIlF4T6J8CAt9rch3My2winC1Jw= |  | ||||||
| github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= | github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= | ||||||
|  | github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= | ||||||
|  | github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= | ||||||
| github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc= | github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc= | ||||||
| github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c h1:+mdjkGKdHQG3305AYmdv1U2eRNDiU2ErMBj1gwrq8eQ= | github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c h1:+mdjkGKdHQG3305AYmdv1U2eRNDiU2ErMBj1gwrq8eQ= | ||||||
| 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/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8= | ||||||
| github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= | github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= | ||||||
| github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= | github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= | ||||||
| golang.org/x/crypto v0.21.0 h1:X31++rzVUdKhX5sWmSOFZxx8UW/ldWx55cbf08iNAMA= | golang.org/x/crypto v0.25.0 h1:ypSNr+bnYL2YhwoMt2zPxHFmbAN1KZs/njMG3hxUp30= | ||||||
| golang.org/x/net v0.23.0 h1:7EYJ93RZ9vYSZAIb2x3lnuvqO5zneoD6IvWjuhfxjTs= | golang.org/x/net v0.27.0 h1:5K3Njcw06/l2y9vpGCSdcxWOYHOUk3dVNGDXN+FvAys= | ||||||
| golang.org/x/net v0.23.0/go.mod h1:JKghWKKOSdJwpW2GEx0Ja7fmaKnMsbu+MWVZTokSYmg= | golang.org/x/net v0.27.0/go.mod h1:dDi0PyhWNoiUOrAS8uXv/vnScO4wnHQO4mj9fn/RytE= | ||||||
| golang.org/x/sys v0.18.0 h1:DBdB3niSjOA/O0blCZBqDefyWNYveAYMNF1Wum0DYQ4= | golang.org/x/sys v0.22.0 h1:RI27ohtqKCnwULzJLqkv897zojh5/DwS/ENaMzUOaWI= | ||||||
| golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= | golang.org/x/text v0.16.0 h1:a94ExnEXNtEwYLGJSIUxnWoxoRz/ZcCsV63ROupILh4= | ||||||
| golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= | golang.org/x/text v0.16.0/go.mod h1:GhwF1Be+LQoKShO3cGOHzqOgRrGaYc9AvblQOmPVHnI= | ||||||
| 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.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= | gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= | ||||||
| gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= | gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= | ||||||
| gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= | gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= | ||||||
|   | |||||||
							
								
								
									
										123
									
								
								clickhouse/README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										123
									
								
								clickhouse/README.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,123 @@ | |||||||
|  | # Clickhouse | ||||||
|  |  | ||||||
|  | A Clickhouse storage driver using [https://github.com/ClickHouse/clickhouse-go](https://github.com/ClickHouse/clickhouse-go). | ||||||
|  |  | ||||||
|  | ### Table of Contents | ||||||
|  |  | ||||||
|  | - [Signatures](#signatures) | ||||||
|  | - [Installation](#installation) | ||||||
|  | - [Examples](#examples) | ||||||
|  | - [Config](#config) | ||||||
|  | - [Default Config](#default-config) | ||||||
|  |  | ||||||
|  | ### Signatures | ||||||
|  |  | ||||||
|  | ```go | ||||||
|  | func New(config ...Config) (*Storage, error) | ||||||
|  | func (s *Storage) Get(key string) ([]byte, error) | ||||||
|  | func (s *Storage) Set(key string, val []byte, exp time.Duration) error | ||||||
|  | func (s *Storage) Delete(key string) error | ||||||
|  | func (s *Storage) Reset() error | ||||||
|  | func (s *Storage) Close() error | ||||||
|  | func (s *Storage) Conn() *Session | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | ### Installation | ||||||
|  |  | ||||||
|  | Clickhouse is supported on the latest two versions of Go: | ||||||
|  |  | ||||||
|  | Install the clickhouse implementation: | ||||||
|  | ```bash | ||||||
|  | go get github.com/gofiber/storage/clickhouse | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | ### Running the tests | ||||||
|  |  | ||||||
|  | This module uses [Testcontainers for Go](https://github.com/testcontainers/testcontainers-go/) to run integration tests, which will start a local instance of Clickhouse as a Docker container under the hood. To run the tests, you must have Docker (or another container runtime 100% compatible with the Docker APIs) installed on your machine. | ||||||
|  |  | ||||||
|  | ### Local development | ||||||
|  |  | ||||||
|  | Before running this implementation, you must ensure a Clickhouse cluster is available. | ||||||
|  | For local development, we recommend using the Clickhouse Docker image; it contains everything | ||||||
|  | necessary for the client to operate correctly. | ||||||
|  |  | ||||||
|  | To start Clickhouse using Docker, issue the following: | ||||||
|  |  | ||||||
|  | ```bash | ||||||
|  | docker run -d -p 9000:9000 --name some-clickhouse-server --ulimit nofile=262144:262144 clickhouse/clickhouse-server | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | After running this command you're ready to start using the storage and connecting to the database. | ||||||
|  |  | ||||||
|  | ### Examples | ||||||
|  |  | ||||||
|  | You can use the following options to create a clickhouse storage driver: | ||||||
|  | ```go | ||||||
|  | import "github.com/gofiber/storage/clickhouse" | ||||||
|  |  | ||||||
|  | // Initialize default config, to connect to localhost:9000 using the memory engine and with a clean table. | ||||||
|  | store, err := clickhouse.New(clickhouse.Config{ | ||||||
|  |     Host: "localhost", | ||||||
|  |     Port: 9000, | ||||||
|  |     Clean: true, | ||||||
|  | }) | ||||||
|  |  | ||||||
|  | // Initialize custom config to connect to a different host/port and use custom engine and with clean table. | ||||||
|  | store, err := clickhouse.New(clickhouse.Config{ | ||||||
|  |     Host: "some-ip-address", | ||||||
|  |     Port: 9000, | ||||||
|  |     Engine: clickhouse.MergeTree, | ||||||
|  |     Clean: true, | ||||||
|  | }) | ||||||
|  |  | ||||||
|  | // Initialize to connect with TLS enabled with your own tls.Config and with clean table. | ||||||
|  | tlsConfig := config := &tls.Config{...} | ||||||
|  |  | ||||||
|  | store, err := clickhouse.New(clickhouse.Config{ | ||||||
|  |     Host: "some-ip-address", | ||||||
|  |     Port: 9000, | ||||||
|  |     Clean: true, | ||||||
|  |     TLSConfig: tlsConfig, | ||||||
|  | }) | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | ### Config | ||||||
|  |  | ||||||
|  | ```go | ||||||
|  | // Config defines configuration options for Clickhouse connection. | ||||||
|  | type Config struct { | ||||||
|  |     // The host of the database. Ex: 127.0.0.1 | ||||||
|  |     Host string | ||||||
|  |     // The port where the database is supposed to listen to. Ex: 9000 | ||||||
|  |     Port int | ||||||
|  |     // The database that the connection should authenticate from | ||||||
|  |     Database string | ||||||
|  |     // The username to be used in the authentication | ||||||
|  |     Username string | ||||||
|  |     // The password to be used in the authentication | ||||||
|  |     Password string | ||||||
|  |     // The name of the table that will store the data | ||||||
|  |     Table string | ||||||
|  |     // The engine that should be used in the table | ||||||
|  |     Engine string | ||||||
|  |     // Should start a clean table, default false | ||||||
|  |     Clean bool | ||||||
|  |     // TLS configuration, default nil | ||||||
|  |     TLSConfig *tls.Config | ||||||
|  |     // Should the connection be in debug mode, default false | ||||||
|  |     Debug bool | ||||||
|  |     // The function to use with the debug config, default print function. It only works when debug is true | ||||||
|  |     Debugf func(format string, v ...any) | ||||||
|  | } | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | ### Default Config | ||||||
|  |  | ||||||
|  | ```go | ||||||
|  | var DefaultConfig = Config{ | ||||||
|  |     Host:      "localhost", | ||||||
|  |     Port:      9000, | ||||||
|  |     Engine:    "Memory", | ||||||
|  |     Clean:     false, | ||||||
|  | } | ||||||
|  | ``` | ||||||
							
								
								
									
										126
									
								
								clickhouse/clickhouse.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										126
									
								
								clickhouse/clickhouse.go
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,126 @@ | |||||||
|  | package clickhouse | ||||||
|  |  | ||||||
|  | import ( | ||||||
|  | 	"context" | ||||||
|  | 	"database/sql" | ||||||
|  | 	"errors" | ||||||
|  | 	"fmt" | ||||||
|  | 	"time" | ||||||
|  |  | ||||||
|  | 	driver "github.com/ClickHouse/clickhouse-go/v2" | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | type Storage struct { | ||||||
|  | 	session driver.Conn | ||||||
|  | 	context context.Context | ||||||
|  | 	table   string | ||||||
|  | } | ||||||
|  |  | ||||||
|  | // New returns a new [*Storage] given a [Config]. | ||||||
|  | func New(configuration Config) (*Storage, error) { | ||||||
|  | 	cfg, engine, err := defaultConfig(configuration) | ||||||
|  | 	if err != nil { | ||||||
|  | 		return nil, err | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	conn, err := driver.Open(&cfg) | ||||||
|  | 	if err != nil { | ||||||
|  | 		return nil, err | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	ctx := context.Background() | ||||||
|  |  | ||||||
|  | 	queryWithEngine := fmt.Sprintf(createTableString, engine) | ||||||
|  | 	if err := conn.Exec(ctx, queryWithEngine, driver.Named("table", configuration.Table)); err != nil { | ||||||
|  | 		return nil, err | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	if configuration.Clean { | ||||||
|  | 		if err := conn.Exec(ctx, resetDataString, driver.Named("table", configuration.Table)); err != nil { | ||||||
|  | 			return nil, err | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	if err := conn.Ping(ctx); err != nil { | ||||||
|  | 		return nil, err | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	return &Storage{ | ||||||
|  | 		session: conn, | ||||||
|  | 		context: ctx, | ||||||
|  | 		table:   configuration.Table, | ||||||
|  | 	}, nil | ||||||
|  | } | ||||||
|  |  | ||||||
|  | func (s *Storage) Set(key string, value []byte, expiration time.Duration) error { | ||||||
|  | 	if len(key) <= 0 || len(value) <= 0 { | ||||||
|  | 		return nil | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	exp := time.Time{} | ||||||
|  | 	if expiration != 0 { | ||||||
|  | 		exp = time.Now().Add(expiration).UTC() | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	return s. | ||||||
|  | 		session. | ||||||
|  | 		Exec( | ||||||
|  | 			s.context, | ||||||
|  | 			insertDataString, | ||||||
|  | 			driver.Named("table", s.table), | ||||||
|  | 			driver.Named("key", key), | ||||||
|  | 			driver.Named("value", string(value)), | ||||||
|  | 			driver.Named("expiration", exp.Format("2006-01-02 15:04:05")), | ||||||
|  | 		) | ||||||
|  | } | ||||||
|  |  | ||||||
|  | func (s *Storage) Get(key string) ([]byte, error) { | ||||||
|  | 	if len(key) == 0 { | ||||||
|  | 		return []byte{}, nil | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	var result schema | ||||||
|  |  | ||||||
|  | 	row := s.session.QueryRow( | ||||||
|  | 		s.context, | ||||||
|  | 		selectDataString, | ||||||
|  | 		driver.Named("table", s.table), | ||||||
|  | 		driver.Named("key", key), | ||||||
|  | 	) | ||||||
|  | 	if row.Err() != nil { | ||||||
|  | 		return []byte{}, row.Err() | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	if err := row.ScanStruct(&result); err != nil { | ||||||
|  | 		if errors.Is(err, sql.ErrNoRows) { | ||||||
|  | 			return []byte{}, nil | ||||||
|  | 		} | ||||||
|  |  | ||||||
|  | 		return []byte{}, err | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	// The result.Expiration.IsZero() was returning a false value even when the time was | ||||||
|  | 	// set to be the zero value of the time.Time struct (Jan 1st 1970, 00:00:00 UTC) | ||||||
|  | 	// so we had to change the comparison | ||||||
|  | 	if !time.Unix(0, 0).Equal(result.Expiration) && result.Expiration.Before(time.Now().UTC()) { | ||||||
|  | 		return []byte{}, nil | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	return []byte(result.Value), nil | ||||||
|  | } | ||||||
|  |  | ||||||
|  | func (s *Storage) Delete(key string) error { | ||||||
|  | 	if len(key) == 0 { | ||||||
|  | 		return nil | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	return s.session.Exec(s.context, deleteDataString, driver.Named("table", s.table), driver.Named("key", key)) | ||||||
|  | } | ||||||
|  |  | ||||||
|  | func (s *Storage) Reset() error { | ||||||
|  | 	return s.session.Exec(s.context, resetDataString, driver.Named("table", s.table)) | ||||||
|  | } | ||||||
|  |  | ||||||
|  | func (s *Storage) Close() error { | ||||||
|  | 	return s.session.Close() | ||||||
|  | } | ||||||
							
								
								
									
										255
									
								
								clickhouse/clickhouse_test.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										255
									
								
								clickhouse/clickhouse_test.go
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,255 @@ | |||||||
|  | package clickhouse | ||||||
|  |  | ||||||
|  | import ( | ||||||
|  | 	"context" | ||||||
|  | 	"os" | ||||||
|  | 	"strconv" | ||||||
|  | 	"strings" | ||||||
|  | 	"testing" | ||||||
|  | 	"time" | ||||||
|  |  | ||||||
|  | 	"github.com/stretchr/testify/assert" | ||||||
|  | 	"github.com/stretchr/testify/require" | ||||||
|  |  | ||||||
|  | 	"github.com/testcontainers/testcontainers-go/modules/clickhouse" | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | const ( | ||||||
|  | 	// clickhouseImage is the default image used for running clickhouse in tests. | ||||||
|  | 	clickhouseImage              = "clickhouse/clickhouse-server:23-alpine" | ||||||
|  | 	clickhouseImageEnvVar string = "TEST_CLICKHOUSE_IMAGE" | ||||||
|  | 	clickhouseUser        string = "default" | ||||||
|  | 	clickhousePass        string = "password" | ||||||
|  | 	clickhouseDB          string = "fiber" | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | func getTestConnection(t testing.TB, cfg Config) (*Storage, error) { | ||||||
|  | 	t.Helper() | ||||||
|  |  | ||||||
|  | 	img := clickhouseImage | ||||||
|  | 	if imgFromEnv := os.Getenv(clickhouseImageEnvVar); imgFromEnv != "" { | ||||||
|  | 		img = imgFromEnv | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	ctx := context.Background() | ||||||
|  |  | ||||||
|  | 	c, err := clickhouse.Run(ctx, | ||||||
|  | 		img, | ||||||
|  | 		clickhouse.WithUsername(clickhouseUser), | ||||||
|  | 		clickhouse.WithPassword(clickhousePass), | ||||||
|  | 		clickhouse.WithDatabase(clickhouseDB), | ||||||
|  | 	) | ||||||
|  | 	if err != nil { | ||||||
|  | 		return nil, err | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	hostPort, err := c.ConnectionHost(ctx) | ||||||
|  | 	if err != nil { | ||||||
|  | 		return nil, err | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	pair := strings.Split(hostPort, ":") | ||||||
|  | 	port, err := strconv.Atoi(pair[1]) | ||||||
|  | 	if err != nil { | ||||||
|  | 		return nil, err | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	// configure the client for the testcontainers clickhouse instance | ||||||
|  | 	cfg.Host = pair[0] | ||||||
|  | 	cfg.Port = port | ||||||
|  | 	cfg.Username = clickhouseUser | ||||||
|  | 	cfg.Password = clickhousePass | ||||||
|  | 	cfg.Database = clickhouseDB | ||||||
|  |  | ||||||
|  | 	client, err := New(cfg) | ||||||
|  |  | ||||||
|  | 	return client, err | ||||||
|  | } | ||||||
|  |  | ||||||
|  | func Test_Connection(t *testing.T) { | ||||||
|  | 	_, err := getTestConnection(t, Config{ | ||||||
|  | 		Engine: Memory, | ||||||
|  | 		Table:  "test_table", | ||||||
|  | 		Clean:  true, | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	require.NoError(t, err) | ||||||
|  | } | ||||||
|  |  | ||||||
|  | func Test_Set(t *testing.T) { | ||||||
|  | 	client, err := getTestConnection(t, Config{ | ||||||
|  | 		Engine: Memory, | ||||||
|  | 		Table:  "test_table", | ||||||
|  | 		Clean:  true, | ||||||
|  | 	}) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  | 	defer client.Close() | ||||||
|  |  | ||||||
|  | 	err = client.Set("somekey", []byte("somevalue"), 0) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  | } | ||||||
|  |  | ||||||
|  | func Test_Set_With_Exp(t *testing.T) { | ||||||
|  | 	client, err := getTestConnection(t, Config{ | ||||||
|  | 		Engine: Memory, | ||||||
|  | 		Table:  "test_table", | ||||||
|  | 		Clean:  true, | ||||||
|  | 	}) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  | 	defer client.Close() | ||||||
|  |  | ||||||
|  | 	err = client.Set("setsomekeywithexp", []byte("somevalue"), time.Second*1) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  | } | ||||||
|  |  | ||||||
|  | func Test_Get(t *testing.T) { | ||||||
|  | 	client, err := getTestConnection(t, Config{ | ||||||
|  | 		Engine: Memory, | ||||||
|  | 		Table:  "test_table", | ||||||
|  | 		Clean:  true, | ||||||
|  | 	}) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  | 	defer client.Close() | ||||||
|  |  | ||||||
|  | 	err = client.Set("somekey", []byte("somevalue"), 0) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  |  | ||||||
|  | 	value, err := client.Get("somekey") | ||||||
|  |  | ||||||
|  | 	require.NoError(t, err) | ||||||
|  | 	assert.NotNil(t, value) | ||||||
|  | 	assert.Equal(t, "somevalue", string(value)) | ||||||
|  | } | ||||||
|  |  | ||||||
|  | func Test_Get_With_Exp(t *testing.T) { | ||||||
|  | 	client, err := getTestConnection(t, Config{ | ||||||
|  | 		Engine: Memory, | ||||||
|  | 		Table:  "test_table", | ||||||
|  | 		Clean:  true, | ||||||
|  | 	}) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  | 	defer client.Close() | ||||||
|  |  | ||||||
|  | 	err = client.Set("getsomekeywithexp", []byte("somevalue"), time.Second*2) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  |  | ||||||
|  | 	value, err := client.Get("getsomekeywithexp") | ||||||
|  |  | ||||||
|  | 	require.NoError(t, err) | ||||||
|  | 	assert.NotNil(t, value) | ||||||
|  | 	assert.Equal(t, "somevalue", string(value)) | ||||||
|  |  | ||||||
|  | 	time.Sleep(time.Second * 5) | ||||||
|  |  | ||||||
|  | 	value, err = client.Get("getsomekeywithexp") | ||||||
|  |  | ||||||
|  | 	require.NoError(t, err) | ||||||
|  | 	assert.Equal(t, []byte{}, value) | ||||||
|  | } | ||||||
|  |  | ||||||
|  | func Test_Delete(t *testing.T) { | ||||||
|  | 	client, err := getTestConnection(t, Config{ | ||||||
|  | 		Engine: Memory, | ||||||
|  | 		Table:  "test_table", | ||||||
|  | 		Clean:  true, | ||||||
|  | 	}) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  | 	defer client.Close() | ||||||
|  |  | ||||||
|  | 	err = client.Set("somekeytodelete", []byte("somevalue"), time.Second*5) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  |  | ||||||
|  | 	err = client.Delete("somekeytodelete") | ||||||
|  |  | ||||||
|  | 	require.NoError(t, err) | ||||||
|  |  | ||||||
|  | 	value, err := client.Get("somekeytodelete") | ||||||
|  |  | ||||||
|  | 	require.NoError(t, err) | ||||||
|  | 	assert.Equal(t, []byte{}, value) | ||||||
|  | } | ||||||
|  |  | ||||||
|  | func Test_Reset(t *testing.T) { | ||||||
|  | 	client, err := getTestConnection(t, Config{ | ||||||
|  | 		Engine: Memory, | ||||||
|  | 		Table:  "test_table", | ||||||
|  | 		Clean:  true, | ||||||
|  | 	}) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  | 	defer client.Close() | ||||||
|  |  | ||||||
|  | 	err = client.Set("testkey", []byte("somevalue"), 0) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  |  | ||||||
|  | 	err = client.Reset() | ||||||
|  |  | ||||||
|  | 	require.NoError(t, err) | ||||||
|  |  | ||||||
|  | 	value, err := client.Get("testkey") | ||||||
|  |  | ||||||
|  | 	require.NoError(t, err) | ||||||
|  | 	assert.Equal(t, []byte{}, value) | ||||||
|  | } | ||||||
|  |  | ||||||
|  | func Benchmark_Clickhouse_Set(b *testing.B) { | ||||||
|  | 	b.ReportAllocs() | ||||||
|  | 	b.ResetTimer() | ||||||
|  |  | ||||||
|  | 	client, err := getTestConnection(b, Config{ | ||||||
|  | 		Engine: Memory, | ||||||
|  | 		Table:  "test_table", | ||||||
|  | 		Clean:  true, | ||||||
|  | 	}) | ||||||
|  | 	require.NoError(b, err) | ||||||
|  |  | ||||||
|  | 	defer client.Close() | ||||||
|  |  | ||||||
|  | 	for i := 0; i < b.N; i++ { | ||||||
|  | 		err = client.Set("john", []byte("doe"), 0) | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	require.NoError(b, err) | ||||||
|  | } | ||||||
|  |  | ||||||
|  | func Benchmark_Clickhouse_Get(b *testing.B) { | ||||||
|  | 	b.ReportAllocs() | ||||||
|  | 	b.ResetTimer() | ||||||
|  |  | ||||||
|  | 	client, err := getTestConnection(b, Config{ | ||||||
|  | 		Engine: Memory, | ||||||
|  | 		Table:  "test_table", | ||||||
|  | 		Clean:  true, | ||||||
|  | 	}) | ||||||
|  | 	require.NoError(b, err) | ||||||
|  |  | ||||||
|  | 	defer client.Close() | ||||||
|  |  | ||||||
|  | 	err = client.Set("john", []byte("doe"), 0) | ||||||
|  |  | ||||||
|  | 	for i := 0; i < b.N; i++ { | ||||||
|  | 		_, err = client.Get("john") | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	require.NoError(b, err) | ||||||
|  | } | ||||||
|  |  | ||||||
|  | func Benchmark_Clickhouse_Set_And_Delete(b *testing.B) { | ||||||
|  | 	b.ReportAllocs() | ||||||
|  | 	b.ResetTimer() | ||||||
|  |  | ||||||
|  | 	client, err := getTestConnection(b, Config{ | ||||||
|  | 		Engine: Memory, | ||||||
|  | 		Table:  "test_table", | ||||||
|  | 		Clean:  true, | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	require.NoError(b, err) | ||||||
|  | 	defer client.Close() | ||||||
|  |  | ||||||
|  | 	for i := 0; i < b.N; i++ { | ||||||
|  | 		_ = client.Set("john", []byte("doe"), 0) | ||||||
|  | 		err = client.Delete("john") | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	require.NoError(b, err) | ||||||
|  | } | ||||||
							
								
								
									
										116
									
								
								clickhouse/config.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										116
									
								
								clickhouse/config.go
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,116 @@ | |||||||
|  | package clickhouse | ||||||
|  |  | ||||||
|  | import ( | ||||||
|  | 	"crypto/tls" | ||||||
|  | 	"errors" | ||||||
|  | 	"fmt" | ||||||
|  | 	"log" | ||||||
|  | 	"time" | ||||||
|  |  | ||||||
|  | 	driver "github.com/ClickHouse/clickhouse-go/v2" | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | type ClickhouseEngine string | ||||||
|  |  | ||||||
|  | type schema struct { | ||||||
|  | 	Value      string    `ch:"value"` | ||||||
|  | 	Expiration time.Time `ch:"expiration"` | ||||||
|  | } | ||||||
|  |  | ||||||
|  | const ( | ||||||
|  | 	Memory    ClickhouseEngine = "Memory" | ||||||
|  | 	MergeTree ClickhouseEngine = "MergeTree" | ||||||
|  | 	StripeLog ClickhouseEngine = "StripeLog" | ||||||
|  | 	TinyLog   ClickhouseEngine = "TinyLog" | ||||||
|  | 	Log       ClickhouseEngine = "Log" | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | // Config defines configuration options for Clickhouse connection. | ||||||
|  | type Config struct { | ||||||
|  | 	// The host of the database. Ex: 127.0.0.1 | ||||||
|  | 	Host string | ||||||
|  | 	// The port where the database is supposed to listen to. Ex: 9000 | ||||||
|  | 	Port int | ||||||
|  | 	// The database that the connection should authenticate from | ||||||
|  | 	Database string | ||||||
|  | 	// The username to be used in the authentication | ||||||
|  | 	Username string | ||||||
|  | 	// The password to be used in the authentication | ||||||
|  | 	Password string | ||||||
|  | 	// The name of the table that will store the data | ||||||
|  | 	Table string | ||||||
|  | 	// The engine that should be used in the table | ||||||
|  | 	Engine ClickhouseEngine | ||||||
|  | 	// Should start a clean table, default false | ||||||
|  | 	Clean bool | ||||||
|  | 	// TLS configuration, default nil | ||||||
|  | 	TLSConfig *tls.Config | ||||||
|  | 	// Should the connection be in debug mode, default false | ||||||
|  | 	Debug bool | ||||||
|  | 	// The function to use with the debug config, default print function. It only works when debug is true | ||||||
|  | 	Debugf func(format string, v ...any) | ||||||
|  | } | ||||||
|  |  | ||||||
|  | func defaultConfig(configuration Config) (driver.Options, ClickhouseEngine, error) { | ||||||
|  | 	if configuration.Table == "" { | ||||||
|  | 		return driver.Options{}, "", errors.New("table name not provided") | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	if configuration.Host == "" { | ||||||
|  | 		configuration.Host = "localhost" | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	if configuration.Port == 0 { | ||||||
|  | 		configuration.Port = 9000 | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	if configuration.Engine == "" { | ||||||
|  | 		configuration.Engine = Memory | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	config := driver.Options{ | ||||||
|  | 		Addr: []string{fmt.Sprintf("%s:%d", configuration.Host, configuration.Port)}, | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	if configuration.Username != "" && configuration.Password != "" { | ||||||
|  | 		config.Auth = driver.Auth{ | ||||||
|  | 			Database: configuration.Database, | ||||||
|  | 			Username: configuration.Username, | ||||||
|  | 			Password: configuration.Password, | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	if configuration.TLSConfig != nil { | ||||||
|  | 		config.TLS = configuration.TLSConfig | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	if configuration.Debug && config.Debugf == nil { | ||||||
|  | 		config.Debugf = log.Printf | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	return config, configuration.Engine, nil | ||||||
|  | } | ||||||
|  |  | ||||||
|  | const resetDataString = ` | ||||||
|  |   TRUNCATE TABLE {table:Identifier} | ||||||
|  | ` | ||||||
|  |  | ||||||
|  | const deleteDataString = ` | ||||||
|  |   ALTER TABLE {table:Identifier} DELETE WHERE key = {key:String} | ||||||
|  | ` | ||||||
|  |  | ||||||
|  | const selectDataString = ` | ||||||
|  | 	SELECT value, expiration FROM {table:Identifier} WHERE key = {key:String} | ||||||
|  | ` | ||||||
|  |  | ||||||
|  | const insertDataString = ` | ||||||
|  |   INSERT INTO {table:Identifier} (*) VALUES ({key:String}, {value:String}, {expiration:Datetime}) | ||||||
|  | ` | ||||||
|  |  | ||||||
|  | const createTableString = ` | ||||||
|  |   CREATE TABLE IF NOT EXISTS {table:Identifier} ( | ||||||
|  |   	  key String CODEC(ZSTD(1)) | ||||||
|  |   	, value String CODEC(ZSTD(1)) | ||||||
|  |   	, expiration Datetime CODEC(ZSTD(1)) | ||||||
|  |   ) ENGINE=%s | ||||||
|  | ` | ||||||
							
								
								
									
										67
									
								
								clickhouse/go.mod
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										67
									
								
								clickhouse/go.mod
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,67 @@ | |||||||
|  | module github.com/gofiber/storage/clickhouse | ||||||
|  |  | ||||||
|  | go 1.21 | ||||||
|  |  | ||||||
|  | require ( | ||||||
|  | 	github.com/ClickHouse/clickhouse-go/v2 v2.26.0 | ||||||
|  | 	github.com/stretchr/testify v1.9.0 | ||||||
|  | 	github.com/testcontainers/testcontainers-go/modules/clickhouse v0.33.0 | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | require ( | ||||||
|  | 	dario.cat/mergo v1.0.0 // indirect | ||||||
|  | 	github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 // indirect | ||||||
|  | 	github.com/ClickHouse/ch-go v0.61.5 // indirect | ||||||
|  | 	github.com/Microsoft/go-winio v0.6.2 // indirect | ||||||
|  | 	github.com/andybalholm/brotli v1.1.0 // indirect | ||||||
|  | 	github.com/cenkalti/backoff/v4 v4.2.1 // indirect | ||||||
|  | 	github.com/containerd/containerd v1.7.18 // indirect | ||||||
|  | 	github.com/containerd/log v0.1.0 // indirect | ||||||
|  | 	github.com/containerd/platforms v0.2.1 // indirect | ||||||
|  | 	github.com/cpuguy83/dockercfg v0.3.1 // indirect | ||||||
|  | 	github.com/davecgh/go-spew v1.1.1 // indirect | ||||||
|  | 	github.com/distribution/reference v0.6.0 // indirect | ||||||
|  | 	github.com/docker/docker v27.1.1+incompatible // indirect | ||||||
|  | 	github.com/docker/go-connections v0.5.0 // indirect | ||||||
|  | 	github.com/docker/go-units v0.5.0 // indirect | ||||||
|  | 	github.com/felixge/httpsnoop v1.0.4 // indirect | ||||||
|  | 	github.com/go-faster/city v1.0.1 // indirect | ||||||
|  | 	github.com/go-faster/errors v0.7.1 // indirect | ||||||
|  | 	github.com/go-logr/logr v1.4.2 // indirect | ||||||
|  | 	github.com/go-logr/stdr v1.2.2 // indirect | ||||||
|  | 	github.com/go-ole/go-ole v1.2.6 // indirect | ||||||
|  | 	github.com/gogo/protobuf v1.3.2 // indirect | ||||||
|  | 	github.com/google/uuid v1.6.0 // indirect | ||||||
|  | 	github.com/klauspost/compress v1.17.9 // indirect | ||||||
|  | 	github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0 // indirect | ||||||
|  | 	github.com/magiconair/properties v1.8.7 // indirect | ||||||
|  | 	github.com/moby/docker-image-spec v1.3.1 // indirect | ||||||
|  | 	github.com/moby/patternmatcher v0.6.0 // indirect | ||||||
|  | 	github.com/moby/sys/sequential v0.5.0 // indirect | ||||||
|  | 	github.com/moby/sys/user v0.1.0 // indirect | ||||||
|  | 	github.com/moby/term v0.5.0 // indirect | ||||||
|  | 	github.com/morikuni/aec v1.0.0 // indirect | ||||||
|  | 	github.com/opencontainers/go-digest v1.0.0 // indirect | ||||||
|  | 	github.com/opencontainers/image-spec v1.1.0 // indirect | ||||||
|  | 	github.com/paulmach/orb v0.11.1 // indirect | ||||||
|  | 	github.com/pierrec/lz4/v4 v4.1.21 // indirect | ||||||
|  | 	github.com/pkg/errors v0.9.1 // indirect | ||||||
|  | 	github.com/pmezard/go-difflib v1.0.0 // indirect | ||||||
|  | 	github.com/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c // indirect | ||||||
|  | 	github.com/segmentio/asm v1.2.0 // indirect | ||||||
|  | 	github.com/shirou/gopsutil/v3 v3.23.12 // indirect | ||||||
|  | 	github.com/shoenig/go-m1cpu v0.1.6 // indirect | ||||||
|  | 	github.com/shopspring/decimal v1.4.0 // indirect | ||||||
|  | 	github.com/sirupsen/logrus v1.9.3 // indirect | ||||||
|  | 	github.com/testcontainers/testcontainers-go v0.33.0 // indirect | ||||||
|  | 	github.com/tklauser/go-sysconf v0.3.12 // indirect | ||||||
|  | 	github.com/tklauser/numcpus v0.6.1 // indirect | ||||||
|  | 	github.com/yusufpapurcu/wmi v1.2.3 // indirect | ||||||
|  | 	go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 // indirect | ||||||
|  | 	go.opentelemetry.io/otel v1.28.0 // indirect | ||||||
|  | 	go.opentelemetry.io/otel/metric v1.28.0 // indirect | ||||||
|  | 	go.opentelemetry.io/otel/trace v1.28.0 // indirect | ||||||
|  | 	golang.org/x/crypto v0.24.0 // indirect | ||||||
|  | 	golang.org/x/sys v0.21.0 // indirect | ||||||
|  | 	gopkg.in/yaml.v3 v3.0.1 // indirect | ||||||
|  | ) | ||||||
							
								
								
									
										238
									
								
								clickhouse/go.sum
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										238
									
								
								clickhouse/go.sum
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,238 @@ | |||||||
|  | dario.cat/mergo v1.0.0 h1:AGCNq9Evsj31mOgNPcLyXc+4PNABt905YmuqPYYpBWk= | ||||||
|  | dario.cat/mergo v1.0.0/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= | ||||||
|  | github.com/AdaLogics/go-fuzz-headers v0.0.0-20230811130428-ced1acdcaa24 h1:bvDV9vkmnHYOMsOr4WLk+Vo07yKIzd94sVoIqshQ4bU= | ||||||
|  | github.com/AdaLogics/go-fuzz-headers v0.0.0-20230811130428-ced1acdcaa24/go.mod h1:8o94RPi1/7XTJvwPpRSzSUedZrtlirdB3r9Z20bi2f8= | ||||||
|  | github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 h1:UQHMgLO+TxOElx5B5HZ4hJQsoJ/PvUvKRhJHDQXO8P8= | ||||||
|  | github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E= | ||||||
|  | github.com/ClickHouse/ch-go v0.61.5 h1:zwR8QbYI0tsMiEcze/uIMK+Tz1D3XZXLdNrlaOpeEI4= | ||||||
|  | github.com/ClickHouse/ch-go v0.61.5/go.mod h1:s1LJW/F/LcFs5HJnuogFMta50kKDO0lf9zzfrbl0RQg= | ||||||
|  | github.com/ClickHouse/clickhouse-go/v2 v2.26.0 h1:j4/y6NYaCcFkJwN/TU700ebW+nmsIy34RmUAAcZKy9w= | ||||||
|  | github.com/ClickHouse/clickhouse-go/v2 v2.26.0/go.mod h1:iDTViXk2Fgvf1jn2dbJd1ys+fBkdD1UMRnXlwmhijhQ= | ||||||
|  | github.com/Microsoft/go-winio v0.6.2 h1:F2VQgta7ecxGYO8k3ZZz3RS8fVIXVxONVUPlNERoyfY= | ||||||
|  | github.com/Microsoft/go-winio v0.6.2/go.mod h1:yd8OoFMLzJbo9gZq8j5qaps8bJ9aShtEA8Ipt1oGCvU= | ||||||
|  | github.com/andybalholm/brotli v1.1.0 h1:eLKJA0d02Lf0mVpIDgYnqXcUn0GqVmEFny3VuID1U3M= | ||||||
|  | github.com/andybalholm/brotli v1.1.0/go.mod h1:sms7XGricyQI9K10gOSf56VKKWS4oLer58Q+mhRPtnY= | ||||||
|  | github.com/cenkalti/backoff/v4 v4.2.1 h1:y4OZtCnogmCPw98Zjyt5a6+QwPLGkiQsYW5oUqylYbM= | ||||||
|  | github.com/cenkalti/backoff/v4 v4.2.1/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE= | ||||||
|  | github.com/containerd/containerd v1.7.18 h1:jqjZTQNfXGoEaZdW1WwPU0RqSn1Bm2Ay/KJPUuO8nao= | ||||||
|  | github.com/containerd/containerd v1.7.18/go.mod h1:IYEk9/IO6wAPUz2bCMVUbsfXjzw5UNP5fLz4PsUygQ4= | ||||||
|  | github.com/containerd/log v0.1.0 h1:TCJt7ioM2cr/tfR8GPbGf9/VRAX8D2B4PjzCpfX540I= | ||||||
|  | github.com/containerd/log v0.1.0/go.mod h1:VRRf09a7mHDIRezVKTRCrOq78v577GXq3bSa3EhrzVo= | ||||||
|  | github.com/containerd/platforms v0.2.1 h1:zvwtM3rz2YHPQsF2CHYM8+KtB5dvhISiXh5ZpSBQv6A= | ||||||
|  | github.com/containerd/platforms v0.2.1/go.mod h1:XHCb+2/hzowdiut9rkudds9bE5yJ7npe7dG/wG+uFPw= | ||||||
|  | github.com/cpuguy83/dockercfg v0.3.1 h1:/FpZ+JaygUR/lZP2NlFI2DVfrOEMAIKP5wWEJdoYe9E= | ||||||
|  | github.com/cpuguy83/dockercfg v0.3.1/go.mod h1:sugsbF4//dDlL/i+S+rtpIWp+5h0BHJHfjj5/jFyUJc= | ||||||
|  | github.com/creack/pty v1.1.18 h1:n56/Zwd5o6whRC5PMGretI4IdRLlmBXYNjScPaBgsbY= | ||||||
|  | github.com/creack/pty v1.1.18/go.mod h1:MOBLtS5ELjhRRrroQr9kyvTxUAFNvYEK993ew/Vr4O4= | ||||||
|  | github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= | ||||||
|  | github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= | ||||||
|  | github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= | ||||||
|  | github.com/distribution/reference v0.6.0 h1:0IXCQ5g4/QMHHkarYzh5l+u8T3t73zM5QvfrDyIgxBk= | ||||||
|  | github.com/distribution/reference v0.6.0/go.mod h1:BbU0aIcezP1/5jX/8MP0YiH4SdvB5Y4f/wlDRiLyi3E= | ||||||
|  | github.com/docker/docker v27.1.1+incompatible h1:hO/M4MtV36kzKldqnA37IWhebRA+LnqqcqDja6kVaKY= | ||||||
|  | github.com/docker/docker v27.1.1+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= | ||||||
|  | github.com/docker/go-connections v0.5.0 h1:USnMq7hx7gwdVZq1L49hLXaFtUdTADjXGp+uj1Br63c= | ||||||
|  | github.com/docker/go-connections v0.5.0/go.mod h1:ov60Kzw0kKElRwhNs9UlUHAE/F9Fe6GLaXnqyDdmEXc= | ||||||
|  | github.com/docker/go-units v0.5.0 h1:69rxXcBk27SvSaaxTtLh/8llcHD8vYHT7WSdRZ/jvr4= | ||||||
|  | github.com/docker/go-units v0.5.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= | ||||||
|  | github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= | ||||||
|  | github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= | ||||||
|  | github.com/go-faster/city v1.0.1 h1:4WAxSZ3V2Ws4QRDrscLEDcibJY8uf41H6AhXDrNDcGw= | ||||||
|  | github.com/go-faster/city v1.0.1/go.mod h1:jKcUJId49qdW3L1qKHH/3wPeUstCVpVSXTM6vO3VcTw= | ||||||
|  | github.com/go-faster/errors v0.7.1 h1:MkJTnDoEdi9pDabt1dpWf7AA8/BaSYZqibYyhZ20AYg= | ||||||
|  | github.com/go-faster/errors v0.7.1/go.mod h1:5ySTjWFiphBs07IKuiL69nxdfd5+fzh1u7FPGZP2quo= | ||||||
|  | github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= | ||||||
|  | github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY= | ||||||
|  | github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= | ||||||
|  | github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= | ||||||
|  | github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= | ||||||
|  | github.com/go-ole/go-ole v1.2.6 h1:/Fpf6oFPoeFik9ty7siob0G6Ke8QvQEuVcuChpwXzpY= | ||||||
|  | github.com/go-ole/go-ole v1.2.6/go.mod h1:pprOEPIfldk/42T2oK7lQ4v4JSDwmV0As9GaiUsvbm0= | ||||||
|  | github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= | ||||||
|  | github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= | ||||||
|  | github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= | ||||||
|  | github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= | ||||||
|  | github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= | ||||||
|  | github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= | ||||||
|  | github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= | ||||||
|  | github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= | ||||||
|  | github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= | ||||||
|  | github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= | ||||||
|  | github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= | ||||||
|  | github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= | ||||||
|  | github.com/grpc-ecosystem/grpc-gateway/v2 v2.16.0 h1:YBftPWNWd4WwGqtY2yeZL2ef8rHAxPBD8KFhJpmcqms= | ||||||
|  | github.com/grpc-ecosystem/grpc-gateway/v2 v2.16.0/go.mod h1:YN5jB8ie0yfIUg6VvR9Kz84aCaG7AsGZnLjhHbUqwPg= | ||||||
|  | github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= | ||||||
|  | github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= | ||||||
|  | github.com/klauspost/compress v1.13.6/go.mod h1:/3/Vjq9QcHkK5uEr5lBEmyoZ1iFhe47etQ6QUkpK6sk= | ||||||
|  | github.com/klauspost/compress v1.17.9 h1:6KIumPrER1LHsvBVuDa0r5xaG0Es51mhhB9BQB2qeMA= | ||||||
|  | github.com/klauspost/compress v1.17.9/go.mod h1:Di0epgTjJY877eYKx5yC51cX2A2Vl2ibi7bDH9ttBbw= | ||||||
|  | github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= | ||||||
|  | github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= | ||||||
|  | github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= | ||||||
|  | github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= | ||||||
|  | github.com/kr/text v0.1.0 h1:45sCR5RtlFHMR4UwH9sdQ5TC8v0qDQCHnXt+kaKSTVE= | ||||||
|  | github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= | ||||||
|  | github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0 h1:6E+4a0GO5zZEnZ81pIr0yLvtUWk2if982qA3F3QD6H4= | ||||||
|  | github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0/go.mod h1:zJYVVT2jmtg6P3p1VtQj7WsuWi/y4VnjVBn7F8KPB3I= | ||||||
|  | github.com/magiconair/properties v1.8.7 h1:IeQXZAiQcpL9mgcAe1Nu6cX9LLw6ExEHKjN0VQdvPDY= | ||||||
|  | github.com/magiconair/properties v1.8.7/go.mod h1:Dhd985XPs7jluiymwWYZ0G4Z61jb3vdS329zhj2hYo0= | ||||||
|  | github.com/moby/docker-image-spec v1.3.1 h1:jMKff3w6PgbfSa69GfNg+zN/XLhfXJGnEx3Nl2EsFP0= | ||||||
|  | github.com/moby/docker-image-spec v1.3.1/go.mod h1:eKmb5VW8vQEh/BAr2yvVNvuiJuY6UIocYsFu/DxxRpo= | ||||||
|  | github.com/moby/patternmatcher v0.6.0 h1:GmP9lR19aU5GqSSFko+5pRqHi+Ohk1O69aFiKkVGiPk= | ||||||
|  | github.com/moby/patternmatcher v0.6.0/go.mod h1:hDPoyOpDY7OrrMDLaYoY3hf52gNCR/YOUYxkhApJIxc= | ||||||
|  | github.com/moby/sys/sequential v0.5.0 h1:OPvI35Lzn9K04PBbCLW0g4LcFAJgHsvXsRyewg5lXtc= | ||||||
|  | github.com/moby/sys/sequential v0.5.0/go.mod h1:tH2cOOs5V9MlPiXcQzRC+eEyab644PWKGRYaaV5ZZlo= | ||||||
|  | github.com/moby/sys/user v0.1.0 h1:WmZ93f5Ux6het5iituh9x2zAG7NFY9Aqi49jjE1PaQg= | ||||||
|  | github.com/moby/sys/user v0.1.0/go.mod h1:fKJhFOnsCN6xZ5gSfbM6zaHGgDJMrqt9/reuj4T7MmU= | ||||||
|  | github.com/moby/term v0.5.0 h1:xt8Q1nalod/v7BqbG21f8mQPqH+xAaC9C3N3wfWbVP0= | ||||||
|  | github.com/moby/term v0.5.0/go.mod h1:8FzsFHVUBGZdbDsJw/ot+X+d5HLUbvklYLJ9uGfcI3Y= | ||||||
|  | github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe/go.mod h1:wL8QJuTMNUDYhXwkmfOly8iTdp5TEcJFWZD2D7SIkUc= | ||||||
|  | github.com/morikuni/aec v1.0.0 h1:nP9CBfwrvYnBRgY6qfDQkygYDmYwOilePFkwzv4dU8A= | ||||||
|  | github.com/morikuni/aec v1.0.0/go.mod h1:BbKIizmSmc5MMPqRYbxO4ZU0S0+P200+tUnFx7PXmsc= | ||||||
|  | github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= | ||||||
|  | github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= | ||||||
|  | github.com/opencontainers/image-spec v1.1.0 h1:8SG7/vwALn54lVB/0yZ/MMwhFrPYtpEHQb2IpWsCzug= | ||||||
|  | github.com/opencontainers/image-spec v1.1.0/go.mod h1:W4s4sFTMaBeK1BQLXbG4AdM2szdn85PY75RI83NrTrM= | ||||||
|  | github.com/paulmach/orb v0.11.1 h1:3koVegMC4X/WeiXYz9iswopaTwMem53NzTJuTF20JzU= | ||||||
|  | github.com/paulmach/orb v0.11.1/go.mod h1:5mULz1xQfs3bmQm63QEJA6lNGujuRafwA5S/EnuLaLU= | ||||||
|  | github.com/paulmach/protoscan v0.2.1/go.mod h1:SpcSwydNLrxUGSDvXvO0P7g7AuhJ7lcKfDlhJCDw2gY= | ||||||
|  | github.com/pierrec/lz4/v4 v4.1.21 h1:yOVMLb6qSIDP67pl/5F7RepeKYu/VmTyEXvuMI5d9mQ= | ||||||
|  | github.com/pierrec/lz4/v4 v4.1.21/go.mod h1:gZWDp/Ze/IJXGXf23ltt2EXimqmTUXEy0GFuRQyBid4= | ||||||
|  | github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= | ||||||
|  | github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= | ||||||
|  | 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/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c h1:ncq/mPwQF4JjgDlrVEn3C11VoGHZN7m8qihwgMEtzYw= | ||||||
|  | github.com/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c/go.mod h1:OmDBASR4679mdNQnz2pUhc2G8CO2JrUAVFDRBDP/hJE= | ||||||
|  | github.com/rogpeppe/go-internal v1.10.0 h1:TMyTOH3F/DB16zRVcYyreMH6GnZZrwQVAoYjRBZyWFQ= | ||||||
|  | github.com/rogpeppe/go-internal v1.10.0/go.mod h1:UQnix2H7Ngw/k4C5ijL5+65zddjncjaFoBhdsK/akog= | ||||||
|  | github.com/segmentio/asm v1.2.0 h1:9BQrFxC+YOHJlTlHGkTrFWf59nbL3XnCoFLTwDCI7ys= | ||||||
|  | github.com/segmentio/asm v1.2.0/go.mod h1:BqMnlJP91P8d+4ibuonYZw9mfnzI9HfxselHZr5aAcs= | ||||||
|  | github.com/shirou/gopsutil/v3 v3.23.12 h1:z90NtUkp3bMtmICZKpC4+WaknU1eXtp5vtbQ11DgpE4= | ||||||
|  | github.com/shirou/gopsutil/v3 v3.23.12/go.mod h1:1FrWgea594Jp7qmjHUUPlJDTPgcsb9mGnXDxavtikzM= | ||||||
|  | github.com/shoenig/go-m1cpu v0.1.6 h1:nxdKQNcEB6vzgA2E2bvzKIYRuNj7XNJ4S/aRSwKzFtM= | ||||||
|  | github.com/shoenig/go-m1cpu v0.1.6/go.mod h1:1JJMcUBvfNwpq05QDQVAnx3gUHr9IYF7GNg9SUEw2VQ= | ||||||
|  | github.com/shoenig/test v0.6.4 h1:kVTaSd7WLz5WZ2IaoM0RSzRsUD+m8wRR+5qvntpn4LU= | ||||||
|  | github.com/shoenig/test v0.6.4/go.mod h1:byHiCGXqrVaflBLAMq/srcZIHynQPQgeyvkvXnjqq0k= | ||||||
|  | github.com/shopspring/decimal v1.4.0 h1:bxl37RwXBklmTi0C79JfXCEBD1cqqHt0bbgBAGFp81k= | ||||||
|  | github.com/shopspring/decimal v1.4.0/go.mod h1:gawqmDU56v4yIKSwfBSFip1HdCCXN8/+DMd9qYNcwME= | ||||||
|  | github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ= | ||||||
|  | github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= | ||||||
|  | github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= | ||||||
|  | github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= | ||||||
|  | github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= | ||||||
|  | github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= | ||||||
|  | github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= | ||||||
|  | github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= | ||||||
|  | github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= | ||||||
|  | github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= | ||||||
|  | github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= | ||||||
|  | github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= | ||||||
|  | github.com/testcontainers/testcontainers-go v0.33.0 h1:zJS9PfXYT5O0ZFXM2xxXfk4J5UMw/kRiISng037Gxdw= | ||||||
|  | github.com/testcontainers/testcontainers-go v0.33.0/go.mod h1:W80YpTa8D5C3Yy16icheD01UTDu+LmXIA2Keo+jWtT8= | ||||||
|  | github.com/testcontainers/testcontainers-go/modules/clickhouse v0.33.0 h1:YbB5DBkpgY+GlGPFqTSV1hzWPm3ZHirEyooZrj+ZXK0= | ||||||
|  | github.com/testcontainers/testcontainers-go/modules/clickhouse v0.33.0/go.mod h1:qJuMPl9yWIWasmdBILM2uDk1Ny1kdeigcKMJ6A8PZz0= | ||||||
|  | github.com/tidwall/pretty v1.0.0/go.mod h1:XNkn88O1ChpSDQmQeStsy+sBenx6DDtFZJxhVysOjyk= | ||||||
|  | github.com/tklauser/go-sysconf v0.3.12 h1:0QaGUFOdQaIVdPgfITYzaTegZvdCjmYO52cSFAEVmqU= | ||||||
|  | github.com/tklauser/go-sysconf v0.3.12/go.mod h1:Ho14jnntGE1fpdOqQEEaiKRpvIavV0hSfmBq8nJbHYI= | ||||||
|  | github.com/tklauser/numcpus v0.6.1 h1:ng9scYS7az0Bk4OZLvrNXNSAO2Pxr1XXRAPyjhIx+Fk= | ||||||
|  | github.com/tklauser/numcpus v0.6.1/go.mod h1:1XfjsgE2zo8GVw7POkMbHENHzVg3GzmoZ9fESEdAacY= | ||||||
|  | github.com/xdg-go/pbkdf2 v1.0.0/go.mod h1:jrpuAogTd400dnrH08LKmI/xc1MbPOebTwRqcT5RDeI= | ||||||
|  | github.com/xdg-go/scram v1.1.1/go.mod h1:RaEWvsqvNKKvBPvcKeFjrG2cJqOkHTiyTpzz23ni57g= | ||||||
|  | github.com/xdg-go/stringprep v1.0.3/go.mod h1:W3f5j4i+9rC0kuIEJL0ky1VpHXQU3ocBgklLGvcBnW8= | ||||||
|  | github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d/go.mod h1:rHwXgn7JulP+udvsHwJoVG1YGAP6VLg4y9I5dyZdqmA= | ||||||
|  | github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= | ||||||
|  | github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= | ||||||
|  | github.com/yusufpapurcu/wmi v1.2.3 h1:E1ctvB7uKFMOJw3fdOW32DwGE9I7t++CRUEMKvFoFiw= | ||||||
|  | github.com/yusufpapurcu/wmi v1.2.3/go.mod h1:SBZ9tNy3G9/m5Oi98Zks0QjeHVDvuK0qfxQmPyzfmi0= | ||||||
|  | go.mongodb.org/mongo-driver v1.11.4/go.mod h1:PTSz5yu21bkT/wXpkS7WR5f0ddqw5quethTUn9WM+2g= | ||||||
|  | go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 h1:jq9TW8u3so/bN+JPT166wjOI6/vQPF6Xe7nMNIltagk= | ||||||
|  | go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0/go.mod h1:p8pYQP+m5XfbZm9fxtSKAbM6oIllS7s2AfxrChvc7iw= | ||||||
|  | go.opentelemetry.io/otel v1.28.0 h1:/SqNcYk+idO0CxKEUOtKQClMK/MimZihKYMruSMViUo= | ||||||
|  | go.opentelemetry.io/otel v1.28.0/go.mod h1:q68ijF8Fc8CnMHKyzqL6akLO46ePnjkgfIMIjUIX9z4= | ||||||
|  | go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.19.0 h1:Mne5On7VWdx7omSrSSZvM4Kw7cS7NQkOOmLcgscI51U= | ||||||
|  | go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.19.0/go.mod h1:IPtUMKL4O3tH5y+iXVyAXqpAwMuzC1IrxVS81rummfE= | ||||||
|  | go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.19.0 h1:IeMeyr1aBvBiPVYihXIaeIZba6b8E1bYp7lbdxK8CQg= | ||||||
|  | go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.19.0/go.mod h1:oVdCUtjq9MK9BlS7TtucsQwUcXcymNiEDjgDD2jMtZU= | ||||||
|  | go.opentelemetry.io/otel/metric v1.28.0 h1:f0HGvSl1KRAU1DLgLGFjrwVyismPlnuU6JD6bOeuA5Q= | ||||||
|  | go.opentelemetry.io/otel/metric v1.28.0/go.mod h1:Fb1eVBFZmLVTMb6PPohq3TO9IIhUisDsbJoL/+uQW4s= | ||||||
|  | go.opentelemetry.io/otel/sdk v1.24.0 h1:YMPPDNymmQN3ZgczicBY3B6sf9n62Dlj9pWD3ucgoDw= | ||||||
|  | go.opentelemetry.io/otel/sdk v1.24.0/go.mod h1:KVrIYw6tEubO9E96HQpcmpTKDVn9gdv35HoYiQWGDFg= | ||||||
|  | go.opentelemetry.io/otel/trace v1.28.0 h1:GhQ9cUuQGmNDd5BTCP2dAvv75RdMxEfTmYejp+lkx9g= | ||||||
|  | go.opentelemetry.io/otel/trace v1.28.0/go.mod h1:jPyXzNPg6da9+38HEwElrQiHlVMTnVfM3/yv2OlIHaI= | ||||||
|  | go.opentelemetry.io/proto/otlp v1.0.0 h1:T0TX0tmXU8a3CbNXzEKGeU5mIVOdf0oykP+u2lIVU/I= | ||||||
|  | go.opentelemetry.io/proto/otlp v1.0.0/go.mod h1:Sy6pihPLfYHkr3NkUbEhGHFhINUSI/v80hjKIs5JXpM= | ||||||
|  | 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/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= | ||||||
|  | golang.org/x/crypto v0.24.0 h1:mnl8DM0o513X8fdIkmyFE/5hTYxbwYOjDS/+rK6qpRI= | ||||||
|  | golang.org/x/crypto v0.24.0/go.mod h1:Z1PMYSOR5nyMcyAVAIQSKCDwalqy85Aqn1x3Ws4L5DM= | ||||||
|  | golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= | ||||||
|  | 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-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= | ||||||
|  | golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= | ||||||
|  | golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= | ||||||
|  | golang.org/x/net v0.26.0 h1:soB7SVo0PWrY4vPW/+ay0jKDNScG2X9wFeYlXIvJsOQ= | ||||||
|  | golang.org/x/net v0.26.0/go.mod h1:5YKkiSynbBIh3p6iOc/vibscux0x38BZDkn8sCUPxHE= | ||||||
|  | golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= | ||||||
|  | golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= | ||||||
|  | golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= | ||||||
|  | golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/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-20190916202348-b4ddaad3f8a3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= | ||||||
|  | golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= | ||||||
|  | golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= | ||||||
|  | golang.org/x/sys v0.0.0-20201204225414-ed752295db88/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= | ||||||
|  | golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= | ||||||
|  | golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | ||||||
|  | golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | ||||||
|  | golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | ||||||
|  | golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | ||||||
|  | golang.org/x/sys v0.11.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | ||||||
|  | golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= | ||||||
|  | golang.org/x/sys v0.21.0 h1:rF+pYz3DAGSQAxAu1CbC7catZg4ebC4UIeIhKxBZvws= | ||||||
|  | golang.org/x/sys v0.21.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= | ||||||
|  | golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= | ||||||
|  | golang.org/x/term v0.21.0 h1:WVXCp+/EBEHOj53Rvu+7KiT/iElMrO8ACK16SMZ3jaA= | ||||||
|  | golang.org/x/term v0.21.0/go.mod h1:ooXLefLobQVslOqselCNF4SxFAaoS6KujMbsGzSDmX0= | ||||||
|  | golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= | ||||||
|  | golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= | ||||||
|  | golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= | ||||||
|  | golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= | ||||||
|  | golang.org/x/text v0.16.0 h1:a94ExnEXNtEwYLGJSIUxnWoxoRz/ZcCsV63ROupILh4= | ||||||
|  | golang.org/x/text v0.16.0/go.mod h1:GhwF1Be+LQoKShO3cGOHzqOgRrGaYc9AvblQOmPVHnI= | ||||||
|  | golang.org/x/time v0.0.0-20220210224613-90d013bbcef8 h1:vVKdlvoWBphwdxWKrFZEuM0kGgGLxUOYcY4U/2Vjg44= | ||||||
|  | golang.org/x/time v0.0.0-20220210224613-90d013bbcef8/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= | ||||||
|  | golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= | ||||||
|  | golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= | ||||||
|  | golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= | ||||||
|  | golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= | ||||||
|  | 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-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= | ||||||
|  | golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= | ||||||
|  | google.golang.org/genproto v0.0.0-20230920204549-e6e6cdab5c13 h1:vlzZttNJGVqTsRFU9AmdnrcO1Znh8Ew9kCD//yjigk0= | ||||||
|  | google.golang.org/genproto/googleapis/api v0.0.0-20240318140521-94a12d6c2237 h1:RFiFrvy37/mpSpdySBDrUdipW/dHwsRwh3J3+A9VgT4= | ||||||
|  | google.golang.org/genproto/googleapis/api v0.0.0-20240318140521-94a12d6c2237/go.mod h1:Z5Iiy3jtmioajWHDGFk7CeugTyHtPvMHA4UTmUkyalE= | ||||||
|  | google.golang.org/genproto/googleapis/rpc v0.0.0-20240318140521-94a12d6c2237 h1:NnYq6UN9ReLM9/Y01KWNOWyI5xQ9kbIms5GGJVwS/Yc= | ||||||
|  | google.golang.org/genproto/googleapis/rpc v0.0.0-20240318140521-94a12d6c2237/go.mod h1:WtryC6hu0hhx87FDGxWCDptyssuo68sk10vYjF+T9fY= | ||||||
|  | google.golang.org/grpc v1.64.1 h1:LKtvyfbX3UGVPFcGqJ9ItpVWW6oN/2XqTxfAnwRRXiA= | ||||||
|  | google.golang.org/grpc v1.64.1/go.mod h1:hiQF4LFZelK2WKaP6W0L92zGHtiQdZxk8CrSdvyjeP0= | ||||||
|  | google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= | ||||||
|  | google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= | ||||||
|  | google.golang.org/protobuf v1.33.0 h1:uNO2rsAINq/JlFpSdYEKIZ0uKD/R9cpdv0T+yoGwGmI= | ||||||
|  | google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= | ||||||
|  | gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= | ||||||
|  | gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= | ||||||
|  | gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= | ||||||
|  | gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= | ||||||
|  | gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= | ||||||
|  | gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= | ||||||
|  | gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= | ||||||
|  | gotest.tools/v3 v3.5.1 h1:EENdUnS3pdur5nybKYIh2Vfgc8IUNBjxDPSjtiJcOzU= | ||||||
|  | gotest.tools/v3 v3.5.1/go.mod h1:isy3WKz7GK6uNw/sbHzfKBLvlvXwUyV06n6brMxxopU= | ||||||
| @@ -3,7 +3,7 @@ module github.com/gofiber/storage/cloudflarekv | |||||||
| go 1.21 | go 1.21 | ||||||
|  |  | ||||||
| require ( | require ( | ||||||
| 	github.com/cloudflare/cloudflare-go v0.97.0 | 	github.com/cloudflare/cloudflare-go v0.102.0 | ||||||
| 	github.com/stretchr/testify v1.9.0 | 	github.com/stretchr/testify v1.9.0 | ||||||
| ) | ) | ||||||
|  |  | ||||||
| @@ -11,12 +11,10 @@ require ( | |||||||
| 	github.com/davecgh/go-spew v1.1.1 // indirect | 	github.com/davecgh/go-spew v1.1.1 // indirect | ||||||
| 	github.com/goccy/go-json v0.10.3 // indirect | 	github.com/goccy/go-json v0.10.3 // indirect | ||||||
| 	github.com/google/go-querystring v1.1.0 // indirect | 	github.com/google/go-querystring v1.1.0 // indirect | ||||||
| 	github.com/hashicorp/go-cleanhttp v0.5.2 // indirect |  | ||||||
| 	github.com/hashicorp/go-retryablehttp v0.7.7 // indirect |  | ||||||
| 	github.com/kr/text v0.2.0 // indirect | 	github.com/kr/text v0.2.0 // indirect | ||||||
| 	github.com/pmezard/go-difflib v1.0.0 // indirect | 	github.com/pmezard/go-difflib v1.0.0 // indirect | ||||||
| 	golang.org/x/net v0.25.0 // indirect | 	golang.org/x/net v0.28.0 // indirect | ||||||
| 	golang.org/x/text v0.15.0 // indirect | 	golang.org/x/text v0.17.0 // indirect | ||||||
| 	golang.org/x/time v0.5.0 // indirect | 	golang.org/x/time v0.5.0 // indirect | ||||||
| 	gopkg.in/yaml.v3 v3.0.1 // indirect | 	gopkg.in/yaml.v3 v3.0.1 // indirect | ||||||
| ) | ) | ||||||
|   | |||||||
| @@ -1,10 +1,8 @@ | |||||||
| github.com/cloudflare/cloudflare-go v0.97.0 h1:feZRGiRF1EbljnNIYdt8014FnOLtC3CCvgkLXu915ks= | github.com/cloudflare/cloudflare-go v0.102.0 h1:+0MGbkirM/yzVLOYpWMgW7CDdKzesSbdwA2Y+rABrWI= | ||||||
| github.com/cloudflare/cloudflare-go v0.97.0/go.mod h1:JXRwuTfHpe5xFg8xytc2w0XC6LcrFsBVMS4WlVaiGg8= | github.com/cloudflare/cloudflare-go v0.102.0/go.mod h1:BOB41tXf31ti/qtBO9paYhyapotQbGRDbQoLOAF7pSg= | ||||||
| github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= | github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= | ||||||
| github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= | github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= | ||||||
| github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= | github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= | ||||||
| github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= |  | ||||||
| github.com/fatih/color v1.16.0/go.mod h1:fL2Sau1YI5c0pdGEVCbKQbLXB6edEj1ZgiY4NijnWvE= |  | ||||||
| github.com/goccy/go-json v0.10.3 h1:KZ5WoDbxAIgm2HNbYckL0se1fHD6rz5j4ywS6ebzDqA= | github.com/goccy/go-json v0.10.3 h1:KZ5WoDbxAIgm2HNbYckL0se1fHD6rz5j4ywS6ebzDqA= | ||||||
| github.com/goccy/go-json v0.10.3/go.mod h1:oq7eo15ShAhp70Anwd5lgX2pLfOS3QCiwU/PULtXL6M= | github.com/goccy/go-json v0.10.3/go.mod h1:oq7eo15ShAhp70Anwd5lgX2pLfOS3QCiwU/PULtXL6M= | ||||||
| github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= | github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= | ||||||
| @@ -12,32 +10,20 @@ github.com/google/go-cmp v0.5.8 h1:e6P7q2lk1O+qJJb4BtCQXlK8vWEO8V1ZeuEdJNOqZyg= | |||||||
| github.com/google/go-cmp v0.5.8/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= | github.com/google/go-cmp v0.5.8/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= | ||||||
| github.com/google/go-querystring v1.1.0 h1:AnCroh3fv4ZBgVIf1Iwtovgjaw/GiKJo8M8yD/fhyJ8= | github.com/google/go-querystring v1.1.0 h1:AnCroh3fv4ZBgVIf1Iwtovgjaw/GiKJo8M8yD/fhyJ8= | ||||||
| github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU= | github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU= | ||||||
| github.com/hashicorp/go-cleanhttp v0.5.2 h1:035FKYIWjmULyFRBKPs8TBQoi0x6d9G4xc9neXJWAZQ= |  | ||||||
| github.com/hashicorp/go-cleanhttp v0.5.2/go.mod h1:kO/YDlP8L1346E6Sodw+PrpBSV4/SoxCXGY6BqNFT48= |  | ||||||
| github.com/hashicorp/go-hclog v1.6.3 h1:Qr2kF+eVWjTiYmU7Y31tYlP1h0q/X3Nl3tPGdaB11/k= |  | ||||||
| github.com/hashicorp/go-hclog v1.6.3/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVHBcfoyhpF5M= |  | ||||||
| github.com/hashicorp/go-retryablehttp v0.7.7 h1:C8hUCYzor8PIfXHa4UrZkU4VvK8o9ISHxT2Q8+VepXU= |  | ||||||
| github.com/hashicorp/go-retryablehttp v0.7.7/go.mod h1:pkQpWZeYWskR+D1tR2O5OcBFOxfA7DoAO6xtkuQnHTk= |  | ||||||
| github.com/kr/pretty v0.3.0 h1:WgNl7dwNpEZ6jJ9k1snq4pZsg7DOEN8hP9Xw0Tsjwk0= | github.com/kr/pretty v0.3.0 h1:WgNl7dwNpEZ6jJ9k1snq4pZsg7DOEN8hP9Xw0Tsjwk0= | ||||||
| github.com/kr/pretty v0.3.0/go.mod h1:640gp4NfQd8pI5XOwp5fnNeVWj67G7CFk/SaSQn7NBk= | github.com/kr/pretty v0.3.0/go.mod h1:640gp4NfQd8pI5XOwp5fnNeVWj67G7CFk/SaSQn7NBk= | ||||||
| github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= | github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= | ||||||
| github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= | github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= | ||||||
| github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA= |  | ||||||
| github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovkB8vQcUbaXHg= |  | ||||||
| github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= |  | ||||||
| github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= |  | ||||||
| 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/rogpeppe/go-internal v1.8.1 h1:geMPLpDpQOgVyCg5z5GoRwLHepNdb71NXb67XFkP+Eg= | github.com/rogpeppe/go-internal v1.8.1 h1:geMPLpDpQOgVyCg5z5GoRwLHepNdb71NXb67XFkP+Eg= | ||||||
| github.com/rogpeppe/go-internal v1.8.1/go.mod h1:JeRgkft04UBgHMgCIwADu4Pn6Mtm5d4nPKWu0nJ5d+o= | github.com/rogpeppe/go-internal v1.8.1/go.mod h1:JeRgkft04UBgHMgCIwADu4Pn6Mtm5d4nPKWu0nJ5d+o= | ||||||
| github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= | github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= | ||||||
| github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= | github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= | ||||||
| golang.org/x/net v0.25.0 h1:d/OCCoBEUq33pjydKrGQhw7IlUPI2Oylr+8qLx49kac= | golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE= | ||||||
| golang.org/x/net v0.25.0/go.mod h1:JkAGAh7GEvH74S6FOH42FLoXpXbE/aqXSrIQjXgsiwM= | golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg= | ||||||
| golang.org/x/sys v0.20.0 h1:Od9JTbYCk261bKm4M/mw7AklTlFYIa0bIp9BgSm1S8Y= | golang.org/x/text v0.17.0 h1:XtiM5bkSOt+ewxlOE/aE/AKEHibwj/6gvWMl9Rsh0Qc= | ||||||
| golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= | golang.org/x/text v0.17.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= | ||||||
| golang.org/x/text v0.15.0 h1:h1V/4gjBv8v9cjcR6+AR5+/cIYK5N/WAgiv4xlsEtAk= |  | ||||||
| golang.org/x/text v0.15.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= |  | ||||||
| golang.org/x/time v0.5.0 h1:o7cqy6amK/52YcAKIPlM3a+Fpj35zvRj2TP+e1xFSfk= | golang.org/x/time v0.5.0 h1:o7cqy6amK/52YcAKIPlM3a+Fpj35zvRj2TP+e1xFSfk= | ||||||
| golang.org/x/time v0.5.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= | golang.org/x/time v0.5.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= | ||||||
| golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= | golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| # Coherence | # Coherence | ||||||
| <!-- Copyright © 2023, Oracle and/or its affiliates. --> | <!-- Copyright © 2023, 2025 Oracle and/or its affiliates. --> | ||||||
| A Coherence storage driver using [https://github.com/oracle/coherence-go-client](https://github.com/oracle/coherence-go-client). | A Coherence storage driver using [https://github.com/oracle/coherence-go-client](https://github.com/oracle/coherence-go-client). | ||||||
|  |  | ||||||
| ### Table of Contents | ### Table of Contents | ||||||
| @@ -35,10 +35,10 @@ necessary for the client to operate correctly. | |||||||
| To start a Coherence cluster using Docker, issue the following: | To start a Coherence cluster using Docker, issue the following: | ||||||
|  |  | ||||||
| ```bash | ```bash | ||||||
| docker run -d -p 1408:1408 ghcr.io/oracle/coherence-ce:22.06.7 | docker run -d -p 1408:1408 ghcr.io/oracle/coherence-ce:24.09 | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| See the documentation [here](https://pkg.go.dev/github.com/oracle/coherence-go-client/coherence#hdr-Obtaining_a_Session) on connection options | See the documentation [here](https://pkg.go.dev/github.com/oracle/coherence-go-client/v2@v2.0.0/coherence#hdr-Obtaining_a_Session) on connection options | ||||||
| when creating a Coherence session. | when creating a Coherence session. | ||||||
|  |  | ||||||
| ### Examples | ### Examples | ||||||
|   | |||||||
| @@ -1,13 +1,13 @@ | |||||||
| package coherence | package coherence | ||||||
|  |  | ||||||
| /* | /* | ||||||
|  * Copyright © 2023, 2024 Oracle and/or its affiliates. |  * Copyright © 2023, 2025 Oracle and/or its affiliates. | ||||||
|  */ |  */ | ||||||
| import ( | import ( | ||||||
| 	"context" | 	"context" | ||||||
| 	"crypto/tls" | 	"crypto/tls" | ||||||
| 	"fmt" | 	"fmt" | ||||||
| 	coh "github.com/oracle/coherence-go-client/coherence" | 	coh "github.com/oracle/coherence-go-client/v2/coherence" | ||||||
| 	"time" | 	"time" | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -3,7 +3,7 @@ module github.com/gofiber/storage/coherence | |||||||
| go 1.19 | go 1.19 | ||||||
|  |  | ||||||
| require ( | require ( | ||||||
| 	github.com/oracle/coherence-go-client v1.2.2 | 	github.com/oracle/coherence-go-client/v2 v2.0.0 | ||||||
| 	github.com/stretchr/testify v1.9.0 | 	github.com/stretchr/testify v1.9.0 | ||||||
| ) | ) | ||||||
|  |  | ||||||
| @@ -18,9 +18,11 @@ require ( | |||||||
| require ( | require ( | ||||||
| 	github.com/golang/protobuf v1.5.3 // indirect | 	github.com/golang/protobuf v1.5.3 // indirect | ||||||
| 	github.com/google/uuid v1.3.1 // indirect | 	github.com/google/uuid v1.3.1 // indirect | ||||||
| 	golang.org/x/net v0.23.0 // indirect | 	github.com/kr/pretty v0.1.0 // indirect | ||||||
| 	golang.org/x/sys v0.18.0 // indirect | 	golang.org/x/net v0.33.0 // indirect | ||||||
| 	golang.org/x/text v0.14.0 // indirect | 	golang.org/x/sys v0.28.0 // indirect | ||||||
|  | 	golang.org/x/text v0.21.0 // indirect | ||||||
| 	google.golang.org/grpc v1.58.3 // indirect | 	google.golang.org/grpc v1.58.3 // indirect | ||||||
| 	google.golang.org/protobuf v1.33.0 // indirect | 	google.golang.org/protobuf v1.33.0 // indirect | ||||||
|  | 	gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 // indirect | ||||||
| ) | ) | ||||||
|   | |||||||
| @@ -9,21 +9,24 @@ github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38= | |||||||
| github.com/google/uuid v1.3.1 h1:KjJaJ9iWZ3jOFZIf1Lqf4laDRCasjl0BCmnEGxkdLb4= | github.com/google/uuid v1.3.1 h1:KjJaJ9iWZ3jOFZIf1Lqf4laDRCasjl0BCmnEGxkdLb4= | ||||||
| github.com/google/uuid v1.3.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= | github.com/google/uuid v1.3.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= | ||||||
| github.com/kr/pretty v0.1.0 h1:L/CwN0zerZDmRFUapSPitk6f+Q3+0za1rQkzVuMiMFI= | github.com/kr/pretty v0.1.0 h1:L/CwN0zerZDmRFUapSPitk6f+Q3+0za1rQkzVuMiMFI= | ||||||
|  | github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= | ||||||
|  | github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= | ||||||
|  | github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= | ||||||
| github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= | github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= | ||||||
| github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= | github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= | ||||||
| github.com/onsi/gomega v1.18.1 h1:M1GfJqGRrBrrGGsbxzV5dqM2U2ApXefZCQpkukxYRLE= | github.com/onsi/gomega v1.18.1 h1:M1GfJqGRrBrrGGsbxzV5dqM2U2ApXefZCQpkukxYRLE= | ||||||
| github.com/oracle/coherence-go-client v1.2.2 h1:TGK87WhV8MWeCiZKk0rC+aZbt40p2nRVvxDUbF+2gX8= | github.com/oracle/coherence-go-client/v2 v2.0.0 h1:epRtq50pHgW0Wbl7piSPdDbwE3JVe+9XFyTS+j0YmEI= | ||||||
| github.com/oracle/coherence-go-client v1.2.2/go.mod h1:8wy6v4KvDGJv6iIiCD95aU0g8UL34DaKRHs3zqQN/Bg= | github.com/oracle/coherence-go-client/v2 v2.0.0/go.mod h1:tiCK6dVyBf/GVabOPY73Cl6+eKoLtStx/uWEEdJfpKg= | ||||||
| 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/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= | github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= | ||||||
| github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= | github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= | ||||||
| golang.org/x/net v0.23.0 h1:7EYJ93RZ9vYSZAIb2x3lnuvqO5zneoD6IvWjuhfxjTs= | golang.org/x/net v0.33.0 h1:74SYHlV8BIgHIFC/LrYkOGIwL19eTYXQ5wc6TBuO36I= | ||||||
| golang.org/x/net v0.23.0/go.mod h1:JKghWKKOSdJwpW2GEx0Ja7fmaKnMsbu+MWVZTokSYmg= | golang.org/x/net v0.33.0/go.mod h1:HXLR5J+9DxmrqMwG9qjGCxZ+zKXxBru04zlTvWlWuN4= | ||||||
| golang.org/x/sys v0.18.0 h1:DBdB3niSjOA/O0blCZBqDefyWNYveAYMNF1Wum0DYQ4= | golang.org/x/sys v0.28.0 h1:Fksou7UEQUWlKvIdsqzJmUmCX3cZuD2+P3XyyzwMhlA= | ||||||
| golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= | golang.org/x/sys v0.28.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= | ||||||
| golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= | golang.org/x/text v0.21.0 h1:zyQAAkrwaneQ066sspRyJaG9VNi/YJ1NfzcGB3hZ/qo= | ||||||
| golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= | golang.org/x/text v0.21.0/go.mod h1:4IBbMaMmOPCJ8SecivzSH54+73PCFmPWxNTLm+vZkEQ= | ||||||
| golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= | golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= | ||||||
| google.golang.org/genproto/googleapis/rpc v0.0.0-20230711160842-782d3b101e98 h1:bVf09lpb+OJbByTj913DRJioFFAjf/ZGxEz7MajTp2U= | google.golang.org/genproto/googleapis/rpc v0.0.0-20230711160842-782d3b101e98 h1:bVf09lpb+OJbByTj913DRJioFFAjf/ZGxEz7MajTp2U= | ||||||
| google.golang.org/genproto/googleapis/rpc v0.0.0-20230711160842-782d3b101e98/go.mod h1:TUfxEVdsvPg18p6AslUXFoLdpED4oBnGwyqk3dV1XzM= | google.golang.org/genproto/googleapis/rpc v0.0.0-20230711160842-782d3b101e98/go.mod h1:TUfxEVdsvPg18p6AslUXFoLdpED4oBnGwyqk3dV1XzM= | ||||||
| @@ -35,6 +38,7 @@ google.golang.org/protobuf v1.33.0 h1:uNO2rsAINq/JlFpSdYEKIZ0uKD/R9cpdv0T+yoGwGm | |||||||
| google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= | google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= | ||||||
| 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/check.v1 v1.0.0-20190902080502-41f04d3bba15 h1:YR8cESwS4TdDjEe65xsg0ogRM/Nc3DYOhEAlW+xobZo= | gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 h1:YR8cESwS4TdDjEe65xsg0ogRM/Nc3DYOhEAlW+xobZo= | ||||||
|  | gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= | ||||||
| gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= | gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= | ||||||
| gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= | gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= | ||||||
| gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= | gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= | ||||||
|   | |||||||
| @@ -1,32 +1,70 @@ | |||||||
| package couchbase | package couchbase | ||||||
|  |  | ||||||
| import ( | import ( | ||||||
|  | 	"context" | ||||||
|  | 	"os" | ||||||
| 	"testing" | 	"testing" | ||||||
| 	"time" | 	"time" | ||||||
|  |  | ||||||
| 	"github.com/stretchr/testify/require" | 	"github.com/stretchr/testify/require" | ||||||
|  | 	"github.com/testcontainers/testcontainers-go/modules/couchbase" | ||||||
| ) | ) | ||||||
|  |  | ||||||
| func newTestStore(t testing.TB) *Storage { | const ( | ||||||
|  | 	// couchbaseImage is the default image used for running couchbase in tests. | ||||||
|  | 	couchbaseImage              = "couchbase:enterprise-7.1.1" | ||||||
|  | 	couchbaseImageEnvVar string = "TEST_COUCHBASE_IMAGE" | ||||||
|  | 	couchbaseUser        string = "default" | ||||||
|  | 	couchbasePass        string = "password" | ||||||
|  | 	couchbaseBucket      string = "fiber_storage" | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | func newTestStore(t testing.TB) (*Storage, error) { | ||||||
| 	t.Helper() | 	t.Helper() | ||||||
|  |  | ||||||
|  | 	img := couchbaseImage | ||||||
|  | 	if imgFromEnv := os.Getenv(couchbaseImageEnvVar); imgFromEnv != "" { | ||||||
|  | 		img = imgFromEnv | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	ctx := context.Background() | ||||||
|  |  | ||||||
|  | 	bucket := couchbase.NewBucket(couchbaseBucket).WithReplicas(1).WithFlushEnabled(true) | ||||||
|  |  | ||||||
|  | 	c, err := couchbase.Run(ctx, | ||||||
|  | 		img, | ||||||
|  | 		couchbase.WithAdminCredentials(couchbaseUser, couchbasePass), | ||||||
|  | 		couchbase.WithBuckets(bucket), | ||||||
|  | 	) | ||||||
|  | 	if err != nil { | ||||||
|  | 		return nil, err | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	conn, err := c.ConnectionString(ctx) | ||||||
|  | 	if err != nil { | ||||||
|  | 		return nil, err | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 	return New(Config{ | 	return New(Config{ | ||||||
| 		Username: "admin", | 		Username: couchbaseUser, | ||||||
| 		Password: "123456", | 		Password: couchbasePass, | ||||||
| 		Host:     "127.0.0.1:8091", | 		Host:     conn, | ||||||
| 		Bucket:   "fiber_storage", | 		Bucket:   couchbaseBucket, | ||||||
| 	}) | 	}), nil | ||||||
| } | } | ||||||
|  |  | ||||||
| func TestSetCouchbase_ShouldReturnNoError(t *testing.T) { | func TestSetCouchbase_ShouldReturnNoError(t *testing.T) { | ||||||
| 	testStore := newTestStore(t) | 	testStore, err := newTestStore(t) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  |  | ||||||
| 	err := testStore.Set("test", []byte("test"), 0) | 	err = testStore.Set("test", []byte("test"), 0) | ||||||
|  |  | ||||||
| 	require.NoError(t, err) | 	require.NoError(t, err) | ||||||
| } | } | ||||||
|  |  | ||||||
| func TestGetCouchbase_ShouldReturnNil_WhenDocumentNotFound(t *testing.T) { | func TestGetCouchbase_ShouldReturnNil_WhenDocumentNotFound(t *testing.T) { | ||||||
| 	testStore := newTestStore(t) | 	testStore, err := newTestStore(t) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  |  | ||||||
| 	val, err := testStore.Get("not_found_key") | 	val, err := testStore.Get("not_found_key") | ||||||
|  |  | ||||||
| @@ -35,9 +73,10 @@ func TestGetCouchbase_ShouldReturnNil_WhenDocumentNotFound(t *testing.T) { | |||||||
| } | } | ||||||
|  |  | ||||||
| func TestSetAndGet_GetShouldReturn_SetValueWithoutError(t *testing.T) { | func TestSetAndGet_GetShouldReturn_SetValueWithoutError(t *testing.T) { | ||||||
| 	testStore := newTestStore(t) | 	testStore, err := newTestStore(t) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  |  | ||||||
| 	err := testStore.Set("test", []byte("fiber_test_value"), 0) | 	err = testStore.Set("test", []byte("fiber_test_value"), 0) | ||||||
| 	require.NoError(t, err) | 	require.NoError(t, err) | ||||||
|  |  | ||||||
| 	val, err := testStore.Get("test") | 	val, err := testStore.Get("test") | ||||||
| @@ -47,9 +86,10 @@ func TestSetAndGet_GetShouldReturn_SetValueWithoutError(t *testing.T) { | |||||||
| } | } | ||||||
|  |  | ||||||
| func TestSetAndGet_GetShouldReturnNil_WhenTTLExpired(t *testing.T) { | func TestSetAndGet_GetShouldReturnNil_WhenTTLExpired(t *testing.T) { | ||||||
| 	testStore := newTestStore(t) | 	testStore, err := newTestStore(t) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  |  | ||||||
| 	err := testStore.Set("test", []byte("fiber_test_value"), 3*time.Second) | 	err = testStore.Set("test", []byte("fiber_test_value"), 3*time.Second) | ||||||
| 	require.NoError(t, err) | 	require.NoError(t, err) | ||||||
|  |  | ||||||
| 	time.Sleep(6 * time.Second) | 	time.Sleep(6 * time.Second) | ||||||
| @@ -61,9 +101,10 @@ func TestSetAndGet_GetShouldReturnNil_WhenTTLExpired(t *testing.T) { | |||||||
| } | } | ||||||
|  |  | ||||||
| func TestSetAndDelete_DeleteShouldReturn_NoError(t *testing.T) { | func TestSetAndDelete_DeleteShouldReturn_NoError(t *testing.T) { | ||||||
| 	testStore := newTestStore(t) | 	testStore, err := newTestStore(t) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  |  | ||||||
| 	err := testStore.Set("test", []byte("fiber_test_value"), 0) | 	err = testStore.Set("test", []byte("fiber_test_value"), 0) | ||||||
| 	require.NoError(t, err) | 	require.NoError(t, err) | ||||||
|  |  | ||||||
| 	err = testStore.Delete("test") | 	err = testStore.Delete("test") | ||||||
| @@ -74,9 +115,10 @@ func TestSetAndDelete_DeleteShouldReturn_NoError(t *testing.T) { | |||||||
| } | } | ||||||
|  |  | ||||||
| func TestSetAndReset_ResetShouldReturn_NoError(t *testing.T) { | func TestSetAndReset_ResetShouldReturn_NoError(t *testing.T) { | ||||||
| 	testStore := newTestStore(t) | 	testStore, err := newTestStore(t) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  |  | ||||||
| 	err := testStore.Set("test", []byte("fiber_test_value"), 0) | 	err = testStore.Set("test", []byte("fiber_test_value"), 0) | ||||||
| 	require.NoError(t, err) | 	require.NoError(t, err) | ||||||
|  |  | ||||||
| 	err = testStore.Reset() | 	err = testStore.Reset() | ||||||
| @@ -87,25 +129,27 @@ func TestSetAndReset_ResetShouldReturn_NoError(t *testing.T) { | |||||||
| } | } | ||||||
|  |  | ||||||
| func TestClose_CloseShouldReturn_NoError(t *testing.T) { | func TestClose_CloseShouldReturn_NoError(t *testing.T) { | ||||||
| 	testStore := newTestStore(t) | 	testStore, err := newTestStore(t) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  |  | ||||||
| 	err := testStore.Close() | 	err = testStore.Close() | ||||||
| 	require.NoError(t, err) | 	require.NoError(t, err) | ||||||
| } | } | ||||||
|  |  | ||||||
| func TestGetConn_ReturnsNotNil(t *testing.T) { | func TestGetConn_ReturnsNotNil(t *testing.T) { | ||||||
| 	testStore := newTestStore(t) | 	testStore, err := newTestStore(t) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  |  | ||||||
| 	require.True(t, testStore.Conn() != nil) | 	require.True(t, testStore.Conn() != nil) | ||||||
| } | } | ||||||
|  |  | ||||||
| func Benchmark_Couchbase_Set(b *testing.B) { | func Benchmark_Couchbase_Set(b *testing.B) { | ||||||
| 	testStore := newTestStore(b) | 	testStore, err := newTestStore(b) | ||||||
|  | 	require.NoError(b, err) | ||||||
|  |  | ||||||
| 	b.ReportAllocs() | 	b.ReportAllocs() | ||||||
| 	b.ResetTimer() | 	b.ResetTimer() | ||||||
|  |  | ||||||
| 	var err error |  | ||||||
| 	for i := 0; i < b.N; i++ { | 	for i := 0; i < b.N; i++ { | ||||||
| 		err = testStore.Set("john", []byte("doe"), 0) | 		err = testStore.Set("john", []byte("doe"), 0) | ||||||
| 	} | 	} | ||||||
| @@ -114,9 +158,10 @@ func Benchmark_Couchbase_Set(b *testing.B) { | |||||||
| } | } | ||||||
|  |  | ||||||
| func Benchmark_Couchbase_Get(b *testing.B) { | func Benchmark_Couchbase_Get(b *testing.B) { | ||||||
| 	testStore := newTestStore(b) | 	testStore, err := newTestStore(b) | ||||||
|  | 	require.NoError(b, err) | ||||||
|  |  | ||||||
| 	err := testStore.Set("john", []byte("doe"), 0) | 	err = testStore.Set("john", []byte("doe"), 0) | ||||||
| 	require.NoError(b, err) | 	require.NoError(b, err) | ||||||
|  |  | ||||||
| 	b.ReportAllocs() | 	b.ReportAllocs() | ||||||
| @@ -130,12 +175,12 @@ func Benchmark_Couchbase_Get(b *testing.B) { | |||||||
| } | } | ||||||
|  |  | ||||||
| func Benchmark_Couchbase_SetAndDelete(b *testing.B) { | func Benchmark_Couchbase_SetAndDelete(b *testing.B) { | ||||||
| 	testStore := newTestStore(b) | 	testStore, err := newTestStore(b) | ||||||
|  | 	require.NoError(b, err) | ||||||
|  |  | ||||||
| 	b.ReportAllocs() | 	b.ReportAllocs() | ||||||
| 	b.ResetTimer() | 	b.ResetTimer() | ||||||
|  |  | ||||||
| 	var err error |  | ||||||
| 	for i := 0; i < b.N; i++ { | 	for i := 0; i < b.N; i++ { | ||||||
| 		_ = testStore.Set("john", []byte("doe"), 0) | 		_ = testStore.Set("john", []byte("doe"), 0) | ||||||
| 		err = testStore.Delete("john") | 		err = testStore.Delete("john") | ||||||
|   | |||||||
| @@ -1,29 +1,76 @@ | |||||||
| module github.com/gofiber/storage/couchbase/v2 | module github.com/gofiber/storage/couchbase/v2 | ||||||
|  |  | ||||||
| go 1.19 | go 1.21 | ||||||
|  |  | ||||||
| require ( | require ( | ||||||
| 	github.com/couchbase/gocb/v2 v2.8.1 | 	github.com/couchbase/gocb/v2 v2.9.1 | ||||||
| 	github.com/stretchr/testify v1.9.0 | 	github.com/stretchr/testify v1.9.0 | ||||||
|  | 	github.com/testcontainers/testcontainers-go/modules/couchbase v0.33.0 | ||||||
| ) | ) | ||||||
|  |  | ||||||
| require ( | require ( | ||||||
| 	github.com/couchbase/gocbcore/v10 v10.4.1 // indirect | 	dario.cat/mergo v1.0.0 // indirect | ||||||
| 	github.com/couchbase/gocbcoreps v0.1.2 // indirect | 	github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 // indirect | ||||||
|  | 	github.com/Microsoft/go-winio v0.6.2 // indirect | ||||||
|  | 	github.com/cenkalti/backoff/v4 v4.2.1 // indirect | ||||||
|  | 	github.com/containerd/containerd v1.7.18 // indirect | ||||||
|  | 	github.com/containerd/log v0.1.0 // indirect | ||||||
|  | 	github.com/containerd/platforms v0.2.1 // indirect | ||||||
|  | 	github.com/couchbase/gocbcore/v10 v10.5.1 // indirect | ||||||
|  | 	github.com/couchbase/gocbcoreps v0.1.3 // indirect | ||||||
| 	github.com/couchbase/goprotostellar v1.0.2 // indirect | 	github.com/couchbase/goprotostellar v1.0.2 // indirect | ||||||
| 	github.com/couchbaselabs/gocbconnstr/v2 v2.0.0-20230515165046-68b522a21131 // indirect | 	github.com/couchbaselabs/gocbconnstr/v2 v2.0.0-20240607131231-fb385523de28 // indirect | ||||||
|  | 	github.com/cpuguy83/dockercfg v0.3.1 // indirect | ||||||
| 	github.com/davecgh/go-spew v1.1.1 // indirect | 	github.com/davecgh/go-spew v1.1.1 // indirect | ||||||
|  | 	github.com/distribution/reference v0.6.0 // indirect | ||||||
|  | 	github.com/docker/docker v27.1.1+incompatible // indirect | ||||||
|  | 	github.com/docker/go-connections v0.5.0 // indirect | ||||||
|  | 	github.com/docker/go-units v0.5.0 // indirect | ||||||
|  | 	github.com/felixge/httpsnoop v1.0.4 // indirect | ||||||
|  | 	github.com/go-logr/logr v1.4.1 // indirect | ||||||
|  | 	github.com/go-logr/stdr v1.2.2 // indirect | ||||||
|  | 	github.com/go-ole/go-ole v1.2.6 // indirect | ||||||
|  | 	github.com/gogo/protobuf v1.3.2 // indirect | ||||||
| 	github.com/golang/snappy v0.0.4 // indirect | 	github.com/golang/snappy v0.0.4 // indirect | ||||||
| 	github.com/google/uuid v1.6.0 // indirect | 	github.com/google/uuid v1.6.0 // indirect | ||||||
| 	github.com/grpc-ecosystem/go-grpc-middleware v1.4.0 // indirect | 	github.com/grpc-ecosystem/go-grpc-middleware v1.4.0 // indirect | ||||||
|  | 	github.com/klauspost/compress v1.17.7 // indirect | ||||||
|  | 	github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0 // indirect | ||||||
|  | 	github.com/magiconair/properties v1.8.7 // indirect | ||||||
|  | 	github.com/moby/docker-image-spec v1.3.1 // indirect | ||||||
|  | 	github.com/moby/patternmatcher v0.6.0 // indirect | ||||||
|  | 	github.com/moby/sys/sequential v0.5.0 // indirect | ||||||
|  | 	github.com/moby/sys/user v0.1.0 // indirect | ||||||
|  | 	github.com/moby/term v0.5.0 // indirect | ||||||
|  | 	github.com/morikuni/aec v1.0.0 // indirect | ||||||
|  | 	github.com/opencontainers/go-digest v1.0.0 // indirect | ||||||
|  | 	github.com/opencontainers/image-spec v1.1.0 // indirect | ||||||
|  | 	github.com/pkg/errors v0.9.1 // indirect | ||||||
| 	github.com/pmezard/go-difflib v1.0.0 // indirect | 	github.com/pmezard/go-difflib v1.0.0 // indirect | ||||||
|  | 	github.com/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c // indirect | ||||||
|  | 	github.com/shirou/gopsutil/v3 v3.23.12 // indirect | ||||||
|  | 	github.com/shoenig/go-m1cpu v0.1.6 // indirect | ||||||
|  | 	github.com/sirupsen/logrus v1.9.3 // indirect | ||||||
|  | 	github.com/testcontainers/testcontainers-go v0.33.0 // indirect | ||||||
|  | 	github.com/tidwall/gjson v1.17.1 // indirect | ||||||
|  | 	github.com/tidwall/match v1.1.1 // indirect | ||||||
|  | 	github.com/tidwall/pretty v1.2.0 // indirect | ||||||
|  | 	github.com/tklauser/go-sysconf v0.3.12 // indirect | ||||||
|  | 	github.com/tklauser/numcpus v0.6.1 // indirect | ||||||
|  | 	github.com/yusufpapurcu/wmi v1.2.3 // indirect | ||||||
|  | 	go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0 // indirect | ||||||
|  | 	go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 // indirect | ||||||
|  | 	go.opentelemetry.io/otel v1.24.0 // indirect | ||||||
|  | 	go.opentelemetry.io/otel/metric v1.24.0 // indirect | ||||||
|  | 	go.opentelemetry.io/otel/trace v1.24.0 // indirect | ||||||
| 	go.uber.org/multierr v1.11.0 // indirect | 	go.uber.org/multierr v1.11.0 // indirect | ||||||
| 	go.uber.org/zap v1.27.0 // indirect | 	go.uber.org/zap v1.27.0 // indirect | ||||||
| 	golang.org/x/net v0.24.0 // indirect | 	golang.org/x/crypto v0.24.0 // indirect | ||||||
| 	golang.org/x/sys v0.19.0 // indirect | 	golang.org/x/net v0.26.0 // indirect | ||||||
| 	golang.org/x/text v0.14.0 // indirect | 	golang.org/x/sys v0.21.0 // indirect | ||||||
|  | 	golang.org/x/text v0.16.0 // indirect | ||||||
| 	google.golang.org/genproto/googleapis/rpc v0.0.0-20240401170217-c3f982113cda // indirect | 	google.golang.org/genproto/googleapis/rpc v0.0.0-20240401170217-c3f982113cda // indirect | ||||||
| 	google.golang.org/grpc v1.63.2 // indirect | 	google.golang.org/grpc v1.64.1 // indirect | ||||||
| 	google.golang.org/protobuf v1.33.0 // indirect | 	google.golang.org/protobuf v1.33.0 // indirect | ||||||
| 	gopkg.in/yaml.v3 v3.0.1 // indirect | 	gopkg.in/yaml.v3 v3.0.1 // indirect | ||||||
| ) | ) | ||||||
|   | |||||||
							
								
								
									
										173
									
								
								couchbase/go.sum
									
									
									
									
									
								
							
							
						
						
									
										173
									
								
								couchbase/go.sum
									
									
									
									
									
								
							| @@ -1,31 +1,69 @@ | |||||||
| cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= | cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= | ||||||
|  | dario.cat/mergo v1.0.0 h1:AGCNq9Evsj31mOgNPcLyXc+4PNABt905YmuqPYYpBWk= | ||||||
|  | dario.cat/mergo v1.0.0/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= | ||||||
|  | github.com/AdaLogics/go-fuzz-headers v0.0.0-20230811130428-ced1acdcaa24 h1:bvDV9vkmnHYOMsOr4WLk+Vo07yKIzd94sVoIqshQ4bU= | ||||||
|  | github.com/AdaLogics/go-fuzz-headers v0.0.0-20230811130428-ced1acdcaa24/go.mod h1:8o94RPi1/7XTJvwPpRSzSUedZrtlirdB3r9Z20bi2f8= | ||||||
|  | github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 h1:UQHMgLO+TxOElx5B5HZ4hJQsoJ/PvUvKRhJHDQXO8P8= | ||||||
|  | github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E= | ||||||
| github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= | github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= | ||||||
|  | github.com/Microsoft/go-winio v0.6.2 h1:F2VQgta7ecxGYO8k3ZZz3RS8fVIXVxONVUPlNERoyfY= | ||||||
|  | github.com/Microsoft/go-winio v0.6.2/go.mod h1:yd8OoFMLzJbo9gZq8j5qaps8bJ9aShtEA8Ipt1oGCvU= | ||||||
| github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA= | github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA= | ||||||
|  | github.com/cenkalti/backoff/v4 v4.2.1 h1:y4OZtCnogmCPw98Zjyt5a6+QwPLGkiQsYW5oUqylYbM= | ||||||
|  | github.com/cenkalti/backoff/v4 v4.2.1/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE= | ||||||
| github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= | github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= | ||||||
| github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= | github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= | ||||||
| github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= | github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= | ||||||
| github.com/couchbase/gocb/v2 v2.8.1 h1:syeJEVy36IvUy4wyzK/74M4wc4OJ2eWZ1d6yWG31Qno= | github.com/containerd/containerd v1.7.18 h1:jqjZTQNfXGoEaZdW1WwPU0RqSn1Bm2Ay/KJPUuO8nao= | ||||||
| github.com/couchbase/gocb/v2 v2.8.1/go.mod h1:xI7kkiz4IhdrhBAAEcKC6R2oqVXxpMIV/ZkmxB+PWgM= | github.com/containerd/containerd v1.7.18/go.mod h1:IYEk9/IO6wAPUz2bCMVUbsfXjzw5UNP5fLz4PsUygQ4= | ||||||
| github.com/couchbase/gocbcore/v10 v10.4.1 h1:2vZjYRTbSCp1HEcL3iFQv+r4HwiI13VhdnbTku+E/+M= | github.com/containerd/log v0.1.0 h1:TCJt7ioM2cr/tfR8GPbGf9/VRAX8D2B4PjzCpfX540I= | ||||||
| github.com/couchbase/gocbcore/v10 v10.4.1/go.mod h1:rulbgUK70EuyRUiLQ0LhQAfSI/Rl+jWws8tTbHzvB6M= | github.com/containerd/log v0.1.0/go.mod h1:VRRf09a7mHDIRezVKTRCrOq78v577GXq3bSa3EhrzVo= | ||||||
| github.com/couchbase/gocbcoreps v0.1.2 h1:wlGyyMnkWpCNOlTtfy8UG+8XZsFtqTJtPXz63+QKC58= | github.com/containerd/platforms v0.2.1 h1:zvwtM3rz2YHPQsF2CHYM8+KtB5dvhISiXh5ZpSBQv6A= | ||||||
| github.com/couchbase/gocbcoreps v0.1.2/go.mod h1:33hSdOKnrUVaBqw4+RiqW+2JoD8ylkbvqm89Wg81uXk= | github.com/containerd/platforms v0.2.1/go.mod h1:XHCb+2/hzowdiut9rkudds9bE5yJ7npe7dG/wG+uFPw= | ||||||
|  | github.com/couchbase/gocb/v2 v2.9.1 h1:yB2ZhRLk782Y9sZlATaUwglZe9+2QpvFmItJXTX4stQ= | ||||||
|  | github.com/couchbase/gocb/v2 v2.9.1/go.mod h1:TMAeK34yUdcASdV4mGcYuwtkAWckRBYN5uvMCEgPfXo= | ||||||
|  | github.com/couchbase/gocbcore/v10 v10.5.1 h1:bwlV/zv/fSQLuO14M9k49K7yWgcWfjSgMyfRGhW1AyU= | ||||||
|  | github.com/couchbase/gocbcore/v10 v10.5.1/go.mod h1:rulbgUK70EuyRUiLQ0LhQAfSI/Rl+jWws8tTbHzvB6M= | ||||||
|  | github.com/couchbase/gocbcoreps v0.1.3 h1:fILaKGCjxFIeCgAUG8FGmRDSpdrRggohOMKEgO9CUpg= | ||||||
|  | github.com/couchbase/gocbcoreps v0.1.3/go.mod h1:hBFpDNPnRno6HH5cRXExhqXYRmTsFJlFHQx7vztcXPk= | ||||||
| github.com/couchbase/goprotostellar v1.0.2 h1:yoPbAL9sCtcyZ5e/DcU5PRMOEFaJrF9awXYu3VPfGls= | github.com/couchbase/goprotostellar v1.0.2 h1:yoPbAL9sCtcyZ5e/DcU5PRMOEFaJrF9awXYu3VPfGls= | ||||||
| github.com/couchbase/goprotostellar v1.0.2/go.mod h1:5/yqVnZlW2/NSbAWu1hPJCFBEwjxgpe0PFFOlRixnp4= | github.com/couchbase/goprotostellar v1.0.2/go.mod h1:5/yqVnZlW2/NSbAWu1hPJCFBEwjxgpe0PFFOlRixnp4= | ||||||
| github.com/couchbaselabs/gocaves/client v0.0.0-20230404095311-05e3ba4f0259 h1:2TXy68EGEzIMHOx9UvczR5ApVecwCfQZ0LjkmwMI6g4= | github.com/couchbaselabs/gocaves/client v0.0.0-20230404095311-05e3ba4f0259 h1:2TXy68EGEzIMHOx9UvczR5ApVecwCfQZ0LjkmwMI6g4= | ||||||
| github.com/couchbaselabs/gocaves/client v0.0.0-20230404095311-05e3ba4f0259/go.mod h1:AVekAZwIY2stsJOMWLAS/0uA/+qdp7pjO8EHnl61QkY= | github.com/couchbaselabs/gocaves/client v0.0.0-20230404095311-05e3ba4f0259/go.mod h1:AVekAZwIY2stsJOMWLAS/0uA/+qdp7pjO8EHnl61QkY= | ||||||
| github.com/couchbaselabs/gocbconnstr/v2 v2.0.0-20230515165046-68b522a21131 h1:2EAfFswAfgYn3a05DVcegiw6DgMgn1Mv5eGz6IHt1Cw= | github.com/couchbaselabs/gocbconnstr/v2 v2.0.0-20240607131231-fb385523de28 h1:lhGOw8rNG6RAadmmaJAF3PJ7MNt7rFuWG7BHCYMgnGE= | ||||||
| github.com/couchbaselabs/gocbconnstr/v2 v2.0.0-20230515165046-68b522a21131/go.mod h1:o7T431UOfFVHDNvMBUmUxpHnhivwv7BziUao/nMl81E= | github.com/couchbaselabs/gocbconnstr/v2 v2.0.0-20240607131231-fb385523de28/go.mod h1:o7T431UOfFVHDNvMBUmUxpHnhivwv7BziUao/nMl81E= | ||||||
|  | github.com/cpuguy83/dockercfg v0.3.1 h1:/FpZ+JaygUR/lZP2NlFI2DVfrOEMAIKP5wWEJdoYe9E= | ||||||
|  | github.com/cpuguy83/dockercfg v0.3.1/go.mod h1:sugsbF4//dDlL/i+S+rtpIWp+5h0BHJHfjj5/jFyUJc= | ||||||
|  | github.com/creack/pty v1.1.18 h1:n56/Zwd5o6whRC5PMGretI4IdRLlmBXYNjScPaBgsbY= | ||||||
|  | github.com/creack/pty v1.1.18/go.mod h1:MOBLtS5ELjhRRrroQr9kyvTxUAFNvYEK993ew/Vr4O4= | ||||||
| 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/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= | github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= | ||||||
| github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= | github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= | ||||||
|  | github.com/distribution/reference v0.6.0 h1:0IXCQ5g4/QMHHkarYzh5l+u8T3t73zM5QvfrDyIgxBk= | ||||||
|  | github.com/distribution/reference v0.6.0/go.mod h1:BbU0aIcezP1/5jX/8MP0YiH4SdvB5Y4f/wlDRiLyi3E= | ||||||
|  | github.com/docker/docker v27.1.1+incompatible h1:hO/M4MtV36kzKldqnA37IWhebRA+LnqqcqDja6kVaKY= | ||||||
|  | github.com/docker/docker v27.1.1+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= | ||||||
|  | github.com/docker/go-connections v0.5.0 h1:USnMq7hx7gwdVZq1L49hLXaFtUdTADjXGp+uj1Br63c= | ||||||
|  | github.com/docker/go-connections v0.5.0/go.mod h1:ov60Kzw0kKElRwhNs9UlUHAE/F9Fe6GLaXnqyDdmEXc= | ||||||
|  | github.com/docker/go-units v0.5.0 h1:69rxXcBk27SvSaaxTtLh/8llcHD8vYHT7WSdRZ/jvr4= | ||||||
|  | github.com/docker/go-units v0.5.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= | ||||||
| github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= | github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= | ||||||
| github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= | github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= | ||||||
| github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= | github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= | ||||||
| github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= | github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= | ||||||
|  | github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= | ||||||
|  | github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= | ||||||
| github.com/go-kit/log v0.1.0/go.mod h1:zbhenjAZHb184qTLMA9ZjW7ThYL0H2mk7Q6pNt4vbaY= | github.com/go-kit/log v0.1.0/go.mod h1:zbhenjAZHb184qTLMA9ZjW7ThYL0H2mk7Q6pNt4vbaY= | ||||||
| github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A= | github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A= | ||||||
|  | github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= | ||||||
|  | github.com/go-logr/logr v1.4.1 h1:pKouT5E8xu9zeFC39JXRDukb6JFQPXM5p5I91188VAQ= | ||||||
|  | github.com/go-logr/logr v1.4.1/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= | ||||||
|  | github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= | ||||||
|  | github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= | ||||||
|  | github.com/go-ole/go-ole v1.2.6 h1:/Fpf6oFPoeFik9ty7siob0G6Ke8QvQEuVcuChpwXzpY= | ||||||
|  | github.com/go-ole/go-ole v1.2.6/go.mod h1:pprOEPIfldk/42T2oK7lQ4v4JSDwmV0As9GaiUsvbm0= | ||||||
| github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= | github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= | ||||||
|  | github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= | ||||||
| github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= | github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= | ||||||
| github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= | github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= | ||||||
| github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= | github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= | ||||||
| @@ -35,30 +73,74 @@ github.com/golang/protobuf v1.3.3/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaW | |||||||
| github.com/golang/snappy v0.0.4 h1:yAGX7huGHXlcLOEtBnF4w7FQwA26wojNCwOYAEhLjQM= | github.com/golang/snappy v0.0.4 h1:yAGX7huGHXlcLOEtBnF4w7FQwA26wojNCwOYAEhLjQM= | ||||||
| github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= | github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= | ||||||
| github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= | github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= | ||||||
|  | github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= | ||||||
|  | github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= | ||||||
| github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= | github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= | ||||||
|  | github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= | ||||||
| github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= | github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= | ||||||
| github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= | github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= | ||||||
| github.com/grpc-ecosystem/go-grpc-middleware v1.4.0 h1:UH//fgunKIs4JdUbpDl1VZCDaL56wXCB/5+wF6uHfaI= | github.com/grpc-ecosystem/go-grpc-middleware v1.4.0 h1:UH//fgunKIs4JdUbpDl1VZCDaL56wXCB/5+wF6uHfaI= | ||||||
| github.com/grpc-ecosystem/go-grpc-middleware v1.4.0/go.mod h1:g5qyo/la0ALbONm6Vbp88Yd8NsDy6rZz+RcrMPxvld8= | github.com/grpc-ecosystem/go-grpc-middleware v1.4.0/go.mod h1:g5qyo/la0ALbONm6Vbp88Yd8NsDy6rZz+RcrMPxvld8= | ||||||
|  | github.com/grpc-ecosystem/grpc-gateway/v2 v2.16.0 h1:YBftPWNWd4WwGqtY2yeZL2ef8rHAxPBD8KFhJpmcqms= | ||||||
|  | github.com/grpc-ecosystem/grpc-gateway/v2 v2.16.0/go.mod h1:YN5jB8ie0yfIUg6VvR9Kz84aCaG7AsGZnLjhHbUqwPg= | ||||||
| github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= | github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= | ||||||
| github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= | github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= | ||||||
|  | github.com/klauspost/compress v1.17.7 h1:ehO88t2UGzQK66LMdE8tibEd1ErmzZjNEqWkjLAKQQg= | ||||||
|  | github.com/klauspost/compress v1.17.7/go.mod h1:Di0epgTjJY877eYKx5yC51cX2A2Vl2ibi7bDH9ttBbw= | ||||||
| github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= | github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= | ||||||
| github.com/kr/pretty v0.1.0 h1:L/CwN0zerZDmRFUapSPitk6f+Q3+0za1rQkzVuMiMFI= |  | ||||||
| github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= | github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= | ||||||
|  | github.com/kr/pretty v0.3.0 h1:WgNl7dwNpEZ6jJ9k1snq4pZsg7DOEN8hP9Xw0Tsjwk0= | ||||||
|  | github.com/kr/pretty v0.3.0/go.mod h1:640gp4NfQd8pI5XOwp5fnNeVWj67G7CFk/SaSQn7NBk= | ||||||
| github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= | github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= | ||||||
| github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= | github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= | ||||||
| github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= | github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= | ||||||
|  | github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= | ||||||
|  | github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0 h1:6E+4a0GO5zZEnZ81pIr0yLvtUWk2if982qA3F3QD6H4= | ||||||
|  | github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0/go.mod h1:zJYVVT2jmtg6P3p1VtQj7WsuWi/y4VnjVBn7F8KPB3I= | ||||||
|  | github.com/magiconair/properties v1.8.7 h1:IeQXZAiQcpL9mgcAe1Nu6cX9LLw6ExEHKjN0VQdvPDY= | ||||||
|  | github.com/magiconair/properties v1.8.7/go.mod h1:Dhd985XPs7jluiymwWYZ0G4Z61jb3vdS329zhj2hYo0= | ||||||
|  | github.com/moby/docker-image-spec v1.3.1 h1:jMKff3w6PgbfSa69GfNg+zN/XLhfXJGnEx3Nl2EsFP0= | ||||||
|  | github.com/moby/docker-image-spec v1.3.1/go.mod h1:eKmb5VW8vQEh/BAr2yvVNvuiJuY6UIocYsFu/DxxRpo= | ||||||
|  | github.com/moby/patternmatcher v0.6.0 h1:GmP9lR19aU5GqSSFko+5pRqHi+Ohk1O69aFiKkVGiPk= | ||||||
|  | github.com/moby/patternmatcher v0.6.0/go.mod h1:hDPoyOpDY7OrrMDLaYoY3hf52gNCR/YOUYxkhApJIxc= | ||||||
|  | github.com/moby/sys/sequential v0.5.0 h1:OPvI35Lzn9K04PBbCLW0g4LcFAJgHsvXsRyewg5lXtc= | ||||||
|  | github.com/moby/sys/sequential v0.5.0/go.mod h1:tH2cOOs5V9MlPiXcQzRC+eEyab644PWKGRYaaV5ZZlo= | ||||||
|  | github.com/moby/sys/user v0.1.0 h1:WmZ93f5Ux6het5iituh9x2zAG7NFY9Aqi49jjE1PaQg= | ||||||
|  | github.com/moby/sys/user v0.1.0/go.mod h1:fKJhFOnsCN6xZ5gSfbM6zaHGgDJMrqt9/reuj4T7MmU= | ||||||
|  | github.com/moby/term v0.5.0 h1:xt8Q1nalod/v7BqbG21f8mQPqH+xAaC9C3N3wfWbVP0= | ||||||
|  | github.com/moby/term v0.5.0/go.mod h1:8FzsFHVUBGZdbDsJw/ot+X+d5HLUbvklYLJ9uGfcI3Y= | ||||||
|  | github.com/morikuni/aec v1.0.0 h1:nP9CBfwrvYnBRgY6qfDQkygYDmYwOilePFkwzv4dU8A= | ||||||
|  | github.com/morikuni/aec v1.0.0/go.mod h1:BbKIizmSmc5MMPqRYbxO4ZU0S0+P200+tUnFx7PXmsc= | ||||||
|  | github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= | ||||||
|  | github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= | ||||||
|  | github.com/opencontainers/image-spec v1.1.0 h1:8SG7/vwALn54lVB/0yZ/MMwhFrPYtpEHQb2IpWsCzug= | ||||||
|  | github.com/opencontainers/image-spec v1.1.0/go.mod h1:W4s4sFTMaBeK1BQLXbG4AdM2szdn85PY75RI83NrTrM= | ||||||
| github.com/opentracing/opentracing-go v1.1.0/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o= | github.com/opentracing/opentracing-go v1.1.0/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o= | ||||||
| github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= | github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= | ||||||
|  | github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= | ||||||
|  | github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= | ||||||
| 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/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c h1:ncq/mPwQF4JjgDlrVEn3C11VoGHZN7m8qihwgMEtzYw= | ||||||
|  | github.com/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c/go.mod h1:OmDBASR4679mdNQnz2pUhc2G8CO2JrUAVFDRBDP/hJE= | ||||||
| github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= | github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= | ||||||
|  | github.com/rogpeppe/go-internal v1.8.1 h1:geMPLpDpQOgVyCg5z5GoRwLHepNdb71NXb67XFkP+Eg= | ||||||
|  | github.com/rogpeppe/go-internal v1.8.1/go.mod h1:JeRgkft04UBgHMgCIwADu4Pn6Mtm5d4nPKWu0nJ5d+o= | ||||||
|  | github.com/shirou/gopsutil/v3 v3.23.12 h1:z90NtUkp3bMtmICZKpC4+WaknU1eXtp5vtbQ11DgpE4= | ||||||
|  | github.com/shirou/gopsutil/v3 v3.23.12/go.mod h1:1FrWgea594Jp7qmjHUUPlJDTPgcsb9mGnXDxavtikzM= | ||||||
|  | github.com/shoenig/go-m1cpu v0.1.6 h1:nxdKQNcEB6vzgA2E2bvzKIYRuNj7XNJ4S/aRSwKzFtM= | ||||||
|  | github.com/shoenig/go-m1cpu v0.1.6/go.mod h1:1JJMcUBvfNwpq05QDQVAnx3gUHr9IYF7GNg9SUEw2VQ= | ||||||
|  | github.com/shoenig/test v0.6.4 h1:kVTaSd7WLz5WZ2IaoM0RSzRsUD+m8wRR+5qvntpn4LU= | ||||||
|  | github.com/shoenig/test v0.6.4/go.mod h1:byHiCGXqrVaflBLAMq/srcZIHynQPQgeyvkvXnjqq0k= | ||||||
| github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= | github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= | ||||||
|  | github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ= | ||||||
|  | github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= | ||||||
| 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/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= | github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= | ||||||
| github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= | github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= | ||||||
| github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= | github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= | ||||||
| github.com/stretchr/objx v0.5.2 h1:xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY= | github.com/stretchr/objx v0.5.2 h1:xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY= | ||||||
|  | github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA= | ||||||
| github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= | github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= | ||||||
| github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= | github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= | ||||||
| github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= | github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= | ||||||
| @@ -66,13 +148,49 @@ github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/ | |||||||
| github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= | github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= | ||||||
| github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= | github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= | ||||||
| github.com/stretchr/testify v1.8.2/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= | github.com/stretchr/testify v1.8.2/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= | ||||||
|  | github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= | ||||||
| github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= | github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= | ||||||
| github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= | github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= | ||||||
|  | github.com/testcontainers/testcontainers-go v0.33.0 h1:zJS9PfXYT5O0ZFXM2xxXfk4J5UMw/kRiISng037Gxdw= | ||||||
|  | github.com/testcontainers/testcontainers-go v0.33.0/go.mod h1:W80YpTa8D5C3Yy16icheD01UTDu+LmXIA2Keo+jWtT8= | ||||||
|  | github.com/testcontainers/testcontainers-go/modules/couchbase v0.33.0 h1:WiM9d0cIXwa85dL4JQ0/W1sF1WOlLCkDNALizW1kja4= | ||||||
|  | github.com/testcontainers/testcontainers-go/modules/couchbase v0.33.0/go.mod h1:nLkg/zLCyv+/YbGdhia6naik/deLBXgxkB+lkOeb/ro= | ||||||
|  | github.com/tidwall/gjson v1.17.1 h1:wlYEnwqAHgzmhNUFfw7Xalt2JzQvsMx2Se4PcoFCT/U= | ||||||
|  | github.com/tidwall/gjson v1.17.1/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= | ||||||
|  | github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA= | ||||||
|  | github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM= | ||||||
|  | github.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs= | ||||||
|  | github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= | ||||||
|  | github.com/tklauser/go-sysconf v0.3.12 h1:0QaGUFOdQaIVdPgfITYzaTegZvdCjmYO52cSFAEVmqU= | ||||||
|  | github.com/tklauser/go-sysconf v0.3.12/go.mod h1:Ho14jnntGE1fpdOqQEEaiKRpvIavV0hSfmBq8nJbHYI= | ||||||
|  | github.com/tklauser/numcpus v0.6.1 h1:ng9scYS7az0Bk4OZLvrNXNSAO2Pxr1XXRAPyjhIx+Fk= | ||||||
|  | github.com/tklauser/numcpus v0.6.1/go.mod h1:1XfjsgE2zo8GVw7POkMbHENHzVg3GzmoZ9fESEdAacY= | ||||||
| github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= | github.com/yuin/goldmark v1.1.27/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/yusufpapurcu/wmi v1.2.3 h1:E1ctvB7uKFMOJw3fdOW32DwGE9I7t++CRUEMKvFoFiw= | ||||||
|  | github.com/yusufpapurcu/wmi v1.2.3/go.mod h1:SBZ9tNy3G9/m5Oi98Zks0QjeHVDvuK0qfxQmPyzfmi0= | ||||||
|  | go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0 h1:4Pp6oUg3+e/6M4C0A/3kJ2VYa++dsWVTtGgLVj5xtHg= | ||||||
|  | go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0/go.mod h1:Mjt1i1INqiaoZOMGR1RIUJN+i3ChKoFRqzrRQhlkbs0= | ||||||
|  | go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 h1:jq9TW8u3so/bN+JPT166wjOI6/vQPF6Xe7nMNIltagk= | ||||||
|  | go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0/go.mod h1:p8pYQP+m5XfbZm9fxtSKAbM6oIllS7s2AfxrChvc7iw= | ||||||
|  | go.opentelemetry.io/otel v1.24.0 h1:0LAOdjNmQeSTzGBzduGe/rU4tZhMwL5rWgtp9Ku5Jfo= | ||||||
|  | go.opentelemetry.io/otel v1.24.0/go.mod h1:W7b9Ozg4nkF5tWI5zsXkaKKDjdVjpD4oAt9Qi/MArHo= | ||||||
|  | go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.19.0 h1:Mne5On7VWdx7omSrSSZvM4Kw7cS7NQkOOmLcgscI51U= | ||||||
|  | go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.19.0/go.mod h1:IPtUMKL4O3tH5y+iXVyAXqpAwMuzC1IrxVS81rummfE= | ||||||
|  | go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.19.0 h1:IeMeyr1aBvBiPVYihXIaeIZba6b8E1bYp7lbdxK8CQg= | ||||||
|  | go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.19.0/go.mod h1:oVdCUtjq9MK9BlS7TtucsQwUcXcymNiEDjgDD2jMtZU= | ||||||
|  | go.opentelemetry.io/otel/metric v1.24.0 h1:6EhoGWWK28x1fbpA4tYTOWBkPefTDQnb8WSGXlc88kI= | ||||||
|  | go.opentelemetry.io/otel/metric v1.24.0/go.mod h1:VYhLe1rFfxuTXLgj4CBiyz+9WYBA8pNGJgDcSFRKBco= | ||||||
|  | go.opentelemetry.io/otel/sdk v1.19.0 h1:6USY6zH+L8uMH8L3t1enZPR3WFEmSTADlqldyHtJi3o= | ||||||
|  | go.opentelemetry.io/otel/sdk v1.19.0/go.mod h1:NedEbbS4w3C6zElbLdPJKOpJQOrGUJ+GfzpjUvI0v1A= | ||||||
|  | go.opentelemetry.io/otel/trace v1.24.0 h1:CsKnnL4dUAr/0llH9FKuc698G04IrpWV0MQA/Y1YELI= | ||||||
|  | go.opentelemetry.io/otel/trace v1.24.0/go.mod h1:HPc3Xr/cOApsBI154IU0OI0HJexz+aw5uPdbs3UCjNU= | ||||||
|  | go.opentelemetry.io/proto/otlp v1.0.0 h1:T0TX0tmXU8a3CbNXzEKGeU5mIVOdf0oykP+u2lIVU/I= | ||||||
|  | go.opentelemetry.io/proto/otlp v1.0.0/go.mod h1:Sy6pihPLfYHkr3NkUbEhGHFhINUSI/v80hjKIs5JXpM= | ||||||
| go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= | go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= | ||||||
| go.uber.org/goleak v1.1.10/go.mod h1:8a7PlsEVH3e/a/GLqe5IIrQx6GzcnRmZEufDUTk4A7A= | go.uber.org/goleak v1.1.10/go.mod h1:8a7PlsEVH3e/a/GLqe5IIrQx6GzcnRmZEufDUTk4A7A= | ||||||
| go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= | go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= | ||||||
|  | go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE= | ||||||
| go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU= | go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU= | ||||||
| go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0= | go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0= | ||||||
| go.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y= | go.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y= | ||||||
| @@ -82,6 +200,8 @@ go.uber.org/zap v1.27.0/go.mod h1:GB2qFLM7cTU87MWRP2mPIjqfIDnGu+VIO4V/SdhGo2E= | |||||||
| golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= | 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-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= | ||||||
| golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= | golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= | ||||||
|  | golang.org/x/crypto v0.24.0 h1:mnl8DM0o513X8fdIkmyFE/5hTYxbwYOjDS/+rK6qpRI= | ||||||
|  | golang.org/x/crypto v0.24.0/go.mod h1:Z1PMYSOR5nyMcyAVAIQSKCDwalqy85Aqn1x3Ws4L5DM= | ||||||
| golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= | golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= | ||||||
| golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= | golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= | ||||||
| golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= | golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= | ||||||
| @@ -97,8 +217,8 @@ golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn | |||||||
| golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= | golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= | ||||||
| golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= | golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= | ||||||
| golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= | golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= | ||||||
| golang.org/x/net v0.24.0 h1:1PcaxkF854Fu3+lvBIx5SYn9wRlBzzcnHZSiaFFAb0w= | golang.org/x/net v0.26.0 h1:soB7SVo0PWrY4vPW/+ay0jKDNScG2X9wFeYlXIvJsOQ= | ||||||
| golang.org/x/net v0.24.0/go.mod h1:2Q7sJY5mzlzWjKtYUEXSlBWCdyaioyXzRB2RtU8KVE8= | golang.org/x/net v0.26.0/go.mod h1:5YKkiSynbBIh3p6iOc/vibscux0x38BZDkn8sCUPxHE= | ||||||
| golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= | golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= | ||||||
| golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= | golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= | ||||||
| golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= | golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= | ||||||
| @@ -109,14 +229,25 @@ golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5h | |||||||
| golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= | 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-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= | ||||||
| golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= | golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= | ||||||
|  | golang.org/x/sys v0.0.0-20190916202348-b4ddaad3f8a3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= | ||||||
| golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= | golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= | ||||||
|  | golang.org/x/sys v0.0.0-20201204225414-ed752295db88/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= | ||||||
|  | golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | ||||||
| golang.org/x/sys v0.0.0-20211025201205-69cdffdb9359/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | golang.org/x/sys v0.0.0-20211025201205-69cdffdb9359/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | ||||||
| golang.org/x/sys v0.19.0 h1:q5f1RH2jigJ1MoAWp2KTp3gm5zAGFUTarQZ5U386+4o= | golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | ||||||
| golang.org/x/sys v0.19.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= | golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | ||||||
|  | golang.org/x/sys v0.11.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | ||||||
|  | golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= | ||||||
|  | golang.org/x/sys v0.21.0 h1:rF+pYz3DAGSQAxAu1CbC7catZg4ebC4UIeIhKxBZvws= | ||||||
|  | golang.org/x/sys v0.21.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= | ||||||
|  | golang.org/x/term v0.21.0 h1:WVXCp+/EBEHOj53Rvu+7KiT/iElMrO8ACK16SMZ3jaA= | ||||||
|  | golang.org/x/term v0.21.0/go.mod h1:ooXLefLobQVslOqselCNF4SxFAaoS6KujMbsGzSDmX0= | ||||||
| golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= | golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= | ||||||
| golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= | golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= | ||||||
| golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= | golang.org/x/text v0.16.0 h1:a94ExnEXNtEwYLGJSIUxnWoxoRz/ZcCsV63ROupILh4= | ||||||
| golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= | golang.org/x/text v0.16.0/go.mod h1:GhwF1Be+LQoKShO3cGOHzqOgRrGaYc9AvblQOmPVHnI= | ||||||
|  | golang.org/x/time v0.0.0-20220210224613-90d013bbcef8 h1:vVKdlvoWBphwdxWKrFZEuM0kGgGLxUOYcY4U/2Vjg44= | ||||||
|  | golang.org/x/time v0.0.0-20220210224613-90d013bbcef8/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= | ||||||
| golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= | golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= | ||||||
| golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= | golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= | ||||||
| golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= | golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= | ||||||
| @@ -135,6 +266,9 @@ google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7 | |||||||
| google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= | google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= | ||||||
| google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= | google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= | ||||||
| google.golang.org/genproto v0.0.0-20200423170343-7949de9c1215/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= | google.golang.org/genproto v0.0.0-20200423170343-7949de9c1215/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= | ||||||
|  | google.golang.org/genproto v0.0.0-20230920204549-e6e6cdab5c13 h1:vlzZttNJGVqTsRFU9AmdnrcO1Znh8Ew9kCD//yjigk0= | ||||||
|  | google.golang.org/genproto/googleapis/api v0.0.0-20240318140521-94a12d6c2237 h1:RFiFrvy37/mpSpdySBDrUdipW/dHwsRwh3J3+A9VgT4= | ||||||
|  | google.golang.org/genproto/googleapis/api v0.0.0-20240318140521-94a12d6c2237/go.mod h1:Z5Iiy3jtmioajWHDGFk7CeugTyHtPvMHA4UTmUkyalE= | ||||||
| google.golang.org/genproto/googleapis/rpc v0.0.0-20240401170217-c3f982113cda h1:LI5DOvAxUPMv/50agcLLoo+AdWc1irS9Rzz4vPuD1V4= | google.golang.org/genproto/googleapis/rpc v0.0.0-20240401170217-c3f982113cda h1:LI5DOvAxUPMv/50agcLLoo+AdWc1irS9Rzz4vPuD1V4= | ||||||
| google.golang.org/genproto/googleapis/rpc v0.0.0-20240401170217-c3f982113cda/go.mod h1:WtryC6hu0hhx87FDGxWCDptyssuo68sk10vYjF+T9fY= | google.golang.org/genproto/googleapis/rpc v0.0.0-20240401170217-c3f982113cda/go.mod h1:WtryC6hu0hhx87FDGxWCDptyssuo68sk10vYjF+T9fY= | ||||||
| google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= | google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= | ||||||
| @@ -142,18 +276,21 @@ google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyac | |||||||
| google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= | google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= | ||||||
| google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= | google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= | ||||||
| google.golang.org/grpc v1.29.1/go.mod h1:itym6AZVZYACWQqET3MqgPpjcuV5QH3BxFS3IjizoKk= | google.golang.org/grpc v1.29.1/go.mod h1:itym6AZVZYACWQqET3MqgPpjcuV5QH3BxFS3IjizoKk= | ||||||
| google.golang.org/grpc v1.63.2 h1:MUeiw1B2maTVZthpU5xvASfTh3LDbxHd6IJ6QQVU+xM= | google.golang.org/grpc v1.64.1 h1:LKtvyfbX3UGVPFcGqJ9ItpVWW6oN/2XqTxfAnwRRXiA= | ||||||
| google.golang.org/grpc v1.63.2/go.mod h1:WAX/8DgncnokcFUldAxq7GeB5DXHDbMF+lLvDomNkRA= | google.golang.org/grpc v1.64.1/go.mod h1:hiQF4LFZelK2WKaP6W0L92zGHtiQdZxk8CrSdvyjeP0= | ||||||
| google.golang.org/protobuf v1.33.0 h1:uNO2rsAINq/JlFpSdYEKIZ0uKD/R9cpdv0T+yoGwGmI= | google.golang.org/protobuf v1.33.0 h1:uNO2rsAINq/JlFpSdYEKIZ0uKD/R9cpdv0T+yoGwGmI= | ||||||
| google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= | google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= | ||||||
| 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/check.v1 v1.0.0-20180628173108-788fd7840127 h1:qIbj1fsPNlZgppZ+VLlY7N33q108Sa+fhmuc+sWQYwY= |  | ||||||
| gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= | gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= | ||||||
|  | gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= | ||||||
|  | gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= | ||||||
| gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= | gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= | ||||||
| gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= | gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= | ||||||
| gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= | gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= | ||||||
| gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= | gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= | ||||||
| gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= | gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= | ||||||
| gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= | gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= | ||||||
|  | gotest.tools/v3 v3.5.1 h1:EENdUnS3pdur5nybKYIh2Vfgc8IUNBjxDPSjtiJcOzU= | ||||||
|  | gotest.tools/v3 v3.5.1/go.mod h1:isy3WKz7GK6uNw/sbHzfKBLvlvXwUyV06n6brMxxopU= | ||||||
| honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= | honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= | ||||||
| honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= | honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= | ||||||
|   | |||||||
| @@ -44,7 +44,9 @@ func New(config Config) *Storage { | |||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	// Create db | 	// Create db | ||||||
| 	sess := awsdynamodb.NewFromConfig(awscfg) | 	sess := awsdynamodb.NewFromConfig(awscfg, func(o *awsdynamodb.Options) { | ||||||
|  | 		o.BaseEndpoint = aws.String(cfg.Endpoint) | ||||||
|  | 	}) | ||||||
|  |  | ||||||
| 	timeoutCtx, cancel := context.WithTimeout(context.Background(), 5*time.Second) | 	timeoutCtx, cancel := context.WithTimeout(context.Background(), 5*time.Second) | ||||||
| 	defer cancel() | 	defer cancel() | ||||||
| @@ -232,23 +234,10 @@ func (s *Storage) requestContext() (context.Context, context.CancelFunc) { | |||||||
| } | } | ||||||
|  |  | ||||||
| func returnAWSConfig(cfg Config) (aws.Config, error) { | func returnAWSConfig(cfg Config) (aws.Config, error) { | ||||||
| 	endpoint := aws.EndpointResolverWithOptionsFunc(func(service, region string, options ...interface{}) (aws.Endpoint, error) { |  | ||||||
| 		if cfg.Endpoint != "" { |  | ||||||
| 			return aws.Endpoint{ |  | ||||||
| 				PartitionID:       "aws", |  | ||||||
| 				URL:               cfg.Endpoint, |  | ||||||
| 				SigningRegion:     cfg.Region, |  | ||||||
| 				HostnameImmutable: true, |  | ||||||
| 			}, nil |  | ||||||
| 		} |  | ||||||
| 		return aws.Endpoint{}, &aws.EndpointNotFoundError{} |  | ||||||
| 	}) |  | ||||||
|  |  | ||||||
| 	if cfg.Credentials != (Credentials{}) { | 	if cfg.Credentials != (Credentials{}) { | ||||||
| 		credentials := credentials.NewStaticCredentialsProvider(cfg.Credentials.AccessKey, cfg.Credentials.SecretAccessKey, "") | 		credentials := credentials.NewStaticCredentialsProvider(cfg.Credentials.AccessKey, cfg.Credentials.SecretAccessKey, "") | ||||||
| 		return awsconfig.LoadDefaultConfig(context.TODO(), | 		return awsconfig.LoadDefaultConfig(context.TODO(), | ||||||
| 			awsconfig.WithRegion(cfg.Region), | 			awsconfig.WithRegion(cfg.Region), | ||||||
| 			awsconfig.WithEndpointResolverWithOptions(endpoint), |  | ||||||
| 			awsconfig.WithCredentialsProvider(credentials), | 			awsconfig.WithCredentialsProvider(credentials), | ||||||
| 			awsconfig.WithRetryer(func() aws.Retryer { | 			awsconfig.WithRetryer(func() aws.Retryer { | ||||||
| 				return retry.AddWithMaxAttempts(retry.NewStandard(), cfg.MaxAttempts) | 				return retry.AddWithMaxAttempts(retry.NewStandard(), cfg.MaxAttempts) | ||||||
| @@ -258,7 +247,6 @@ func returnAWSConfig(cfg Config) (aws.Config, error) { | |||||||
|  |  | ||||||
| 	return awsconfig.LoadDefaultConfig(context.TODO(), | 	return awsconfig.LoadDefaultConfig(context.TODO(), | ||||||
| 		awsconfig.WithRegion(cfg.Region), | 		awsconfig.WithRegion(cfg.Region), | ||||||
| 		awsconfig.WithEndpointResolverWithOptions(endpoint), |  | ||||||
| 		awsconfig.WithRetryer(func() aws.Retryer { | 		awsconfig.WithRetryer(func() aws.Retryer { | ||||||
| 			return retry.AddWithMaxAttempts(retry.NewStandard(), cfg.MaxAttempts) | 			return retry.AddWithMaxAttempts(retry.NewStandard(), cfg.MaxAttempts) | ||||||
| 		}), | 		}), | ||||||
|   | |||||||
| @@ -3,27 +3,27 @@ module github.com/gofiber/storage/dynamodb/v2 | |||||||
| go 1.19 | go 1.19 | ||||||
|  |  | ||||||
| require ( | require ( | ||||||
| 	github.com/aws/aws-sdk-go-v2 v1.27.1 | 	github.com/aws/aws-sdk-go-v2 v1.30.3 | ||||||
| 	github.com/aws/aws-sdk-go-v2/config v1.27.17 | 	github.com/aws/aws-sdk-go-v2/config v1.27.26 | ||||||
| 	github.com/aws/aws-sdk-go-v2/credentials v1.17.17 | 	github.com/aws/aws-sdk-go-v2/credentials v1.17.27 | ||||||
| 	github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue v1.14.0 | 	github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue v1.14.10 | ||||||
| 	github.com/aws/aws-sdk-go-v2/service/dynamodb v1.32.7 | 	github.com/aws/aws-sdk-go-v2/service/dynamodb v1.34.4 | ||||||
| 	github.com/stretchr/testify v1.9.0 | 	github.com/stretchr/testify v1.9.0 | ||||||
| ) | ) | ||||||
|  |  | ||||||
| require ( | require ( | ||||||
| 	github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.4 // indirect | 	github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.11 // indirect | ||||||
| 	github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.8 // indirect | 	github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.15 // indirect | ||||||
| 	github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.8 // indirect | 	github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.15 // indirect | ||||||
| 	github.com/aws/aws-sdk-go-v2/internal/ini v1.8.0 // indirect | 	github.com/aws/aws-sdk-go-v2/internal/ini v1.8.0 // indirect | ||||||
| 	github.com/aws/aws-sdk-go-v2/service/dynamodbstreams v1.20.9 // indirect | 	github.com/aws/aws-sdk-go-v2/service/dynamodbstreams v1.22.3 // indirect | ||||||
| 	github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.2 // indirect | 	github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.3 // indirect | ||||||
| 	github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.9.9 // indirect | 	github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.9.16 // indirect | ||||||
| 	github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.10 // indirect | 	github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.17 // indirect | ||||||
| 	github.com/aws/aws-sdk-go-v2/service/sso v1.20.10 // indirect | 	github.com/aws/aws-sdk-go-v2/service/sso v1.22.4 // indirect | ||||||
| 	github.com/aws/aws-sdk-go-v2/service/ssooidc v1.24.4 // indirect | 	github.com/aws/aws-sdk-go-v2/service/ssooidc v1.26.4 // indirect | ||||||
| 	github.com/aws/aws-sdk-go-v2/service/sts v1.28.11 // indirect | 	github.com/aws/aws-sdk-go-v2/service/sts v1.30.3 // indirect | ||||||
| 	github.com/aws/smithy-go v1.20.2 // indirect | 	github.com/aws/smithy-go v1.20.3 // indirect | ||||||
| 	github.com/davecgh/go-spew v1.1.1 // indirect | 	github.com/davecgh/go-spew v1.1.1 // indirect | ||||||
| 	github.com/jmespath/go-jmespath v0.4.0 // indirect | 	github.com/jmespath/go-jmespath v0.4.0 // indirect | ||||||
| 	github.com/pmezard/go-difflib v1.0.0 // indirect | 	github.com/pmezard/go-difflib v1.0.0 // indirect | ||||||
|   | |||||||
| @@ -1,37 +1,37 @@ | |||||||
| github.com/aws/aws-sdk-go-v2 v1.27.1 h1:xypCL2owhog46iFxBKKpBcw+bPTX/RJzwNj8uSilENw= | github.com/aws/aws-sdk-go-v2 v1.30.3 h1:jUeBtG0Ih+ZIFH0F4UkmL9w3cSpaMv9tYYDbzILP8dY= | ||||||
| github.com/aws/aws-sdk-go-v2 v1.27.1/go.mod h1:ffIFB97e2yNsv4aTSGkqtHnppsIJzw7G7BReUZ3jCXM= | github.com/aws/aws-sdk-go-v2 v1.30.3/go.mod h1:nIQjQVp5sfpQcTc9mPSr1B0PaWK5ByX9MOoDadSN4lc= | ||||||
| github.com/aws/aws-sdk-go-v2/config v1.27.17 h1:L0JZN7Gh7pT6u5CJReKsLhGKparqNKui+mcpxMXjDZc= | github.com/aws/aws-sdk-go-v2/config v1.27.26 h1:T1kAefbKuNum/AbShMsZEro6eRkeOT8YILfE9wyjAYQ= | ||||||
| github.com/aws/aws-sdk-go-v2/config v1.27.17/go.mod h1:MzM3balLZeaafYcPz8IihAmam/aCz6niPQI0FdprxW0= | github.com/aws/aws-sdk-go-v2/config v1.27.26/go.mod h1:ivWHkAWFrw/nxty5Fku7soTIVdqZaZ7dw+tc5iGW3GA= | ||||||
| github.com/aws/aws-sdk-go-v2/credentials v1.17.17 h1:b3Dk9uxQByS9sc6r0sc2jmxsJKO75eOcb9nNEiaUBLM= | github.com/aws/aws-sdk-go-v2/credentials v1.17.27 h1:2raNba6gr2IfA0eqqiP2XiQ0UVOpGPgDSi0I9iAP+UI= | ||||||
| github.com/aws/aws-sdk-go-v2/credentials v1.17.17/go.mod h1:e4khg9iY08LnFK/HXQDWMf9GDaiMari7jWPnXvKAuBU= | github.com/aws/aws-sdk-go-v2/credentials v1.17.27/go.mod h1:gniiwbGahQByxan6YjQUMcW4Aov6bLC3m+evgcoN4r4= | ||||||
| github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue v1.14.0 h1:RXHz/z13XYIOCUxjU8erQm25Hhe9LqtXS3dKXsHWRHs= | github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue v1.14.10 h1:orAIBscNu5aIjDOnKIrjO+IUFPMLKj3Lp0bPf4chiPc= | ||||||
| github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue v1.14.0/go.mod h1:TH3KH06Ijq3zujEw5Gb2xzBMQ+WjpCcJYkGUclCu2NQ= | github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue v1.14.10/go.mod h1:GNjJ8daGhv10hmQYCnmkV8HuY6xXOXV4vzBssSjEIlU= | ||||||
| github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.4 h1:0cSfTYYL9qiRcdi4Dvz+8s3JUgNR2qvbgZkXcwPEEEk= | github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.11 h1:KreluoV8FZDEtI6Co2xuNk/UqI9iwMrOx/87PBNIKqw= | ||||||
| github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.4/go.mod h1:Wjn5O9eS7uSi7vlPKt/v0MLTncANn9EMmoDvnzJli6o= | github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.11/go.mod h1:SeSUYBLsMYFoRvHE0Tjvn7kbxaUhl75CJi1sbfhMxkU= | ||||||
| github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.8 h1:RnLB7p6aaFMRfyQkD6ckxR7myCC9SABIqSz4czYUUbU= | github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.15 h1:SoNJ4RlFEQEbtDcCEt+QG56MY4fm4W8rYirAmq+/DdU= | ||||||
| github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.8/go.mod h1:XH7dQJd+56wEbP1I4e4Duo+QhSMxNArE8VP7NuUOTeM= | github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.15/go.mod h1:U9ke74k1n2bf+RIgoX1SXFed1HLs51OgUSs+Ph0KJP8= | ||||||
| github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.8 h1:jzApk2f58L9yW9q1GEab3BMMFWUkkiZhyrRUtbwUbKU= | github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.15 h1:C6WHdGnTDIYETAm5iErQUiVNsclNx9qbJVPIt03B6bI= | ||||||
| github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.8/go.mod h1:WqO+FftfO3tGePUtQxPXM6iODVfqMwsVMgTbG/ZXIdQ= | github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.15/go.mod h1:ZQLZqhcu+JhSrA9/NXRm8SkDvsycE+JkV3WGY41e+IM= | ||||||
| github.com/aws/aws-sdk-go-v2/internal/ini v1.8.0 h1:hT8rVHwugYE2lEfdFE0QWVo81lF7jMrYJVDWI+f+VxU= | github.com/aws/aws-sdk-go-v2/internal/ini v1.8.0 h1:hT8rVHwugYE2lEfdFE0QWVo81lF7jMrYJVDWI+f+VxU= | ||||||
| github.com/aws/aws-sdk-go-v2/internal/ini v1.8.0/go.mod h1:8tu/lYfQfFe6IGnaOdrpVgEL2IrrDOf6/m9RQum4NkY= | github.com/aws/aws-sdk-go-v2/internal/ini v1.8.0/go.mod h1:8tu/lYfQfFe6IGnaOdrpVgEL2IrrDOf6/m9RQum4NkY= | ||||||
| github.com/aws/aws-sdk-go-v2/service/dynamodb v1.32.7 h1:Y0pFOzMrx/c6mVswi99Y9UmBfbBhmFsAzuaJDXTHd0U= | github.com/aws/aws-sdk-go-v2/service/dynamodb v1.34.4 h1:utG3S4T+X7nONPIpRoi1tVcQdAdJxntiVS2yolPJyXc= | ||||||
| github.com/aws/aws-sdk-go-v2/service/dynamodb v1.32.7/go.mod h1:CYR+43Fe0qazBzSTrIwSK7uYdYVf958kwGF+EQgQqhw= | github.com/aws/aws-sdk-go-v2/service/dynamodb v1.34.4/go.mod h1:q9vzW3Xr1KEXa8n4waHiFt1PrppNDlMymlYP+xpsFbY= | ||||||
| github.com/aws/aws-sdk-go-v2/service/dynamodbstreams v1.20.9 h1:KYj1jyicyjXmWgMFPMBsgZPYoQ3ZO2HZ0u/rnhJ3fZU= | github.com/aws/aws-sdk-go-v2/service/dynamodbstreams v1.22.3 h1:r27/FnxLPixKBRIlslsvhqscBuMK8uysCYG9Kfgm098= | ||||||
| github.com/aws/aws-sdk-go-v2/service/dynamodbstreams v1.20.9/go.mod h1:PWKopbFpAtnHJ0paxgo+m3+dGKJ2BqeE1qeo5O4T8w0= | github.com/aws/aws-sdk-go-v2/service/dynamodbstreams v1.22.3/go.mod h1:jqOFyN+QSWSoQC+ppyc4weiO8iNQXbzRbxDjQ1ayYd4= | ||||||
| github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.2 h1:Ji0DY1xUsUr3I8cHps0G+XM3WWU16lP6yG8qu1GAZAs= | github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.3 h1:dT3MqvGhSoaIhRseqw2I0yH81l7wiR2vjs57O51EAm8= | ||||||
| github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.2/go.mod h1:5CsjAbs3NlGQyZNFACh+zztPDI7fU6eW9QsxjfnuBKg= | github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.3/go.mod h1:GlAeCkHwugxdHaueRr4nhPuY+WW+gR8UjlcqzPr1SPI= | ||||||
| github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.9.9 h1:497Dd5t4c87GRuKTSNbkVDksiDVbksjfrTyUy1MzR00= | github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.9.16 h1:lhAX5f7KpgwyieXjbDnRTjPEUI0l3emSRyxXj1PXP8w= | ||||||
| github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.9.9/go.mod h1:5OLOnU8LbdA3RXpLmE5AlLnOPb7nfJ2/kNtJBSNdyXM= | github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.9.16/go.mod h1:AblAlCwvi7Q/SFowvckgN+8M3uFPlopSYeLlbNDArhA= | ||||||
| github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.10 h1:7kZqP7akv0enu6ykJhb9OYlw16oOrSy+Epus8o/VqMY= | github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.17 h1:HGErhhrxZlQ044RiM+WdoZxp0p+EGM62y3L6pwA4olE= | ||||||
| github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.10/go.mod h1:gYVF3nM1ApfTRDj9pvdhootBb8WbiIejuqn4w8ruMes= | github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.17/go.mod h1:RkZEx4l0EHYDJpWppMJ3nD9wZJAa8/0lq9aVC+r2UII= | ||||||
| github.com/aws/aws-sdk-go-v2/service/sso v1.20.10 h1:ItKVmFwbyb/ZnCWf+nu3XBVmUirpO9eGEQd7urnBA0s= | github.com/aws/aws-sdk-go-v2/service/sso v1.22.4 h1:BXx0ZIxvrJdSgSvKTZ+yRBeSqqgPM89VPlulEcl37tM= | ||||||
| github.com/aws/aws-sdk-go-v2/service/sso v1.20.10/go.mod h1:5XKooCTi9VB/xZmJDvh7uZ+v3uQ7QdX6diOyhvPA+/w= | github.com/aws/aws-sdk-go-v2/service/sso v1.22.4/go.mod h1:ooyCOXjvJEsUw7x+ZDHeISPMhtwI3ZCB7ggFMcFfWLU= | ||||||
| github.com/aws/aws-sdk-go-v2/service/ssooidc v1.24.4 h1:QMSCYDg3Iyls0KZc/dk3JtS2c1lFfqbmYO10qBPPkJk= | github.com/aws/aws-sdk-go-v2/service/ssooidc v1.26.4 h1:yiwVzJW2ZxZTurVbYWA7QOrAaCYQR72t0wrSBfoesUE= | ||||||
| github.com/aws/aws-sdk-go-v2/service/ssooidc v1.24.4/go.mod h1:MZ/PVYU/mRbmSF6WK3ybCYHjA2mig8utVokDEVLDgE0= | github.com/aws/aws-sdk-go-v2/service/ssooidc v1.26.4/go.mod h1:0oxfLkpz3rQ/CHlx5hB7H69YUpFiI1tql6Q6Ne+1bCw= | ||||||
| github.com/aws/aws-sdk-go-v2/service/sts v1.28.11 h1:HYS0csS7UJxdYRoG+bGgUYrSwVnV3/ece/wHm90TApM= | github.com/aws/aws-sdk-go-v2/service/sts v1.30.3 h1:ZsDKRLXGWHk8WdtyYMoGNO7bTudrvuKpDKgMVRlepGE= | ||||||
| github.com/aws/aws-sdk-go-v2/service/sts v1.28.11/go.mod h1:QXnthRM35zI92048MMwfFChjFmoufTdhtHmouwNfhhU= | github.com/aws/aws-sdk-go-v2/service/sts v1.30.3/go.mod h1:zwySh8fpFyXp9yOr/KVzxOl8SRqgf/IDw5aUt9UKFcQ= | ||||||
| github.com/aws/smithy-go v1.20.2 h1:tbp628ireGtzcHDDmLT/6ADHidqnwgF57XOXZe6tp4Q= | github.com/aws/smithy-go v1.20.3 h1:ryHwveWzPV5BIof6fyDvor6V3iUL7nTfiTKXHiW05nE= | ||||||
| github.com/aws/smithy-go v1.20.2/go.mod h1:krry+ya/rV9RDcV/Q16kpu6ypI4K2czasz0NC3qS14E= | github.com/aws/smithy-go v1.20.3/go.mod h1:krry+ya/rV9RDcV/Q16kpu6ypI4K2czasz0NC3qS14E= | ||||||
| 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/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= | github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= | ||||||
| github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= | github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= | ||||||
|   | |||||||
| @@ -94,6 +94,10 @@ type Config struct { | |||||||
|     // Optional. Default is false |     // Optional. Default is false | ||||||
|     Reset bool |     Reset bool | ||||||
|      |      | ||||||
|  |     // The maximum number of times requests that encounter retryable failures should be attempted. | ||||||
|  |     // Optional. Default is 10, same as the MinIO client. | ||||||
|  |     MaxRetry int | ||||||
|  |  | ||||||
|     // Credentials Minio access key and Minio secret key. |     // Credentials Minio access key and Minio secret key. | ||||||
|     // Need to be defined |     // Need to be defined | ||||||
|     Credentials Credentials |     Credentials Credentials | ||||||
| @@ -124,6 +128,7 @@ var ConfigDefault = Config{ | |||||||
|     Token:               "", |     Token:               "", | ||||||
|     Secure:              false, |     Secure:              false, | ||||||
|     Reset:               false, |     Reset:               false, | ||||||
|  |  | ||||||
|     Credentials:         Credentials{}, |     Credentials:         Credentials{}, | ||||||
|     GetObjectOptions:    minio.GetObjectOptions{}, |     GetObjectOptions:    minio.GetObjectOptions{}, | ||||||
|     PutObjectOptions:    minio.PutObjectOptions{}, |     PutObjectOptions:    minio.PutObjectOptions{}, | ||||||
|   | |||||||
| @@ -29,6 +29,10 @@ type Config struct { | |||||||
| 	// Optional. Default is false | 	// Optional. Default is false | ||||||
| 	Reset bool | 	Reset bool | ||||||
|  |  | ||||||
|  | 	// The maximum number of times requests that encounter retryable failures should be attempted. | ||||||
|  | 	// Optional. Default is 10, same as the MinIO client. | ||||||
|  | 	MaxRetry int | ||||||
|  |  | ||||||
| 	// Credentials Minio access key and Minio secret key. | 	// Credentials Minio access key and Minio secret key. | ||||||
| 	// Need to be defined | 	// Need to be defined | ||||||
| 	Credentials Credentials | 	Credentials Credentials | ||||||
| @@ -62,6 +66,7 @@ var ConfigDefault = Config{ | |||||||
| 	Token:               "", | 	Token:               "", | ||||||
| 	Secure:              false, | 	Secure:              false, | ||||||
| 	Reset:               false, | 	Reset:               false, | ||||||
|  | 	MaxRetry:            minio.MaxRetry, | ||||||
| 	Credentials:         Credentials{}, | 	Credentials:         Credentials{}, | ||||||
| 	GetObjectOptions:    minio.GetObjectOptions{}, | 	GetObjectOptions:    minio.GetObjectOptions{}, | ||||||
| 	PutObjectOptions:    minio.PutObjectOptions{}, | 	PutObjectOptions:    minio.PutObjectOptions{}, | ||||||
| @@ -84,5 +89,9 @@ func configDefault(config ...Config) Config { | |||||||
| 		cfg.Bucket = ConfigDefault.Bucket | 		cfg.Bucket = ConfigDefault.Bucket | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
|  | 	if cfg.MaxRetry < 1 { | ||||||
|  | 		cfg.MaxRetry = ConfigDefault.MaxRetry | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 	return cfg | 	return cfg | ||||||
| } | } | ||||||
|   | |||||||
							
								
								
									
										68
									
								
								minio/go.mod
									
									
									
									
									
								
							
							
						
						
									
										68
									
								
								minio/go.mod
									
									
									
									
									
								
							| @@ -1,31 +1,69 @@ | |||||||
| module github.com/gofiber/storage/minio | module github.com/gofiber/storage/minio | ||||||
|  |  | ||||||
| go 1.19 | go 1.21 | ||||||
|  |  | ||||||
| require ( | require ( | ||||||
| 	github.com/minio/minio-go/v7 v7.0.66 | 	github.com/minio/minio-go/v7 v7.0.76 | ||||||
| 	github.com/stretchr/testify v1.9.0 | 	github.com/stretchr/testify v1.9.0 | ||||||
|  | 	github.com/testcontainers/testcontainers-go/modules/minio v0.33.0 | ||||||
| 	github.com/valyala/bytebufferpool v1.0.0 | 	github.com/valyala/bytebufferpool v1.0.0 | ||||||
| ) | ) | ||||||
|  |  | ||||||
| require ( | require ( | ||||||
|  | 	dario.cat/mergo v1.0.0 // indirect | ||||||
|  | 	github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 // indirect | ||||||
|  | 	github.com/Microsoft/go-winio v0.6.2 // indirect | ||||||
|  | 	github.com/cenkalti/backoff/v4 v4.2.1 // indirect | ||||||
|  | 	github.com/containerd/containerd v1.7.18 // indirect | ||||||
|  | 	github.com/containerd/log v0.1.0 // indirect | ||||||
|  | 	github.com/containerd/platforms v0.2.1 // indirect | ||||||
|  | 	github.com/cpuguy83/dockercfg v0.3.1 // indirect | ||||||
| 	github.com/davecgh/go-spew v1.1.1 // indirect | 	github.com/davecgh/go-spew v1.1.1 // indirect | ||||||
|  | 	github.com/distribution/reference v0.6.0 // indirect | ||||||
|  | 	github.com/docker/docker v27.1.1+incompatible // indirect | ||||||
|  | 	github.com/docker/go-connections v0.5.0 // indirect | ||||||
|  | 	github.com/docker/go-units v0.5.0 // indirect | ||||||
| 	github.com/dustin/go-humanize v1.0.1 // indirect | 	github.com/dustin/go-humanize v1.0.1 // indirect | ||||||
| 	github.com/google/uuid v1.5.0 // indirect | 	github.com/felixge/httpsnoop v1.0.4 // indirect | ||||||
| 	github.com/json-iterator/go v1.1.12 // indirect | 	github.com/go-ini/ini v1.67.0 // indirect | ||||||
| 	github.com/klauspost/compress v1.17.4 // indirect | 	github.com/go-logr/logr v1.4.1 // indirect | ||||||
| 	github.com/klauspost/cpuid/v2 v2.2.6 // indirect | 	github.com/go-logr/stdr v1.2.2 // indirect | ||||||
|  | 	github.com/go-ole/go-ole v1.2.6 // indirect | ||||||
|  | 	github.com/goccy/go-json v0.10.3 // indirect | ||||||
|  | 	github.com/gogo/protobuf v1.3.2 // indirect | ||||||
|  | 	github.com/google/uuid v1.6.0 // indirect | ||||||
|  | 	github.com/klauspost/compress v1.17.9 // indirect | ||||||
|  | 	github.com/klauspost/cpuid/v2 v2.2.8 // indirect | ||||||
|  | 	github.com/kr/text v0.2.0 // indirect | ||||||
|  | 	github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0 // indirect | ||||||
|  | 	github.com/magiconair/properties v1.8.7 // indirect | ||||||
| 	github.com/minio/md5-simd v1.1.2 // indirect | 	github.com/minio/md5-simd v1.1.2 // indirect | ||||||
| 	github.com/minio/sha256-simd v1.0.1 // indirect | 	github.com/moby/docker-image-spec v1.3.1 // indirect | ||||||
| 	github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect | 	github.com/moby/patternmatcher v0.6.0 // indirect | ||||||
| 	github.com/modern-go/reflect2 v1.0.2 // indirect | 	github.com/moby/sys/sequential v0.5.0 // indirect | ||||||
|  | 	github.com/moby/sys/user v0.1.0 // indirect | ||||||
|  | 	github.com/moby/term v0.5.0 // indirect | ||||||
|  | 	github.com/morikuni/aec v1.0.0 // indirect | ||||||
|  | 	github.com/opencontainers/go-digest v1.0.0 // indirect | ||||||
|  | 	github.com/opencontainers/image-spec v1.1.0 // indirect | ||||||
|  | 	github.com/pkg/errors v0.9.1 // indirect | ||||||
| 	github.com/pmezard/go-difflib v1.0.0 // indirect | 	github.com/pmezard/go-difflib v1.0.0 // indirect | ||||||
| 	github.com/rs/xid v1.5.0 // indirect | 	github.com/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c // indirect | ||||||
|  | 	github.com/rs/xid v1.6.0 // indirect | ||||||
|  | 	github.com/shirou/gopsutil/v3 v3.23.12 // indirect | ||||||
|  | 	github.com/shoenig/go-m1cpu v0.1.6 // indirect | ||||||
| 	github.com/sirupsen/logrus v1.9.3 // indirect | 	github.com/sirupsen/logrus v1.9.3 // indirect | ||||||
| 	golang.org/x/crypto v0.21.0 // indirect | 	github.com/testcontainers/testcontainers-go v0.33.0 // indirect | ||||||
| 	golang.org/x/net v0.23.0 // indirect | 	github.com/tklauser/go-sysconf v0.3.12 // indirect | ||||||
| 	golang.org/x/sys v0.18.0 // indirect | 	github.com/tklauser/numcpus v0.6.1 // indirect | ||||||
| 	golang.org/x/text v0.14.0 // indirect | 	github.com/yusufpapurcu/wmi v1.2.3 // indirect | ||||||
| 	gopkg.in/ini.v1 v1.67.0 // indirect | 	go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 // indirect | ||||||
|  | 	go.opentelemetry.io/otel v1.24.0 // indirect | ||||||
|  | 	go.opentelemetry.io/otel/metric v1.24.0 // indirect | ||||||
|  | 	go.opentelemetry.io/otel/trace v1.24.0 // indirect | ||||||
|  | 	golang.org/x/crypto v0.26.0 // indirect | ||||||
|  | 	golang.org/x/net v0.28.0 // indirect | ||||||
|  | 	golang.org/x/sys v0.24.0 // indirect | ||||||
|  | 	golang.org/x/text v0.17.0 // indirect | ||||||
| 	gopkg.in/yaml.v3 v3.0.1 // indirect | 	gopkg.in/yaml.v3 v3.0.1 // indirect | ||||||
| ) | ) | ||||||
|   | |||||||
							
								
								
									
										219
									
								
								minio/go.sum
									
									
									
									
									
								
							
							
						
						
									
										219
									
								
								minio/go.sum
									
									
									
									
									
								
							| @@ -1,56 +1,211 @@ | |||||||
|  | dario.cat/mergo v1.0.0 h1:AGCNq9Evsj31mOgNPcLyXc+4PNABt905YmuqPYYpBWk= | ||||||
|  | dario.cat/mergo v1.0.0/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= | ||||||
|  | github.com/AdaLogics/go-fuzz-headers v0.0.0-20230811130428-ced1acdcaa24 h1:bvDV9vkmnHYOMsOr4WLk+Vo07yKIzd94sVoIqshQ4bU= | ||||||
|  | github.com/AdaLogics/go-fuzz-headers v0.0.0-20230811130428-ced1acdcaa24/go.mod h1:8o94RPi1/7XTJvwPpRSzSUedZrtlirdB3r9Z20bi2f8= | ||||||
|  | github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 h1:UQHMgLO+TxOElx5B5HZ4hJQsoJ/PvUvKRhJHDQXO8P8= | ||||||
|  | github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E= | ||||||
|  | github.com/Microsoft/go-winio v0.6.2 h1:F2VQgta7ecxGYO8k3ZZz3RS8fVIXVxONVUPlNERoyfY= | ||||||
|  | github.com/Microsoft/go-winio v0.6.2/go.mod h1:yd8OoFMLzJbo9gZq8j5qaps8bJ9aShtEA8Ipt1oGCvU= | ||||||
|  | github.com/cenkalti/backoff/v4 v4.2.1 h1:y4OZtCnogmCPw98Zjyt5a6+QwPLGkiQsYW5oUqylYbM= | ||||||
|  | github.com/cenkalti/backoff/v4 v4.2.1/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE= | ||||||
|  | github.com/containerd/containerd v1.7.18 h1:jqjZTQNfXGoEaZdW1WwPU0RqSn1Bm2Ay/KJPUuO8nao= | ||||||
|  | github.com/containerd/containerd v1.7.18/go.mod h1:IYEk9/IO6wAPUz2bCMVUbsfXjzw5UNP5fLz4PsUygQ4= | ||||||
|  | github.com/containerd/log v0.1.0 h1:TCJt7ioM2cr/tfR8GPbGf9/VRAX8D2B4PjzCpfX540I= | ||||||
|  | github.com/containerd/log v0.1.0/go.mod h1:VRRf09a7mHDIRezVKTRCrOq78v577GXq3bSa3EhrzVo= | ||||||
|  | github.com/containerd/platforms v0.2.1 h1:zvwtM3rz2YHPQsF2CHYM8+KtB5dvhISiXh5ZpSBQv6A= | ||||||
|  | github.com/containerd/platforms v0.2.1/go.mod h1:XHCb+2/hzowdiut9rkudds9bE5yJ7npe7dG/wG+uFPw= | ||||||
|  | github.com/cpuguy83/dockercfg v0.3.1 h1:/FpZ+JaygUR/lZP2NlFI2DVfrOEMAIKP5wWEJdoYe9E= | ||||||
|  | github.com/cpuguy83/dockercfg v0.3.1/go.mod h1:sugsbF4//dDlL/i+S+rtpIWp+5h0BHJHfjj5/jFyUJc= | ||||||
|  | github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= | ||||||
|  | github.com/creack/pty v1.1.18 h1:n56/Zwd5o6whRC5PMGretI4IdRLlmBXYNjScPaBgsbY= | ||||||
|  | github.com/creack/pty v1.1.18/go.mod h1:MOBLtS5ELjhRRrroQr9kyvTxUAFNvYEK993ew/Vr4O4= | ||||||
| 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/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= | github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= | ||||||
| github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= | github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= | ||||||
|  | github.com/distribution/reference v0.6.0 h1:0IXCQ5g4/QMHHkarYzh5l+u8T3t73zM5QvfrDyIgxBk= | ||||||
|  | github.com/distribution/reference v0.6.0/go.mod h1:BbU0aIcezP1/5jX/8MP0YiH4SdvB5Y4f/wlDRiLyi3E= | ||||||
|  | github.com/docker/docker v27.1.1+incompatible h1:hO/M4MtV36kzKldqnA37IWhebRA+LnqqcqDja6kVaKY= | ||||||
|  | github.com/docker/docker v27.1.1+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= | ||||||
|  | github.com/docker/go-connections v0.5.0 h1:USnMq7hx7gwdVZq1L49hLXaFtUdTADjXGp+uj1Br63c= | ||||||
|  | github.com/docker/go-connections v0.5.0/go.mod h1:ov60Kzw0kKElRwhNs9UlUHAE/F9Fe6GLaXnqyDdmEXc= | ||||||
|  | github.com/docker/go-units v0.5.0 h1:69rxXcBk27SvSaaxTtLh/8llcHD8vYHT7WSdRZ/jvr4= | ||||||
|  | github.com/docker/go-units v0.5.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= | ||||||
| github.com/dustin/go-humanize v1.0.1 h1:GzkhY7T5VNhEkwH0PVJgjz+fX1rhBrR7pRT3mDkpeCY= | github.com/dustin/go-humanize v1.0.1 h1:GzkhY7T5VNhEkwH0PVJgjz+fX1rhBrR7pRT3mDkpeCY= | ||||||
| github.com/dustin/go-humanize v1.0.1/go.mod h1:Mu1zIs6XwVuF/gI1OepvI0qD18qycQx+mFykh5fBlto= | github.com/dustin/go-humanize v1.0.1/go.mod h1:Mu1zIs6XwVuF/gI1OepvI0qD18qycQx+mFykh5fBlto= | ||||||
| github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= | github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= | ||||||
| github.com/google/uuid v1.5.0 h1:1p67kYwdtXjb0gL0BPiP1Av9wiZPo5A8z2cWkTZ+eyU= | github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= | ||||||
| github.com/google/uuid v1.5.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= | github.com/go-ini/ini v1.67.0 h1:z6ZrTEZqSWOTyH2FlglNbNgARyHG8oLW9gMELqKr06A= | ||||||
| github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= | github.com/go-ini/ini v1.67.0/go.mod h1:ByCAeIL28uOIIG0E3PJtZPDL8WnHpFKFOtgjp+3Ies8= | ||||||
| github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= | github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= | ||||||
| github.com/klauspost/compress v1.17.4 h1:Ej5ixsIri7BrIjBkRZLTo6ghwrEtHFk7ijlczPW4fZ4= | github.com/go-logr/logr v1.4.1 h1:pKouT5E8xu9zeFC39JXRDukb6JFQPXM5p5I91188VAQ= | ||||||
| github.com/klauspost/compress v1.17.4/go.mod h1:/dCuZOvVtNoHsyb+cuJD3itjs3NbnF6KH9zAO4BDxPM= | github.com/go-logr/logr v1.4.1/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= | ||||||
|  | github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= | ||||||
|  | github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= | ||||||
|  | github.com/go-ole/go-ole v1.2.6 h1:/Fpf6oFPoeFik9ty7siob0G6Ke8QvQEuVcuChpwXzpY= | ||||||
|  | github.com/go-ole/go-ole v1.2.6/go.mod h1:pprOEPIfldk/42T2oK7lQ4v4JSDwmV0As9GaiUsvbm0= | ||||||
|  | github.com/goccy/go-json v0.10.3 h1:KZ5WoDbxAIgm2HNbYckL0se1fHD6rz5j4ywS6ebzDqA= | ||||||
|  | github.com/goccy/go-json v0.10.3/go.mod h1:oq7eo15ShAhp70Anwd5lgX2pLfOS3QCiwU/PULtXL6M= | ||||||
|  | github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= | ||||||
|  | github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= | ||||||
|  | github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= | ||||||
|  | github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= | ||||||
|  | github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= | ||||||
|  | github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= | ||||||
|  | github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= | ||||||
|  | github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= | ||||||
|  | github.com/grpc-ecosystem/grpc-gateway/v2 v2.16.0 h1:YBftPWNWd4WwGqtY2yeZL2ef8rHAxPBD8KFhJpmcqms= | ||||||
|  | github.com/grpc-ecosystem/grpc-gateway/v2 v2.16.0/go.mod h1:YN5jB8ie0yfIUg6VvR9Kz84aCaG7AsGZnLjhHbUqwPg= | ||||||
|  | github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= | ||||||
|  | github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= | ||||||
|  | github.com/klauspost/compress v1.17.9 h1:6KIumPrER1LHsvBVuDa0r5xaG0Es51mhhB9BQB2qeMA= | ||||||
|  | github.com/klauspost/compress v1.17.9/go.mod h1:Di0epgTjJY877eYKx5yC51cX2A2Vl2ibi7bDH9ttBbw= | ||||||
| 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.2.6 h1:ndNyv040zDGIDh8thGkXYjnFtiN02M1PVVF+JE/48xc= | github.com/klauspost/cpuid/v2 v2.2.8 h1:+StwCXwm9PdpiEkPyzBXIy+M9KUb4ODm0Zarf1kS5BM= | ||||||
| github.com/klauspost/cpuid/v2 v2.2.6/go.mod h1:Lcz8mBdAVJIBVzewtcLocK12l3Y+JytZYpaMropDUws= | github.com/klauspost/cpuid/v2 v2.2.8/go.mod h1:Lcz8mBdAVJIBVzewtcLocK12l3Y+JytZYpaMropDUws= | ||||||
|  | github.com/kr/pretty v0.3.0 h1:WgNl7dwNpEZ6jJ9k1snq4pZsg7DOEN8hP9Xw0Tsjwk0= | ||||||
|  | github.com/kr/pretty v0.3.0/go.mod h1:640gp4NfQd8pI5XOwp5fnNeVWj67G7CFk/SaSQn7NBk= | ||||||
|  | github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= | ||||||
|  | github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= | ||||||
|  | github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0 h1:6E+4a0GO5zZEnZ81pIr0yLvtUWk2if982qA3F3QD6H4= | ||||||
|  | github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0/go.mod h1:zJYVVT2jmtg6P3p1VtQj7WsuWi/y4VnjVBn7F8KPB3I= | ||||||
|  | github.com/magiconair/properties v1.8.7 h1:IeQXZAiQcpL9mgcAe1Nu6cX9LLw6ExEHKjN0VQdvPDY= | ||||||
|  | github.com/magiconair/properties v1.8.7/go.mod h1:Dhd985XPs7jluiymwWYZ0G4Z61jb3vdS329zhj2hYo0= | ||||||
| github.com/minio/md5-simd v1.1.2 h1:Gdi1DZK69+ZVMoNHRXJyNcxrMA4dSxoYHZSQbirFg34= | github.com/minio/md5-simd v1.1.2 h1:Gdi1DZK69+ZVMoNHRXJyNcxrMA4dSxoYHZSQbirFg34= | ||||||
| github.com/minio/md5-simd v1.1.2/go.mod h1:MzdKDxYpY2BT9XQFocsiZf/NKVtR7nkE4RoEpN+20RM= | github.com/minio/md5-simd v1.1.2/go.mod h1:MzdKDxYpY2BT9XQFocsiZf/NKVtR7nkE4RoEpN+20RM= | ||||||
| github.com/minio/minio-go/v7 v7.0.66 h1:bnTOXOHjOqv/gcMuiVbN9o2ngRItvqE774dG9nq0Dzw= | github.com/minio/minio-go/v7 v7.0.76 h1:9nxHH2XDai61cT/EFhyIw/wW4vJfpPNvl7lSFpRt+Ng= | ||||||
| github.com/minio/minio-go/v7 v7.0.66/go.mod h1:DHAgmyQEGdW3Cif0UooKOyrT3Vxs82zNdV6tkKhRtbs= | github.com/minio/minio-go/v7 v7.0.76/go.mod h1:AVM3IUN6WwKzmwBxVdjzhH8xq+f57JSbbvzqvUzR6eg= | ||||||
| github.com/minio/sha256-simd v1.0.1 h1:6kaan5IFmwTNynnKKpDHe6FWHohJOHhCPchzK49dzMM= | github.com/moby/docker-image-spec v1.3.1 h1:jMKff3w6PgbfSa69GfNg+zN/XLhfXJGnEx3Nl2EsFP0= | ||||||
| github.com/minio/sha256-simd v1.0.1/go.mod h1:Pz6AKMiUdngCLpeTL/RJY1M9rUuPMYujV5xJjtbRSN8= | github.com/moby/docker-image-spec v1.3.1/go.mod h1:eKmb5VW8vQEh/BAr2yvVNvuiJuY6UIocYsFu/DxxRpo= | ||||||
| github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= | github.com/moby/patternmatcher v0.6.0 h1:GmP9lR19aU5GqSSFko+5pRqHi+Ohk1O69aFiKkVGiPk= | ||||||
| github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= | github.com/moby/patternmatcher v0.6.0/go.mod h1:hDPoyOpDY7OrrMDLaYoY3hf52gNCR/YOUYxkhApJIxc= | ||||||
| github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= | github.com/moby/sys/sequential v0.5.0 h1:OPvI35Lzn9K04PBbCLW0g4LcFAJgHsvXsRyewg5lXtc= | ||||||
| github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= | github.com/moby/sys/sequential v0.5.0/go.mod h1:tH2cOOs5V9MlPiXcQzRC+eEyab644PWKGRYaaV5ZZlo= | ||||||
| github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= | github.com/moby/sys/user v0.1.0 h1:WmZ93f5Ux6het5iituh9x2zAG7NFY9Aqi49jjE1PaQg= | ||||||
|  | github.com/moby/sys/user v0.1.0/go.mod h1:fKJhFOnsCN6xZ5gSfbM6zaHGgDJMrqt9/reuj4T7MmU= | ||||||
|  | github.com/moby/term v0.5.0 h1:xt8Q1nalod/v7BqbG21f8mQPqH+xAaC9C3N3wfWbVP0= | ||||||
|  | github.com/moby/term v0.5.0/go.mod h1:8FzsFHVUBGZdbDsJw/ot+X+d5HLUbvklYLJ9uGfcI3Y= | ||||||
|  | github.com/morikuni/aec v1.0.0 h1:nP9CBfwrvYnBRgY6qfDQkygYDmYwOilePFkwzv4dU8A= | ||||||
|  | github.com/morikuni/aec v1.0.0/go.mod h1:BbKIizmSmc5MMPqRYbxO4ZU0S0+P200+tUnFx7PXmsc= | ||||||
|  | github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= | ||||||
|  | github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= | ||||||
|  | github.com/opencontainers/image-spec v1.1.0 h1:8SG7/vwALn54lVB/0yZ/MMwhFrPYtpEHQb2IpWsCzug= | ||||||
|  | github.com/opencontainers/image-spec v1.1.0/go.mod h1:W4s4sFTMaBeK1BQLXbG4AdM2szdn85PY75RI83NrTrM= | ||||||
|  | github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= | ||||||
|  | github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= | ||||||
| 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/rs/xid v1.5.0 h1:mKX4bl4iPYJtEIxp6CYiUuLQ/8DYMoz0PUdtGgMFRVc= | github.com/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c h1:ncq/mPwQF4JjgDlrVEn3C11VoGHZN7m8qihwgMEtzYw= | ||||||
| github.com/rs/xid v1.5.0/go.mod h1:trrq9SKmegXys3aeAKXMUTdJsYXVwGY3RLcfgqegfbg= | github.com/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c/go.mod h1:OmDBASR4679mdNQnz2pUhc2G8CO2JrUAVFDRBDP/hJE= | ||||||
|  | github.com/rogpeppe/go-internal v1.8.1 h1:geMPLpDpQOgVyCg5z5GoRwLHepNdb71NXb67XFkP+Eg= | ||||||
|  | github.com/rogpeppe/go-internal v1.8.1/go.mod h1:JeRgkft04UBgHMgCIwADu4Pn6Mtm5d4nPKWu0nJ5d+o= | ||||||
|  | github.com/rs/xid v1.6.0 h1:fV591PaemRlL6JfRxGDEPl69wICngIQ3shQtzfy2gxU= | ||||||
|  | github.com/rs/xid v1.6.0/go.mod h1:7XoLgs4eV+QndskICGsho+ADou8ySMSjJKDIan90Nz0= | ||||||
|  | github.com/shirou/gopsutil/v3 v3.23.12 h1:z90NtUkp3bMtmICZKpC4+WaknU1eXtp5vtbQ11DgpE4= | ||||||
|  | github.com/shirou/gopsutil/v3 v3.23.12/go.mod h1:1FrWgea594Jp7qmjHUUPlJDTPgcsb9mGnXDxavtikzM= | ||||||
|  | github.com/shoenig/go-m1cpu v0.1.6 h1:nxdKQNcEB6vzgA2E2bvzKIYRuNj7XNJ4S/aRSwKzFtM= | ||||||
|  | github.com/shoenig/go-m1cpu v0.1.6/go.mod h1:1JJMcUBvfNwpq05QDQVAnx3gUHr9IYF7GNg9SUEw2VQ= | ||||||
|  | github.com/shoenig/test v0.6.4 h1:kVTaSd7WLz5WZ2IaoM0RSzRsUD+m8wRR+5qvntpn4LU= | ||||||
|  | github.com/shoenig/test v0.6.4/go.mod h1:byHiCGXqrVaflBLAMq/srcZIHynQPQgeyvkvXnjqq0k= | ||||||
| github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ= | github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ= | ||||||
| github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= | github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= | ||||||
| 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/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= | ||||||
|  | github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= | ||||||
| github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= | github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= | ||||||
|  | github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= | ||||||
|  | github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= | ||||||
|  | github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= | ||||||
| github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= | github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= | ||||||
| github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= | github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= | ||||||
|  | github.com/testcontainers/testcontainers-go v0.33.0 h1:zJS9PfXYT5O0ZFXM2xxXfk4J5UMw/kRiISng037Gxdw= | ||||||
|  | github.com/testcontainers/testcontainers-go v0.33.0/go.mod h1:W80YpTa8D5C3Yy16icheD01UTDu+LmXIA2Keo+jWtT8= | ||||||
|  | github.com/testcontainers/testcontainers-go/modules/minio v0.33.0 h1:lHhjYlm0Oh+PfM03NIwCqNg2zSz9VuNTwUKi4MQfYAA= | ||||||
|  | github.com/testcontainers/testcontainers-go/modules/minio v0.33.0/go.mod h1:3WRFF6lLI3IqXb7lvOx6OpEcH1jgs59mbzZiPTJeEJg= | ||||||
|  | github.com/tklauser/go-sysconf v0.3.12 h1:0QaGUFOdQaIVdPgfITYzaTegZvdCjmYO52cSFAEVmqU= | ||||||
|  | github.com/tklauser/go-sysconf v0.3.12/go.mod h1:Ho14jnntGE1fpdOqQEEaiKRpvIavV0hSfmBq8nJbHYI= | ||||||
|  | github.com/tklauser/numcpus v0.6.1 h1:ng9scYS7az0Bk4OZLvrNXNSAO2Pxr1XXRAPyjhIx+Fk= | ||||||
|  | github.com/tklauser/numcpus v0.6.1/go.mod h1:1XfjsgE2zo8GVw7POkMbHENHzVg3GzmoZ9fESEdAacY= | ||||||
| github.com/valyala/bytebufferpool v1.0.0 h1:GqA5TC/0021Y/b9FG4Oi9Mr3q7XYx6KllzawFIhcdPw= | github.com/valyala/bytebufferpool v1.0.0 h1:GqA5TC/0021Y/b9FG4Oi9Mr3q7XYx6KllzawFIhcdPw= | ||||||
| github.com/valyala/bytebufferpool v1.0.0/go.mod h1:6bBcMArwyJ5K/AmCkWv1jt77kVWyCJ6HpOuEn7z0Csc= | github.com/valyala/bytebufferpool v1.0.0/go.mod h1:6bBcMArwyJ5K/AmCkWv1jt77kVWyCJ6HpOuEn7z0Csc= | ||||||
| golang.org/x/crypto v0.21.0 h1:X31++rzVUdKhX5sWmSOFZxx8UW/ldWx55cbf08iNAMA= | github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= | ||||||
| golang.org/x/crypto v0.21.0/go.mod h1:0BP7YvVV9gBbVKyeTG0Gyn+gZm94bibOW5BjDEYAOMs= | github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= | ||||||
| golang.org/x/net v0.23.0 h1:7EYJ93RZ9vYSZAIb2x3lnuvqO5zneoD6IvWjuhfxjTs= | github.com/yusufpapurcu/wmi v1.2.3 h1:E1ctvB7uKFMOJw3fdOW32DwGE9I7t++CRUEMKvFoFiw= | ||||||
| golang.org/x/net v0.23.0/go.mod h1:JKghWKKOSdJwpW2GEx0Ja7fmaKnMsbu+MWVZTokSYmg= | github.com/yusufpapurcu/wmi v1.2.3/go.mod h1:SBZ9tNy3G9/m5Oi98Zks0QjeHVDvuK0qfxQmPyzfmi0= | ||||||
|  | go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 h1:jq9TW8u3so/bN+JPT166wjOI6/vQPF6Xe7nMNIltagk= | ||||||
|  | go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0/go.mod h1:p8pYQP+m5XfbZm9fxtSKAbM6oIllS7s2AfxrChvc7iw= | ||||||
|  | go.opentelemetry.io/otel v1.24.0 h1:0LAOdjNmQeSTzGBzduGe/rU4tZhMwL5rWgtp9Ku5Jfo= | ||||||
|  | go.opentelemetry.io/otel v1.24.0/go.mod h1:W7b9Ozg4nkF5tWI5zsXkaKKDjdVjpD4oAt9Qi/MArHo= | ||||||
|  | go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.19.0 h1:Mne5On7VWdx7omSrSSZvM4Kw7cS7NQkOOmLcgscI51U= | ||||||
|  | go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.19.0/go.mod h1:IPtUMKL4O3tH5y+iXVyAXqpAwMuzC1IrxVS81rummfE= | ||||||
|  | go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.19.0 h1:IeMeyr1aBvBiPVYihXIaeIZba6b8E1bYp7lbdxK8CQg= | ||||||
|  | go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.19.0/go.mod h1:oVdCUtjq9MK9BlS7TtucsQwUcXcymNiEDjgDD2jMtZU= | ||||||
|  | go.opentelemetry.io/otel/metric v1.24.0 h1:6EhoGWWK28x1fbpA4tYTOWBkPefTDQnb8WSGXlc88kI= | ||||||
|  | go.opentelemetry.io/otel/metric v1.24.0/go.mod h1:VYhLe1rFfxuTXLgj4CBiyz+9WYBA8pNGJgDcSFRKBco= | ||||||
|  | go.opentelemetry.io/otel/sdk v1.19.0 h1:6USY6zH+L8uMH8L3t1enZPR3WFEmSTADlqldyHtJi3o= | ||||||
|  | go.opentelemetry.io/otel/sdk v1.19.0/go.mod h1:NedEbbS4w3C6zElbLdPJKOpJQOrGUJ+GfzpjUvI0v1A= | ||||||
|  | go.opentelemetry.io/otel/trace v1.24.0 h1:CsKnnL4dUAr/0llH9FKuc698G04IrpWV0MQA/Y1YELI= | ||||||
|  | go.opentelemetry.io/otel/trace v1.24.0/go.mod h1:HPc3Xr/cOApsBI154IU0OI0HJexz+aw5uPdbs3UCjNU= | ||||||
|  | go.opentelemetry.io/proto/otlp v1.0.0 h1:T0TX0tmXU8a3CbNXzEKGeU5mIVOdf0oykP+u2lIVU/I= | ||||||
|  | go.opentelemetry.io/proto/otlp v1.0.0/go.mod h1:Sy6pihPLfYHkr3NkUbEhGHFhINUSI/v80hjKIs5JXpM= | ||||||
|  | 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/crypto v0.26.0 h1:RrRspgV4mU+YwB4FYnuBoKsUapNIL5cohGAmSH3azsw= | ||||||
|  | golang.org/x/crypto v0.26.0/go.mod h1:GY7jblb9wI+FOo5y8/S2oY4zWP07AkOJ4+jxCqdqn54= | ||||||
|  | golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= | ||||||
|  | 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-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= | ||||||
|  | golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= | ||||||
|  | golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE= | ||||||
|  | golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg= | ||||||
|  | golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= | ||||||
|  | golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= | ||||||
|  | golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/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-20190916202348-b4ddaad3f8a3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= | ||||||
|  | golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= | ||||||
|  | golang.org/x/sys v0.0.0-20201204225414-ed752295db88/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= | ||||||
|  | golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | ||||||
| golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | ||||||
| golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | ||||||
| golang.org/x/sys v0.18.0 h1:DBdB3niSjOA/O0blCZBqDefyWNYveAYMNF1Wum0DYQ4= | golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | ||||||
| golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= | golang.org/x/sys v0.11.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | ||||||
| golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= | golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= | ||||||
| golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= | golang.org/x/sys v0.24.0 h1:Twjiwq9dn6R1fQcyiK+wQyHWfaz/BJB+YIpzU/Cv3Xg= | ||||||
| gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= | golang.org/x/sys v0.24.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= | ||||||
|  | golang.org/x/term v0.23.0 h1:F6D4vR+EHoL9/sWAWgAR1H2DcHr4PareCbAaCo1RpuU= | ||||||
|  | golang.org/x/term v0.23.0/go.mod h1:DgV24QBUrK6jhZXl+20l6UWznPlwAHm1Q1mGHtydmSk= | ||||||
|  | golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= | ||||||
|  | golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= | ||||||
|  | golang.org/x/text v0.17.0 h1:XtiM5bkSOt+ewxlOE/aE/AKEHibwj/6gvWMl9Rsh0Qc= | ||||||
|  | golang.org/x/text v0.17.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= | ||||||
|  | golang.org/x/time v0.0.0-20220210224613-90d013bbcef8 h1:vVKdlvoWBphwdxWKrFZEuM0kGgGLxUOYcY4U/2Vjg44= | ||||||
|  | golang.org/x/time v0.0.0-20220210224613-90d013bbcef8/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= | ||||||
|  | golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= | ||||||
|  | golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= | ||||||
|  | golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= | ||||||
|  | golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= | ||||||
|  | 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-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= | ||||||
|  | golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= | ||||||
|  | google.golang.org/genproto v0.0.0-20230920204549-e6e6cdab5c13 h1:vlzZttNJGVqTsRFU9AmdnrcO1Znh8Ew9kCD//yjigk0= | ||||||
|  | google.golang.org/genproto/googleapis/api v0.0.0-20240318140521-94a12d6c2237 h1:RFiFrvy37/mpSpdySBDrUdipW/dHwsRwh3J3+A9VgT4= | ||||||
|  | google.golang.org/genproto/googleapis/api v0.0.0-20240318140521-94a12d6c2237/go.mod h1:Z5Iiy3jtmioajWHDGFk7CeugTyHtPvMHA4UTmUkyalE= | ||||||
|  | google.golang.org/genproto/googleapis/rpc v0.0.0-20240318140521-94a12d6c2237 h1:NnYq6UN9ReLM9/Y01KWNOWyI5xQ9kbIms5GGJVwS/Yc= | ||||||
|  | google.golang.org/genproto/googleapis/rpc v0.0.0-20240318140521-94a12d6c2237/go.mod h1:WtryC6hu0hhx87FDGxWCDptyssuo68sk10vYjF+T9fY= | ||||||
|  | google.golang.org/grpc v1.64.1 h1:LKtvyfbX3UGVPFcGqJ9ItpVWW6oN/2XqTxfAnwRRXiA= | ||||||
|  | google.golang.org/grpc v1.64.1/go.mod h1:hiQF4LFZelK2WKaP6W0L92zGHtiQdZxk8CrSdvyjeP0= | ||||||
|  | google.golang.org/protobuf v1.33.0 h1:uNO2rsAINq/JlFpSdYEKIZ0uKD/R9cpdv0T+yoGwGmI= | ||||||
|  | google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= | ||||||
| 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/ini.v1 v1.67.0 h1:Dgnx+6+nfE+IfzjUEISNeydPJh9AXNNsWbGP9KzCsOA= | gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= | ||||||
| gopkg.in/ini.v1 v1.67.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= | gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= | ||||||
| gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= | gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= | ||||||
| gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= | gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= | ||||||
| gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= | gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= | ||||||
|  | gotest.tools/v3 v3.5.1 h1:EENdUnS3pdur5nybKYIh2Vfgc8IUNBjxDPSjtiJcOzU= | ||||||
|  | gotest.tools/v3 v3.5.1/go.mod h1:isy3WKz7GK6uNw/sbHzfKBLvlvXwUyV06n6brMxxopU= | ||||||
|   | |||||||
| @@ -28,6 +28,9 @@ func New(config ...Config) *Storage { | |||||||
| 	// Set default config | 	// Set default config | ||||||
| 	cfg := configDefault(config...) | 	cfg := configDefault(config...) | ||||||
|  |  | ||||||
|  | 	// Set MaxRetry | ||||||
|  | 	minio.MaxRetry = cfg.MaxRetry | ||||||
|  |  | ||||||
| 	// Minio instance | 	// Minio instance | ||||||
| 	minioClient, err := minio.New(cfg.Endpoint, &minio.Options{ | 	minioClient, err := minio.New(cfg.Endpoint, &minio.Options{ | ||||||
| 		Creds:  credentials.NewStaticV4(cfg.Credentials.AccessKeyID, cfg.Credentials.SecretAccessKey, cfg.Token), | 		Creds:  credentials.NewStaticV4(cfg.Credentials.AccessKeyID, cfg.Credentials.SecretAccessKey, cfg.Token), | ||||||
| @@ -72,6 +75,7 @@ func (s *Storage) Get(key string) ([]byte, error) { | |||||||
| 	if err != nil { | 	if err != nil { | ||||||
| 		return nil, err | 		return nil, err | ||||||
| 	} | 	} | ||||||
|  | 	defer object.Close() | ||||||
|  |  | ||||||
| 	// convert to byte | 	// convert to byte | ||||||
| 	bb := bytebufferpool.Get() | 	bb := bytebufferpool.Get() | ||||||
|   | |||||||
| @@ -1,33 +1,59 @@ | |||||||
| package minio | package minio | ||||||
|  |  | ||||||
| import ( | import ( | ||||||
|  | 	"context" | ||||||
| 	"os" | 	"os" | ||||||
| 	"strconv" | 	"strconv" | ||||||
| 	"testing" | 	"testing" | ||||||
| 	"time" | 	"time" | ||||||
|  |  | ||||||
| 	"github.com/stretchr/testify/require" | 	"github.com/stretchr/testify/require" | ||||||
|  | 	"github.com/testcontainers/testcontainers-go/modules/minio" | ||||||
| ) | ) | ||||||
|  |  | ||||||
| var testStore *Storage | const ( | ||||||
|  | 	// minioImage is the default image used for running minio in tests. | ||||||
|  | 	minioImage              = "docker.io/minio/minio:RELEASE.2024-08-17T01-24-54Z" | ||||||
|  | 	minioImageEnvVar string = "TEST_MINIO_IMAGE" | ||||||
|  | 	minioUser        string = "minio-user" | ||||||
|  | 	minioPass        string = "minio-password" | ||||||
|  | ) | ||||||
|  |  | ||||||
| func TestMain(m *testing.M) { | func newTestStore(t testing.TB) (*Storage, error) { | ||||||
| 	testStore = New( | 	t.Helper() | ||||||
|  |  | ||||||
|  | 	img := minioImage | ||||||
|  | 	if imgFromEnv := os.Getenv(minioImageEnvVar); imgFromEnv != "" { | ||||||
|  | 		img = imgFromEnv | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	ctx := context.Background() | ||||||
|  |  | ||||||
|  | 	c, err := minio.Run(ctx, | ||||||
|  | 		img, | ||||||
|  | 		minio.WithUsername(minioUser), | ||||||
|  | 		minio.WithPassword(minioPass), | ||||||
|  | 	) | ||||||
|  | 	if err != nil { | ||||||
|  | 		return nil, err | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	conn, err := c.ConnectionString(ctx) | ||||||
|  | 	if err != nil { | ||||||
|  | 		return nil, err | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	return New( | ||||||
| 		Config{ | 		Config{ | ||||||
| 			Bucket:   "fiber-bucket", | 			Bucket:   "fiber-bucket", | ||||||
| 			Endpoint: "localhost:9000", | 			Endpoint: conn, | ||||||
| 			Credentials: Credentials{ | 			Credentials: Credentials{ | ||||||
| 				AccessKeyID:     "minio-user", | 				AccessKeyID:     c.Username, | ||||||
| 				SecretAccessKey: "minio-password", | 				SecretAccessKey: c.Password, | ||||||
| 			}, | 			}, | ||||||
| 			Reset: true, | 			Reset: true, | ||||||
| 		}, | 		}, | ||||||
| 	) | 	), nil | ||||||
|  |  | ||||||
| 	code := m.Run() |  | ||||||
|  |  | ||||||
| 	_ = testStore.Close() |  | ||||||
| 	os.Exit(code) |  | ||||||
| } | } | ||||||
|  |  | ||||||
| func Test_Get(t *testing.T) { | func Test_Get(t *testing.T) { | ||||||
| @@ -36,7 +62,10 @@ func Test_Get(t *testing.T) { | |||||||
| 		val = []byte("doe") | 		val = []byte("doe") | ||||||
| 	) | 	) | ||||||
|  |  | ||||||
| 	err := testStore.Set(key, val, 0) | 	testStore, err := newTestStore(t) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  |  | ||||||
|  | 	err = testStore.Set(key, val, 0) | ||||||
| 	require.NoError(t, err) | 	require.NoError(t, err) | ||||||
|  |  | ||||||
| 	result, err := testStore.Get(key) | 	result, err := testStore.Get(key) | ||||||
| @@ -53,10 +82,12 @@ func Test_Get_Empty_Key(t *testing.T) { | |||||||
| 		key = "" | 		key = "" | ||||||
| 	) | 	) | ||||||
|  |  | ||||||
| 	_, err := testStore.Get(key) | 	testStore, err := newTestStore(t) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  |  | ||||||
|  | 	_, err = testStore.Get(key) | ||||||
| 	require.Error(t, err) | 	require.Error(t, err) | ||||||
| 	require.EqualError(t, err, "the key value is required") | 	require.EqualError(t, err, "the key value is required") | ||||||
|  |  | ||||||
| } | } | ||||||
|  |  | ||||||
| func Test_Get_Not_Exists_Key(t *testing.T) { | func Test_Get_Not_Exists_Key(t *testing.T) { | ||||||
| @@ -64,10 +95,12 @@ func Test_Get_Not_Exists_Key(t *testing.T) { | |||||||
| 		key = "not-exists" | 		key = "not-exists" | ||||||
| 	) | 	) | ||||||
|  |  | ||||||
| 	_, err := testStore.Get(key) | 	testStore, err := newTestStore(t) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  |  | ||||||
|  | 	_, err = testStore.Get(key) | ||||||
| 	require.Error(t, err) | 	require.Error(t, err) | ||||||
| 	require.EqualError(t, err, "The specified key does not exist.") | 	require.EqualError(t, err, "The specified key does not exist.") | ||||||
|  |  | ||||||
| } | } | ||||||
|  |  | ||||||
| func Test_Get_Not_Exists_Bucket(t *testing.T) { | func Test_Get_Not_Exists_Bucket(t *testing.T) { | ||||||
| @@ -75,6 +108,9 @@ func Test_Get_Not_Exists_Bucket(t *testing.T) { | |||||||
| 		key = "john" | 		key = "john" | ||||||
| 	) | 	) | ||||||
|  |  | ||||||
|  | 	testStore, err := newTestStore(t) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  |  | ||||||
| 	// random bucket name | 	// random bucket name | ||||||
| 	testStore.cfg.Bucket = strconv.FormatInt(time.Now().UnixMicro(), 10) | 	testStore.cfg.Bucket = strconv.FormatInt(time.Now().UnixMicro(), 10) | ||||||
|  |  | ||||||
| @@ -82,9 +118,6 @@ func Test_Get_Not_Exists_Bucket(t *testing.T) { | |||||||
| 	require.Error(t, err) | 	require.Error(t, err) | ||||||
| 	require.Zero(t, len(result)) | 	require.Zero(t, len(result)) | ||||||
| 	require.EqualError(t, err, "The specified bucket does not exist") | 	require.EqualError(t, err, "The specified bucket does not exist") | ||||||
|  |  | ||||||
| 	testStore.cfg.Bucket = "fiber-bucket" |  | ||||||
|  |  | ||||||
| } | } | ||||||
|  |  | ||||||
| func Test_Set(t *testing.T) { | func Test_Set(t *testing.T) { | ||||||
| @@ -93,7 +126,10 @@ func Test_Set(t *testing.T) { | |||||||
| 		val = []byte("doe") | 		val = []byte("doe") | ||||||
| 	) | 	) | ||||||
|  |  | ||||||
| 	err := testStore.Set(key, val, 0) | 	testStore, err := newTestStore(t) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  |  | ||||||
|  | 	err = testStore.Set(key, val, 0) | ||||||
| 	require.NoError(t, err) | 	require.NoError(t, err) | ||||||
| } | } | ||||||
|  |  | ||||||
| @@ -103,7 +139,10 @@ func Test_Set_Empty_Key(t *testing.T) { | |||||||
| 		val = []byte("doe") | 		val = []byte("doe") | ||||||
| 	) | 	) | ||||||
|  |  | ||||||
| 	err := testStore.Set(key, val, 0) | 	testStore, err := newTestStore(t) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  |  | ||||||
|  | 	err = testStore.Set(key, val, 0) | ||||||
|  |  | ||||||
| 	require.Error(t, err) | 	require.Error(t, err) | ||||||
| 	require.EqualError(t, err, "the key value is required") | 	require.EqualError(t, err, "the key value is required") | ||||||
| @@ -116,14 +155,15 @@ func Test_Set_Not_Exists_Bucket(t *testing.T) { | |||||||
| 		val = []byte("doe") | 		val = []byte("doe") | ||||||
| 	) | 	) | ||||||
|  |  | ||||||
|  | 	testStore, err := newTestStore(t) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  |  | ||||||
| 	// random bucket name | 	// random bucket name | ||||||
| 	testStore.cfg.Bucket = strconv.FormatInt(time.Now().UnixMicro(), 10) | 	testStore.cfg.Bucket = strconv.FormatInt(time.Now().UnixMicro(), 10) | ||||||
|  |  | ||||||
| 	err := testStore.Set(key, val, 0) | 	err = testStore.Set(key, val, 0) | ||||||
| 	require.Error(t, err) | 	require.Error(t, err) | ||||||
| 	require.EqualError(t, err, "The specified bucket does not exist") | 	require.EqualError(t, err, "The specified bucket does not exist") | ||||||
|  |  | ||||||
| 	testStore.cfg.Bucket = "fiber-bucket" |  | ||||||
| } | } | ||||||
|  |  | ||||||
| func Test_Delete(t *testing.T) { | func Test_Delete(t *testing.T) { | ||||||
| @@ -132,12 +172,14 @@ func Test_Delete(t *testing.T) { | |||||||
| 		val = []byte("doe") | 		val = []byte("doe") | ||||||
| 	) | 	) | ||||||
|  |  | ||||||
| 	err := testStore.Set(key, val, 0) | 	testStore, err := newTestStore(t) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  |  | ||||||
|  | 	err = testStore.Set(key, val, 0) | ||||||
| 	require.NoError(t, err) | 	require.NoError(t, err) | ||||||
|  |  | ||||||
| 	err = testStore.Delete(key) | 	err = testStore.Delete(key) | ||||||
| 	require.NoError(t, err) | 	require.NoError(t, err) | ||||||
|  |  | ||||||
| } | } | ||||||
|  |  | ||||||
| func Test_Delete_Empty_Key(t *testing.T) { | func Test_Delete_Empty_Key(t *testing.T) { | ||||||
| @@ -146,11 +188,12 @@ func Test_Delete_Empty_Key(t *testing.T) { | |||||||
| 		val = []byte("doe") | 		val = []byte("doe") | ||||||
| 	) | 	) | ||||||
|  |  | ||||||
| 	err := testStore.Set(key, val, 0) | 	testStore, err := newTestStore(t) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  |  | ||||||
|  | 	err = testStore.Set(key, val, 0) | ||||||
| 	require.Error(t, err) | 	require.Error(t, err) | ||||||
| 	require.EqualError(t, err, "the key value is required") | 	require.EqualError(t, err, "the key value is required") | ||||||
|  |  | ||||||
| } | } | ||||||
|  |  | ||||||
| func Test_Delete_Not_Exists_Bucket(t *testing.T) { | func Test_Delete_Not_Exists_Bucket(t *testing.T) { | ||||||
| @@ -158,16 +201,16 @@ func Test_Delete_Not_Exists_Bucket(t *testing.T) { | |||||||
| 		key = "john" | 		key = "john" | ||||||
| 	) | 	) | ||||||
|  |  | ||||||
|  | 	testStore, err := newTestStore(t) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  |  | ||||||
| 	// random bucket name | 	// random bucket name | ||||||
| 	testStore.cfg.Bucket = strconv.FormatInt(time.Now().UnixMicro(), 10) | 	testStore.cfg.Bucket = strconv.FormatInt(time.Now().UnixMicro(), 10) | ||||||
|  |  | ||||||
| 	err := testStore.Delete(key) | 	err = testStore.Delete(key) | ||||||
|  |  | ||||||
| 	require.Error(t, err) | 	require.Error(t, err) | ||||||
| 	require.EqualError(t, err, "The specified bucket does not exist") | 	require.EqualError(t, err, "The specified bucket does not exist") | ||||||
|  |  | ||||||
| 	testStore.cfg.Bucket = "fiber-bucket" |  | ||||||
|  |  | ||||||
| } | } | ||||||
|  |  | ||||||
| func Test_Reset(t *testing.T) { | func Test_Reset(t *testing.T) { | ||||||
| @@ -175,7 +218,10 @@ func Test_Reset(t *testing.T) { | |||||||
| 		val = []byte("doe") | 		val = []byte("doe") | ||||||
| 	) | 	) | ||||||
|  |  | ||||||
| 	err := testStore.Set("john1", val, 0) | 	testStore, err := newTestStore(t) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  |  | ||||||
|  | 	err = testStore.Set("john1", val, 0) | ||||||
| 	require.NoError(t, err) | 	require.NoError(t, err) | ||||||
|  |  | ||||||
| 	err = testStore.Set("john2", val, 0) | 	err = testStore.Set("john2", val, 0) | ||||||
| @@ -187,10 +233,12 @@ func Test_Reset(t *testing.T) { | |||||||
| 	result, err := testStore.Get("john1") | 	result, err := testStore.Get("john1") | ||||||
| 	require.Error(t, err) | 	require.Error(t, err) | ||||||
| 	require.Zero(t, len(result)) | 	require.Zero(t, len(result)) | ||||||
|  |  | ||||||
| } | } | ||||||
|  |  | ||||||
| func Test_Close(t *testing.T) { | func Test_Close(t *testing.T) { | ||||||
|  | 	testStore, err := newTestStore(t) | ||||||
|  | 	require.NoError(t, err) | ||||||
|  |  | ||||||
| 	require.NoError(t, testStore.Close()) | 	require.NoError(t, testStore.Close()) | ||||||
| } | } | ||||||
|  |  | ||||||
| @@ -198,7 +246,9 @@ func Benchmark_Minio_Set(b *testing.B) { | |||||||
| 	b.ReportAllocs() | 	b.ReportAllocs() | ||||||
| 	b.ResetTimer() | 	b.ResetTimer() | ||||||
|  |  | ||||||
| 	var err error | 	testStore, err := newTestStore(b) | ||||||
|  | 	require.NoError(b, err) | ||||||
|  |  | ||||||
| 	for i := 0; i < b.N; i++ { | 	for i := 0; i < b.N; i++ { | ||||||
| 		err = testStore.Set("john", []byte("doe"), 0) | 		err = testStore.Set("john", []byte("doe"), 0) | ||||||
| 	} | 	} | ||||||
| @@ -207,7 +257,10 @@ func Benchmark_Minio_Set(b *testing.B) { | |||||||
| } | } | ||||||
|  |  | ||||||
| func Benchmark_Minio_Get(b *testing.B) { | func Benchmark_Minio_Get(b *testing.B) { | ||||||
| 	err := testStore.Set("john", []byte("doe"), 0) | 	testStore, err := newTestStore(b) | ||||||
|  | 	require.NoError(b, err) | ||||||
|  |  | ||||||
|  | 	err = testStore.Set("john", []byte("doe"), 0) | ||||||
| 	require.NoError(b, err) | 	require.NoError(b, err) | ||||||
|  |  | ||||||
| 	b.ReportAllocs() | 	b.ReportAllocs() | ||||||
| @@ -221,10 +274,12 @@ func Benchmark_Minio_Get(b *testing.B) { | |||||||
| } | } | ||||||
|  |  | ||||||
| func Benchmark_Minio_SetAndDelete(b *testing.B) { | func Benchmark_Minio_SetAndDelete(b *testing.B) { | ||||||
|  | 	testStore, err := newTestStore(b) | ||||||
|  | 	require.NoError(b, err) | ||||||
|  |  | ||||||
| 	b.ReportAllocs() | 	b.ReportAllocs() | ||||||
| 	b.ResetTimer() | 	b.ResetTimer() | ||||||
|  |  | ||||||
| 	var err error |  | ||||||
| 	for i := 0; i < b.N; i++ { | 	for i := 0; i < b.N; i++ { | ||||||
| 		_ = testStore.Set("john", []byte("doe"), 0) | 		_ = testStore.Set("john", []byte("doe"), 0) | ||||||
| 		err = testStore.Delete("john") | 		err = testStore.Delete("john") | ||||||
|   | |||||||
| @@ -1,3 +1,3 @@ | |||||||
| module mockstorage | module github.com/gofiber/storage/mockstorage | ||||||
|  |  | ||||||
| go 1.21 | go 1.21 | ||||||
|   | |||||||
| @@ -4,7 +4,7 @@ go 1.19 | |||||||
|  |  | ||||||
| require ( | require ( | ||||||
| 	github.com/stretchr/testify v1.9.0 | 	github.com/stretchr/testify v1.9.0 | ||||||
| 	go.mongodb.org/mongo-driver v1.15.0 | 	go.mongodb.org/mongo-driver v1.16.1 | ||||||
| ) | ) | ||||||
|  |  | ||||||
| require ( | require ( | ||||||
| @@ -17,8 +17,8 @@ require ( | |||||||
| 	github.com/xdg-go/scram v1.1.2 // indirect | 	github.com/xdg-go/scram v1.1.2 // indirect | ||||||
| 	github.com/xdg-go/stringprep v1.0.4 // indirect | 	github.com/xdg-go/stringprep v1.0.4 // indirect | ||||||
| 	github.com/youmark/pkcs8 v0.0.0-20201027041543-1326539a0a0a // indirect | 	github.com/youmark/pkcs8 v0.0.0-20201027041543-1326539a0a0a // indirect | ||||||
| 	golang.org/x/crypto v0.17.0 // indirect | 	golang.org/x/crypto v0.22.0 // indirect | ||||||
| 	golang.org/x/sync v0.3.0 // indirect | 	golang.org/x/sync v0.7.0 // indirect | ||||||
| 	golang.org/x/text v0.14.0 // indirect | 	golang.org/x/text v0.14.0 // indirect | ||||||
| 	gopkg.in/yaml.v3 v3.0.1 // indirect | 	gopkg.in/yaml.v3 v3.0.1 // indirect | ||||||
| ) | ) | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c | |||||||
| github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= | github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= | ||||||
| github.com/golang/snappy v0.0.4 h1:yAGX7huGHXlcLOEtBnF4w7FQwA26wojNCwOYAEhLjQM= | github.com/golang/snappy v0.0.4 h1:yAGX7huGHXlcLOEtBnF4w7FQwA26wojNCwOYAEhLjQM= | ||||||
| github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= | github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= | ||||||
| github.com/google/go-cmp v0.5.2 h1:X2ev0eStA3AbceY54o37/0PQ/UWqKEiiO2dKL5OPaFM= | github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= | ||||||
| github.com/klauspost/compress v1.16.7 h1:2mk3MPGNzKyxErAw8YaohYh69+pa4sIQSC0fPGCFR9I= | github.com/klauspost/compress v1.16.7 h1:2mk3MPGNzKyxErAw8YaohYh69+pa4sIQSC0fPGCFR9I= | ||||||
| github.com/klauspost/compress v1.16.7/go.mod h1:ntbaceVETuRiXiv4DpjP66DpAtAGkEQskQzEyD//IeE= | github.com/klauspost/compress v1.16.7/go.mod h1:ntbaceVETuRiXiv4DpjP66DpAtAGkEQskQzEyD//IeE= | ||||||
| github.com/montanaflynn/stats v0.7.1 h1:etflOAAHORrCC44V+aR6Ftzort912ZU+YLiSTuV8eaE= | github.com/montanaflynn/stats v0.7.1 h1:etflOAAHORrCC44V+aR6Ftzort912ZU+YLiSTuV8eaE= | ||||||
| @@ -20,13 +20,13 @@ github.com/xdg-go/stringprep v1.0.4/go.mod h1:mPGuuIYwz7CmR2bT9j4GbQqutWS1zV24gi | |||||||
| github.com/youmark/pkcs8 v0.0.0-20201027041543-1326539a0a0a h1:fZHgsYlfvtyqToslyjUt3VOPF4J7aK/3MPcK7xp3PDk= | github.com/youmark/pkcs8 v0.0.0-20201027041543-1326539a0a0a h1:fZHgsYlfvtyqToslyjUt3VOPF4J7aK/3MPcK7xp3PDk= | ||||||
| github.com/youmark/pkcs8 v0.0.0-20201027041543-1326539a0a0a/go.mod h1:ul22v+Nro/R083muKhosV54bj5niojjWZvU8xrevuH4= | github.com/youmark/pkcs8 v0.0.0-20201027041543-1326539a0a0a/go.mod h1:ul22v+Nro/R083muKhosV54bj5niojjWZvU8xrevuH4= | ||||||
| github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= | github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= | ||||||
| go.mongodb.org/mongo-driver v1.15.0 h1:rJCKC8eEliewXjZGf0ddURtl7tTVy1TK3bfl0gkUSLc= | go.mongodb.org/mongo-driver v1.16.1 h1:rIVLL3q0IHM39dvE+z2ulZLp9ENZKThVfuvN/IiN4l8= | ||||||
| go.mongodb.org/mongo-driver v1.15.0/go.mod h1:Vzb0Mk/pa7e6cWw85R4F/endUC3u0U9jGcNU603k65c= | go.mongodb.org/mongo-driver v1.16.1/go.mod h1:oB6AhJQvFQL4LEHyXi6aJzQJtBiTQHiAd83l0GdFaiw= | ||||||
| golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= | golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= | ||||||
| golang.org/x/crypto v0.0.0-20200302210943-78000ba7a073/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= | golang.org/x/crypto v0.0.0-20200302210943-78000ba7a073/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= | ||||||
| golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= | golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= | ||||||
| golang.org/x/crypto v0.17.0 h1:r8bRNjWL3GshPW3gkd+RpvzWrZAwPS49OmTGZ/uhM4k= | golang.org/x/crypto v0.22.0 h1:g1v0xeRhjcugydODzvb3mEM9SQ0HGp9s/nh3COQ/C30= | ||||||
| golang.org/x/crypto v0.17.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4= | golang.org/x/crypto v0.22.0/go.mod h1:vr6Su+7cTlO45qkww3VDJlzDn0ctJvRgYbC2NvXHt+M= | ||||||
| golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= | golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= | ||||||
| golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= | 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-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= | ||||||
| @@ -34,8 +34,8 @@ golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v | |||||||
| golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= | golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= | ||||||
| golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= | golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= | ||||||
| golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= | golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= | ||||||
| golang.org/x/sync v0.3.0 h1:ftCYgMx6zT/asHUrPw8BLLscYtGznsLAnjq5RH9P66E= | golang.org/x/sync v0.7.0 h1:YsImfSBoP9QPYL0xyKJPq0gcaJdG3rInoqxTWbfQu9M= | ||||||
| golang.org/x/sync v0.3.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y= | golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= | ||||||
| golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= | 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-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= | ||||||
| golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= | golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= | ||||||
| @@ -54,7 +54,6 @@ golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGm | |||||||
| golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= | golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= | ||||||
| golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= | golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= | ||||||
| golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= | golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= | ||||||
| golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4= |  | ||||||
| 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.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= | gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= | ||||||
|   | |||||||
| @@ -12,7 +12,7 @@ title: Nats | |||||||
|  |  | ||||||
| A NATS Key/Value storage driver. | A NATS Key/Value storage driver. | ||||||
|  |  | ||||||
| **Note: Requires Go 1.20 and above** | ## Note: Requires Go 1.20 and above | ||||||
|  |  | ||||||
| ### Table of Contents | ### Table of Contents | ||||||
|  |  | ||||||
| @@ -57,7 +57,7 @@ Import the storage package. | |||||||
| import "github.com/gofiber/storage/nats" | import "github.com/gofiber/storage/nats" | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| You can use the following possibilities to create a storage: | You can use the following options to create a storage driver: | ||||||
|  |  | ||||||
| ```go | ```go | ||||||
| // Initialize default config | // Initialize default config | ||||||
| @@ -92,10 +92,6 @@ type Config struct { | |||||||
|     Context context.Context |     Context context.Context | ||||||
|     // Nats key value config |     // Nats key value config | ||||||
|     KeyValueConfig jetstream.KeyValueConfig |     KeyValueConfig jetstream.KeyValueConfig | ||||||
|  // Logger. Using Fiber AllLogger interface for adapting the various log libraries. |  | ||||||
|  Logger log.AllLogger |  | ||||||
|  // Use the Logger for nats events, default: false |  | ||||||
|  Verbose bool |  | ||||||
|     // Wait for connection to be established, default: 100ms |     // Wait for connection to be established, default: 100ms | ||||||
|     WaitForConnection time.Duration |     WaitForConnection time.Duration | ||||||
| } | } | ||||||
|   | |||||||
| @@ -4,7 +4,6 @@ import ( | |||||||
| 	"context" | 	"context" | ||||||
| 	"time" | 	"time" | ||||||
|  |  | ||||||
| 	"github.com/gofiber/fiber/v2/log" |  | ||||||
| 	"github.com/nats-io/nats.go" | 	"github.com/nats-io/nats.go" | ||||||
| 	"github.com/nats-io/nats.go/jetstream" | 	"github.com/nats-io/nats.go/jetstream" | ||||||
| ) | ) | ||||||
| @@ -21,11 +20,7 @@ type Config struct { | |||||||
| 	Context context.Context | 	Context context.Context | ||||||
| 	// Nats key value config | 	// Nats key value config | ||||||
| 	KeyValueConfig jetstream.KeyValueConfig | 	KeyValueConfig jetstream.KeyValueConfig | ||||||
| 	// Logger. Using Fiber AllLogger interface for adapting the various log libraries. | 	// Wait for connection to be established, default: 250ms | ||||||
| 	Logger log.AllLogger |  | ||||||
| 	// Use the Logger for nats events, default: false |  | ||||||
| 	Verbose bool |  | ||||||
| 	// Wait for connection to be established, default: 100ms |  | ||||||
| 	WaitForConnection time.Duration | 	WaitForConnection time.Duration | ||||||
| } | } | ||||||
|  |  | ||||||
| @@ -37,7 +32,7 @@ var ConfigDefault = Config{ | |||||||
| 	KeyValueConfig: jetstream.KeyValueConfig{ | 	KeyValueConfig: jetstream.KeyValueConfig{ | ||||||
| 		Bucket: "fiber_storage", | 		Bucket: "fiber_storage", | ||||||
| 	}, | 	}, | ||||||
| 	WaitForConnection: 100 * time.Millisecond, | 	WaitForConnection: 250 * time.Millisecond, | ||||||
| } | } | ||||||
|  |  | ||||||
| // Helper function to set default values | // Helper function to set default values | ||||||
| @@ -54,22 +49,19 @@ func configDefault(config ...Config) Config { | |||||||
| 	if cfg.URLs == "" { | 	if cfg.URLs == "" { | ||||||
| 		cfg.URLs = ConfigDefault.URLs | 		cfg.URLs = ConfigDefault.URLs | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	if cfg.Context == nil { | 	if cfg.Context == nil { | ||||||
| 		cfg.Context = ConfigDefault.Context | 		cfg.Context = ConfigDefault.Context | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	if len(cfg.KeyValueConfig.Bucket) == 0 { | 	if len(cfg.KeyValueConfig.Bucket) == 0 { | ||||||
| 		cfg.KeyValueConfig.Bucket = ConfigDefault.KeyValueConfig.Bucket | 		cfg.KeyValueConfig.Bucket = ConfigDefault.KeyValueConfig.Bucket | ||||||
| 	} | 	} | ||||||
| 	if cfg.Verbose { |  | ||||||
| 		if cfg.Logger == nil { |  | ||||||
| 			cfg.Logger = log.DefaultLogger() |  | ||||||
| 		} |  | ||||||
| 	} else { |  | ||||||
| 		cfg.Logger = nil |  | ||||||
| 	} |  | ||||||
| 	if cfg.ClientName == "" { | 	if cfg.ClientName == "" { | ||||||
| 		cfg.ClientName = ConfigDefault.ClientName | 		cfg.ClientName = ConfigDefault.ClientName | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	if cfg.WaitForConnection == 0 { | 	if cfg.WaitForConnection == 0 { | ||||||
| 		cfg.WaitForConnection = ConfigDefault.WaitForConnection | 		cfg.WaitForConnection = ConfigDefault.WaitForConnection | ||||||
| 	} | 	} | ||||||
|   | |||||||
| @@ -3,8 +3,7 @@ module github.com/gofiber/storage/nats | |||||||
| go 1.20 | go 1.20 | ||||||
|  |  | ||||||
| require ( | require ( | ||||||
| 	github.com/gofiber/fiber/v2 v2.52.4 | 	github.com/nats-io/nats.go v1.37.0 | ||||||
| 	github.com/nats-io/nats.go v1.35.0 |  | ||||||
| 	github.com/stretchr/testify v1.9.0 | 	github.com/stretchr/testify v1.9.0 | ||||||
| ) | ) | ||||||
|  |  | ||||||
| @@ -14,7 +13,6 @@ require ( | |||||||
| 	github.com/nats-io/nkeys v0.4.7 // indirect | 	github.com/nats-io/nkeys v0.4.7 // indirect | ||||||
| 	github.com/nats-io/nuid v1.0.1 // indirect | 	github.com/nats-io/nuid v1.0.1 // indirect | ||||||
| 	github.com/pmezard/go-difflib v1.0.0 // indirect | 	github.com/pmezard/go-difflib v1.0.0 // indirect | ||||||
| 	github.com/valyala/bytebufferpool v1.0.0 // indirect |  | ||||||
| 	golang.org/x/crypto v0.18.0 // indirect | 	golang.org/x/crypto v0.18.0 // indirect | ||||||
| 	golang.org/x/sys v0.16.0 // indirect | 	golang.org/x/sys v0.16.0 // indirect | ||||||
| 	golang.org/x/text v0.14.0 // indirect | 	golang.org/x/text v0.14.0 // indirect | ||||||
|   | |||||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user