Skip to content

Conversation

@netomi
Copy link
Contributor

@netomi netomi commented Nov 26, 2025

This fixes #1439.

This change ensures that the information whether a user has signed the publisher agreement is as up-to-date as possible. In the past, a user was signing in the open-vsx.org, login with the eclipse account and sign the agreement. It was then displayed like this in the app as the token was present and valid, but when publishing an extension, the public profile was used, which was still returning cached data that indicated that the user did not sign the publisher agreement. This lead to lots of confusion and frustration. In the meantime the cache has been reduced to 5 min from 15 min previously.

With this change, when a user signs in to open-vsx.org, the following happens:

  • if a token is present and valid, it will be used to query the publisherAgreement endpoint which always returns fresh data
  • if no token is available, use the public profile as fallback

This happens both, for displaying the publisher agreement status in the app (via the /user endpoint), as well as when checking whether the publisher has a valid publisher agreement when publishing an extension.

@netomi netomi force-pushed the fix-publisher-agreement branch from bb3f6c5 to 538340c Compare December 8, 2025 22:32
@netomi netomi marked this pull request as ready for review December 9, 2025 20:32
@netomi
Copy link
Contributor Author

netomi commented Dec 9, 2025

Additionally the PR does some minor cleanups in the EclipseService class and introduce a new method HttpHeadersUtil.getAcceptJsonHeaders() for commonly used HttpHeaders.

@netomi netomi changed the title Use dedicated API call to retrieve publisher agreement when publishing an extension Ensure to retrieve and display up-to-date publisher agreement status Dec 10, 2025
@netomi
Copy link
Contributor Author

netomi commented Dec 10, 2025

Previously we were using different ways to retrieve the publisher agreement status depending on the task, leading to misalignment and confusion:

  • always use the publisher agreement endpoint for the /user endpoint which is what the user sees in the web app, that means you only see the publisher agreement status if you have logged in to eclipse
  • always use the public profile endpoint when doing the pre-publication check

@netomi
Copy link
Contributor Author

netomi commented Dec 10, 2025

could you take a look @autumnfound ?

@netomi netomi requested a review from amvanbaren December 10, 2025 12:31
Copy link
Contributor

@autumnfound autumnfound left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall LGTM

@netomi netomi merged commit 435233a into eclipse:master Dec 11, 2025
4 checks passed
@netomi netomi deleted the fix-publisher-agreement branch December 11, 2025 09:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants