This allows to remove another jar file from the git repo and the
whole libbuild folder.
The ant task is just a wrapper to call the makensis command. So
there should not be any drawback to remove it.
The releaseNr is now set to a static value in build.properties. We
can increment it there manually and eventually switch to another
version number scheme if we like.
I'm about to make changes to the ant build that require to also be
done to the gradle build. However there is no active developer for
gradle in the YaCy project right now.
The motivation to introduce gradle was primarily to manage dependencies
and not commit them to git anymore. This has been solved by using
ivy.
Additionally, there were (to my understanding) still open tasks to
be completed for the gradle migration, e.g. the Windows build.
I came to YaCy with the intention of packaging it for Debian. It
is currently not feasible use gradle in Debian:
"If you have a choice, we recommend to use a different build system
like Ant or Maven which are better supported in Debian and are more
stable when it comes to Debian Java packaging."
-- https://wiki.debian.org/Java/Packaging/Gradle
It seems Fedora has completely given up on packaging gradle. The
last activity seems to be from 2017:
https://bugzilla.redhat.com/show_bug.cgi?id=1191535
This commit also shows how many files are necessary for gradle while
ant just needs build.xml and ivy.xml. It is also ironic that gradle
was introduced here to get rid of binary files in Git (jars) but
apparently gradle itself needs jar files in the repo to work.
- added multiproject in libbuild to compile and install all needed jars (reproduceing old maven build)
- adjusted GitComInf (use a project version, build script with less hardcoded strings)
- adjusted J7Zip-modified
- include common version number for output jar
- add task installJarToRoot to copy output jar to yacycore /lib
- adjust main build with updated jar names
as files are the same - updated also old build.xml
And the Eclipse specific .classpath (with shall be deleted until complete move to gradle)
- to complete without exception if not run in a git clone (to make the root build complete without build error)
- update gradle-wrapper to same version as root project (v7.3.3)
- Gradle task to execute "packageDist"
- this will create *.tar.gz and *.zip archive
- with legacy file name convention
- archive is created in build/distributions
- for the libbuild J7Zip-modified.jar use fallback as file dependency in lib
as Gradle/Groovy use internal just the classes from subprojects with result
that in above no jar is included in lib but a bunch of *.class files
- added also the option to publish J7Zip-modified.jar to mavenLocal() repo.
- with currently used version
- updated support/subproject J7Zip-modified (in libbuild) to be compilable via Gradle
- added dependency reference as sub-project
- skip the before applied copy of jars to lib directory (no benefit)
- new support library GitComInf to generate a property file for use in Gradle
- adjusted build.gradle to make use of it to create the yacyBuildProperties.java
- including additon of properties ext.filterTokens as store for Gradle
- added gradle-compile-htroot (w/o depends) to old build.xml as target until complete migration
as it is imho important
imho: much to complicated to get a running number - should be supplied by repo or simplified
This is the latest Java 7 compatible jgit release.
Properly support GitHub tags marked as "Pre-release".
With the previous venerable jgit version 1.1.0, a YaCy repository clone
having such a tag made GitRevTask and GitRevMavenTask crash.
This allows to use libbuild/pom as main maven project to build all needed
libs to compile and run YaCy, including YaCy itself.
Furthermore, maven is well supported by Netbeans IDE so we can discontinue
to maintaine Netbeans IDE specific project settings (in directory nbproject,
which lack config for debug anyway, nbproject can be deleted and NB will
compile YaCy via maven).
Additionally adjusted pom's project name to match the name in the repository.
Found 2 more cases were modified code throws exceptions while original J7Zip
unpacks it.
Reimplemented error prone CoderMixer2ST from unmodified J7Zip.jar.
flash supports metadata tag in swf file with metadata in xmp (xml) format.
parse some common data to include it in the head section of the html string
of converttohtml.
This package is not available as jar (used jar is a custom compile as we
use just a portion of the package)
WebCat package is not maintained. To be able to fix bugs, source extract
of swf parser imported here.
- use current YaCy version number
- make use of libbuild\GitRevMavenTask (maven-plugin-gitrevisionnumber)
- make yacyBuildProperties.java available for source filtering by Maven-plugin (copy to libbuild\java-templates)
- update assembly definition to include lib\yacycore.jar without version number (needed this way by startupscript)
- it injects properties which can be used in pom via ${DSTAMP} ${releaseNr} if added as plugin via
<plugin>
<groupId>net.yacy</groupId>
<artifactId>maven-plugin-gitrevisionnumber</artifactId>
<version>1.0</version>
<executions><execution>
<phase>initialize</phase>
<goals><goal>create</goal></goals>
</execution></executions>
</plugin>
do not handle the revision in build.properties anymore
(9000 as fallback)
build-date from git-HEAD (instead when build is fired)
(orginal build-date as fallback)