Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Links to older versions of Checkstyle release notes should have simple direct link #11754

Open
nrmancuso opened this issue Jun 19, 2022 · 4 comments

Comments

@nrmancuso
Copy link
Member

nrmancuso commented Jun 19, 2022

From https://github.com/checkstyle/checkstyle/pull/11749/files#r901140140:

<td><i><a class="externalLink" href="https://checkstyle.sourceforge.io/version/6.18/">https://checkstyle.sourceforge.io/version/6.18/</a>: 403 Forbidden</i></td></tr>

failure is stable, several executions fails in row.

on section:

    <section name="Previous Version Documentation">
      <p>
        Current site contains documentation only for latest, released version.
        We only support this latest version. We highly recommend read latest documentation first.
        <br/>
        However, you might need documentation for previous releases because you are still using
        an older version and latest version describe some features that does not work for you.
        <br/>
        You can find documentation for most old versions using a URL format like
        https://checkstyle.sourceforge.io/version/X.X where "X.X" is the version number.<br/>
        Example:
        <a href="https://checkstyle.sourceforge.io/version/6.18/">
          https://checkstyle.sourceforge.io/version/6.18
        </a>
        for version 6.18.
      </p>
    </section>

Old link from current documentation about release notes:

https://checkstyle.sourceforge.io/version/6.18

New link to current checkstyle.org site:

https://checkstyle.org/releasenotes_old_6-0_7-8.html#Release_6.18

In previous documentation about finding release notes of older versions, it was easy to understand https://checkstyle.sourceforge.io/version/X.X where "X.X" is the version number.

Now, we would need to say something like: https://checkstyle.org/releasenotes_old_<starting release>_<ending release>.html#Release_<actual release number>, where starting and ending release must be hyphenated major-minor version, in one of two ranges (if your version is less than 7.9): 6-0_7-8 OR 5.9_1.0, and actual release number is in the form of major.minor.patch (if patch is applicable).

This is complicated and more confusing than just scrolling to the bottom of the release notes and clicking on the link to older versions, see right below https://checkstyle.org/releasenotes.html#Release_8.0

We should either completely remove this entire Previous Version Documentation section, or overhaul how we directly link to older releases.

@romani
Copy link
Member

romani commented Jun 19, 2022

Old link from current documentation about release notes:
https://checkstyle.sourceforge.io/version/6.18
New link to current checkstyle.org site:
https://checkstyle.org/releasenotes_old_6-0_7-8.html#Release_6.18

https://checkstyle.sourceforge.io/version/6.18 - is good link to whole website as-is.
your second link is link to release notes of such release in latest website.

https://checkstyle.sourceforge.io/version/6.18 - is good link to whole website as-is allows user to see documentation and state of web site (all checks) for old version. Frozen in time whole web site for specific version.

@rnveach
Copy link
Member

rnveach commented Jun 19, 2022

https://checkstyle.sourceforge.io/version/6.18 - is good link

@romani Why doesn't https://checkstyle.org/version/6.18/ work? Why don't we move everything to checkstyle.org as that is our site and we should move everyone off of sourceforge. I thought we were only keeping sourceforge as a backup.

@romani
Copy link
Member

romani commented Jun 19, 2022

because nobody have time to design a release process and figure out how to do all in awesome way.

Sourceforge is used for all history storage for old versions as snapshot - separate folders in hosting.
Sourceforge is used to keep "reports" folder: https://checkstyle.sourceforge.io/version/6.18/reports/google-style/guava/
We are deprecated reports folder update, as nobody really care about results of Checkstyle of real projects.

Why don't we move everything to checkstyle.org

it is a lot of files, operation on them will be complicated and deploy time will be long.

@romani
Copy link
Member

romani commented Jun 19, 2022

it is already known that such plugin is buggy on https, some problem with libraries that does not support new certificates standarts.

$ grep -A 1 "403" pom.xml 
            <!-- 403 forbidden for linkcheck, works in the browser -->
            <excludedLink>https://button.flattr.com/flattr-badge-large.png</excludedLink>
--
            <!-- 403 forbidden -->
            <excludedLink>https://oss.sonatype.org/content/repositories/snapshots/</excludedLink>
--
            <!-- 403 forbidden for linkcheck, works in the browser -->
            <excludedLink>https://gradle.org</excludedLink>
            <!-- 403 forbidden for linkcheck, works in the browser -->
            <excludedLink>
--
            <!-- permanent 403, but it works fine out of plugin execution -->
            <excludedLink>https://opencollective.com/*</excludedLink>
--
            <!-- permanent 403 -->
            <excludedLink>https://www.ej-technologies.com/*</excludedLink>
--
            <!-- permanent 403 -->
            <excludedLink>https://docs.github.com/en/rest/checks</excludedLink>

I think we need permanent suppression for this link. Just another <!-- 403 forbidden for linkcheck, works in the browser -->

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

No branches or pull requests

3 participants