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

Maven migration, refactored, plus maven build changes since then. #110

Merged
merged 141 commits into from
Dec 31, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
141 commits
Select commit Hold shift + click to select a range
604ecd7
Phase 1: Move unchanged files to conform to Maven conventions
kubycsolutions Oct 22, 2023
beb7338
Deletions, additions, and modifications to complete Maven cut-over.
kubycsolutions Oct 22, 2023
d99e119
Forgot Vlad's point about normalizing the resource directory in the s…
kubycsolutions Oct 22, 2023
2a58274
Windows doesn't need Execute bit, and it's just a distraction on .bat…
kubycsolutions Oct 23, 2023
5c82ba1
Working on the convenience build/ output directory. Still need to kee…
kubycsolutions Oct 23, 2023
26dd22e
Working on the build/ convenience output. Good news: It's now simplif…
kubycsolutions Oct 24, 2023
5355e7e
Improved logic for creating xalan-java/build/ directory, back-compata…
kubycsolutions Oct 24, 2023
264d12d
Yeah, moving the resources broke the build. Something is depending up…
kubycsolutions Oct 24, 2023
0c8404e
Fix one package-name typo, exclude jboss/CORBA from samples jarfile.
kubycsolutions Nov 3, 2023
38ed850
Put both versioned and unversioned artifacts into xalan-java/build. S…
kubycsolutions Nov 3, 2023
3023f61
Continuing to work on generating equivalent of Ant ./build output dir…
kubycsolutions Nov 4, 2023
b2eaeed
Slight cleanup of the stylebook invocation. Still need to move that i…
kubycsolutions Nov 4, 2023
e349d81
Note that target/site/xalan/local appears to be superfluous, but don'…
kubycsolutions Nov 6, 2023
2ac5a12
Yeah, it might be better to keep the xml-site stylesheets in a tar.gz…
kubycsolutions Nov 6, 2023
becbdcc
Undo directory rename in .sh
kubycsolutions Nov 7, 2023
726b19e
Get stylebook and related compiled doc working from mvn pom.
kubycsolutions Nov 7, 2023
c0b52db
Drop manual invocation of stylebook document generation; mvn now hand…
kubycsolutions Nov 7, 2023
239ffd9
Gather *.source.jar into /build too
kubycsolutions Nov 8, 2023
fdf4831
Remove mvn cutover artifacts
kubycsolutions Nov 8, 2023
7780d63
Move master Version.java to more maven-line src dir. Still want to ad…
kubycsolutions Nov 9, 2023
535c604
Improve .gitignore, some scattered comments.
kubycsolutions Nov 10, 2023
af6924d
Better approach to gathering ant-equivalent binary downloadable... mi…
kubycsolutions Nov 11, 2023
ca91e67
Trying to do the distributions files in proper Maven idiom. Getting r…
kubycsolutions Nov 11, 2023
1bab182
Having trouble doing binary maven-assembly. Probably another idiom er…
kubycsolutions Nov 11, 2023
169fd54
Move source assembly generation to Apache's standard configuration. H…
kubycsolutions Nov 11, 2023
c4fe8d4
Preferred way to sequence binary build for multi-module is to make it…
kubycsolutions Nov 11, 2023
7b8e209
Flailing binary aggregation
kubycsolutions Nov 11, 2023
b34f1bd
Successfully generating -bin.* archives. Need more stuff in them, and…
kubycsolutions Nov 11, 2023
2b9c67d
doc-open-bin-issue
kubycsolutions Nov 11, 2023
ed336b3
Finetuning bin.zip/bin.tgz content. Now includes docs and samples, wh…
kubycsolutions Nov 11, 2023
504969f
bin excludes starting to look reasonable.
kubycsolutions Nov 11, 2023
553a2c9
With new handling of source and archives, mvnbuild can be simplified.
kubycsolutions Nov 12, 2023
325747f
Synch with typo fixes
kubycsolutions Nov 13, 2023
600b924
Merge branch 'master' into xalan-java-mvn-refactored
kubycsolutions Nov 13, 2023
52957de
Distribution pom got stepped on?
kubycsolutions Nov 13, 2023
5763615
BROKEN BUT CHECKPOINTING: Binary generation from the distribution pro…
kubycsolutions Nov 13, 2023
c6927da
resync
kubycsolutions Nov 13, 2023
869966d
resync
kubycsolutions Nov 13, 2023
88fcd0c
Cleanup-merge
kubycsolutions Nov 13, 2023
104e5ab
Turns out Maven doesn't default to latest, and was giving me an ancie…
kubycsolutions Nov 13, 2023
12798ff
bin jar build running under Maven idiom, may still want fine-tuning
kubycsolutions Nov 13, 2023
06da2f2
Maven build improvements (#119)
kriegaex Nov 14, 2023
8591de0
Fine-tune paths inside archive, document further tweaking currently o…
kubycsolutions Nov 14, 2023
31dfaa9
Cosmetic cleanups suggested by kriegaex (Alexander Kriegisch)
kubycsolutions Nov 14, 2023
87948f4
Rename parent project to better follow past Xalan naming conventions.
kubycsolutions Nov 14, 2023
c6698d0
Revert "Rename parent project to better follow past Xalan naming conv…
kubycsolutions Nov 14, 2023
fb875fc
Still having trouble if I set distribution/pom.xml to packaging pom. …
kubycsolutions Nov 14, 2023
42800c3
Take back control of the assembly output, refactor it all into distri…
kubycsolutions Nov 15, 2023
d0f863f
*Version.java files, in ant, were generated from *Version.src. For no…
kubycsolutions Nov 15, 2023
7da2b7c
Refining .tar.gz/zip file production.
kubycsolutions Nov 15, 2023
ff0b562
Unified distribution build
kubycsolutions Nov 15, 2023
4af37e7
Improve Maven Shade and Assembly usage, part 2 (#123)
kriegaex Nov 16, 2023
ca57656
XALANJ-2709 Make build run on JDK 9+
kriegaex Nov 16, 2023
6d3e4e2
Merge pull request #124 from kriegaex/XALANJ-2709
jkesselm Nov 18, 2023
d550507
XALANJ-2710 Use resource files for version numbers
kriegaex Nov 18, 2023
6b80f98
XALANJ-2710 Make XSLProcessorVersion extend Version
kriegaex Nov 19, 2023
00b9746
XALANJ-2710 Make solution shading/relocation friendly
kriegaex Nov 20, 2023
1b721da
Replace local Brazil binary by Maven Central dependency
kriegaex Nov 22, 2023
cce1acd
XALANJ-2710 Remove superfluous fallback for reading version numbers
kriegaex Nov 21, 2023
92dbb89
XALANJ-2710 Remove Eclipse project files, rely on Maven import
kriegaex Nov 22, 2023
0ce3d2b
Merge pull request #125 from kriegaex/XALANJ-2710
jkesselm Nov 23, 2023
8c6e646
Merge pull request #128 from kriegaex/brazil-maven-central
jkesselm Nov 23, 2023
8cc823c
Make sure serializer resources are included in JAR
kriegaex Nov 21, 2023
d0e020a
Merge pull request #127 from kriegaex/fix-serializer-resources
jkesselm Nov 24, 2023
c7fc0fd
Use system class loader as a fallback to load version number resources
kriegaex Nov 25, 2023
7642556
Copy dependencies to [root]/lib directory during package phase
kriegaex Nov 25, 2023
3500222
Cosmetic improvements in mvnbuild.bat, mvnbuild.sh
kriegaex Nov 25, 2023
efb0d44
Switch to Class.getResourceAsStream with a relative path
kriegaex Nov 26, 2023
c4272c0
Merge pull request #129 from kriegaex/version-classloader-fallback
jkesselm Nov 27, 2023
29d6f12
Don't check in /lib; it's generated for xalan-test project dependencies.
kubycsolutions Nov 27, 2023
631e282
doc
kubycsolutions Nov 27, 2023
7826dcb
cherrypick from master
kubycsolutions Nov 27, 2023
ddf4030
cherrypick from master, use mvn build.
kubycsolutions Nov 27, 2023
c338e2b
Reconcile .gitignore with master
kubycsolutions Nov 27, 2023
4aa150b
Reconcile/rebase
kubycsolutions Nov 27, 2023
8de3294
typo
kubycsolutions Nov 27, 2023
fdb834c
typo
kubycsolutions Nov 27, 2023
4dd57b2
Silence the progress noise during the mvn build.
kubycsolutions Nov 27, 2023
49f1b55
Merge branch 'xalan-java-mvn-refactored' into create-lib-directory
jkesselm Nov 27, 2023
0544529
Merge pull request #130 from kriegaex/create-lib-directory
jkesselm Nov 27, 2023
db76767
AFAIK, we haven't resolved the need for site to run before package if…
kubycsolutions Nov 27, 2023
d8743ae
XALANJ-2708 Move docs and distros generation into own profiles
kriegaex Nov 28, 2023
9ca304c
Revert to Xander's execution order for mvnbuild sequence. My misunder…
kubycsolutions Nov 30, 2023
f794018
Delete superfluous doclet and taglet JARs
kriegaex Nov 30, 2023
77f8040
Merge pull request #134 from kriegaex/delete-doclet-taglet-binaries
jkesselm Nov 30, 2023
ca998e8
Delete xalan2jdoc.jar
kriegaex Nov 30, 2023
dddd36d
Merge pull request #132 from kriegaex/maven-profiles
jkesselm Nov 30, 2023
39cd970
Merge pull request #135 from kriegaex/delete-doclet-taglet-binaries
jkesselm Nov 30, 2023
b219034
Improve main .gitignore file, remove subfolder ones
kriegaex Nov 29, 2023
3f9c41c
Remove unused JUnit 4 dependency from 'samples'
kriegaex Nov 29, 2023
3e997d5
Refactor version classes for better testability
kriegaex Nov 29, 2023
afa0bdb
Add unit tests for version classes
kriegaex Nov 29, 2023
5e7e24c
Fix little typo in POM profile activation rule
kriegaex Nov 29, 2023
ba938e7
Add Maven Invoker integration testing (IT) infrastructure
kriegaex Nov 29, 2023
5bee693
Add 3 integration tests (ITs) for version classes
kriegaex Nov 29, 2023
f707085
Extract Mockito and Jupiter versions into properties, DRY
kriegaex Nov 30, 2023
6125373
Downgrade to Mockito 4.x to retain JDK 8 build for now
kriegaex Nov 30, 2023
40e981e
Silence JDK 21+ warning about dynamically attached agents (Mockito)
kriegaex Nov 30, 2023
15b43b6
CI build: Make sure to run integration tests
kriegaex Nov 30, 2023
aff6501
Add POM property 'maven-shade-plugin.version', manage plugin version
kriegaex Dec 1, 2023
9d0fd07
Merge pull request #133 from kriegaex/test-automation
jkesselm Dec 2, 2023
a9ab201
Run version unit tests in isolation and assert on error logs
kriegaex Dec 3, 2023
2eb1377
Add javadoc JAR generation to modules xalan, serializer, samples
kriegaex Dec 4, 2023
6c4ed3a
Add source JAR generation to modules xalan, serializer, samples
kriegaex Dec 4, 2023
62b7412
Merge pull request #137 from kriegaex/test-isolation
jkesselm Dec 19, 2023
16c6650
Convert text files with CRLF endings to LF to fix Git warnings
kriegaex Dec 20, 2023
0423639
Merge pull request #141 from kriegaex/fix-line-breaks-crlf-vs-lf
jkesselm Dec 20, 2023
af4d73c
Copy taglet artifacts to build dir for xalan-test
kriegaex Dec 20, 2023
b9a76e8
Merge pull request #142 from kriegaex/copy-taglet-jars-to-build-dir
jkesselm Dec 20, 2023
587eaaa
Merge pull request #138 from kriegaex/create-javadoc-and-source-jars
jkesselm Dec 20, 2023
bdcc328
Quick first-pass adaptation to xalan-java mvn build
kubycsolutions Dec 23, 2023
841db71
Error with no message?
kubycsolutions Dec 23, 2023
1bad7c2
Right. CL paths too. Sloppy of me.
kubycsolutions Dec 23, 2023
cc74252
No separate endorsed/ dir, most jarfiles have explicit versions in th…
kubycsolutions Dec 23, 2023
3a6293c
Shade java_cup-runtime. Arguably we should instead make it another ex…
kubycsolutions Dec 24, 2023
0057e86
Legacy doclet as pseudo-module. Code is provided as a prebuilt jarfil…
kubycsolutions Dec 24, 2023
7ff4a17
Revert "Legacy doclet as pseudo-module."
kubycsolutions Dec 24, 2023
9c80275
Make sure LICENSE and NOTICE get included in binary distro archive.
kubycsolutions Dec 25, 2023
8c249be
samples should include their (generated) readme.html
kubycsolutions Dec 25, 2023
cadfea3
comments
kubycsolutions Dec 25, 2023
199f034
Put xercesImpl and xml-apis into the tarball. There is probably a bet…
kubycsolutions Dec 25, 2023
7c1c24a
Put some sample-related HTML files where they used to be. This may be…
kubycsolutions Dec 26, 2023
e942e76
Move xalanservlet example out into its own module, so we can generate…
kubycsolutions Dec 27, 2023
8782513
Refactor xalanservlet back into its own jarfile.
kubycsolutions Dec 27, 2023
0b3ee90
Reorganizing some samples back out into their own jarfiles, now that …
kubycsolutions Dec 27, 2023
a07d25c
Reorg samples to follow Ant structure. Clarity for this commit.
kubycsolutions Dec 27, 2023
5e3e0b2
Reorg samples. Need to do final 1:1 comparison of jarfiles with Ant o…
kubycsolutions Dec 27, 2023
1c625a9
Simplify changeset.
kubycsolutions Dec 28, 2023
ba276f3
Getting myself tangled. Roll back a moment.
kubycsolutions Dec 28, 2023
259a56b
Simplifying-changes-in-this-merge
kubycsolutions Dec 28, 2023
854a0fe
Remove emacs temp files
kubycsolutions Dec 28, 2023
07ae04f
Still dithering about packaging of samples
kubycsolutions Dec 28, 2023
3ea4140
Update mailing list instructions for @xalan.apache.org rather than th…
kubycsolutions Dec 28, 2023
78dfb60
Make sure the .war file, and all the sample .jars, get into the bin d…
kubycsolutions Dec 29, 2023
290d9ba
Improving distro contents.
kubycsolutions Dec 29, 2023
b732943
Go back to calling the top level xalan-j -- slightly clearer, slightl…
kubycsolutions Dec 29, 2023
7c7ce2b
Bin distro looks acceptable though not ideal. Dependencies are being …
kubycsolutions Dec 29, 2023
367c991
Typo
kubycsolutions Dec 29, 2023
5ff2f4f
Improvements to src distribution. NOTE: We aren't bundling xalan-test…
kubycsolutions Dec 29, 2023
fed7bf2
Merged from/reconciled with master
kubycsolutions Dec 31, 2023
0a50016
minor improvements to few of the text of xalanj NOTICE.txt file
mukulga Dec 31, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
16 changes: 0 additions & 16 deletions .classpath

This file was deleted.

37 changes: 21 additions & 16 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,34 +35,39 @@ jobs:
java-version: 8
- name: 'Build Xalan jars'
run: |
ant jar
mvn --no-transfer-progress clean compile site verify
- uses: actions/checkout@v3
name: 'Checkout xalan-test'
with:
repository: apache/xalan-test
path: xalan-test
ref: master
- name: 'Cheat xalan-test up to be sibling of xalan-java'
run: |
mv xalan-test ..; ls ..
- name: 'Run xalan-test tests'
working-directory: xalan-test
working-directory: ../xalan-test
# NOTE: "alltest" target includes conformance tests known not to run in Xalan,
# as well as having dependencies on some targets which have since been edited
# out. The following is our typical minimal build test as documented in README,
# minus conf.xsltc since that one is currently throwing four known failures and
# isn't set up to say "but that's not a regression".
run: |
ant jar extensions.classes smoketest apitest -Dxalan.relpath=../ -Dparserjar=../lib/endorsed/xercesImpl.jar -Dxml-apis.jar=../lib/endorsed/xml-apis.jar

# ant fulldist is failing: in CI
# /home/runner/work/xalan-java/xalan-java/build.xml:1399: /home/runner/work/xalan-java/xalan-test does not exist.
# Error replicated on my system if there is not a sibling xalan-test.
# NOT replicated if sibling xalan-test directory is present
# Simplest fix would be to have the above test checkout emulate the dev environment;
# better would be to fix fulldist to intelligently check both locations;
# best might be to adopt xalan-test back into the xalan repository, if it's no longer being used elsewhere.
- name: 'Cheat xalan-test up to be sibling of xalan-java'
run: |
mv xalan-test ..; ls ..
- id: build_artifacts
# NOTE: Adjustments made for mvn build leaving things in a slightly different
# place than ant build did (and recreating /lib).
run: |
ant fulldist
ls; ant -debug jar extensions.classes smoketest apitest -Dxalan.relpath=../xalan-java -Dparserjar=../xalan-java/lib/xercesImpl-2.12.2.jar -Dxml-apis.jar=../xalan-java/lib/xml-apis-1.4.01.jar

# Build distribution artifacts: Used to pull xalan-test back down as child and
# run fulldist:
# run: |
# ant fulldist
# fulldist isn't currently a separate target in the mvn build process
# A near-equivalent is being performed every time to build the .tar.gz
# and .zip distribution files.
#
# BUT NOTE that the binary distro has traditionally included
# xalan-test as a subdirectory; maven build doesn't yet pull that in.
# Discussion is in progress about whether it is (a) necessary, (b) a good
# idea.
# TODO: REVIEW.
63 changes: 34 additions & 29 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,36 +1,41 @@
/bin/
/build/
/classes/
/.idea/
# Maven output
target/
**/dependency-reduced-pom.xml

# In Maven, dependencies are downloaded during build;
# we don't want to check them in
/tools/

# Xalan "Ant emulation" directories for xalan-test and distribution,
# created by Maven build.
# (xalan-test referenced dependencies from xalan-java; distro may be
# publishing from lib/ though I hope not.)
build/
lib/

# Eclipse configuration
.settings/
.project
.classpath

# IntelliJ IDEA
.idea/
*.iml
.DS_Store

# We download the dependencies if they are missing
/lib/
/tools/java_cup.jar
/tmp/
# MacOS Finder
.DS_Store

# Generated sources
# XPath parser generated during compilation
/src/org/apache/xalan/processor/XSLProcessorVersion.java
/src/org/apache/xalan/xsltc/compiler/XPathLexer.java
/src/org/apache/xalan/xsltc/compiler/XPathParser.java
/src/org/apache/xalan/xsltc/compiler/sym.java
/xdocs/sources/xalan/DONE
/xdocs/sources/xalan/XSLTCDONE

# The following are unpacked from zipfile
# NOTE: Might be simpler to just check 'em in unzipped.
/xdocs/style/graphics/
/xdocs/style/loader.xml
/xdocs/style/resources/
/xdocs/style/stylesheets/any2header.xsl
/xdocs/style/stylesheets/any2project.xsl
/xdocs/style/stylesheets/book2group.xsl
/xdocs/style/stylesheets/book2project.xsl
/xdocs/style/stylesheets/changes2document.xsl
/xdocs/style/stylesheets/context2footer.xsl
/xdocs/style/stylesheets/context2label.xsl
/xdocs/style/stylesheets/directory2project.xsl
/xdocs/style/stylesheets/document2html.xsl
/xdocs/style/stylesheets/faqs2document.xsl
/xdocs/style/stylesheets/group2document.xsl

# Stylebook processing progress flags.
/stylebook/sources/xalan/DONE
/stylebook/sources/xalan/XSLTCDONE

# Various temporary/work directories used by other tools
/bin/
/classes/
/tmp/
33 changes: 0 additions & 33 deletions .project

This file was deleted.

Loading
Loading