Skip to content

Commit

Permalink
Merge branch 'release-0.5.0'
Browse files Browse the repository at this point in the history
  • Loading branch information
jamierocks committed May 21, 2019
2 parents ed8df44 + 28bb8d1 commit cced203
Show file tree
Hide file tree
Showing 109 changed files with 1,873 additions and 691 deletions.
3 changes: 3 additions & 0 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# See https://help.github.com/articles/about-codeowners/

* @jamierocks
28 changes: 15 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,14 @@ Lorenz

Lorenz is a library intended for creating and altering de-obfuscation mappings for Java
programs (compiled or otherwise), this is done independent of the format being used. Lorenz
supports a variety of mapping formats itself:
supports a variety of mapping formats:

- SRG
- CSRG
- TSRG
- Enigma
- JAM
- Kin
- Enigma (through `lorenz-io-enigma`)
- JAM (through `lorenz-io-jam`)
- Kin (through `lorenz-io-kin`)

## Branches

Expand All @@ -29,24 +29,26 @@ implementation can be constructed through `MappingSet.create()`.

Lorenz releases can be obtained through Maven Central:

### Gradle

```groovy
implementation 'org.cadixdev:lorenz:0.5.0'
```

### Maven

```xml
<dependency>
<groupId>me.jamiemansfield</groupId>
<groupId>org.cadixdev</groupId>
<artifactId>lorenz</artifactId>
<version>0.4.3</version>
<version>0.5.0</version>
</dependency>
```

### Gradle

```groovy
compile 'me.jamiemansfield:lorenz:0.4.3'
```
You may also find snapshot artifacts on [Sonatype's OSS repository].

You may also find snapshot artifacts on [Sonatype's OSS repository], and for older
versions on my own Maven repository (`repo.jamiemansfield.me`).
Versions prior to `0.5.0` were made under the `me.jamiemansfield` group, and initial
snapshot releases were made to my personal Maven (`repo.jamiemansfield.me`).

## License

Expand Down
24 changes: 11 additions & 13 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,9 @@ subprojects {
sourceCompatibility = '1.8'
targetCompatibility = '1.8'

group = 'me.jamiemansfield'
group = 'org.cadixdev'
archivesBaseName = project.name.toLowerCase()
version = '0.4.4'
version = '0.5.0'

repositories {
mavenCentral()
Expand All @@ -36,6 +36,10 @@ subprojects {
testRuntime 'org.junit.jupiter:junit-jupiter-engine:5.2.0'
}

test {
useJUnitPlatform()
}

license {
header = rootProject.file('HEADER.txt')
}
Expand Down Expand Up @@ -70,12 +74,6 @@ subprojects {
uploadArchives {
repositories {
mavenDeployer {
// repo.jamiemansfield.me
if (System.getenv('MAVEN_RELEASES') != null && System.getenv('MAVEN_SNAPSHOTS') != null) {
repository(url: 'file://' + System.getenv('MAVEN_RELEASES'))
snapshotRepository(url: 'file://' + System.getenv('MAVEN_SNAPSHOTS'))
}

// Maven Central
if (project.hasProperty('ossrhUsername') && project.hasProperty('ossrhPassword')) {
beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) }
Expand All @@ -100,14 +98,14 @@ subprojects {
inceptionYear = project.inceptionYear

scm {
url = 'https://github.com/jamiemansfield/Lorenz'
connection = 'scm:git:https://github.com/jamiemansfield/Lorenz.git'
developerConnection = 'scm:git:[email protected]:jamiemansfield/Lorenz.git'
url = 'https://github.com/CadixDev/Lorenz'
connection = 'scm:git:https://github.com/CadixDev/Lorenz.git'
developerConnection = 'scm:git:[email protected]:CadixDev/Lorenz.git'
}

issueManagement {
system = 'GitHub'
url = 'https://github.com/jamiemansfield/Lorenz/issues'
url = 'https://github.com/CadixDev/Lorenz/issues'
}

licenses {
Expand Down Expand Up @@ -135,5 +133,5 @@ subprojects {
}

task wrapper(type: Wrapper) {
gradleVersion = '4.1'
gradleVersion = '4.10'
}
51 changes: 51 additions & 0 deletions changelogs/0.5.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
Lorenz 0.5.0
===========

Lorenz 0.5.0 has enjoyed a long development process (beginning the 1st of September!),
and packs a bundle of cool changes. The most notable being the change of package, from
`me.jamiemansfield.lorenz` to `org.cadixdev.lorenz`.

## Modularisation

The long put-off modularisation has finally arrived - with the Enigma, JAM, and Kin
mapping formats being given their own modules.

- Enigma: `org.cadixdev:lorenz-io-enigma:0.5.0`
- JAM: `org.cadixdev:lorenz-io-jam:0.5.0`
- Kin: `org.cadixdev:lorenz-io-kin:0.5.0`

Mapping formats can be introduced through service providers, and `MappingFormats` will
populate a registry with all the formats found. You can get a mapping format, like the
following:

```java
final MappingFormat enigma = MappingFormats.byId("enigma");
final MappingFormat jam = MappingFormats.byId("jam");
final MappingFormat kin = MappingFormats.byId("kin");
```

## Merging and reversing

Mapping sets can now be reversed (`A->B` -> `B->A`), and mapping sets merged
(`A->B` + `B->C` = `A->C`). This can be achieved like the following.

```java
// let a be a MappingSet
// let b be a MappingSet

final MappingSet reversed = a.reverse();
final MappingSet merged = a.merge(b);
```

## Extension Data

Lorenz now supports adding extension data to the mapping model (**no existing formats serialise this
information**).

```java
static final ExtensionKey<String> EXTRA_NAME = new ExtensionKey<>(String.class, "extra_name");

final MappingSet mappings = new MappingSet();
mappings.set(EXTRA_NAME, "Beep Boop");
mappings.get(EXTRA_NAME).get(); // Beep Boop
```
3 changes: 1 addition & 2 deletions gradle.properties
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
# Project Information
name = Lorenz
description = A library for modelling, creating, and manipulating Java de-obfuscation mappings.
url = https://www.jamiemansfield.me/projects/lorenz
inceptionYear = 2016

# Build Settings
bombeVersion = 0.2.0
bombeVersion = 0.3.0
Binary file modified gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
3 changes: 1 addition & 2 deletions gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
#Sat Aug 12 17:37:03 BST 2017
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.10-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-bin.zip
2 changes: 1 addition & 1 deletion lorenz-asm/build.gradle
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
dependencies {
compile project(':lorenz')
compile "me.jamiemansfield:bombe-asm:${rootProject.bombeVersion}"
compile "org.cadixdev:bombe-asm:${rootProject.bombeVersion}"
}

This file was deleted.

Loading

0 comments on commit cced203

Please sign in to comment.