Add support for ParchmentJAM for migrating mapping data #23
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR implements integration with JAMMER/JarAwareMapping in Compass, through the Parchment-specific integration application https://github.com/ParchmentMC/ParchmentJAM, which will resolve #19.
Testing this PR
Aside from configuring your Parchment repository to use this PR (preferrably, via
includeBuild
in thepluginManagement
section of yoursettings.gradle
1), the following should be in the buildscript (either as part of other existing sections, or just copy-pasted at the very bottom):You can determine if the migration system has been configured properly if the console output shows the path of versions which will be taken during migration (
Setting up migration for the following versions in order: [...]
), and themigrateData
task is visible under theparchment
group.Some notes
Yes, the target version can either be forwards or backwards of the current version.
The final data is placed into the staging data environment (
staging
folder), and not directly into the production data environment (data
folder). This allows the user a chance to determine changes between the new data and the old data, and make manual modifications if necessary.Once the user is satisfied with the changes (or this is run in automation), the
promoteStagingToProduction
task can be executed to move the data from staging to production.The migration can also be configured with the
migration-targetVersion
andmigration-excludedVersion
(comma-separated values) project properties.Remaining work:
Footnotes
For example, assuming that this PR is cloned to a directory
Compass
adjacent to your mappings repository, add the lineincludeBuild('../Compass')
under thepluginManagement
block of your mapping repository'ssettings.gradle
file. Upon invoking Gradle (or refreshing your IDE's Gradle integration), you should see mentions of the Compass repository in the console output. ↩