NeoForge icon indicating copy to clipboard operation
NeoForge copied to clipboard

Parchment in NeoDev

Open Matyrobbrt opened this issue 1 year ago • 6 comments

See https://github.com/neoforged/NeoGradle/pull/224

Matyrobbrt avatar Jul 04 '24 16:07 Matyrobbrt

  • [x] Publish PR to GitHub Packages

Last commit published: b1a9cde094956ea24fc115123d69e04bfabaedbf.

PR Publishing

The artifacts published by this PR:

Repository Declaration

In order to use the artifacts published by the PR, add the following repository to your buildscript:

repositories {
    maven {
        name 'Maven for PR #1231' // https://github.com/neoforged/NeoForge/pull/1231
        url 'https://prmaven.neoforged.net/NeoForge/pr1231'
        content {
            includeModule('net.neoforged', 'neoforge')
            includeModule('net.neoforged', 'testframework')
        }
    }
}

MDK installation

In order to setup a MDK using the latest PR version, run the following commands in a terminal.
The script works on both *nix and Windows as long as you have the JDK bin folder on the path.
The script will clone the MDK in a folder named NeoForge-pr1231.
On Powershell you will need to remove the -L flag from the curl invocation.

mkdir NeoForge-pr1231
cd NeoForge-pr1231
curl -L https://prmaven.neoforged.net/NeoForge/pr1231/net/neoforged/neoforge/21.0.91-beta-pr-1231-neodev-parchment/mdk-pr1231.zip -o mdk.zip
jar xf mdk.zip
rm mdk.zip || del mdk.zip

To test a production environment, you can download the installer from here.

Is it possible to make the patches, as checked in to git, not be in parchment? Because otherwise it seems like you'll end up with a bunch of churn in those -- which will require rebasing PRs and whatnot -- just from updating parchment.

lukebemish avatar Jul 04 '24 17:07 lukebemish

The patches on the repo are intentionally in Parchment, as otherwise it's very head to review PRs when you don't know what the local variables represent.

Parchment wouldn't be often updated within Neo, if at all.

Matyrobbrt avatar Jul 04 '24 17:07 Matyrobbrt

Parchment in neodev will have to be updated to not fall behind with MC version changes, right? But yeah, fair enough, if its a rare event and not too many parameters change that's not a huge impact.

That said, I think this PR should document a series of steps to rebase other PRs to match these changes without having to do a bunch of manual stuff, because otherwise it's going to be painful to update any PR with patches.

lukebemish avatar Jul 04 '24 17:07 lukebemish

That said, I think this PR should document a series of steps to rebase_other_ PRs to match these changes without having to do a bunch of manual stuff, because otherwise it's going to be painful to update any PR with patches.

There aren't really non-manual steps, I did it with some NG modifications and Java scripts in random projects. And besides, the amount of PRs that still have old patches will reduce itself to 0 gradually anyway, there's not that many right now.

Matyrobbrt avatar Jul 04 '24 17:07 Matyrobbrt

@Matyrobbrt, this pull request has conflicts, please resolve them for this PR to move forward.

Closing this for now as I've pushed Parchment in NeoDev to the backburner as there are still some things I would like to get figured out first (for one, how to deal with Parchment updates causing parameter renames).

Matyrobbrt avatar Mar 06 '25 18:03 Matyrobbrt