This guild is for helping project contributors and maintainers get setup and oriented when making changes to TikaOnDotnet.
The first step is to clone the repo using Git.
git clone https://github.com/KevM/tikaondotnet.git
This project uses FAKE for build automation and Paket for managing dependencies.
Note: Your first build should be from the command line to get the assembly version file created.
./build.cmd
The default build will run our Tika text extraction integration tests.
It's easy to produce updated .nupkg
packages.
./build.cmd PackageNugets
Look in ./artifacts
for the resulting .nupkg
files.
When a new Tika release comes out you can follow the instructions below to get on the newest version.
- Edit the
paket.dependencies
file to point to the new release of the Tika Jar file. ./build.cmd PackageNugets
Follow this quick procedure to find the latest Tika release Jar archive:
- Visit the Tika download page
- Click on the Mirrors for tika-app-.jar link.
- Find the Jar hosted on www-us.apache.org.
- Copy this url into
paket.dependencies
.
Note: The automation looks for the Tika Jar file under paket-files/<hostname>/*.jar
. If you do not use the www-us.apache.org url you'll need to update build.fsx
.
When a new release of IKVM comes out you can follow the instructions below to get on the newest version.
- Edit the
paket.dependencies
file
- Point the IKVM tools binary to the new release.
- Point the IKVM nuget to the matching version of the Nuget.
./build.cmd PackageNugets
Note: The automation looks for the IKVM compiler in ./bin/ikvmc.exe
of the expanded archive in paket-files
.
You should make sure that paket.depdendencies
linked to the same version for the Nuget of IKVM and the build tools
//IKVM dependencies - the nuget and tool versions need to be in sync.
nuget IKVM <version>
http http://www.frijters.net/ikvmbin-<version>.zip
Looking for updated versions of IKVM? Check out their blog.
- Update the
Release-Notes.md
adding a new section for the next version. This is really important because it controls the version number of the assemblies and nuget packages. - Tag the release commit.
git tag -a v{version} -m "Ship it!"
- Push the tag
git push origin --tags
Appveyor is setup to to automatically push tagged commits to Nuget.