Skip to content

dotnet(nuget): add missing Sentry.Hangfire - #223

Merged
BYK merged 2 commits into
masterfrom
dotnet/fix-sentry-hangfire
Dec 22, 2025
Merged

dotnet(nuget): add missing Sentry.Hangfire#223
BYK merged 2 commits into
masterfrom
dotnet/fix-sentry-hangfire

Conversation

@Flash0ver

@Flash0ver Flash0ver commented Dec 22, 2025

Copy link
Copy Markdown
Contributor

Context

Summary

In sentry-dotnet, via getsentry/sentry-dotnet#4773,
we added the missing Sentry.Hangfire to the .craft.yml which we forgot to add earlier,
so it was missing from the Sentry Release Registry.

Now after adding the missing entry, Craft/Publish is failing because no respective latest.json is available yet.

This changeset adds the missing files and symbolic links which are required by Craft/Publish.

Changes

  1. add 6.0.0-rc.2-prerelease for Sentry.Hangfire
  2. run make sync-all-links
    • added symlink packages/nuget/Sentry.Hangfire/6.0.json
    • added symlink packages/nuget/Sentry.Hangfire/6.json
    • added symlink packages/nuget/Sentry.Hangfire/latest.json

Follow-up

@Flash0ver Flash0ver self-assigned this Dec 22, 2025
Comment thread packages/nuget/Sentry.Hangfire/6.0.0-rc.2-prerelease.json
@Flash0ver
Flash0ver requested a review from BYK December 22, 2025 13:53
@BYK
BYK merged commit bbd82a8 into master Dec 22, 2025
13 checks passed
@BYK
BYK deleted the dotnet/fix-sentry-hangfire branch December 22, 2025 15:46
Lms24 pushed a commit that referenced this pull request Aug 18, 2026
### Context

- Same failure mode as #223 (`Sentry.Hangfire`) and #221
(`Sentry.Extensions.AI`)
- Follow-up to getsentry/sentry-dotnet#5456
- Tracking issue: getsentry/sentry-dotnet#5495

### Summary

`Sentry.Maui.CommunityToolkit.Mvvm` has shipped on NuGet since 5.8.0 but
was never added here. getsentry/sentry-dotnet#5456 added it to
sentry-dotnet's `.craft.yml` registry target, and the 6.9.0 publish then
aborted ([run
32010411662](https://github.com/getsentry/publish/actions/runs/32010411662)):

```
[error] "name" is required for new package "nuget:Sentry.Maui.CommunityToolkit.Mvvm".
        Add `name` to the registry target config in your .craft.yml.
```

Craft treats a package as new only when its `latest.json` is missing, so
seeding the directory here makes the bare `.craft.yml` key work exactly
as it does for the other 18 sentry-dotnet packages.

The failure isn't scoped to this one package — `updateVersionInRegistry`
throws before craft commits anything, so the whole registry target rolls
back. Every sentry-dotnet package is currently still pinned at 6.8.0
here, two releases into 6.9.0 being live on NuGet.

### Notes for review

- **Seeded at 6.8.0, not 6.9.0, deliberately.** Craft aborts with
`Version file for "6.9.0" already exists. Aborting.` if the version
being published is already present — which would roll the target back
again and leave all 19 packages stuck at 6.8.0. Seeding the previous
version (which the package did ship) lets the retry create 6.9.0 and
re-point the symlinks. #223 did the same, seeding
`6.0.0-rc.2-prerelease`.
- `canonical` has to match the `.craft.yml` key exactly or craft errors
on the consistency check in `getUpdatedManifest`.
- `created_at` is the value craft wrote for the sibling packages in the
6.8.0 release, since it's the same release event.
- Symlinks generated with `bin/sync-links`, not by hand. I also re-ran
the full `make sync-all-links` (via `xargs`, as the bare `find` blows
the argument limit on macOS) and confirmed it reproduces the committed
tree exactly, so the CI sync check should be clean.
- No `sdks/sentry.dotnet.maui.communitytoolkit.mvvm` symlink. Every
other dotnet package has one, but this package doesn't emit its own
`sdk_info.name` — its events go out as `sentry.dotnet.maui` — so the
entry would name something nothing reports. Happy to add it if
uniformity is preferred.

### Relationship to getsentry/sentry-dotnet#5496

#5496 approaches the same failure from the other side: it gives
sentry-dotnet's `.craft.yml` the `name`/`packageUrl`/`mainDocsUrl` that
craft needs to create manifests itself — for *every* package, not just
this one, so the next new package doesn't repeat this.

The two are complementary rather than exclusive. This PR unblocks the
6.9.0 retry now; #5496 stops it happening again. If both land, this
package's `.craft.yml` entry is simply belt-and-braces — craft applies
the config over the manifest on every release either way.

Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
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.

2 participants