Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Split-off coremod and mod classes #2604

Closed
wants to merge 1 commit into from
Closed

Split-off coremod and mod classes #2604

wants to merge 1 commit into from

Conversation

Prototik
Copy link

Split-off coremod and mod classes due to classloading errors with SpongeForge.

Issue reported in #2509, first revision of PR (#2483) was rejected due to naming conventions, so I tried to keep old coremod name and give appeng.transformer.AppEng to mod class.

@yueh yueh closed this Nov 12, 2016
@Prototik
Copy link
Author

@yueh any comments why it's closed?

@Prototik
Copy link
Author

@yueh @shartte anyone?

@Cloudhunter
Copy link

I've been using the auto build from the PR for two days now - appears to working well. I'd much love for this to be merged into the mainline, so that I don't have to use an unofficial build just to keep Sponge!

@Prototik
Copy link
Author

So heated discussion...

@shartte
Copy link
Member

shartte commented Nov 20, 2016

See #2636
If you want to contribute, you can help review that...

@KasperFranz
Copy link

@shartte but it didn't get implemented with that, and making that still a problem.

@Prototik tried to fix it with #2670

You guys are really making it hard for everyone :/, since we have to use a custom fork which includes this or similar fixes - since not running sponge is not really an option when having a large server.

@yueh
Copy link
Member

yueh commented Dec 15, 2016

It is still just a bandaid not a fix. Forge is even considering getting rid of coremods completely. So we might have to replace it completely. It should be doable to dynamically generate bytecode for things like TileEntity as they have a factory method. But that might not apply to every use case we need. So worst case we have to use LaunchWrapper or inject our own classloader somehow, etc.

So now is your chance to actually provide some constructive feedback about how we can remove the coremod completely, while still maintaining the same feature set. Instead of just complaining that you have to put a few minutes of effort into applying a patch and run ./gradlew build.

Because once we find and choose an approach, we will most likely stick to it as it will probably be not a trivial effort to get it working. Which can also mean it might no longer be compatible with sponge at all. Not just some random loading of forge classes (which can be trivially fixed).

At that point it will be more or less "The issue was open for a long time. You did not raise any concerns about whatever solution or suggest an approach. We consider that as tacit approval. Now deal with it."

I doubt anyone of you will appreciate a solution, which pretty much cannot be reverted anytime and completely break it for you (neither do we). But applying the band-aid now means you can ignore it and have to face the actual solution in a few weeks or months. Whatever it will be.

@Dockter
Copy link

Dockter commented Jan 5, 2017

Correct me if I am wrong but a duct tape fix is better than telling your server user base to use a custom fork or recompile it yourself isn't it?

It's my understanding that the patch the SpongeTeam recommended didn't interfere with any subsystem. Feel free to correct me if I am making the wrong assumption.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Mar 28, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants