object-storage-proxy 0.3.3__tar.gz → 0.3.4__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/.github/workflows/ci.yml +1 -1
  2. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/Cargo.lock +1 -1
  3. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/Cargo.toml +1 -1
  4. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/PKG-INFO +1 -1
  5. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/src/credentials/signer.rs +3 -0
  6. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/src/lib.rs +4 -2
  7. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/.cargo/config.toml +0 -0
  8. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/.gitignore +0 -0
  9. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/LICENSE +0 -0
  10. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/README.md +0 -0
  11. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/img/logo.svg +0 -0
  12. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/img/request_lifecycle.svg +0 -0
  13. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/img/request_stages.svg +0 -0
  14. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/pyproject.toml +0 -0
  15. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/requirements.txt +0 -0
  16. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/src/credentials/hmac_keystore.rs +0 -0
  17. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/src/credentials/mod.rs +0 -0
  18. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/src/credentials/models.rs +0 -0
  19. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/src/credentials/secrets_proxy.rs +0 -0
  20. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/src/object_storage_proxy.pyi +0 -0
  21. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/src/parsers/cos_map.rs +0 -0
  22. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/src/parsers/credentials.rs +0 -0
  23. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/src/parsers/keystore.rs +0 -0
  24. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/src/parsers/mod.rs +0 -0
  25. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/src/parsers/path.rs +0 -0
  26. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/src/utils/mod.rs +0 -0
  27. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/src/utils/validator.rs +0 -0
  28. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/test_integration.sh +0 -0
  29. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/test_server.py +0 -0
  30. {object_storage_proxy-0.3.3 → object_storage_proxy-0.3.4}/uv.lock +0 -0
@@ -235,7 +235,7 @@ jobs:
235
235
  release:
236
236
  name: Release
237
237
  runs-on: ubuntu-latest
238
- if: ${{ startsWith(github.ref, 'refs/tags/') || github.event_name == 'workflow_dispatch' }}
238
+ # if: ${{ startsWith(github.ref, 'refs/tags/') || github.event_name == 'workflow_dispatch' }}
239
239
  needs: [test, linux, musllinux, macos, sdist]
240
240
  permissions:
241
241
  # Use to sign the release artifacts
@@ -1701,7 +1701,7 @@ dependencies = [
1701
1701
 
1702
1702
  [[package]]
1703
1703
  name = "object-storage-proxy"
1704
- version = "0.3.3"
1704
+ version = "0.3.4"
1705
1705
  dependencies = [
1706
1706
  "async-trait",
1707
1707
  "chrono",
@@ -1,6 +1,6 @@
1
1
  [package]
2
2
  name = "object-storage-proxy"
3
- version = "0.3.3"
3
+ version = "0.3.4"
4
4
  edition = "2024"
5
5
 
6
6
  [dependencies]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: object-storage-proxy
3
- Version: 0.3.3
3
+ Version: 0.3.4
4
4
  Classifier: License :: Other/Proprietary License
5
5
  Classifier: Programming Language :: Rust
6
6
  Classifier: Programming Language :: Python :: Implementation :: CPython
@@ -103,6 +103,8 @@ impl<'a> AwsSign<'a, HashMap<String, String>> {
103
103
  "range",
104
104
  "x-amz-content-sha256",
105
105
  "x-amz-security-token",
106
+ "trailer",
107
+ "x-amz-trailer",
106
108
  ]
107
109
  };
108
110
 
@@ -358,6 +360,7 @@ pub(crate) async fn sign_request(
358
360
  // empty body → empty slice
359
361
  "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" => &[], // sha256 hash of empty string
360
362
  "UNSIGNED-PAYLOAD" => b"UNSIGNED-PAYLOAD",
363
+ "STREAMING-UNSIGNED-PAYLOAD-TRAILER" => b"STREAMING-UNSIGNED-PAYLOAD-TRAILER",
361
364
  // unreachable code
362
365
  _ => &[],
363
366
  };
@@ -269,12 +269,12 @@ impl ProxyHttp for MyProxy {
269
269
  let addr = (endpoint.clone(), port);
270
270
 
271
271
  let mut peer = Box::new(HttpPeer::new(addr, true, endpoint.clone()));
272
- peer.options.alpn = ALPN::H2;
272
+
273
+ // todo: make ths configurable
273
274
 
274
275
  peer.options.max_h2_streams = 32;
275
276
  peer.options.h2_ping_interval = Some(Duration::from_secs(30));
276
277
 
277
- // todo: make ths configurable
278
278
 
279
279
  // peer.options.idle_timeout = Some(Duration::from_secs(300));
280
280
  // peer.options.connection_timeout = Some(Duration::from_secs(30));
@@ -635,6 +635,8 @@ impl ProxyHttp for MyProxy {
635
635
  "x-amz-content-sha256",
636
636
  "x-amz-security-token",
637
637
  "range",
638
+ "trailer",
639
+ "x-amz-trailer",
638
640
  ];
639
641
 
640
642
  let to_check: Vec<String> = upstream_request