blob: a07f7be35e40ec16c8665e857d6247df1cf98f7b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
#*
* This software is licensed under the Apache 2 license, quoted below.
*
* Copyright 2010 Julien Eluard
*
* Licensed 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.
*#
What is this?
This simple command line tool looks at Java JAR files and determine API changes.
You might download self contained JAR file from {{{https://github.com/downloads/jeluard/semantic-versioning/semver-${project.version}.jar}github}}.
Diff
Dumps all changes between two JARs on standard output.
-----------------------------
% java -jar semantic-versioning-${project.version}.jar previousJar currentJar (includes) (excludes)
Class org.project.MyClass
Added Class
Class org.project.MyClass2
Added Method method1
Removed Field field1
Changed Field field2 removed: final
-----------------------------
Check
Checks compatibility type between two JARs.
-----------------------------
% java -jar semantic-versioning-${project.version}.jar previousJar currentJar (includes) (excludes)
BACKWARD_COMPATIBLE_IMPLEMENTER
-----------------------------
Infer
Infers JAR version based on a previously versioned JAR.
-----------------------------
% java -jar semantic-versioning-${project.version}.jar previousVersion previousJar currentJar (includes) (excludes)
1.0.0
-----------------------------
Validate
Validates JAR version based on a previously versioned JAR.
-----------------------------
% java -jar semantic-versioning-${project.version}.jar previousVersion previousJar currentVersion currentJar (includes) (excludes)
true
-----------------------------
|