Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(deps): update rust crate base64 to 0.22.0 #482

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Mar 2, 2024

This PR contains the following updates:

Package Type Update Change
base64 workspace.dependencies minor 0.21.7 -> 0.22.0

Release Notes

marshallpierce/rust-base64 (base64)

v0.22.1

Compare Source

  • Correct the symbols used for the predefined alphabet::BIN_HEX.

v0.22.0

Compare Source

  • DecodeSliceError::OutputSliceTooSmall is now conservative rather than precise. That is, the error will only occur if the decoded output cannot fit, meaning that Engine::decode_slice can now be used with exactly-sized output slices. As part of this, Engine::internal_decode now returns DecodeSliceError instead of DecodeError, but that is not expected to affect any external callers.
  • DecodeError::InvalidLength now refers specifically to the number of valid symbols being invalid (i.e. len % 4 == 1), rather than just the number of input bytes. This avoids confusing scenarios when based on interpretation you could make a case for either InvalidLength or InvalidByte being appropriate.
  • Decoding is somewhat faster (5-10%)

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

Copy link
Contributor Author

renovate bot commented Mar 2, 2024

⚠ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: Cargo.lock
Command failed: cargo update --config net.git-fetch-with-cli=true --manifest-path Cargo.toml --package base64@0.21.7 --precise 0.22.1
    Updating crates.io index
error: failed to select a version for the requirement `base64 = "^0.21"`
candidate versions found which didn't match: 0.22.1
location searched: crates.io index
required by package `reqwest v0.11.27`
    ... which satisfies dependency `reqwest = "^0.11.27"` (locked to 0.11.27) of package `conductor_common v0.0.0 (/tmp/renovate/repos/github/the-guild-org/conductor/libs/common)`
    ... which satisfies path dependency `conductor_common` (locked to 0.0.0) of package `conductor-cf-worker v0.1.0 (/tmp/renovate/repos/github/the-guild-org/conductor/bin/cloudflare_worker)`
perhaps a crate was updated and forgotten to be re-vendored?

Copy link

github-actions bot commented Mar 2, 2024

🚨 Rust Panic Audit: 102 Potential Panic Points Detected 🚨

Crate: federation_query_planner

📊 Total Usages: 53

  • 🚨 panic usages: 3
  • 🔎 expect usages: 8
  • 🔢 array_index usages: 10
  • 🎁 unwrap usages: 32

Crate: common

📊 Total Usages: 11

  • 🔢 array_index usages: 1
  • 🎁 unwrap usages: 10

Crate: telemetry

📊 Total Usages: 9

  • 🔢 array_index usages: 5
  • 🎁 unwrap usages: 4

Crate: cloudflare_worker

📊 Total Usages: 8

  • 🔎 expect usages: 2
  • 🚨 panic usages: 1
  • 🎁 unwrap usages: 5

Crate: engine

📊 Total Usages: 7

  • 🔎 expect usages: 1
  • 🎁 unwrap usages: 6

Crate: tracing

📊 Total Usages: 6

  • 🔎 expect usages: 1
  • 🎁 unwrap usages: 5

Crate: conductor

📊 Total Usages: 5

  • 🔎 expect usages: 3
  • 🚨 panic usages: 1
  • 🎁 unwrap usages: 1

Crate: config

📊 Total Usages: 3

  • 🎁 unwrap usages: 2
  • 🚨 panic usages: 1

📌 Expected Annotations

Crate: config

📊 Total Expected Usages: 9

expand details
  1. Reason: "statically defined regex pattern, we know it works ;)"
  • Code: .unwrap();
  • Location: ./libs/config/src/interpolate.rs:18
  1. Reason: "part of development docgen CLI"
  • Code: .expect("Failed to serialize json schema for config file!");
  • Location: ./libs/config/src/generate-json-schema.rs:50
  1. Reason: "part of development docgen CLI"
  • Code: .expect("Failed to write the json schema to the file system!");
  • Location: ./libs/config/src/generate-json-schema.rs:54
  1. Reason: "👇"
  • Code: let raw_contents = read_to_string(file_path)
  • Location: ./libs/config/src/lib.rs:815
  1. Reason: "👇"
  • Code: panic!("Failed to interpolate config file, please resolve the above errors");
  • Location: ./libs/config/src/lib.rs:847
  1. Reason: "👇"
  • Code: parse_config_from_json(&config_string).expect("Failed to parse JSON config file")
  • Location: ./libs/config/src/lib.rs:854
  1. Reason: "👇"
  • Code: parse_config_from_yaml(&config_string).expect("Failed to parse YAML config file")
  • Location: ./libs/config/src/lib.rs:858
  1. Reason: "👇"
  • Code: _ => panic!("Unsupported config file extension"),
  • Location: ./libs/config/src/lib.rs:875
  1. Reason: "👇"
  • Code: None => panic!("Config file has no extension"),
  • Location: ./libs/config/src/lib.rs:878

Crate: common

📊 Total Expected Usages: 1

expand details
  1. Reason: "we're parsing a statically defined constant, we know it works ;)"
  • Code: .unwrap()
  • Location: ./libs/common/src/graphql.rs:31

Crate: conductor

📊 Total Expected Usages: 2

expand details
  1. Reason: "we need to exit the process, if the logger can't be correctly set."
  • Code: let _guard = tracing::subscriber::set_default(subscriber);
  • Location: ./bin/conductor/src/lib.rs:37
  1. Reason: "we need to exit the process, if the provided configuration file is incorrect."
  • Code: panic!("Failed to initialize gateway: {:?}", e);
  • Location: ./bin/conductor/src/lib.rs:76

Crate: jwt_auth

📊 Total Expected Usages: 1

expand details
  1. Reason: "if initiating an http client fails, then we have to exit."
  • Code: let client = wasm_polyfills::create_http_client().build().unwrap();
  • Location: ./plugins/jwt_auth/src/jwks_provider.rs:49

Crate: cloudflare_worker

📊 Total Expected Usages: 4

expand details
  1. Reason: "it panics only if the header name is not valid, and we know it is."
  • Code: .unwrap()
  • Location: ./bin/cloudflare_worker/src/http_tracing.rs:20
  1. Reason: "it panics only if the URL source is not valid, and it's already validated before."
  • Code: let url = req.url().unwrap();
  • Location: ./bin/cloudflare_worker/src/http_tracing.rs:23
  1. Reason: "it only panics if we are not running in a CF context, should be safe."
  • Code: let cf_info = req.cf().unwrap();
  • Location: ./bin/cloudflare_worker/src/http_tracing.rs:27
  1. Reason: "unwraps only in special cases where "data:text" is used."
  • Code: let http_host = url.host().unwrap().to_string();
  • Location: ./bin/cloudflare_worker/src/http_tracing.rs:36

Crate: vrl

📊 Total Expected Usages: 2

expand details
  1. Reason: "if the provided VRL code in the config file can't compile, we have to exit."
  • Code: panic!("failed to compile vrl program");
  • Location: ./plugins/vrl/src/plugin.rs:129
  1. Reason: "states is a non-user provided variable"
  • Code: .expect("can't merge states when states is an empty vector!")
  • Location: ./plugins/vrl/src/plugin.rs:146

Crate: napi

📊 Total Expected Usages: 1

expand details
  1. Reason: "we need this"
  • Code: panic!("Exited process!")
  • Location: ./libs/napi/src/lib.rs:18

Crate: engine

📊 Total Expected Usages: 2

expand details
  1. Reason: "if we are unable to construct the endpoints and attach them onto the gateway's http server, we have to exit"
  • Code: Err(e) => panic!("failed to construct endpoint: {:?}", e),
  • Location: ./libs/engine/src/gateway.rs:158
  1. Reason: "we can safely index here, it's inside a test with constant defined fixtures."
  • Code: ConductorGateway::execute(request, &gw.routes[0].route_data).await
  • Location: ./libs/engine/src/gateway.rs:190

Copy link

github-actions bot commented Mar 2, 2024

🐋 This PR was built and pushed to the following Docker images:

Docker Bake metadata
{
"conductor": {
  "buildx.build.provenance": {
    "buildType": "https://mobyproject.org/buildkit@v1",
    "materials": [
      {
        "uri": "pkg:docker/debian@12.5?platform=linux%2Famd64",
        "digest": {
          "sha256": "1aadfee8d292f64b045adb830f8a58bfacc15789ae5f489a0fedcd517a862cb9"
        }
      },
      {
        "uri": "pkg:docker/rust@1.77.2?platform=linux%2Famd64",
        "digest": {
          "sha256": "83101f6985c93e1e6501b3375de188ee3d2cbb89968bcc91611591f9f447bd42"
        }
      }
    ],
    "invocation": {
      "configSource": {
        "entryPoint": "Dockerfile"
      },
      "parameters": {
        "frontend": "dockerfile.v0",
        "args": {
          "label:org.opencontainers.image.authors": "The Guild <contact@the-guild.dev>",
          "label:org.opencontainers.image.description": "Conductor is a robust GraphQL Gateway.",
          "label:org.opencontainers.image.docs": "https://the-guild.dev/graphql/gateway",
          "label:org.opencontainers.image.licenses": "MIT",
          "label:org.opencontainers.image.revision": "f679aaf96b798382d3c7b913fd7cb5c857cd151e",
          "label:org.opencontainers.image.source": "https://github.com/the-guild-org/conductor",
          "label:org.opencontainers.image.title": "Conductor",
          "label:org.opencontainers.image.url": "https://the-guild.dev/graphql/gateway",
          "label:org.opencontainers.image.vendor": "The Guild",
          "label:org.opencontainers.image.version": ""
        },
        "locals": [
          {
            "name": "context"
          },
          {
            "name": "dockerfile"
          }
        ]
      },
      "environment": {
        "platform": "linux/amd64"
      }
    }
  },
  "buildx.build.ref": "builder-a51445fa-23ce-468e-9e2b-16eed4035e30/builder-a51445fa-23ce-468e-9e2b-16eed4035e300/amigyicirftw7n0pdazx2msns",
  "containerimage.config.digest": "sha256:2e2311eda996c47c4994745a3df170515ed277c866110303915ec0898663c3d8",
  "containerimage.descriptor": {
    "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
    "digest": "sha256:a1569a3f8cb0114388feae4c80cd617de8c9a66ac466997b3b94b2e646a53456",
    "size": 902,
    "platform": {
      "architecture": "amd64",
      "os": "linux"
    }
  },
  "containerimage.digest": "sha256:a1569a3f8cb0114388feae4c80cd617de8c9a66ac466997b3b94b2e646a53456",
  "image.name": "ghcr.io/the-guild-org/conductor/conductor:f679aaf96b798382d3c7b913fd7cb5c857cd151e"
}
}

Copy link

github-actions bot commented Mar 2, 2024

✅ Benchmark Results

     data_received..................: 13 MB   221 kB/s
     data_sent......................: 22 MB   363 kB/s
     http_req_blocked...............: min=711ns    avg=2.74µs   med=1.99µs   max=1.59ms   p(95)=2.97µs   p(99)=11.18µs 
     http_req_connecting............: min=0s       avg=358ns    med=0s       max=698.34µs p(95)=0s       p(99)=0s      
     http_req_duration..............: min=313.87µs avg=406.95µs med=381.69µs max=19.33ms  p(95)=480.73µs p(99)=565.58µs
       { expected_response:true }...: min=313.87µs avg=406.95µs med=381.69µs max=19.33ms  p(95)=480.73µs p(99)=565.58µs
     ✓ { scenario:rps_1000 }........: min=313.87µs avg=406.95µs med=381.69µs max=19.33ms  p(95)=480.73µs p(99)=565.58µs
     http_req_failed................: 0.00%   ✓ 0          ✗ 60000
     ✓ { scenario:rps_1000 }........: 0.00%   ✓ 0          ✗ 60000
     http_req_receiving.............: min=9.6µs    avg=26.23µs  med=25.51µs  max=910.42µs p(95)=35.59µs  p(99)=47.48µs 
     http_req_sending...............: min=6.37µs   avg=14.84µs  med=13.66µs  max=1.8ms    p(95)=23.66µs  p(99)=32.72µs 
     http_req_tls_handshaking.......: min=0s       avg=0s       med=0s       max=0s       p(95)=0s       p(99)=0s      
     http_req_waiting...............: min=278.74µs avg=365.87µs med=340.81µs max=19.29ms  p(95)=440.66µs p(99)=518.21µs
     http_reqs......................: 60000   999.988271/s
     ✓ { scenario:rps_1000 }........: 60000   999.988271/s
     iteration_duration.............: min=387.07µs avg=492.22µs med=465.75µs max=19.55ms  p(95)=567.87µs p(99)=706.63µs
     iterations.....................: 60000   999.988271/s
     ✓ { scenario:rps_1000 }........: 60000   999.988271/s
     valid_graphql_response.........: 100.00% ✓ 60000      ✗ 0    
     ✓ { scenario:rps_1000 }........: 100.00% ✓ 60000      ✗ 0    
     valid_http_code................: 100.00% ✓ 60000      ✗ 0    
     ✓ { scenario:rps_1000 }........: 100.00% ✓ 60000      ✗ 0    
     vus............................: 1       min=0        max=2  
     vus_max........................: 200     min=200      max=200

@renovate renovate bot changed the title chore(deps): update rust crate base64 to 0.22.0 chore(deps): update rust crate base64 to 0.22.1 May 1, 2024
@renovate renovate bot changed the title chore(deps): update rust crate base64 to 0.22.1 chore(deps): update rust crate base64 to 0.22.0 May 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants