Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ name: Release to Sonatype

on:
push:
branches: [develop, main]
tags:
- v*
workflow_dispatch:
Expand Down
26 changes: 19 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -85,17 +85,18 @@ Here is a list of sbt commands for daily development:
> publishLocal # Install to local .ivy2 repository
> publishM2 # Install to local .m2 Maven repository
> publish # Publishing a snapshot version to the Sonatype repository
```

> release # Run the release procedure (set a new version, run tests, upload artifacts, then deploy to Sonatype)
### Publish to Sonatype (Maven Central)

# [optional] When you need to perform the individual release steps manually, use the following commands:
> publishSigned # Publish GPG signed artifacts to the Sonatype repository
> sonatypeBundleRelease # Publish to the Maven Central (It will be synched within less than 4 hours)
```
To publish a new version, you only need to add a new git tag and push it to GitHub. GitHub Action will deploy a new release version to Maven Central (Sonatype).

Once you run a release command, a new git tag v(version number) will be pushed to GitHub. GitHub Action will deploy a new release version to Maven Central (Sonatype).
```scala
$ git tag v0.x.y
$ git push origin v0.x.y
```

For publishing to Maven central using a local machine, msgpack-java uses [sbt-sonatype](https://github.com/xerial/sbt-sonatype) plugin. Set Sonatype account information (user name and password) in the global sbt settings. To protect your password, never include this file in your project.
If you need to publish to Maven central using a local machine, you need to configure [sbt-sonatype](https://github.com/xerial/sbt-sonatype) plugin. First set Sonatype account information (user name and password) in the global sbt settings. To protect your password, never include this file in your project.

___$HOME/.sbt/(sbt-version)/sonatype.sbt___

Expand All @@ -106,6 +107,17 @@ credentials += Credentials("Sonatype Nexus Repository Manager",
"(Sonatype password)")
```

You may also need to configure GPG. See the instruction in [sbt-pgp](https://github.com/sbt/sbt-pgp).

Then, run `publishedSigned` followed by `sonatypeBundleRelease`:
```
# [optional] When you need to perform the individual release steps manually, use the following commands:
> publishSigned # Publish GPG signed artifacts to the Sonatype repository
> sonatypeBundleRelease # Publish to the Maven Central (It will be synched within less than 4 hours)
```

If some sporadic error happens (e.g., Sonatype timeout), rerun `sonatypeBundleRelease` again.

### Project Structure

```
Expand Down
16 changes: 16 additions & 0 deletions RELEASE_NOTES.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,21 @@
# Release Notes

## 0.8.23

* Produce stable map values [#548](https://github.com/msgpack/msgpac-java/pull/#548)
* Fixes #544: Fix a bug in reading EXT32 of 2GB size [#545](https://github.com/msgpack/msgpac-java/pull/545)
* Add a warning note for the usage of MessageUnpacker.readPayloadAsReference [#546](https://github.com/msgpack/msgpac-java/pull/546)

Intenral changes:
* Add a script for releasing a new version of msgpack-java at CI
* Publish a snapshot version for every main branch commit [#556](https://github.com/msgpack/msgpac-java/pull/556)
* Use dynamic versioning with Git tags v0.x.y format [#555](https://github.com/msgpack/msgpac-java/pull/555)
* Update ScalaTest and ScalaCheck versions [#554](https://github.com/msgpack/msgpac-java/pull/554)
* Remove findbugs [#553](https://github.com/msgpack/msgpac-java/pull/553)
* Update build settings to use latest version of sbt and plugins [#552](https://github.com/msgpack/msgpac-java/pull/552)
* Run GitHub Actions for develop and main branches [#551](https://github.com/msgpack/msgpac-java/pull/551)
* Remove Travis build [#550](https://github.com/msgpack/msgpac-java/pull/550)

## 0.8.22
* Support extension type key in Map [#535](https://github.com/msgpack/msgpack-java/pull/535)
* Remove addTargetClass() and addTargetTypeReference() from ExtensionTypeCustomDeserializers [#539](https://github.com/msgpack/msgpack-java/pull/539)
Expand Down
11 changes: 0 additions & 11 deletions build.sbt
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
import ReleaseTransformations._

Global / onChangedBuildSource := ReloadOnSourceChanges

// For performance testing, ensure each test run one-by-one
Expand Down Expand Up @@ -37,15 +35,6 @@ val buildSettings = Seq[Setting[_]](
opts
}
},
// Release settings
releaseProcess := Seq[ReleaseStep](
checkSnapshotDependencies,
inquireVersions,
runClean,
runTest,
tagRelease,
pushChanges
),
// Add sonatype repository settings
publishTo := sonatypePublishToBundle.value,
// Style check config: (sbt-jchekcstyle)
Expand Down
1 change: 0 additions & 1 deletion project/plugins.sbt
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
addSbtPlugin("com.github.sbt" % "sbt-release" % "1.0.15")
addSbtPlugin("org.xerial.sbt" % "sbt-sonatype" % "3.9.7")
addSbtPlugin("com.github.sbt" % "sbt-pgp" % "2.1.2")
// TODO: Fixes jacoco error:
Expand Down