Commit 2b7225b
Un-vendor org.boris.expr; the jar was already a declared dependency
demos/antiSQLInjection/ carried 365 .java files of a third-party expression
evaluator under org/boris/expr/ -- 57% of every source file in this repo. They
duplicated lib/expr4j.jar, which pom.xml already declares: the jar holds the
same 365 top-level classes and nothing else, so the library shipped twice and
javac quietly compiled the sources while the jar sat unused. Only GEval.java
ever imported it.
Verified rather than assumed, after a codex review pointed out that matching
class NAMES proves nothing about implementation:
- javap -public -s -constants over all 365 top-level classes: identical.
The jar's 367 classfiles are Java 5 bytecode (major 49); compiling the
sources gives 370 at major 52. The 3 extra are $1 synthetics
(ExprParser$1, ExprTypeUtil$1, SimpleEvaluationContext$1). Nothing the
source provides is missing from the jar.
- The existing tests were not testing the jar at all: the vendored sources
compiled into target/classes and masked it. Re-checked with a clean build
and -verbose:class, which now shows org.boris.expr loading from
file:.../lib/expr4j.jar.
- Full suite still 144 tests with the same 3 known analyzespTest failures.
Two consequences, both documented in the README:
- The antiSQLInjection demo now requires -Dexec.classpathScope=compile.
system-scope dependencies are absent from Maven's runtime classpath, so
under runtime it fails with NoClassDefFoundError on
org/boris/expr/IEvaluationContext. It only worked there before because the
classes happened to be in target/classes. dlineageBasic already had this
same constraint (issue #40); antiSQLInjection now joins it.
- mvn package no longer bundles org/boris/expr/** into the project jar.
Nothing consumes that jar as a library, so this is inert today.
Also corrected the dependency's coordinates. It was declared as
tk.pratanumandal:expr4j, which is a completely different library, and would
have pointed SBOM and vulnerability tooling at the wrong project. The jar has a
bare MANIFEST.MF with no version metadata, so it is now identified by content:
sha256 6267d9cb7cabcb24cf02d5bff1d11fdfea8c60c9ba1840dcb45359fb0165ca1b,
recorded in pom.xml alongside a placeholder version.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012qPRpoD8exYRrUmbfXXWXj1 parent 683f67b commit 2b7225b
367 files changed
Lines changed: 52 additions & 13979 deletions
File tree
- src/main/java/gudusoft/gsqlparser/demos/antiSQLInjection/org/boris/expr
- engine
- function
- excel
- parser
- util
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
71 | 71 | | |
72 | 72 | | |
73 | 73 | | |
74 | | - | |
| 74 | + | |
| 75 | + | |
75 | 76 | | |
76 | 77 | | |
77 | 78 | | |
| |||
231 | 232 | | |
232 | 233 | | |
233 | 234 | | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
| 247 | + | |
| 248 | + | |
| 249 | + | |
| 250 | + | |
| 251 | + | |
| 252 | + | |
| 253 | + | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
| 260 | + | |
234 | 261 | | |
235 | 262 | | |
236 | 263 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
116 | 116 | | |
117 | 117 | | |
118 | 118 | | |
119 | | - | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
120 | 138 | | |
121 | | - | |
122 | | - | |
123 | | - | |
124 | | - | |
125 | | - | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
126 | 144 | | |
127 | 145 | | |
128 | 146 | | |
| |||
Lines changed: 0 additions & 67 deletions
This file was deleted.
Lines changed: 0 additions & 33 deletions
This file was deleted.
Lines changed: 0 additions & 44 deletions
This file was deleted.
Lines changed: 0 additions & 40 deletions
This file was deleted.
Lines changed: 0 additions & 36 deletions
This file was deleted.
Lines changed: 0 additions & 93 deletions
This file was deleted.
0 commit comments