Skip to content

Commit

Permalink
Release 0.1.0
Browse files Browse the repository at this point in the history
  • Loading branch information
ppkarwasz committed May 2, 2023
1 parent 8803d56 commit b49a898
Show file tree
Hide file tree
Showing 7 changed files with 51 additions and 13 deletions.
6 changes: 6 additions & 0 deletions CHANGELOG.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
= 0.1.0 (2023-05-05)

== Added

* https://issues.apache.org/jira/browse/LOG4J2-3638[LOG4J2-3638]: Add bytecode transformation tool to provide location information without reflection. (https://github.com/ppkarwasz[pkarwasz])
* https://issues.apache.org/jira/browse/LOG4J2-673[LOG4J2-673]: Add resource transformer for the Maven Shade Plugin to merge `Log4j2Plugins.dat` plugin caches. Thanks to https://github.com/edwgiz[Eduard Gizatullin]. (https://github.com/ppkarwasz[pkarwasz])
31 changes: 21 additions & 10 deletions RELEASING.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -27,18 +27,29 @@ In the code examples below, assuming the version to be released is `7.8.0`.
. Checkout the release branch: `git checkout -B release/7.8.0 origin/master`
. Perform and commit following changes:
.. Set the `revision` property to `7.8.0` in xref:pom.xml[`pom.xml`]
.. Update the version and date in xref:CHANGELOG.adoc[`CHANGELOG.adoc`]
. Make sure that `./mvnw clean verify` succeeds – if not, commit necessary fixes
. Push the `release/7.8.0` branch
. Run `./mvnw clean deploy`
. Run:
.. Set the `project.build.outputTimestamp` in xref:pom.xml[`pom.xml`] and xref:log4j-transform-parent/pom.xml[`log4j-transform-parent/pom.xml`] to the expected release date (72 hours from now)
.. Release and export the changelog:
+
[source,console]
----
ZIP_FILEPATH="/tmp/apache-log4j-transform-7.8.0-src.zip"
git ls-files -z | xargs -0 zip -9 "$ZIP_FILEPATH" --
gpg --armor --detach-sign "$ZIP_FILEPATH"
sha512sum "$ZIP_FILEPATH" > "$ZIP_FILEPATH.sha512"
./mvnw -N -Dlog4j.changelog.releaseVersion=0.1.0 log4j-changelog:release log4j-changelog:export
----
+
. Make sure that `./mvnw clean verify` succeeds – if not, commit necessary fixes
. Push the `release/7.8.0` branch
. Make sure the associated https://github.com/apache/logging-log4j-tools/actions[GitHub Actions workflow] succeeds:
.. *Signed artifacts* are uploaded to the _Staging Repositories_ in https://repository.apache.org/[repository.apache.org]
.. *Signed sources and their checksum* are uploaded as GitHub Actions workflow artifacts
.. `*rel/7.8.0-rc1*` git tag should be created
+
[IMPORTANT]
====
The ASF infrastructure treats ``rel/``-prefixed git tags special and ensures they are immutable for provenance reasons.
To make the above operation idempotent and allow retries, the release candidate enumeration used in the tag will be incremented automatically; `rel/7.8.0-rc1`, `rel/7.8.0-rc2`, etc.
====
+
If not, commit necessary fixes, push, and repeat.
. _Close_ the repository in https://repository.apache.org/[repository.apache.org]
. Commit _the signed sources and their checksum_ (e.g., `apache-log4j-transform-7.8.0-src.{zip,.zip.asc,.zip.sha512}`) to https://dist.apache.org/repos/dist/dev/logging/log4j[dist.apache.org/repos/dist/**dev**/logging/log4j] Subversion repository and delete any artifacts from old releases
Expand Down Expand Up @@ -94,7 +105,7 @@ With that, the release passes with 3 binding +1 votes from A, B and me.
====
The ASF infrastructure treats ``rel/``-prefixed git tags special and ensures they are immutable for provenance reasons.
====
. Rebase `release/7.8.0` changes to `main`
. Merge `release/7.8.0` changes to `main`
. Set the revision property to the next development version (e.g., `7.9.0-SNAPSHOT`) in xref:pom.xml[`pom.xml`]
. Commit changes and push the `main` branch
. Delete the local and remote copies of the `release/7.8.0` branch
Expand Down
2 changes: 1 addition & 1 deletion log4j-transform-parent/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
<project.build.resourceEncoding>UTF-8</project.build.resourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<!-- `project.build.outputTimestamp` is required for reproducible builds: https://maven.apache.org/guides/mini/guide-reproducible-builds.html -->
<project.build.outputTimestamp>1682714736</project.build.outputTimestamp>
<project.build.outputTimestamp>1683307797</project.build.outputTimestamp>
<!-- disable `maven-site-plugin`-->
<maven.site.skip>true</maven.site.skip>
<maven.site.deploy.skip>true</maven.site.deploy.skip>
Expand Down
4 changes: 2 additions & 2 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@
</distributionManagement>
<properties>
<!-- project version -->
<revision>0.1.0-SNAPSHOT</revision>
<revision>0.1.0</revision>
<!-- `minimalJavaBuildVersion` is employed by `org.apache:apache`,
which is the parent of `org.apache.logging:logging-parent`, which is the parent of us.
`minimalJavaBuildVersion` is used for enforcing the compiler version.
Expand All @@ -95,7 +95,7 @@
<minimalJavaBuildVersion>[17,18)</minimalJavaBuildVersion>
<java.version>8</java.version>
<!-- `project.build.outputTimestamp` is required for reproducible builds: https://maven.apache.org/guides/mini/guide-reproducible-builds.html -->
<project.build.outputTimestamp>1682714736</project.build.outputTimestamp>
<project.build.outputTimestamp>1683307797</project.build.outputTimestamp>
<!-- plugin versions -->
<checksum-maven-plugin.version>1.11</checksum-maven-plugin.version>
<flatten-maven-plugin.version>1.4.1</flatten-maven-plugin.version>
Expand Down
21 changes: 21 additions & 0 deletions src/changelog/0.1.0/.release.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Licensed to the Apache Software Foundation (ASF) under one or more
~ contributor license agreements. See the NOTICE file distributed with
~ this work for additional information regarding copyright ownership.
~ The ASF licenses this file to you under the Apache License, Version 2.0
~ (the "License"); you may not use this file except in compliance with
~ the License. You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<release xmlns="http://logging.apache.org/log4j/changelog"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://logging.apache.org/log4j/changelog https://logging.apache.org/log4j/changelog-0.1.0.xsd"
date="2023-05-05" version="0.1.0"/>

0 comments on commit b49a898

Please sign in to comment.