more artifact inconsistencies [LUCENE-4681]
- Dominant language
- Java
- Stars
- 3.6k
- Forks
- 1.4k
- Avg merge
- 2d 11h
- Merged PRs (30d)
- 88
Description
Currently the tasks for releasing can easily create artifacts that are inconsistent with each other:
- the source releases (package-tgz-src) targets trigger an svn checkout to ensure the source release has no local modifications or extra files (even svn:ignore'd).
- the binary releases (and maven source/javadoc/binary artifacts too?) unfortunately are not built from this source release, which can differ than the local version.
- users who want to make their own release have to run special source targets (package-local-src-tgz) to make source tgs built from their actual checkout.
I think this can be safer and simpler.
Instead of these special source targets: imagine a prepare-release and a prepare-release-local (or swap it around and have prepare-official-release and prepare-release, i actually like that better, but it doesnt matter).
prepare-official-release would just do an svn:checkout and subant "prepare-release" from that checkout.
this way we know all artifacts are from the same consistent source.
---
Migrated from [LUCENE-4681](https://issues.apache.org/jira/browse/LUCENE-4681) by Robert Muir (@rmuir)
Contributor guide
Research direction
Trace the package-tgz-src and package-local-src-tgz release targets, along with the binary and Maven source, Javadoc, and binary artifact tasks. Check how the SVN checkout and subant invocation currently work, then define the proposed prepare-official-release and prepare-release flow so every artifact comes from one consistent source checkout. Done means the official and local release paths produce consistent artifacts without the special source targets.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- build-system, release
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100