Skip to content

Delete the dead Ant builds and scansql, fix the inner docs that contradict the README - #57

Open
sqlparser wants to merge 2 commits into
masterfrom
fix-stale-inner-docs
Open

Delete the dead Ant builds and scansql, fix the inner docs that contradict the README#57
sqlparser wants to merge 2 commits into
masterfrom
fix-stale-inner-docs

Conversation

@sqlparser

@sqlparser sqlparser commented Aug 25, 2026

Copy link
Copy Markdown
Owner

Finding P4 of the 2026-08-24 first-visit evaluation: the documents a visitor reaches after clone and look around, rather than by following the first code block. Two of the seven rows were already fixed (demos/readme.md in #54, the README version claim in #52); these are the rest.

Deleted — not fixable into anything worth having

what why
build.xml its default target compiled src/main/java/demos against lib/ for main class demos.listGSPInfo — three references to things deleted in July, in four lines. Typing ant in the repo root ran that.
gettablecolumns/build.xml same lib/ classpath, and <property name="gsp.version" value="2.0.2.4"/> against 4.2.6 sources
demos/scansql/ a 141-byte readme, no Java source anywhere in the tree, and a download URL whose host does not resolve — a demo directory with no demo

No markdown file mentioned any of the three, and nothing ran them. Maven and the .bat scripts are the two supported routes and both are under CI; a third that nothing exercises is worth removing rather than repairing — the same call that deleted buildJar.sh, buildJar.bat and MANIFEST.MF on 2026-07-28.

Fixed

formatsql/readme.md said java formatsql sqlfile.sql. Now the real Maven invocation, plus what /tolerant does and which checked-in sample demonstrates it. Both commands were run before being written down — the plain form on the mixed sample stops at the bad statement, so the example uses your.sql and the /tolerant example uses the sample.

gettablecolumns/readme.md — I resolved all three of its links:

URL result
http://support.sqlparser.com/tutorials/gsp-demo-get-table-column/ NXDOMAIN
https://www.gudusoft.com/gsp_java/gettablecolumn.zip HTTP 404
http://ftp.gudusoft.com/dl/scansql/scanSQL_trial.zip (in scansql/) NXDOMAIN

It also gave three java -cp .;lib/*;external_lib/* commands using /h /P /u /p flags removed from the demo on 2026-07-28, against a lib/ deleted the same day. The binary section now explains what happened and points at licensed-only/; the flags are documented as gone rather than as usage.

check-stale-docs.sh grows to cover the class

  • four more dead strings: .;lib/*, build.xml, and the two non-resolving hosts
  • every relative markdown link must resolve, across all files including the ALLOW-listed README.md — a file may have reason to name something removed, none has reason to link at a path that is not there

The link check earned itself immediately: it rejected this very commit. A licensed-only/README.md link I wrote six directories up needed seven:

src/main/java/gudusoft/gsqlparser/demos/gettablecolumns/readme.md -> ../../../../../../licensed-only/README.md
  ^ resolves to src/licensed-only/README.md, which does not exist

Nothing else in the repository would have noticed. Self-test is now 12 cases, including that a resolving link passes, a broken one fails, and an http:// link is not treated as a file path.

The -Dexec.classpathScope sweep (second commit)

Done as well — all 20 remaining demo readmes. The root README has said since the system-scope dependencies went that the flag is unnecessary; those readmes went on telling people to pass it. Inert rather than wrong, but the same contradiction as everything else here.

Two forms needed care: the flag riding on the end of an -Dexec.args line, and the flag as the last line of a continued command, where dropping it leaves a dangling \ on the line above. Nothing ends a fenced block with a stray continuation now, and three of the rewritten commands were run verbatim.

sqlrefactor's was =runtime, not =compile — worth mentioning only as evidence nobody was reading these.

check-stale-docs.sh now treats -Dexec.classpathScope as a dead string, so it cannot come back; README.md is the one file allowed to name it, since its job is to say you don't need it. Self-test is 13 cases.

Verified

156 tests · 79 demos start · 24/24 demo cases · dlineage jar JSON+XML and hr_mini under the trial cap · stale-docs self-test 12/12, clean scan over 62 files, 63 files link-checked · licensed-only guard 3/3 · parser version consistent at 4.2.6.

🤖 Generated with Claude Code

https://claude.ai/code/session_01UK3dBXFXqiDRYJxz1YxWCr

James and others added 2 commits August 25, 2026 06:47
…adict the README

Finding P4 of the 2026-08-24 first-visit evaluation: documents a visitor reaches
after "clone and look around" rather than by following the first code block, all
of them describing a repository that no longer exists.

Deleted, because they are not fixable into anything worth having:

  - build.xml. Its DEFAULT target compiled src/main/java/demos against lib/ for
    the main class demos.listGSPInfo -- three references to things deleted in
    July, in four lines. Typing `ant` in the repository root ran that.
  - gettablecolumns/build.xml. Same lib/ classpath, and pinned to parser
    2.0.2.4 against 4.2.6 sources.
  - demos/scansql/. A 141-byte readme, no Java source anywhere in the tree, and
    a download URL whose host does not resolve. A demo directory with no demo,
    advertising a binary nobody can get.

No markdown file mentioned any of the three; nothing ran them. Maven and the
.bat scripts are the two supported build routes and both are under CI, which is
why a third that nothing exercises is worth removing rather than repairing --
the same reasoning that deleted buildJar.sh, buildJar.bat and MANIFEST.MF on
2026-07-28.

Fixed:

  - formatsql/readme.md said `java formatsql sqlfile.sql`. Now the real Maven
    invocation, plus what /tolerant does and which checked-in sample
    demonstrates it. Both commands were run before being written down.
  - gettablecolumns/readme.md pointed at an article on support.sqlparser.com
    (NXDOMAIN) and a zip at www.gudusoft.com (HTTP 404), and gave three
    `java -cp .;lib/*;external_lib/*` commands using JDBC flags removed from
    this demo on 2026-07-28, against a lib/ directory deleted the same day. The
    binary section now explains what happened, and the flags are documented as
    gone rather than as usage. Also dropped a stale
    -Dexec.classpathScope=compile the root README already says is unnecessary.

check-stale-docs.sh grows to cover this class:

  - four more dead strings: `.;lib/*`, build.xml, and the two hosts that do not
    resolve.
  - every relative markdown link must resolve, across all files including the
    ALLOW-listed README.md. A file may have reason to name something removed;
    none has reason to link at a path that is not there.

The link check earned itself immediately: it rejected this very commit, because
a licensed-only/README.md link written six directories up needed seven. That is
the point -- nothing else in the repository would have noticed.

Self-test now covers 12 cases, including that a resolving link passes, a broken
one fails, and an http link is not treated as a file path.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UK3dBXFXqiDRYJxz1YxWCr
The root README has said since the system-scope dependencies were removed that
the flag is unnecessary. Twenty demo readmes went on telling people to pass it
anyway, which is the same contradiction as the rest of this branch, just a
benign one: the flag is inert, not wrong.

Removed from every demo readme, including the two forms that needed care --
one where the flag rode on the end of an args line, and one where it was the
last line of a continued command and dropping it left a dangling backslash on
the line above. Nothing ends a fenced block with a stray continuation now, and
three of the rewritten commands were run verbatim to confirm plain exec:java
does the job.

sqlrefactor's was =runtime rather than =compile, which is worth noting only
because it shows nobody was reading these.

check-stale-docs.sh now treats -Dexec.classpathScope as a dead string, so it
cannot come back. README.md is the one file allowed to name it, since its job
is to tell people they do not need it.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UK3dBXFXqiDRYJxz1YxWCr
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