Skip to content

Commit

Permalink
Merge pull request #658 from ably/release/1.2.5
Browse files Browse the repository at this point in the history
Release/1.2.5
  • Loading branch information
QuintinWillison authored Mar 4, 2021
2 parents a6f0431 + cd4ae2e commit ef24bfc
Show file tree
Hide file tree
Showing 5 changed files with 29 additions and 13 deletions.
16 changes: 16 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,21 @@
# Change Log

## [v1.2.5](https://github.com/ably/ably-java/tree/v1.2.5)

[Full Changelog](https://github.com/ably/ably-java/compare/v1.2.4...v1.2.5)

**Fixed bugs:**

- Crypto.getRandomMessageId isn't working as intended [\#654](https://github.com/ably/ably-java/issues/654)
- Hosts class is not thread safe [\#650](https://github.com/ably/ably-java/issues/650)
- AblyBase.InternalChannels is not thread-safe [\#649](https://github.com/ably/ably-java/issues/649)

**Merged pull requests:**

- Makes the Hosts class safe to be called from any thread [\#657](https://github.com/ably/ably-java/pull/657) ([QuintinWillison](https://github.com/QuintinWillison))
- Fix getRandomMessageId [\#656](https://github.com/ably/ably-java/pull/656) ([sacOO7](https://github.com/sacOO7))
- Improve channel map operations in respect of thread-safety [\#655](https://github.com/ably/ably-java/pull/655) ([QuintinWillison](https://github.com/QuintinWillison))

## [v1.2.4](https://github.com/ably/ably-java/tree/v1.2.4)

[Full Changelog](https://github.com/ably/ably-java/compare/v1.2.3...v1.2.4)
Expand Down
20 changes: 10 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,13 +34,13 @@ Reference the library by including a compile dependency reference in your gradle
For [Java](https://bintray.com/ably-io/ably/ably-java/_latestVersion):

```
compile 'io.ably:ably-java:1.2.4'
compile 'io.ably:ably-java:1.2.5'
```

For [Android](https://bintray.com/ably-io/ably/ably-android/_latestVersion):

```
compile 'io.ably:ably-android:1.2.4'
compile 'io.ably:ably-android:1.2.5'
```

The library is hosted on the [Jcenter repository](https://bintray.com/ably-io/ably), so you need to ensure that the repo is referenced also; IDEs will typically include this by default:
Expand Down Expand Up @@ -609,15 +609,15 @@ Configuration of Run/Debug configurations for running the unit tests on Android

This library uses [semantic versioning](http://semver.org/). For each release, the following needs to be done:

1. Create a branch for the release, named like `release/1.2.4`
1. Create a branch for the release, named like `release/1.2.5`
2. Replace all references of the current version number with the new version number (check this file [README.md](./README.md) and [common.gradle](./common.gradle)) and commit the changes
3. Run [`github_changelog_generator`](https://github.com/skywinder/Github-Changelog-Generator) to update the [CHANGELOG](./CHANGELOG.md):
* This might work: `github_changelog_generator -u ably -p ably-java --header-label="# Changelog" --release-branch=release/1.2.4 --future-release=v1.2.4`
* But your mileage may vary as it can error. Perhaps more reliable is something like: `github_changelog_generator -u ably -p ably-java --since-tag v1.2.3 --output delta.md` and then manually merge the delta contents in to the main change log
* This might work: `github_changelog_generator -u ably -p ably-java --header-label="# Changelog" --release-branch=release/1.2.5 --future-release=v1.2.5`
* But your mileage may vary as it can error. Perhaps more reliable is something like: `github_changelog_generator -u ably -p ably-java --since-tag v1.2.4 --output delta.md` and then manually merge the delta contents in to the main change log
4. Commit [CHANGELOG](./CHANGELOG.md)
5. Make a PR against `main`
6. Once the PR is approved, merge it into `main`
7. Add a tag and push to origin - e.g.: `git tag v1.2.4 && git push origin v1.2.4`
7. Add a tag and push to origin - e.g.: `git tag v1.2.5 && git push origin v1.2.5`
8. Create the release on Github including populating the release notes (needed so JFrog can pull them in)
9. Assemble and Upload ([see below](#publishing-to-jcenter-and-maven-central) for details) - but the overall order to follow is:
1. Upload to Bintray and use the pushed tag, which will pull in the associated release notes
Expand Down Expand Up @@ -645,18 +645,18 @@ We publish to:

The `java` release process goes as follows:

* Go to the home page for the package; eg https://bintray.com/ably-io/ably/ably-java. Select Add a version, enter the new version such as "1.2.4" in name and save
* Go to the home page for the package; eg https://bintray.com/ably-io/ably/ably-java. Select Add a version, enter the new version such as "1.2.5" in name and save
* Run `./gradlew java:assembleRelease` locally to generate the files
* Open local relative folder in Finder, such as `./java/build/release/1.2.4/io/ably/ably-java/1.2.4`
* Go to the new version in JFrog Bintray; eg https://bintray.com/ably-io/ably/ably-java/1.2.4, then click on the link to upload via the UI in the "Upload files" section
* Open local relative folder in Finder, such as `./java/build/release/1.2.5/io/ably/ably-java/1.2.5`
* Go to the new version in JFrog Bintray; eg https://bintray.com/ably-io/ably/ably-java/1.2.5, then click on the link to upload via the UI in the "Upload files" section
* Drag in the files from Finder, just the `.jar` files and the `.pom` file. JFrog will fill in the "Target Path" box after you drop the files in. Click the "Upload" button.
* You will see a notice something like "4 unpublished files in your version. Will be deleted in 6 days and 22 hours. Publish all or Delete all unpublished files.", make sure you click "Publish all". Wait a few minutes and check that what's uploaded looks like what was uploaded for previous releases. The `maven-metadata` files are created by JFrog.
* Update the README text in Bintray (version number needs incrementing).

Similarly for the `android` release at https://bintray.com/ably-io/ably/ably-android:

* Run `./gradlew android:assembleRelease` locally to generate the files, and drag in the files in
`./android/build/release/1.2.4/io/ably/ably-android/1.2.4`.
`./android/build/release/1.2.5/io/ably/ably-android/1.2.5`.
* In this case upload the `.jar` files, the `.pom` file and the `.aar` file.

#### Releasing to Maven Central (Sonatype Nexus)
Expand Down
2 changes: 1 addition & 1 deletion common.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ repositories {
}

group = 'io.ably'
version = '1.2.4'
version = '1.2.5'
description = 'Ably java client library'

tasks.withType(Javadoc) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ public void realtime_websocket_param_test() {
* Defaults.ABLY_LIB_PARAM, as ultimately the request param has been derived from those values.
*/
assertEquals("Verify correct lib version", requestParameters.get("lib"),
Collections.singletonList("java-1.2.4"));
Collections.singletonList("java-1.2.5"));

/* Spec RTN2a */
assertEquals("Verify correct format", requestParameters.get("format"),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ public void header_lib_channel_publish() {
*/
Assert.assertNotNull("Expected headers", headers);
Assert.assertEquals(headers.get("x-ably-version"), "1.2");
Assert.assertEquals(headers.get("x-ably-lib"), "java-1.2.4");
Assert.assertEquals(headers.get("x-ably-lib"), "java-1.2.5");
} catch (AblyException e) {
e.printStackTrace();
Assert.fail("header_lib_channel_publish: Unexpected exception");
Expand Down

0 comments on commit ef24bfc

Please sign in to comment.