Skip to content

Commit 7836c1d

Browse files
committed
Prepare for release
1 parent b67529f commit 7836c1d

File tree

10 files changed

+109
-37
lines changed

10 files changed

+109
-37
lines changed

.github/workflows/build.yaml

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,19 @@
11
name: build
22

3-
on: [push, pull_request]
3+
on:
4+
pull_request: {}
5+
push:
6+
branches:
7+
- '*'
8+
tags:
9+
- '*'
410

511
jobs:
612
build:
713
runs-on: ubuntu-latest
814

915
steps:
1016
- uses: actions/checkout@v2
11-
1217
- uses: actions/setup-java@v1
1318
with:
1419
java-version: 11
@@ -21,3 +26,17 @@ jobs:
2126
name: dependency-tree-diff.jar
2227
path: build/dependency-tree-diff.jar
2328
if-no-files-found: error
29+
30+
- name: Extract release notes
31+
id: release_notes
32+
if: startsWith(github.ref, 'refs/tags/')
33+
uses: ffurrer2/extract-release-notes@v1
34+
35+
- name: Create Release
36+
if: startsWith(github.ref, 'refs/tags/')
37+
uses: softprops/action-gh-release@v1
38+
with:
39+
body: ${{ steps.release_notes.outputs.release_notes }}
40+
files: build/dependency-tree-diff.jar
41+
env:
42+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

CHANGELOG.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# Change Log
2+
3+
## [Unreleased]
4+
5+
## [1.0.0] - 2020-08-24
6+
7+
Initial release
8+
9+
10+
[Unreleased]: https://github.com/JakeWharton/dependency-watch/compare/1.0.0...HEAD
11+
[1.0.0]: https://github.com/JakeWharton/dependency-watch/releases/tag/1.0.0

README.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,21 @@ $ ./dependency-tree-diff.jar old.txt new.txt
9090

9191
See `src/test/fixtures/` for example outputs and their expected diffs.
9292

93+
## Install
94+
95+
**Mac OS**
96+
97+
```
98+
$ brew install JakeWharton/repo/dependency-tree-diff
99+
```
100+
101+
**Other**
102+
103+
Download standalone JAR from
104+
[latest release](https://github.com/JakeWharton/dependency-tree-diff/releases/latest).
105+
On MacOS and Linux you can `chmod +x` and execute the `.jar` directly.
106+
On Windows use `java -jar`.
107+
93108

94109
## License
95110

RELEASING.md

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# Releasing
2+
3+
1. Update the `CHANGELOG.md`:
4+
1. Change the `Unreleased` header to the release version.
5+
2. Add a link URL to ensure the header link works.
6+
3. Add a new `Unreleased` section to the top.
7+
8+
2. Commit
9+
10+
```
11+
$ git commit -am "Prepare version X.Y.X"
12+
```
13+
14+
3. Tag
15+
16+
```
17+
$ git tag -am "Version X.Y.Z" X.Y.Z
18+
```
19+
20+
4. Push!
21+
22+
```
23+
$ git push && git push --tags
24+
```
25+
26+
This will trigger a GitHub Action workflow which will create a GitHub release, upload the
27+
jar, and send a PR to the Homebrew repo.
28+
29+
5. Find [the Homebrew PR](https://github.com/JakeWharton/homebrew-repo/pulls) and merge it!

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ def fatJarProvider = tasks.register('fatJar', Jar) { task ->
2424
task.classifier 'fat'
2525

2626
task.manifest {
27-
attributes 'Main-Class': 'com.jakewharton.gradle.dependencies.diff.Main'
27+
attributes 'Main-Class': 'com.jakewharton.gradle.dependencies.DependencyTreeDiff'
2828
}
2929

3030
def sourceClasses = sourceSets.main.output.classesDirs

src/main/kotlin/com/jakewharton/gradle/dependencies/diff/nio.kt

Lines changed: 0 additions & 10 deletions
This file was deleted.
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
@file:JvmName("DependencyTreeDiff")
2+
3+
package com.jakewharton.gradle.dependencies
4+
5+
import java.nio.charset.Charset
6+
import java.nio.charset.StandardCharsets
7+
import java.nio.file.Files
8+
import java.nio.file.Path
9+
import java.nio.file.Paths
10+
import kotlin.system.exitProcess
11+
12+
fun main(vararg args: String) {
13+
if (args.size != 2) {
14+
System.err.println("Usage: dependency-tree-diff old.txt new.txt")
15+
exitProcess(1)
16+
}
17+
18+
val old = args[0].let(Paths::get).readText()
19+
val new = args[1].let(Paths::get).readText()
20+
21+
print(dependencyTreeDiff(old, new))
22+
}
23+
24+
// TODO replace with https://youtrack.jetbrains.com/issue/KT-19192
25+
@Suppress("NOTHING_TO_INLINE")
26+
private inline fun Path.readText(charset: Charset = StandardCharsets.UTF_8): String {
27+
return Files.readAllBytes(this).toString(charset)
28+
}

src/main/kotlin/com/jakewharton/gradle/dependencies/diff/main.kt renamed to src/main/kotlin/com/jakewharton/gradle/dependencies/treeDiff.kt

Lines changed: 2 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,8 @@
1-
@file:JvmName("Main")
1+
@file:JvmName("DependencyTrees")
22

3-
package com.jakewharton.gradle.dependencies.diff
3+
package com.jakewharton.gradle.dependencies
44

5-
import java.nio.file.Paths
65
import java.util.ArrayDeque
7-
import kotlin.system.exitProcess
8-
9-
fun main(vararg args: String) {
10-
if (args.size != 2) {
11-
System.err.println("Usage: dependency-tree-diff old.txt new.txt")
12-
exitProcess(1)
13-
}
14-
15-
val old = args[0].let(Paths::get).readText()
16-
val new = args[1].let(Paths::get).readText()
17-
18-
print(dependencyTreeDiff(old, new))
19-
}
206

217
fun dependencyTreeDiff(old: String, new: String): String {
228
val oldPaths = findDependencyPaths(old)
@@ -76,12 +62,6 @@ private fun buildTree(paths: Iterable<List<String>>): List<Node> {
7662
return rootNodes
7763
}
7864

79-
private fun diffTrees(oldTree: List<Node>, newTree: List<Node>): String {
80-
return buildString {
81-
appendDiff(oldTree, newTree, "")
82-
}
83-
}
84-
8565
private fun StringBuilder.appendDiff(
8666
oldTree: List<Node>,
8767
newTree: List<Node>,

src/main/rules.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@
22
-allowaccessmodification
33
-keepattributes SourceFile, LineNumberTable
44

5-
-keep class com.jakewharton.gradle.dependencies.diff.Main {
5+
-keep class com.jakewharton.gradle.dependencies.DependencyTreeDiff {
66
public static void main(java.lang.String[]);
77
}

src/test/kotlin/com/jakewharton/gradle/dependencies/diff/FixtureTest.kt renamed to src/test/kotlin/com/jakewharton/gradle/dependencies/FixtureTest.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.jakewharton.gradle.dependencies.diff
1+
package com.jakewharton.gradle.dependencies
22

33
import com.google.common.truth.Truth.assertThat
44
import org.junit.Test

0 commit comments

Comments
 (0)