Skip to content

Commit

Permalink
Release (0.5) preparation
Browse files Browse the repository at this point in the history
  • Loading branch information
kocakosm committed Sep 8, 2023
1 parent f69edcf commit 299e874
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 20 deletions.
4 changes: 4 additions & 0 deletions CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
## 0.5 (2023-09-08)
- Blake2#burn() now returns 'this'
- Code cleanup

## 0.4 (2018-12-21)
- Added a script to easily reproduce/verify a release build
- Javadoc improvements
Expand Down
26 changes: 11 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,27 +1,24 @@
JBlake2 [![CI][1]][2] [![Coverage][3]][4] [![Version][5]][6] [![Javadocs][7]][8] [![License][9]][10]
=======================================================================================================
====================================================================================================

A pure Java (8+) implementation of BLAKE2 ([RFC 7693][11]).


Getting started
---------------

JBlake2 binaries are available from Maven Central repositories.
Download the [latest jar][12] or get it directly from your favorite build tool:

Maven
```xml
<dependency>
<groupId>org.kocakosm</groupId>
<artifactId>jblake2</artifactId>
<version>0.4</version>
<version>0.5</version>
</dependency>
```

Gradle
```groovy
compile 'org.kocakosm:jblake2:0.4'
compile 'org.kocakosm:jblake2:0.5'
```

*Note: module name for the Java Module System is `org.kocakosm.jblake2`.*
Expand All @@ -30,19 +27,19 @@ Gradle
Usage
-----

Browse [API docs][13] for the most recent release.
Browse [API docs][12] for the most recent release.


Reproducing/verifying a release build
-------------------------------------

JBlake2's release builds are reproducible/verifiable since version 0.4. This
means that you can reproduce the released jar by building JBlake2 from source.
See [reproducible-builds.org][14] for more information.
See [reproducible-builds.org][13] for more information.

To verify a particular release build, you'll need an x86_64 machine with GNU
Bash (4.1+), Docker (17.05+), and Git installed.
First, clone the [repository][15] and checkout the desired version tag. Then,
First, clone the [repository][14] and checkout the desired version tag. Then,
run the `verify-build.sh` script located at the project's root. This script
recreates the build environment used to release the version, builds the project
from source, downloads the released jar from Maven Central and checks that the
Expand All @@ -61,7 +58,7 @@ This program is distributed in the hope that it will be useful, but _without any
warranty;_ without even the implied warranty of _merchantability_ or _fitness
for a particular purpose_.

See the [GNU Lesser General Public License][16] for more details.
See the [GNU Lesser General Public License][15] for more details.


Contact
Expand All @@ -81,8 +78,7 @@ kocakosm[@]gmail[dot]com
[9]: https://img.shields.io/badge/license-LGPL_v3-4383c3.svg
[10]: https://www.gnu.org/licenses/lgpl.txt
[11]: https://tools.ietf.org/html/rfc7693
[12]: https://search.maven.org/remote_content?g=org.kocakosm&a=jblake2&v=LATEST
[13]: https://www.javadoc.io/doc/org.kocakosm/jblake2
[14]: https://reproducible-builds.org
[15]: https://github.com/kocakosm/jblake2
[16]: https://www.gnu.org/licenses/lgpl-3.0-standalone.html
[12]: https://www.javadoc.io/doc/org.kocakosm/jblake2
[13]: https://reproducible-builds.org
[14]: https://github.com/kocakosm/jblake2
[15]: https://www.gnu.org/licenses/lgpl-3.0-standalone.html
9 changes: 4 additions & 5 deletions verify-build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ IFS=$'\n\t'
readonly ARCH='x86_64'
readonly MIN_BASH_VERSION='4.1'
readonly MIN_DOCKER_VERSION='17.05'
readonly BASE_IMAGE_NAME='amd64/debian:stretch'
readonly BASE_IMAGE_NAME='amd64/debian:bullseye'
readonly BUILD_IMAGE_NAME='jblake2-build'
readonly ENTRYPOINT_SCRIPT_NAME='entrypoint.sh'

Expand Down Expand Up @@ -139,12 +139,11 @@ build_docker_image()
# available versions of a particular package.
docker build --quiet --tag "${BUILD_IMAGE_NAME}" . -f -<<- EOF
FROM "${BASE_IMAGE_NAME}"
RUN printf 'deb http://snapshot.debian.org/archive/debian/20181220T210254Z/ stretch main' > /etc/apt/sources.list \
RUN printf 'deb https://snapshot.debian.org/archive/debian/20230908T030331Z/ bullseye main' > /etc/apt/sources.list \
&& apt update && apt install -y --no-install-recommends \
curl \
maven=3.3.9-4 \
openjdk-8-jdk-headless=8u181-b13-2~deb9u1 \
openjdk-8-jre-headless=8u181-b13-2~deb9u1 \
maven=3.6.3-5 \
openjdk-17-jdk-headless=17.0.6+10-1~deb11u1 \
&& rm -rf /var/lib/apt/lists/*
COPY . /usr/src/jblake2
WORKDIR /usr/src/jblake2
Expand Down

0 comments on commit 299e874

Please sign in to comment.