Skip to content

SOLR-18577: Fix dead links and stale workflow content in the contributor docs - #5212

Open
nick-boss-tech wants to merge 17 commits into
apache:mainfrom
nick-boss-tech:contributing-slack-link
Open

nick-boss-tech wants to merge 17 commits into
apache:mainfrom
nick-boss-tech:contributing-slack-link

Conversation

@nick-boss-tech

@nick-boss-tech nick-boss-tech commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

🤖 AI text below 🤖 (posted on behalf of Nick Shanin)

https://issues.apache.org/jira/browse/SOLR-18577

What happens today

Seven references in the contributor-facing docs and one javadoc are dead, and several workflow statements in the same docs no longer match the build or the repository.

The Slack sign-up address https://s.apache.org/solr-slack appears in CONTRIBUTING.md, README.md, solr/packaging/README.txt and the admin UI (index.html). It redirects to a Community Inviter page that answers 404: the invite service has shut down, and its successor service has no page for the workspace.

Also dead: the packaging README's project site address https://solr.apache.org/solr (404); the personal page the contributor guide cites for not emailing committers (404, also on the successor host for Apache personal pages); the help directory, which no longer exists in the tree; the PMC chair guide's GitHub reference (redirects to a wiki page answering 404); the Git guide's crash course (403); and the shortlink in the RelatednessAgg javadoc (its target answers 400 on the current list archive).

Stale content: the changelog guide gives the fragment folder as solr/changelog/unreleased/, but no solr/changelog directory exists; fragments live in changelog/unreleased/ at the repository root. The JVM guide's test example points at a JDK 14 install; the build's minimum Java version is 21. The FAQ says Error Prone runs on Jenkins and describes Sonatype Lift as reviewing pull requests; PR checks run as GitHub Actions and no Lift configuration exists in this repository. Two pages point at the removed help/ directory for the Gradle help texts (source code guide, dev-docs index); those texts live in dev-docs/gradle-help/. The contributor guide also omits that a first-time contributor's workflow runs wait for a maintainer's approval.

Every other external address in these docs was requested directly on 2026-10-22 and 2026-10-23, including a full sweep of dev-docs (42 files, 182 unique addresses). The seven above are the dead ones; the only other non-answers are behind ASF login walls (reporter.apache.org, whimsy, the private PMC area), which is by design.

What this change does

Each dead reference now points at a live address carrying the same content or its current canonical home, and the stale statements are corrected. Thirteen files change; the only code file touched is a javadoc comment.

The four Slack references now point at the project's #solr-dev channel in the ASF Slack workspace (CONTRIBUTING.md, README.md, README.txt, index.html), the channel address the project publishes on its community page and that README's Get Involved section already uses. The site address in the packaging README is now the site root, https://solr.apache.org/ (README.txt). The contributor guide cites the ASF email tips page instead of the dead personal page (how-to-contribute.adoc); it carries the same guidance: "Do not send development or use questions in private emails. Keep the discussion on the mailing list." The source code guide points at the dev-docs directory (solr-source-code.adoc). The PMC chair guide's see-also points at GitBox (pmc-chair.adoc). The Git guide's crash course bullet points at the Pro Git chapter for SVN users (git.adoc), and its beginners bullet, which pointed at a "let me google that for you" joke link, now points at the Git Tutorial on git-scm.com (git.adoc). The RelatednessAgg citation links the cited message in the MARC archive, which resolves its Message-ID (RelatednessAgg.java).

The content corrections:

  • Changelog guide: fragment folder given as changelog/unreleased/ at the repository root, the layout drawing matches the folders that exist, and the task name is spelled writeChangelog throughout (changelog.adoc).
  • JVM guide: the example now points at a JDK 25 install (jvms.adoc).
  • FAQ: Jenkins no longer named for Error Prone, the Sonatype Lift paragraph is removed, and the frontend answer uses ./gradlew dev like the rest of the docs (FAQ.adoc).
  • Source code guide and dev-docs index: the Gradle help texts are located in dev-docs/gradle-help; the source code guide's check sentence is completed (solr-source-code.adoc, README.adoc).
  • Contributor guide: step 4 now says a first contribution's workflow runs need a maintainer's approval before they start (how-to-contribute.adoc).

Proof

Every address named here was requested directly on 2026-10-22 and 2026-10-23.

  • Slack: old address 302 to the Community Inviter page, which answers 404. New address is the channel the project's community page publishes; it resolves into the ASF Slack workspace.
  • Site: https://solr.apache.org/solr answers 404. New: https://solr.apache.org/ answers 200.
  • Personal page: answers 404. New: https://www.apache.org/dev/contrib-email-tips.html answers 200.
  • Help directory: https://github.com/apache/solr/blob/main/help answers 404 and no help directory exists in the tree. New: the dev-docs tree answers 200.
  • Infra reference: redirects to a wiki page answering 404. New: https://gitbox.apache.org/ answers 200.
  • Crash course: answers 403. New: the Pro Git chapter answers 200.
  • Shortlink: redirects to an old-format archive address answering 400. New: the MARC address resolves the cited Message-ID to the message itself.
  • Beginners bullet: the old address (lmgtfy.com) answers 200 and is replaced on tone, not because it is dead. New: https://git-scm.com/docs/gittutorial answers 200.
  • Content corrections checked against the tree on 2026-10-23: gradle/changelog.gradle defines writeChangelog writing to changelog/unreleased/; gradle/libs.versions.toml sets the minimum Java version to 21; no .lift.toml or other Lift configuration exists in the repository; .github/workflows/gradle-precommit.yml runs check -x test as a GitHub Action on pull requests.
  • A search of the changed files at the new head finds no remaining occurrence of any of the seven dead addresses. ./gradlew :solr:core:tidy runs clean on the branch, and :solr:core:check -x test passes at head 8ae42dc5e89, verified 2026-10-23.

A choice to check

Recommendation: point these pages at the ASF #solr-dev channel, as this PR does, rather than removing the Slack references.

The old address was a public sign-up for a community Slack workspace, and no public sign-up exists today: the invite service has shut down and its successor has no page for the workspace. The project's community page is not a fallback; it sends readers to the same dead address. What exists is the ASF workspace's #solr-dev channel, which ASF members enter directly and other contributors enter as invited guests, a route ASF Infra documents. The project's own dev docs send readers to that channel for detailed questions.

The deciding question: should these pages promise only destinations any reader can walk into unaided? If so, the Slack lines should come out of all four pages until a public sign-up exists again, leaving IRC as the open chat. If a pointer to the room the developers actually use is worth the guest step, the channel link is the destination. These pages exist to help readers reach the project and the developers are in that channel, so the PR keeps the pointer. Reviewers who weigh the guest step differently would land on removal.

Limits

  • The same dead Slack address appears on the project website (the community page in the solr-site repository). That page is outside this PR.
  • Whether the community workspace behind the old invite page still operates could not be confirmed; only its invite service is verifiably gone.
  • Three replacements are the current canonical home rather than the same content at a new address: GitBox for the retired Infra wiki page, the Pro Git chapter for the crash course, and the dev-docs directory for the removed help directory.
  • The content pass covered the contributor-facing docs (contributor guide, Git guide, source code guide, IDE and JVM guides, FAQ, changelog guide, dev-docs index, CONTRIBUTING.md). Maintainer process docs were not audited for content.

Checklist

  • I have reviewed the guidelines for How to Contribute and my code conforms to the standards described there to the best of my ability.
  • I have created a Jira issue and added the issue ID to my pull request title. SOLR-18577
  • I have given Solr maintainers access to contribute to my PR branch.
  • I have developed this patch against the main branch.
  • I have run ./gradlew check. Not run in full: link and wording changes plus one javadoc comment; :solr:core:tidy runs clean and :solr:core:check -x test passes at the head.
  • I have added tests for my changes. Not applicable.
  • I have added documentation for the Reference Guide. Not applicable: this change is to the community-facing docs themselves.
  • I have added a changelog entry.

AI-generated description. Nick Shanin directed the work and takes responsibility for this contribution.

@github-actions github-actions Bot added documentation Improvements or additions to documentation admin-ui cat:search labels Oct 23, 2026
Comment thread solr/core/src/java/org/apache/solr/search/facet/RelatednessAgg.java Outdated

@epugh epugh left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM. One tiny nit on email services, but this is a nice clean up.

@epugh epugh self-assigned this Oct 23, 2026
@epugh epugh added this to the 10.x milestone Oct 23, 2026
@epugh

epugh commented Oct 23, 2026

Copy link
Copy Markdown
Contributor

i think the direct to slack at least conveys "hey, there is a slack community". and no one uses irc these days as far as i know. Or maybe I should say, I deefinitly dont!

Link directly to the cited message in the ASF mailing-list archive instead of the MARC archive. This addresses the review nit while keeping the reference specific to the original email.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

admin-ui cat:search documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants