Skip to content

feat: add inflection-db package for database-level naming conventions#78

Merged
pyramation merged 3 commits into
mainfrom
feat/add-inflection-db
Jun 5, 2026
Merged

feat: add inflection-db package for database-level naming conventions#78
pyramation merged 3 commits into
mainfrom
feat/add-inflection-db

Conversation

@pyramation
Copy link
Copy Markdown
Contributor

Summary

Publishes inflection_db as @pgpm/inflection-db — 14 SQL functions that wrap @pgpm/inflection with 63-char identifier truncation for PostgreSQL naming conventions.

Functions: get_table_name, get_field_name, get_index_name, get_namespace_name, get_schema_name, get_check_constraint_name, get_foreign_key_field_name, get_foreign_key_index_name, get_identifier, get_identifier_name, get_primary_key_index_name, get_table_plural_name, get_table_singular_name, get_unique_index_name.

This was previously a private package inside constructive-db, causing runtime dependency issues when downstream consumers couldn't resolve the inflection_db schema. Publishing it here makes it available as a first-class pgpm module with "publishConfig": { "access": "public" }.

Dependencies: @pgpm/inflection (workspace), @pgpm/verify (workspace).

Link to Devin session: https://app.devin.ai/sessions/9d079a6032fc40e8985a55fead8c4268
Requested by: @pyramation

Publishes the inflection_db schema as @pgpm/inflection-db, providing
14 SQL functions for PostgreSQL naming conventions (get_table_name,
get_field_name, get_index_name, etc.) that wrap @pgpm/inflection
with 63-char identifier truncation.

Previously lived only inside constructive-db as a private package,
causing runtime dependency issues when downstream consumers couldn't
resolve the inflection_db schema.
@devin-ai-integration
Copy link
Copy Markdown

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR. Add '(aside)' to your comment to have me ignore it.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

⚙️ Control Options:

  • Disable automatic comment, CI, and merge conflict monitoring

get_table_name, get_field_name, and get_identifier_name each have two
overloads (text and text[]). PostgreSQL requires explicit signatures
when dropping ambiguous function names.
@pyramation pyramation merged commit e6fc43d into main Jun 5, 2026
24 checks passed
@pyramation pyramation deleted the feat/add-inflection-db branch June 5, 2026 06:03
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