apace100 / origins-fabric

MIT License
175 stars 167 forks source link

Diverge away from JitPack #682

Open MerchantPug opened 1 year ago

MerchantPug commented 1 year ago

Hi, I'm writing this so you can consider moving away from JitPack for your developer builds.

Why should we see this change?

JitPack is unreliable, basically every build that has happened over 1.19.x and 1.20.x has failed in some way, shape or form. It'd be far more ideal if you were to upload to a custom maven that developers may use in their projects.

What are the benefits to a custom maven?

Well, you'd be able to control your own builds a lot more nicely. Such as being able to push while certain dependencies (see Reach Entity Attributes) have not gotten a proper version of their own. It also has more permanence than JitPack, so if a build works, it'll work forever

Cool! How do I manage this?

You'll need to make a custom block within your build.gradle to support this, then you'd run a gradle command to publish the artefacts. Cool, should be easy enough.

What happens to JitPack?

I'd keep it as a backup for builds to be published to. It's there just in case the maven goes down or fails in some way.

Hosts

maven.merchantpug.net

MerchantPug commented 1 year ago

If you're an addon dev/former addon dev that has thoughts, please comment down below. Let your voices be heard.

MerchantPug commented 1 year ago

I'd also happily weigh up the viable options of potential maven hosts, so volunteers to host the project are appreciated.

apace100 commented 1 year ago

Hi!

I completely agree with you that JitPack - while convenient - is a bit of a nuisance. My biggest gripe with it is the lack of SemVer support. I'd love to include the MC version in my mod's version while respecting SemVer (like 1.0.0+mc1.20.1, which JitPack can't handle (they don't support +).

Regarding the other issues - I'd like to point out that both CurseForge and Modrinth provide Maven repositories to retrieve mods that have been released on their sites! I should probably add that information in the README of my mods.

But, seeing as I do see the benefits, I have started contacting a possible Maven host. :) We'll see how it goes!

MerchantPug commented 1 year ago

Apoli and Calio not being on CurseForge/Modrinth is what kills CurseMaven and Modrinth Maven as options for this mod.

But, it's good to hear that you're open to having the mod hosted through a maven.

apace100 commented 1 year ago

Really? I thought depending on Origins would include the binary of it, meaning it'd include the included libraries as well. I suppose they aren't referrable in your add-on's code then?

On Sun, 16 Jul 2023, 08:08 Pug, @.***> wrote:

Apoli and Calio not being on CurseForge/Modrinth is what kills CurseMaven and Modrinth Maven as options for this mod.

— Reply to this email directly, view it on GitHub https://github.com/apace100/origins-fabric/issues/682#issuecomment-1636991006, or unsubscribe https://github.com/notifications/unsubscribe-auth/ALWSQSRUXT7UFJQYXUFYAITXQOANFANCNFSM6AAAAAA2GUGU2U . You are receiving this because you commented.Message ID: @.***>

MerchantPug commented 1 year ago

I'd have to check, but in use cases where you don't want origins but instead want Apoli/Calio, it's not super helpful.

A maven is definitely the way to go for those two.