spring-security icon indicating copy to clipboard operation
spring-security copied to clipboard

Documentation for older versions: where?

Open mauromol opened this issue 1 month ago • 7 comments

Expected Behavior

I can still find (browse online, or at least download) the reference documentation for older versions.

Current Behavior

The page https://docs.spring.io/spring-security/reference/ is only showing the documentation for the latest three versions/branches.

Context

We still have some applications running on an extended support release version of Spring Security 5.8 (with Java 8, Java EE, etc.). We are progressively upgrading them to supported releases. However, some very important migration guides are no longer reachable, like the one for 5.8 (which explains important preparation steps to upgrade to Spring Security 6.0) and the one for Spring Security 6.0, which, as far as I remember, was much more exhaustive than the current migration guide in 6.5 reference documentation (which, by the way, does not mention anymore any intermediate steps, like the migration guide in 6.4 does, for example, by mentioning the upgrade steps from 6.1 to 6.2...).

Also the wiki here has broken links: https://github.com/spring-projects/spring-security/wiki/Spring-Security-6.0-Migration-Guide

As well as the reference documentation of some of the currently supported versions, like: https://docs.spring.io/spring-security/reference/6.5/migration/index.html which points to https://docs.spring.io/spring-security/reference/5.8/migration/index.html, which is a 404.

I tried hard to find some links to at least download archived versions of the project, hoping that they contain the full reference documentation, including such migration guides, but I could not succeed.

Can you please advise what is the expected path for users upgrading from older versions? I opened this as an "enhancement request" here in GitHub, because I think this also impacts the current project version, since the final goal is indeed to upgrade existing applications to the current version of the project, but their reference documentation only explains the migration steps for the immediately preceding version (or is broken anyway, like the aforementioned migration guide for 6.5 version).

mauromol avatar Dec 02 '25 16:12 mauromol

Seems like I can at least reach the old documentation by browsing tags here in GitHub: https://github.com/spring-projects/spring-security/blob/5.8.16/docs/modules/ROOT/pages/migration/index.adoc

Anyway, I would suggest to consider to provide some archive, since navigation between pages in these source files is hard. Or at least to put a reference into the current documentation that this is the only way to get older docs.

mauromol avatar Dec 02 '25 17:12 mauromol

The OSS support of 5.8.x has ended since Dec 2023. Maybe that's the reason why the Spring Team doesn't provide an easy-to-find entry of the doc archive. Instead, they provide extended enterprise support.

ziqin avatar Dec 06 '25 14:12 ziqin

Nobody is asking additional work for free, it's just a matter of not hiding things just for the sake of selling LTS licenses. And I am more than sure this is not the case for Spring guys. I firmly believe that it's in their own interest to promote easy upgrading of their projects to users. There are still a lot of people out there running EOL products (based on Java 8, Java EE, etc.) thanks to extended support contracts, which are part of the landscape of open source products in the end.

A wiki with all migration guides, or at least an archive site where I can download old documentation (even just in ZIP format) and a link somewhere on their pubic sites or on current docs to get there would be perfectly fine for me. The migration guides for the Spring Framework are available on GitHub, for example, but not for Spring Security.

mauromol avatar Dec 06 '25 19:12 mauromol

There is https://docs.spring.io/spring-security/site/docs/ but only some versions are available.

ziqin avatar Dec 06 '25 19:12 ziqin

Hello! Sorry for your trouble. The tldr is that you can find the Spring Security 5.8 docs for free at https://docs.enterprise.spring.io/spring-security/reference/5.8/

A bit more details...

Our move to Antora fixed quite a few things with our documentation. Unfortunately, it also adds some additional complexity. Our old documentation had no external links which made it difficult for users to navigate. However, it could be built once at the time of release and never be built again. However, the new Antora documentation links to other versions of the project, other projects, etc. This means that if we continue to host the older versions of the documentation, then we need to continually build those old docs to ensure the links are updated.

The disadvantages of continuing to deploy the unsupported OSS docs are as our infrastructure updates we need to update these unsupported OSS branches to work with new infrastructure. This often means backporting things like Gradle tasks to old and possibly unsupported versions of Gradle or updating to newer versions of Gradle that have breaking changes.

One of my goals for 2026 is to try and figure out a better balance with this. FWIW, while not ideal, you can always find our old code/docs in the respective branches https://github.com/spring-projects/spring-security/tree/5.8.x/docs/modules/ROOT/pages/migration

rwinch avatar Dec 12 '25 15:12 rwinch

Thank you very much Rob! IMHO, if internal links work, the fact that external links may break as the documentation becomes obsolete would be anyway acceptable. The important thing is that a user can still find and read the old documents, which contain valuable information.

mauromol avatar Dec 12 '25 16:12 mauromol

Thanks for your feedback @mauromol This is useful as we continue to work on improving the documentation in 2026. NOTE: I previously mistakenly typed 2025 in my comment above (I'm apparently stuck in the past 😆 ).

I am currently thinking we will add a new Enterprise section to the existing version sections of Stable, Snapshot, and Milestone that links to the enterprise docs for older versions. That still doesn't solve for when a version goes out of commercial support (which I'm still thinking about), but it is a step in the right direction.

rwinch avatar Dec 12 '25 17:12 rwinch