You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit f305599
Browse filesBrowse the repository at this point in the historyBrowse files
docs(naming): CHANGELOG upgrade-impact notes; README per-port table covers every refusal test file
CHANGELOG: spell out, for an already-plural entity name, exactly what
changes on upgrade (REST path, generated hook/query/finder/list names,
DbSet/collection names — old doubled URLs 404, hand-written code importing
the old symbol fails to compile/import after regen), what does NOT change
(default physical table/column names, frozen on purpose), that there is no
per-entity override for a route or generated name (TS `overrides` renames
only the Drizzle variable), and that a same-scope Singular/Plural entity
pair is now a generation error rather than a silent collision.
README: the per-port table only named the FIRST test file touched for
C#/Java/Python, missing the dedicated collision-refusal test files/theories
each port ended up with (CSharpNamingTests.cs's own theory, Java's
RouteNamingTest additions, Python's separate test_collection_name_collision.py).
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01M1mRRB1K2WdYy82kntMQdx
| C# |`server/csharp/MetaObjects.Codegen.Tests/CSharpNamingTests.cs` (pluralizers + refusal — `CSharpNaming.AssertNoCollectionNameCollisions`, wired into `CodegenRunner.Run`); `server/csharp/MetaObjects.Codegen.Tests/DbContextForeignKeyConfigTests.cs` (the historical Address/Addresses fixture, now an expected-error test at both the unit and `CodegenRunner.Run` integration level) |
97
+
| Java / Kotlin |`server/java/codegen-base/src/test/java/com/metaobjects/generator/util/RouteNamingTest.java` (pluralizers + refusal — `RouteNaming.assertNoCollectionNameCollisions`, wired into `MetaDataGeneratorMojo#executeGenerators`; Kotlin inherits both — it runs through the same Maven goal) |
98
+
| Python |`server/python/tests/codegen/test_route_path_naming.py` (pluralizers); `server/python/tests/codegen/test_collection_name_collision.py` (refusal — `assert_no_collection_name_collisions`, wired into `run_gen` in `runner.py`)|
99
99
100
100
No HTTP server, no database — this corpus is intentionally a pure function
101
101
check, unlike `api-contract-conformance` (which is the right place for the
0 commit comments