Skip to content

Fix repair metadata repo version#396

Merged
git-hyagi merged 2 commits into
pulp:mainfrom
git-hyagi:fix-repair-metadata-repo-version
Jul 7, 2026
Merged

Fix repair metadata repo version#396
git-hyagi merged 2 commits into
pulp:mainfrom
git-hyagi:fix-repair-metadata-repo-version

Conversation

@git-hyagi

@git-hyagi git-hyagi commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

fixes:
#394
#395

📜 Checklist

  • Commits are cleanly separated with meaningful messages (simple features and bug fixes should be squashed to one commit)
  • A changelog entry or entries has been added for any significant changes
  • Follows the Pulp policy on AI Usage
  • (For new features) - User documentation and test coverage has been added

See: Pull Request Walkthrough

Skip _generate_metadata in finalize_new_version during repair_metadata
using the existing _pull_through_ctx mechanism, since repair_metadata
already manages all metadata content itself. Also make the stale
metadata removal and addition defensive against duplicate content, and
use all fields in the _create_metadata_content IntegrityError handler.

Fixes: pulp#395

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Remove metadata for (group_id, artifact_id) pairs that no longer have
any MavenArtifact in the repository. Previously repair_metadata returned
early when no artifacts existed and only cleaned up version=None
metadata, leaving version-level and fully orphaned metadata behind.

Fixes: pulp#394

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@git-hyagi git-hyagi force-pushed the fix-repair-metadata-repo-version branch from 9ca0cf7 to f45ef91 Compare July 6, 2026 21:15
@git-hyagi git-hyagi merged commit ff7f82b into pulp:main Jul 7, 2026
14 checks passed
@git-hyagi git-hyagi deleted the fix-repair-metadata-repo-version branch July 7, 2026 10:43
@patchback

patchback Bot commented Jul 7, 2026

Copy link
Copy Markdown

Backport to 0.21: 💔 cherry-picking failed — conflicts found

❌ Failed to cleanly apply ff7f82b on top of patchback/backports/0.21/ff7f82bd5761e3b64f08fbcbdb654c0584b9d2c5/pr-396

Backporting merged PR #396 into main

  1. Ensure you have a local repo clone of your fork. Unless you cloned it
    from the upstream, this would be your origin remote.
  2. Make sure you have an upstream repo added as a remote too. In these
    instructions you'll refer to it by the name upstream. If you don't
    have it, here's how you can add it:
    $ git remote add upstream https://github.com/pulp/pulp_maven.git
  3. Ensure you have the latest copy of upstream and prepare a branch
    that will hold the backported code:
    $ git fetch upstream
    $ git checkout -b patchback/backports/0.21/ff7f82bd5761e3b64f08fbcbdb654c0584b9d2c5/pr-396 upstream/0.21
  4. Now, cherry-pick PR Fix repair metadata repo version #396 contents into that branch:
    $ git cherry-pick -x ff7f82bd5761e3b64f08fbcbdb654c0584b9d2c5
    If it'll yell at you with something like fatal: Commit ff7f82bd5761e3b64f08fbcbdb654c0584b9d2c5 is a merge but no -m option was given., add -m 1 as follows instead:
    $ git cherry-pick -m1 -x ff7f82bd5761e3b64f08fbcbdb654c0584b9d2c5
  5. At this point, you'll probably encounter some merge conflicts. You must
    resolve them in to preserve the patch from PR Fix repair metadata repo version #396 as close to the
    original as possible.
  6. Push this branch to your fork on GitHub:
    $ git push origin patchback/backports/0.21/ff7f82bd5761e3b64f08fbcbdb654c0584b9d2c5/pr-396
  7. Create a PR, ensure that the CI is green. If it's not — update it so that
    the tests and any other checks pass. This is it!
    Now relax and wait for the maintainers to process your pull request
    when they have some cycles to do reviews. Don't worry — they'll tell you if
    any improvements are necessary when the time comes!

🤖 @patchback
I'm built with octomachinery and
my source is open — https://github.com/sanitizers/patchback-github-app.

@patchback

patchback Bot commented Jul 7, 2026

Copy link
Copy Markdown

Backport to 0.21: 💔 cherry-picking failed — conflicts found

❌ Failed to cleanly apply ff7f82b on top of patchback/backports/0.21/ff7f82bd5761e3b64f08fbcbdb654c0584b9d2c5/pr-396

Backporting merged PR #396 into main

  1. Ensure you have a local repo clone of your fork. Unless you cloned it
    from the upstream, this would be your origin remote.
  2. Make sure you have an upstream repo added as a remote too. In these
    instructions you'll refer to it by the name upstream. If you don't
    have it, here's how you can add it:
    $ git remote add upstream https://github.com/pulp/pulp_maven.git
  3. Ensure you have the latest copy of upstream and prepare a branch
    that will hold the backported code:
    $ git fetch upstream
    $ git checkout -b patchback/backports/0.21/ff7f82bd5761e3b64f08fbcbdb654c0584b9d2c5/pr-396 upstream/0.21
  4. Now, cherry-pick PR Fix repair metadata repo version #396 contents into that branch:
    $ git cherry-pick -x ff7f82bd5761e3b64f08fbcbdb654c0584b9d2c5
    If it'll yell at you with something like fatal: Commit ff7f82bd5761e3b64f08fbcbdb654c0584b9d2c5 is a merge but no -m option was given., add -m 1 as follows instead:
    $ git cherry-pick -m1 -x ff7f82bd5761e3b64f08fbcbdb654c0584b9d2c5
  5. At this point, you'll probably encounter some merge conflicts. You must
    resolve them in to preserve the patch from PR Fix repair metadata repo version #396 as close to the
    original as possible.
  6. Push this branch to your fork on GitHub:
    $ git push origin patchback/backports/0.21/ff7f82bd5761e3b64f08fbcbdb654c0584b9d2c5/pr-396
  7. Create a PR, ensure that the CI is green. If it's not — update it so that
    the tests and any other checks pass. This is it!
    Now relax and wait for the maintainers to process your pull request
    when they have some cycles to do reviews. Don't worry — they'll tell you if
    any improvements are necessary when the time comes!

🤖 @patchback
I'm built with octomachinery and
my source is open — https://github.com/sanitizers/patchback-github-app.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants