gbl / CrowdinTranslate

A Minecraft Mod that automatically updates translations from CrowdIn to MC .json files
MIT License
26 stars 12 forks source link

Automatic download happens too late #3

Closed Hugman76 closed 1 year ago

Hugman76 commented 4 years ago

The following bit of code (build.gradle method in the README) downloads the translations into the source AFTER the project was built and not before:

build {
        dependsOn downloadTranslations
}

Also I think the .timestamp file might be useless when using that method?

gbl commented 4 years ago

Yes, the .timestamp file shouldn't be there. The fact that it gets generated is a bug; it should only be generated if you're using this as a mod so it doesn't try every time someone starts Minecraft.

But I can't reproduce the "downloads the translations AFTER the project was built" part. I cloned one of my mods into a new directory, ran gradle build, and verified that the output jar had the translation files (so was built after downloading was complete):

git clone git@github.com:gbl/DurabilityViewer.git
cd DurabilityViewer/
git submodule init
git submodule update
~/SoftwareProjects/MyProjects/MinecraftMods/Fabric/gradlew build

jar tf build/libs/durabilityviewer-1.16.4-fabric0.25.1-1.9.jar

the jar file included all of the language json files.

(The submodule stuff is just because I keep the versioning for all my mods in a separate submodule so I don't have to edit a ton of settings files, all in the same way, whenever MC or Fabric updates, it has nothing to do with the crowdin process And for the same reason, I keep gradle in a central place so I don't have to pollute each and every repo with gradle file copies).

Could you verify this, and if it's reproducable, give me an example where it fails?

gbl commented 4 years ago

Doh, I'm stupid. My last example worked because the language files are commited to the repo. If I remove them just before building, they're not in the jar. Going to check into that.