issue #2683 : Naming Scheme metadata - #7735
Merged
Merged
Conversation
Add a Naming Scheme metadata type with a pure naming engine and a TableView toolbar action to normalize Hop field names (spaces to underscores/dashes, camelCase, PascalCase, etc.). Types for database tables/columns and files/folders are reserved for follow-up surfaces.
…ds, and hop naming-check Add CTRL-SHIFT-N and an N indicator on name widgets (binary-compatible Text siblings), a General scheme fallback, and Get Fields auto-apply. Promote naming-scheme kinds to a plugin type so plugins such as hop-data-vault can register dv-hub / dv-satellite / dm-dimension without changing Hop's enum. Annotate transform, action, pipeline, workflow, and stock metadata names. Validate by applying the matching scheme; fail when the string would change. hop naming-check is the CI surface (text/json, --require-scheme). Pipeline and workflow Verify report the same errors.
# Conflicts: # plugins/actions/waitforsql/src/main/java/org/apache/hop/workflow/actions/waitforsql/ActionWaitForSqlDialog.java # plugins/transforms/textfile/src/main/java/org/apache/hop/pipeline/transforms/csvinput/CsvInputMeta.java # plugins/transforms/textfile/src/main/java/org/apache/hop/pipeline/transforms/fileinput/text/TextFileInputMeta.java
…, and variables Bring the first version of Naming Schemes to a usable completeness pass: path-aware file/folder apply, annotated FILENAME/FOLDER widgets, space separator and capitalize-first-word, N-indicator dialog (create a scheme when none exists), and Save As / popular file and variable surfaces.
mattcasters
marked this pull request as ready for review
September 5, 2026 12:09
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
First version of Naming Scheme metadata for issue #2683: reusable rules to normalize identifiers (Hop fields, transform/action/pipeline/workflow/metadata names, variables, database tables/columns, files, and folders).
Apply from the GUI without adding buttons to every dialog:
A General scheme is offered on every name field that does not have a type-specific scheme. File schemes rewrite only the last path segment and keep the parent and extension (
/data/Order ID.csv→/data/order_id.csv). Folder schemes rewrite the last segment. Transform/action schemes can use a space separator and capitalize the first word (Check db connections).Plugin kinds (
hop-field,hop-transform,file, …) can be extended by other plugins (for example hop-data-vault) without changing Hop.CI:
hop naming-checkand pipeline/workflow Verify report names that would change when the matching scheme is applied.How to try
Order ID→order_id. For action/transform names, try lower case + space + capitalize first word.Test plan
NamingEngineTest(path/extension, space separator, capitalize first word)NamingSchemeShortcutTest,NamingSchemeSelectorTest,NamingSchemeValidatorTestGuiElementsNamingSchemeTypeTest(FILENAME/FOLDER inference)Fixes #2683