Skip to content

docs: use colons in place of em dashes in gloss bullets - #717

Merged
lesnik512 merged 1 commit into
mainfrom
docs/no-dash-carveouts
Oct 17, 2026
Merged

lesnik512 merged 1 commit into
mainfrom
docs/no-dash-carveouts

Conversation

@lesnik512

Copy link
Copy Markdown
Member

The docs style guide kept em dashes in four places: See-also bullets, term-gloss bullets, table cells and code comments. The shared prose check drafted in modern-python/.github#134 fails on any em or en dash outside code, so modern-di can't adopt it while those exceptions stand.

This replaces the remaining 55 dashes with colons:

  • - [Link](target) — gloss becomes - [Link](target): gloss in the See-also lists on the performance, provider and troubleshooting pages.
  • - **Term** — gloss and - `file.py` — gloss in AGENTS.md get the same treatment.
  • When the gloss started on a continuation line ( — how ...), the colon moves to the end of the link line.
  • The en dash in AGENTS.md's "1–2 lines" becomes "one or two lines".

The "Em dashes" section of docs/agents/docs-style.md now says there are no dashes outside code, and AGENTS.md's pointer to it no longer mentions carve-outs. Dashes in fenced code (the migration pages and grpc.md) are left alone, as are headings, anchors and link targets.

Checked with:

  • A fence-aware scan for U+2013/U+2014 across README.md, CONTEXT.md, AGENTS.md and docs/ outside docs/agents/, with inline code stripped: 0 hits.
  • mkdocs build --strict: clean.
  • just test-docs: 218 passed, 27 skipped.

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Benchmark

Details
Benchmark suite Current: 7f21c67 Previous: 996cf18 Ratio
benchmarks/test_guard_by_type.py::test_g16_resolve_by_type 3334406.9012005804 iter/sec (stddev: 1.6731890822610256e-8) 3398971.0906722094 iter/sec (stddev: 1.1594998695345776e-8) 1.02
benchmarks/test_guard_by_type.py::test_g17_resolve_by_type_large_registry 3327674.401170966 iter/sec (stddev: 1.2860770696495418e-8) 3312988.93090924 iter/sec (stddev: 1.1487165001759097e-8) 1.00
benchmarks/test_guard_cold.py::test_g8_cold_first_resolve 16143.281105650654 iter/sec (stddev: 0.00005019689942117853) 15157.436795676023 iter/sec (stddev: 0.0000552800367174803) 0.94
benchmarks/test_guard_cold.py::test_g8b_cold_first_resolve_cached 12676.70625206963 iter/sec (stddev: 0.00012839400875550204) 12119.638347945027 iter/sec (stddev: 0.00014695476835884408) 0.96
benchmarks/test_guard_concurrency.py::test_g14_concurrent_cached_hit[1] 478.34005751656247 iter/sec (stddev: 0.00003188028560265708) 480.4117649154862 iter/sec (stddev: 0.00005657601867778982) 1.00
benchmarks/test_guard_concurrency.py::test_g14_concurrent_cached_hit[2] 457.99123487218657 iter/sec (stddev: 0.00013077284320863996) 465.5165380259087 iter/sec (stddev: 0.000043030175168246065) 1.02
benchmarks/test_guard_concurrency.py::test_g14_concurrent_cached_hit[4] 422.31740457809786 iter/sec (stddev: 0.00019769058509838919) 444.096702549534 iter/sec (stddev: 0.00004985484604278839) 1.05
benchmarks/test_guard_concurrency.py::test_g15_concurrent_first_resolve[1] 12686.903193503531 iter/sec (stddev: 0.000009899049066435217) 13369.973001569506 iter/sec (stddev: 0.000008366720880480949) 1.05
benchmarks/test_guard_concurrency.py::test_g15_concurrent_first_resolve[2] 6414.131614789361 iter/sec (stddev: 0.000022673108320708026) 6267.410016324864 iter/sec (stddev: 0.000022659937500857765) 0.98
benchmarks/test_guard_concurrency.py::test_g15_concurrent_first_resolve[4] 3289.299030366925 iter/sec (stddev: 0.000054570758275147405) 3322.707499348036 iter/sec (stddev: 0.00004048375177055468) 1.01
benchmarks/test_guard_concurrency.py::test_g15b_concurrent_first_resolve_sibling_children[1] 10213.219685127955 iter/sec (stddev: 0.000011267280334269765) 9994.712796954176 iter/sec (stddev: 0.000009678071802466218) 0.98
benchmarks/test_guard_concurrency.py::test_g15b_concurrent_first_resolve_sibling_children[2] 4122.599796630824 iter/sec (stddev: 0.00002815958937796498) 4167.936005794685 iter/sec (stddev: 0.00006157674202713174) 1.01
benchmarks/test_guard_concurrency.py::test_g15b_concurrent_first_resolve_sibling_children[4] 1969.2300582885796 iter/sec (stddev: 0.00005551557733592266) 1993.2355233848903 iter/sec (stddev: 0.000044461228970224894) 1.01
benchmarks/test_guard_concurrency.py::test_g15c_worker_pool_floor_control[1] 36492.24387782432 iter/sec (stddev: 0.00000557067922295882) 39645.974660995125 iter/sec (stddev: 0.000007233125204690835) 1.09
benchmarks/test_guard_concurrency.py::test_g15c_worker_pool_floor_control[2] 14226.80515044469 iter/sec (stddev: 0.0000142301640977439) 13691.70144831524 iter/sec (stddev: 0.000011074355202792832) 0.96
benchmarks/test_guard_concurrency.py::test_g15c_worker_pool_floor_control[4] 5716.565807399165 iter/sec (stddev: 0.00003428660406704914) 5752.9347517906735 iter/sec (stddev: 0.000030141119359696113) 1.01
benchmarks/test_guard_lifecycle.py::test_g6_build_child_container 1508107.4537118599 iter/sec (stddev: 9.274250992012504e-8) 1601065.348880601 iter/sec (stddev: 3.351404397134636e-8) 1.06
benchmarks/test_guard_lifecycle.py::test_g6b_build_child_container_auto_scope 1685683.991556147 iter/sec (stddev: 3.446069892805093e-8) 1698991.10510454 iter/sec (stddev: 1.7713780602138135e-8) 1.01
benchmarks/test_guard_lifecycle.py::test_g7_request_lifecycle_batch 3109.0694506529294 iter/sec (stddev: 0.00001075674151439705) 3154.7025979758973 iter/sec (stddev: 0.00002583232235798169) 1.01
benchmarks/test_guard_lifecycle.py::test_g7c_event_loop_floor_control 58144.10231999106 iter/sec (stddev: 0.0000018710723234150708) 58215.67659786307 iter/sec (stddev: 0.0000020595849361970636) 1.00
benchmarks/test_guard_lifecycle.py::test_g7b_request_cycle_sync 409645.54681698 iter/sec (stddev: 9.105448957161004e-8) 411538.680366211 iter/sec (stddev: 8.352210387897596e-8) 1.00
benchmarks/test_guard_lifecycle.py::test_g13_teardown_at_scale 66329.76992924025 iter/sec (stddev: 0.000001708678238888406) 65542.96247024715 iter/sec (stddev: 0.0000016247394412795976) 0.99
benchmarks/test_guard_lifecycle.py::test_g13b_teardown_at_scale_async_no_finalizers 596.8354148662207 iter/sec (stddev: 0.0007034387975168722) 592.6892893316399 iter/sec (stddev: 0.0009227163026292208) 0.99
benchmarks/test_guard_resolve.py::test_g1_transient_resolve 1659898.9818743286 iter/sec (stddev: 1.6628854815430255e-7) 2193069.024660947 iter/sec (stddev: 3.110757504734808e-8) 1.32
benchmarks/test_guard_resolve.py::test_g2_cached_resolve 3550908.127004279 iter/sec (stddev: 1.6083891854179598e-8) 3507523.86667632 iter/sec (stddev: 8.278846667384555e-9) 0.99
benchmarks/test_guard_resolve.py::test_g3_deep_chain 752223.6719033258 iter/sec (stddev: 1.5315660782444867e-7) 786886.7216373547 iter/sec (stddev: 4.928512472057435e-8) 1.05
benchmarks/test_guard_resolve.py::test_g4_wide_resolve 429652.7602246477 iter/sec (stddev: 6.720770775357902e-7) 474191.17330059607 iter/sec (stddev: 4.1593229872813204e-7) 1.10
benchmarks/test_guard_resolve.py::test_g5_cross_scope 1915812.1266549237 iter/sec (stddev: 9.483863232628565e-8) 1958485.4933757903 iter/sec (stddev: 2.7805444908867615e-8) 1.02
benchmarks/test_guard_resolve.py::test_g9_context_resolve 1377056.909908989 iter/sec (stddev: 1.6457402221986638e-7) 1423463.1784436998 iter/sec (stddev: 1.4739503375312504e-7) 1.03
benchmarks/test_guard_resolve.py::test_g12_override_active_resolve 835502.5416223381 iter/sec (stddev: 5.974050875853733e-8) 833961.9669145662 iter/sec (stddev: 4.029536057763587e-8) 1.00
benchmarks/test_guard_resolve.py::test_g18_alias_hop 3634779.7975946483 iter/sec (stddev: 9.327210379331227e-9) 3648776.1092819464 iter/sec (stddev: 1.2293149854723347e-8) 1.00
benchmarks/test_guard_validate.py::test_g10_validate_deep_chain 31101.493607804667 iter/sec (stddev: 0.00021484920536539833) 34663.69874541447 iter/sec (stddev: 0.000018809888676094653) 1.11
benchmarks/test_guard_validate.py::test_g11_validate_wide 20678.96956444341 iter/sec (stddev: 0.00002463306434591771) 20923.262532802193 iter/sec (stddev: 0.00002336397928812689) 1.01

This comment was automatically generated by workflow using github-action-benchmark.

@lesnik512
lesnik512 merged commit b7a1775 into main Oct 17, 2026
12 checks passed
@lesnik512
lesnik512 deleted the docs/no-dash-carveouts branch October 17, 2026 19:47
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.

1 participant