Skip to content

Rename databind-metaschema module to databind-modules #588

@david-waltermire

Description

@david-waltermire

Summary

The databind-metaschema module should be renamed to databind-modules for better clarity and consistency.

Rationale

The current name databind-metaschema is confusing because:

  1. It contains Metaschema binding modules but the name implies it's a metaschema for databind
  2. databind-modules better describes the purpose - it holds the module bindings used by the databind layer

Scope

  • Rename the Maven module directory from databind-metaschema to databind-modules
  • Update artifactId in pom.xml to databind-modules
  • Update all parent POM references
  • Update CLAUDE.md and other documentation
  • Update any import statements or dependency declarations
  • Publish a stub artifact with Maven relocation metadata

Deprecation Strategy: Maven Relocation

Use Maven relocation to automatically redirect users of the old artifact to the new one.

Create a final release of databind-metaschema that contains only relocation metadata in its POM:

<project>
  <groupId>dev.metaschema.java</groupId>
  <artifactId>databind-metaschema</artifactId>
  <version>${relocated.version}</version>
  <distributionManagement>
    <relocation>
      <groupId>dev.metaschema.java</groupId>
      <artifactId>databind-modules</artifactId>
      <version>${project.version}</version>
      <message>This artifact has been renamed to databind-modules</message>
    </relocation>
  </distributionManagement>
</project>

When users resolve the old artifact, Maven will:

  1. Display a warning message about the relocation
  2. Automatically resolve the new databind-modules artifact instead

Notes

This is a breaking change for downstream projects that depend on the databind-metaschema artifact. The Maven relocation mechanism ensures a smooth transition without manual intervention from dependency users.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    Status

    Done

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions