Skip to content

fix(javadoc): unbreak the release build and align examples with the code - #470

Merged
dargmuesli merged 6 commits into
betafrom
fix/docs/align-javadoc-and-examples
Aug 31, 2026
Merged

dargmuesli merged 6 commits into
betafrom
fix/docs/align-javadoc-and-examples

Conversation

@dargmuesli

Copy link
Copy Markdown
Member

mvn deploy -P release currently fails on beta.
The javadoc plugin rejects 23 {@link} references introduced by #460: the deprecated per-type library requests point at SaveItemsToLibraryRequest, RemoveItemsFromLibraryRequest and CheckUsersSavedItemsRequest from requests.data.albums, audiobooks, episodes, shows and tracks without importing them.
javac ignores comments, so pull request CI and the tag job's Build step both pass.
The failure lands in the Release step, which runs after the tag is pushed, and it takes changelogithub down with it.
Tagging v10 today would leave a tag with nothing on Maven Central and no GitHub release.

This qualifies those references, documents the eight members that came in undocumented alongside them, and fixes the documentation drift found while checking the rest.

26 endpoints had no example at all, among them createPlaylist, the endpoint #453 reported missing and #454 added.
31 example classes still carried their pre-#460 names, for instance GetAlbumsTracksExample calling getAlbumTracks, and the entire player package.
The README linked examples/data/artists/, a directory rather than a file, and 12 of its 21 ⚠️ markers disagreed with the @Deprecated annotations in the code.
The example index is now generated from the code: 115 entries, every link resolving, every marker matching.

To keep it that way, ci/check-docs.py runs on every build.
It verifies that every SpotifyApi builder method has an example, that example class names match their request classes, that every example is linked from the README and every link resolves, that the ⚠️ markers match @Deprecated, and that deprecation in the code matches spec/openapi.yaml from #469.
That last check passes for all 106 spec-backed request classes today.
A second step builds the javadoc through a new javadoc-check profile that writes to target/, so a broken reference fails the pull request instead of the release.

The only change outside documentation is @Deprecated on the five legacy playlist builders, which matches how the other deprecated request classes are annotated.
No request class, builder method or signature changed.

apidocs/ is deliberately left alone: this repository regenerates it in the release commit, every file carries a generation timestamp, and it would go stale again at the v10 commit.

387 tests pass, the javadoc build reports no errors and no warnings, and the checker reports no drift.

@codecov

codecov Bot commented Aug 31, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 0.67568% with 735 lines in your changes missing coverage. Please review.
✅ Project coverage is 48.72%. Comparing base (559da33) to head (e0baf0d).

Files with missing lines Patch % Lines
...a/playlists/GetPlaylistItemsDeprecatedExample.java 0.00% 29 Missing ⚠️
...laylists/RemovePlaylistItemsDeprecatedExample.java 0.00% 26 Missing ⚠️
.../UpdatePlaylistsItemsReplaceDeprecatedExample.java 0.00% 26 Missing ⚠️
.../UpdatePlaylistsItemsReorderDeprecatedExample.java 0.00% 25 Missing ⚠️
examples/data/albums/GetNewReleasesExample.java 0.00% 24 Missing ⚠️
examples/data/albums/GetSeveralAlbumsExample.java 0.00% 24 Missing ⚠️
...data/albums/RemoveAlbumsForCurrentUserExample.java 0.00% 24 Missing ⚠️
...s/data/albums/SaveAlbumsForCurrentUserExample.java 0.00% 24 Missing ⚠️
...mples/data/artists/GetArtistsTopTracksExample.java 0.00% 24 Missing ⚠️
...xamples/data/artists/GetSeveralArtistsExample.java 0.00% 24 Missing ⚠️
... and 47 more
Additional details and impacted files
@@             Coverage Diff              @@
##               beta     #470      +/-   ##
============================================
- Coverage     51.66%   48.72%   -2.94%     
  Complexity      712      712              
============================================
  Files           299      325      +26     
  Lines         10532    11166     +634     
  Branches       1299     1315      +16     
============================================
  Hits           5441     5441              
- Misses         4073     4707     +634     
  Partials       1018     1018              

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@dargmuesli
dargmuesli merged commit 59fec8b into beta Aug 31, 2026
11 checks passed
@dargmuesli
dargmuesli deleted the fix/docs/align-javadoc-and-examples branch August 31, 2026 23:22
@dargmuesli dargmuesli mentioned this pull request Sep 1, 2026
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.

1 participant