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

the build system is messy, let's switch or fix. #62

Closed
duncdrum opened this issue Dec 14, 2018 · 6 comments
Closed

the build system is messy, let's switch or fix. #62

duncdrum opened this issue Dec 14, 2018 · 6 comments

Comments

@duncdrum
Copy link
Contributor

currently the build system requires a full local clone of exist (still pointing to wolfgangs develop clone), this seems all kinds of bad with respect to repeatable builds. There is also around 100 .jar on the classpath for no discernible reason, other then exist/**.jar is quick to type.

I've been able to wiggle these down to 5, but i m stomped by a build that runs on local yet throws weird java io ivy errors on ci. My attempts at mavenizing the build similarly have hit a wall. So hopefully others more deeply versed in ivy and maven for exist can help me out here.

This is the last of the default apps that doesn't sport a repeatable build, so whichever route ivy / maven we should fix this. Since monex is a showstopper for 5.0.0 we should switch the build system before or together with the required changes for the next major release.

Ideally this improved build system should:

  • handle java dependencies gracefully, e.g. using jetty version that actually ship with a given exist version.
  • not include the kitchensink
  • allow us to include additional xquery and java tests
  • allow us to declare and update the frontend js dependencies which are all outdated and not versioned
  • enable monex to be build and tested on travis
@dizzzz
Copy link
Member

dizzzz commented Dec 15, 2018

Please could you put a bit less emotion in your postings? I tend to skip such items completely.

@dizzzz
Copy link
Member

dizzzz commented Dec 15, 2018

Mavenizing the build should probably be not too large of an issue (as long no git *&^%^& submodules are used), but the blocker for a long long time is eXist-db/exist#2140 (the PR is written after more than a half year of work making many fixes in many places). This PR blocks quite some pending work for me, e.g. it does not allow me to work on a few XAR files for more than a year.

@wolfgangmm
Copy link
Member

@dizzzz still there are 6 remaining failures in that PR and unfortunately each is rather hard to fix. I've been working on it for a longer time.

@duncdrum duncdrum changed the title the build system is a mess, let's switch or fix. the build system is messy, let's switch or fix. Dec 15, 2018
@duncdrum
Copy link
Contributor Author

duncdrum commented Dec 15, 2018

@dizzzz while i agree that the xqsuite PR is important, i don't see how it impacts the build over here. There is currently a single xqsuite unit test for monex that might be affected (it passes right now), java tests for console and remoteConsole as well as integrations tests are unaffected by 2140.

@dizzzz
Copy link
Member

dizzzz commented Dec 15, 2018

@wolfgangmm thnx for the info!

@joewiz
Copy link
Member

joewiz commented Dec 17, 2018

Addressed by #63

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants