dmitmel / ccloader3

MIT License
2 stars 4 forks source link

Slowly drop package.json completely #6

Open ghost opened 4 years ago

ghost commented 4 years ago

As package.json is directly associated with npm, it is important that we move away from using it. Users should be notified of mods that will stop working once package.json is completely dropped.

dmitmel commented 4 years ago

I don't that users should be notified of this. An initiative by me exists for rewriting mods to new standards, namely ccmod.json manifests and removal of direct calls to simplify and its APIs, and like half of mods are controlled by CCDL, so we won't really encounter much problems when pushing changes for those to upstream repos. However, package.json compatibility still has to remain in the modloader itself (unlike the mod database and mod managers), so that people are able to run mods which can't be really updated by us, i.e. random .ccmods posted on the discord server, or mods intended for usage by one or two people. Also support of package.json isn't really a big deal although it does confuse users by making them think that npm packages are mods and have to be installed into the mods directory. Another possibility is to add a legacy-compatibility flag into the UI which can be turned on by users for running outdated mods if they desire to do that.

TL;DR: support of package.json doesn't cost much and I'd rather not completely remove them from the modloader for historical reasons.

cc @2767mr what do you think about a complete removal of package.json?

ghost commented 4 years ago

Here is my question. What would happen if I had both ccmod.json and package.json?

dmitmel commented 4 years ago

Only ccmod.json is read. This is the intended behavior as it finally allows non-hacky project setups for projects that require npm dependencies.

ghost commented 4 years ago

Nice.