Skip to content

Conversation

@hash-worker
Copy link
Contributor

@hash-worker hash-worker bot commented Nov 1, 2025

This PR contains the following updates:

Package Type Update Change
smol_str workspace.dependencies patch =0.3.2 -> =0.3.4

Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


Release Notes

rust-analyzer/smol_str (smol_str)

v0.3.4

Compare Source

  • Added rust-version field to Cargo.toml

v0.3.3

Compare Source

  • Optimise StrExt::to_ascii_lowercase_smolstr, StrExt::to_ascii_uppercase_smolstr
    ~2x speedup inline, ~4-22x for heap.
  • Optimise StrExt::to_lowercase_smolstr, StrExt::to_uppercase_smolstr ~2x speedup inline, ~5-50x for heap.
  • Optimise StrExt::replace_smolstr, StrExt::replacen_smolstr for single ascii replace,
    ~3x speedup inline & heap.

Configuration

📅 Schedule: Branch creation - "before 4am every weekday,every weekend" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

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 has been generated by Renovate Bot.

@hash-worker hash-worker bot enabled auto-merge November 1, 2025 12:14
@github-actions github-actions bot added the area/deps Relates to third-party dependencies (area) label Nov 1, 2025
@codecov
Copy link

codecov bot commented Nov 1, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 55.66%. Comparing base (de3ee86) to head (3cc1f03).
⚠️ Report is 10 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #7975   +/-   ##
=======================================
  Coverage   55.66%   55.66%           
=======================================
  Files        1112     1113    +1     
  Lines      101195   101194    -1     
  Branches     4690     4691    +1     
=======================================
  Hits        56329    56329           
+ Misses      44205    44204    -1     
  Partials      661      661           
Flag Coverage Δ
apps.hash-ai-worker-ts 1.32% <ø> (ø)
apps.hash-api 0.00% <ø> (ø)
blockprotocol.type-system 40.84% <ø> (ø)
local.harpc-client 51.24% <ø> (ø)
local.hash-backend-utils 4.08% <ø> (+<0.01%) ⬆️
local.hash-graph-sdk 10.88% <ø> (ø)
local.hash-isomorphic-utils 0.00% <ø> (ø)
rust.antsi 0.00% <ø> (ø)
rust.error-stack 90.85% <ø> (ø)
rust.harpc-codec 84.22% <ø> (ø)
rust.harpc-net 96.08% <ø> (ø)
rust.harpc-tower 66.80% <ø> (ø)
rust.harpc-types 0.00% <ø> (ø)
rust.harpc-wire-protocol 92.23% <ø> (ø)
rust.hash-codec 71.25% <ø> (ø)
rust.hash-graph-api 2.89% <ø> (ø)
rust.hash-graph-authorization 62.50% <ø> (ø)
rust.hash-graph-postgres-store 20.38% <ø> (ø)
rust.hash-graph-store 30.70% <ø> (ø)
rust.hash-graph-temporal-versioning 47.68% <ø> (ø)
rust.hash-graph-types 0.00% <ø> (ø)
rust.hash-graph-validation 83.29% <ø> (ø)
rust.hashql-ast 87.17% <ø> (ø)
rust.hashql-compiletest 53.03% <ø> (ø)
rust.hashql-core 81.27% <ø> (ø)
rust.hashql-diagnostics 72.28% <ø> (ø)
rust.hashql-eval 68.56% <ø> (ø)
rust.hashql-hir 90.29% <ø> (ø)
rust.hashql-syntax-jexpr 93.94% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@graphite-app graphite-app bot requested a review from a team November 1, 2025 12:39
@hash-worker hash-worker bot added this pull request to the merge queue Nov 1, 2025
@graphite-app
Copy link
Contributor

graphite-app bot commented Nov 1, 2025

Graphite Automations

"Request Rust reviewers once CI passes" took an action on this PR • (11/01/25)

1 reviewer was added to this PR based on Tim Diekmann's automation.

Merged via the queue into main with commit 3e417b7 Nov 1, 2025
162 checks passed
@hash-worker hash-worker bot deleted the deps/rs/smol_str-0.x branch November 1, 2025 13:02
@github-actions
Copy link
Contributor

github-actions bot commented Nov 1, 2025

Benchmark results

@rust/hash-graph-benches – Integrations

policy_resolution_large

Function Value Mean Flame graphs
resolve_policies_for_actor user: empty, selectivity: high, policies: 2002 $$28.0 \mathrm{ms} \pm 132 \mathrm{μs}\left({\color{gray}-0.246 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: empty, selectivity: low, policies: 1 $$3.25 \mathrm{ms} \pm 15.0 \mathrm{μs}\left({\color{gray}2.23 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: empty, selectivity: medium, policies: 1001 $$12.6 \mathrm{ms} \pm 80.0 \mathrm{μs}\left({\color{gray}-0.748 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: high, policies: 3314 $$42.5 \mathrm{ms} \pm 333 \mathrm{μs}\left({\color{gray}-0.856 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: low, policies: 1 $$14.5 \mathrm{ms} \pm 173 \mathrm{μs}\left({\color{red}5.20 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: medium, policies: 1526 $$24.6 \mathrm{ms} \pm 147 \mathrm{μs}\left({\color{gray}1.42 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: high, policies: 2078 $$27.8 \mathrm{ms} \pm 142 \mathrm{μs}\left({\color{lightgreen}-39.340 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: low, policies: 1 $$3.65 \mathrm{ms} \pm 17.8 \mathrm{μs}\left({\color{lightgreen}-81.664 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: medium, policies: 1033 $$14.5 \mathrm{ms} \pm 94.1 \mathrm{μs}\left({\color{lightgreen}-52.225 \mathrm{\%}}\right) $$ Flame Graph

policy_resolution_medium

Function Value Mean Flame graphs
resolve_policies_for_actor user: empty, selectivity: high, policies: 102 $$3.70 \mathrm{ms} \pm 20.1 \mathrm{μs}\left({\color{gray}-1.160 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: empty, selectivity: low, policies: 1 $$2.83 \mathrm{ms} \pm 10.7 \mathrm{μs}\left({\color{gray}-0.030 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: empty, selectivity: medium, policies: 51 $$3.23 \mathrm{ms} \pm 17.5 \mathrm{μs}\left({\color{gray}0.148 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: high, policies: 269 $$5.09 \mathrm{ms} \pm 24.8 \mathrm{μs}\left({\color{gray}0.590 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: low, policies: 1 $$3.42 \mathrm{ms} \pm 17.3 \mathrm{μs}\left({\color{gray}0.607 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: medium, policies: 107 $$4.01 \mathrm{ms} \pm 23.6 \mathrm{μs}\left({\color{gray}0.690 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: high, policies: 133 $$4.34 \mathrm{ms} \pm 21.1 \mathrm{μs}\left({\color{gray}-0.077 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: low, policies: 1 $$3.33 \mathrm{ms} \pm 14.5 \mathrm{μs}\left({\color{gray}-0.380 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: medium, policies: 63 $$3.95 \mathrm{ms} \pm 19.9 \mathrm{μs}\left({\color{gray}2.16 \mathrm{\%}}\right) $$ Flame Graph

policy_resolution_none

Function Value Mean Flame graphs
resolve_policies_for_actor user: empty, selectivity: high, policies: 2 $$2.49 \mathrm{ms} \pm 10.9 \mathrm{μs}\left({\color{gray}3.78 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: empty, selectivity: low, policies: 1 $$2.46 \mathrm{ms} \pm 10.9 \mathrm{μs}\left({\color{gray}4.90 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: empty, selectivity: medium, policies: 1 $$2.59 \mathrm{ms} \pm 12.0 \mathrm{μs}\left({\color{red}5.79 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: high, policies: 8 $$2.75 \mathrm{ms} \pm 13.5 \mathrm{μs}\left({\color{gray}1.97 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: low, policies: 1 $$2.61 \mathrm{ms} \pm 9.78 \mathrm{μs}\left({\color{gray}3.52 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: medium, policies: 3 $$2.87 \mathrm{ms} \pm 15.2 \mathrm{μs}\left({\color{gray}4.35 \mathrm{\%}}\right) $$ Flame Graph

policy_resolution_small

Function Value Mean Flame graphs
resolve_policies_for_actor user: empty, selectivity: high, policies: 52 $$2.88 \mathrm{ms} \pm 9.90 \mathrm{μs}\left({\color{gray}4.11 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: empty, selectivity: low, policies: 1 $$2.55 \mathrm{ms} \pm 10.3 \mathrm{μs}\left({\color{red}6.59 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: empty, selectivity: medium, policies: 25 $$2.75 \mathrm{ms} \pm 12.1 \mathrm{μs}\left({\color{red}7.62 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: high, policies: 94 $$3.24 \mathrm{ms} \pm 16.0 \mathrm{μs}\left({\color{gray}4.45 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: low, policies: 1 $$2.79 \mathrm{ms} \pm 13.6 \mathrm{μs}\left({\color{red}6.66 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: medium, policies: 26 $$3.03 \mathrm{ms} \pm 15.1 \mathrm{μs}\left({\color{red}6.59 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: high, policies: 66 $$3.17 \mathrm{ms} \pm 14.6 \mathrm{μs}\left({\color{red}5.23 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: low, policies: 1 $$2.76 \mathrm{ms} \pm 11.6 \mathrm{μs}\left({\color{red}6.62 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: medium, policies: 29 $$3.02 \mathrm{ms} \pm 12.8 \mathrm{μs}\left({\color{red}6.40 \mathrm{\%}}\right) $$ Flame Graph

read_scaling_complete

Function Value Mean Flame graphs
entity_by_id;one_depth 1 entities $$38.4 \mathrm{ms} \pm 167 \mathrm{μs}\left({\color{gray}-0.892 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;one_depth 10 entities $$85.9 \mathrm{ms} \pm 489 \mathrm{μs}\left({\color{gray}1.88 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;one_depth 25 entities $$42.6 \mathrm{ms} \pm 187 \mathrm{μs}\left({\color{gray}1.13 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;one_depth 5 entities $$45.4 \mathrm{ms} \pm 194 \mathrm{μs}\left({\color{gray}1.42 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;one_depth 50 entities $$54.1 \mathrm{ms} \pm 278 \mathrm{μs}\left({\color{gray}3.38 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;two_depth 1 entities $$40.0 \mathrm{ms} \pm 183 \mathrm{μs}\left({\color{gray}1.82 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;two_depth 10 entities $$500 \mathrm{ms} \pm 1.00 \mathrm{ms}\left({\color{gray}0.730 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;two_depth 25 entities $$93.4 \mathrm{ms} \pm 403 \mathrm{μs}\left({\color{gray}-2.844 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;two_depth 5 entities $$82.9 \mathrm{ms} \pm 340 \mathrm{μs}\left({\color{gray}0.175 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;two_depth 50 entities $$288 \mathrm{ms} \pm 628 \mathrm{μs}\left({\color{lightgreen}-10.090 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;zero_depth 1 entities $$14.6 \mathrm{ms} \pm 72.5 \mathrm{μs}\left({\color{gray}-0.275 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;zero_depth 10 entities $$15.1 \mathrm{ms} \pm 73.4 \mathrm{μs}\left({\color{gray}2.17 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;zero_depth 25 entities $$15.3 \mathrm{ms} \pm 82.3 \mathrm{μs}\left({\color{gray}2.11 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;zero_depth 5 entities $$15.0 \mathrm{ms} \pm 61.3 \mathrm{μs}\left({\color{gray}1.37 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;zero_depth 50 entities $$17.9 \mathrm{ms} \pm 95.0 \mathrm{μs}\left({\color{gray}1.34 \mathrm{\%}}\right) $$ Flame Graph

read_scaling_linkless

Function Value Mean Flame graphs
entity_by_id 1 entities $$14.7 \mathrm{ms} \pm 65.7 \mathrm{μs}\left({\color{gray}-1.141 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id 10 entities $$14.7 \mathrm{ms} \pm 57.3 \mathrm{μs}\left({\color{gray}1.66 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id 100 entities $$14.7 \mathrm{ms} \pm 51.6 \mathrm{μs}\left({\color{gray}1.01 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id 1000 entities $$15.5 \mathrm{ms} \pm 69.9 \mathrm{μs}\left({\color{gray}1.63 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id 10000 entities $$22.5 \mathrm{ms} \pm 132 \mathrm{μs}\left({\color{gray}0.374 \mathrm{\%}}\right) $$ Flame Graph

representative_read_entity

Function Value Mean Flame graphs
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/block/v/1 $$29.3 \mathrm{ms} \pm 268 \mathrm{μs}\left({\color{lightgreen}-5.065 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/book/v/1 $$31.2 \mathrm{ms} \pm 307 \mathrm{μs}\left({\color{red}7.68 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/building/v/1 $$29.2 \mathrm{ms} \pm 240 \mathrm{μs}\left({\color{gray}-4.666 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/organization/v/1 $$30.7 \mathrm{ms} \pm 260 \mathrm{μs}\left({\color{lightgreen}-5.454 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/page/v/2 $$29.8 \mathrm{ms} \pm 275 \mathrm{μs}\left({\color{gray}0.257 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/person/v/1 $$30.2 \mathrm{ms} \pm 359 \mathrm{μs}\left({\color{gray}-2.820 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/playlist/v/1 $$28.9 \mathrm{ms} \pm 262 \mathrm{μs}\left({\color{gray}-4.248 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/song/v/1 $$30.1 \mathrm{ms} \pm 308 \mathrm{μs}\left({\color{gray}-0.884 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/uk-address/v/1 $$29.5 \mathrm{ms} \pm 270 \mathrm{μs}\left({\color{gray}-2.022 \mathrm{\%}}\right) $$ Flame Graph

representative_read_entity_type

Function Value Mean Flame graphs
get_entity_type_by_id Account ID: bf5a9ef5-dc3b-43cf-a291-6210c0321eba $$9.37 \mathrm{ms} \pm 51.5 \mathrm{μs}\left({\color{red}5.16 \mathrm{\%}}\right) $$ Flame Graph

representative_read_multiple_entities

Function Value Mean Flame graphs
entity_by_property traversal_paths=0 0 $$56.1 \mathrm{ms} \pm 247 \mathrm{μs}\left({\color{gray}-2.446 \mathrm{\%}}\right) $$
entity_by_property traversal_paths=255 1,resolve_depths=inherit:1;values:255;properties:255;links:127;link_dests:126;type:true $$108 \mathrm{ms} \pm 373 \mathrm{μs}\left({\color{gray}-0.328 \mathrm{\%}}\right) $$
entity_by_property traversal_paths=2 1,resolve_depths=inherit:0;values:0;properties:0;links:0;link_dests:0;type:false $$62.7 \mathrm{ms} \pm 324 \mathrm{μs}\left({\color{gray}-2.753 \mathrm{\%}}\right) $$
entity_by_property traversal_paths=2 1,resolve_depths=inherit:0;values:0;properties:0;links:1;link_dests:0;type:true $$74.3 \mathrm{ms} \pm 465 \mathrm{μs}\left({\color{gray}1.32 \mathrm{\%}}\right) $$
entity_by_property traversal_paths=2 1,resolve_depths=inherit:0;values:0;properties:2;links:1;link_dests:0;type:true $$80.6 \mathrm{ms} \pm 343 \mathrm{μs}\left({\color{gray}0.927 \mathrm{\%}}\right) $$
entity_by_property traversal_paths=2 1,resolve_depths=inherit:0;values:2;properties:2;links:1;link_dests:0;type:true $$88.9 \mathrm{ms} \pm 436 \mathrm{μs}\left({\color{gray}2.45 \mathrm{\%}}\right) $$
link_by_source_by_property traversal_paths=0 0 $$51.2 \mathrm{ms} \pm 338 \mathrm{μs}\left({\color{gray}-0.069 \mathrm{\%}}\right) $$
link_by_source_by_property traversal_paths=255 1,resolve_depths=inherit:1;values:255;properties:255;links:127;link_dests:126;type:true $$78.8 \mathrm{ms} \pm 328 \mathrm{μs}\left({\color{gray}-1.213 \mathrm{\%}}\right) $$
link_by_source_by_property traversal_paths=2 1,resolve_depths=inherit:0;values:0;properties:0;links:0;link_dests:0;type:false $$57.7 \mathrm{ms} \pm 331 \mathrm{μs}\left({\color{gray}-0.834 \mathrm{\%}}\right) $$
link_by_source_by_property traversal_paths=2 1,resolve_depths=inherit:0;values:0;properties:0;links:1;link_dests:0;type:true $$66.1 \mathrm{ms} \pm 367 \mathrm{μs}\left({\color{gray}-1.060 \mathrm{\%}}\right) $$
link_by_source_by_property traversal_paths=2 1,resolve_depths=inherit:0;values:0;properties:2;links:1;link_dests:0;type:true $$68.1 \mathrm{ms} \pm 290 \mathrm{μs}\left({\color{gray}-1.310 \mathrm{\%}}\right) $$
link_by_source_by_property traversal_paths=2 1,resolve_depths=inherit:0;values:2;properties:2;links:1;link_dests:0;type:true $$67.7 \mathrm{ms} \pm 295 \mathrm{μs}\left({\color{gray}-2.142 \mathrm{\%}}\right) $$

scenarios

Function Value Mean Flame graphs
full_test query-limited $$137 \mathrm{ms} \pm 464 \mathrm{μs}\left({\color{gray}0.663 \mathrm{\%}}\right) $$ Flame Graph
full_test query-unlimited $$131 \mathrm{ms} \pm 490 \mathrm{μs}\left({\color{gray}-3.965 \mathrm{\%}}\right) $$ Flame Graph
linked_queries query-limited $$41.8 \mathrm{ms} \pm 200 \mathrm{μs}\left({\color{lightgreen}-59.355 \mathrm{\%}}\right) $$ Flame Graph
linked_queries query-unlimited $$580 \mathrm{ms} \pm 905 \mathrm{μs}\left({\color{lightgreen}-5.359 \mathrm{\%}}\right) $$ Flame Graph

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/deps Relates to third-party dependencies (area)

Development

Successfully merging this pull request may close these issues.

2 participants