Bintray is shutting down. Current data will remain available only until May 1, 2021. After that, OmegaT will no longer be buildable for users who don't already have the affected packages in their local cache.
We use the following packages on Bintray:
The ones still in use will need to be migrated to another host. Which host to use is undecided. Candidates:
Diff:
Diff:
Related
Bugs:
#813Bugs: #814
Dependency: dictzip-java is also hosted on bintray/JCenter that should be also migrated and omegat should see it.
Last edit: Hiroshi Miura 2021-02-08
Thanks for pointing that out.
Gitlab package & registory may be alternative.
Thanks for that. I'm worried about Maven Central (cumbersome process) and GitHub (restrictive transfer limits outside of GitHub) so it's good to have some more options.
Diff:
Related
Bugs:
#813Bugs: #814
Diff:
Diff:
A friend has recommended https://jitpack.io/, in case it helps.
They claims "jitpack is always free for Open-Source". It seems a candidate.
Jitpack trial report
I've tried jitpack.io on the project EB4j https://github.com/eb4j/eb4j
howto
I've just refer jitpack.io repository on omegat-plugin-epwing project(user project).
repositories { maven { url = uri("https://jitpack.io") } }
Reload gradle project of user project: omegat-plugin-epwing
It is easy for library projects hosted on github, that produce just a library artifact.
jitpack.io seems to see Github releases to get version tag/commit id.
evaluation
I cannot succeed to use a package on jitpack.io in my downstream project.
I give up to use jitpack.io now.
Last edit: Hiroshi Miura 2021-03-11
Jitpack trial report(2)
For build dependency, I've checked capability with jitpack.io.
It is not good for OmegaT delivery process.
DesktopSupport become a failure on jitpack build process.
https://jitpack.io/#amake/desktopsupport
dictzip and supertmxmerge have passed the build.
https://jitpack.io/#amake/supertmxmerge
https://jitpack.io/#dictzip/dictzip-java
A modification is like as follows;
Thank you so much for your investigations! It's very helpful.
PackageCloud.io is another candidate.
https://packagecloud.io/pricing
they said
Github package repository
Currently they don't have a configuration to publish package to public without authentication. User who want to use published package need to authenticate on Github with read permission for target package repository.
Example for publish: https://github.com/eb4j/eb4j
Example for reference: https://github.com/miurahr/omegat-plugin-epwing
Last edit: Hiroshi Miura 2021-03-11
For OSS project, github package repository is available to ALL Github users.
A dummy gh account, which is not a member of group of the repository, can access public repository with a credential of dummy account.
It means that developers and translation team admins, who want to use package from github package repository, should register github service and authenticate its id/pass_or_token to download our package.
It is ok for plugin developers who have already used github.
It is ok for translation admins who use github as team repository and gh actions as a QA process by using Gradle's omegat plugin.
It may be acceptable for OmegaT build process, because known core developers have already been a github user.
Gitlab packages
I've tried gitlab packages with following gradle configuration, but not succeeded because of server error for upload.
Azure Artifacts is another alternative.
It costs free up-to 2GB packages.
https://docs.microsoft.com/en-us/azure/devops/artifacts/get-started-maven?view=azure-devops
MavenCentral/OSSRH/sonatype
I've just started to trying register dictzip project. to sonatype OSSRH repository, that is a way to publish it on MavenCentral.
https://issues.sonatype.org/browse/OSSRH-65704
I'd like to feedback my experience here.
Sonatype upgraded their service n Febrary, because many developers who have used JCenter register to MavenCenteral.
They now run nexus https://s01.oss.sonatype.org/ with better resources.
Last edit: Hiroshi Miura 2021-03-14
You can find a process and code how to publish on OSSRH/MavenCentral
I've used a nexus publish plugin for gradle and github actions for process automation.
id "io.github.gradle-nexus.publish-plugin" version "1.0.0"
configuration for signing, accepting key from environment.
https://github.com/eb4j/eb4j/blob/master/build.gradle#L138-L162
automate a publish process by github actions and project secrets configuration.
https://github.com/eb4j/eb4j/blob/master/.github/workflows/build-release-and-upload.yml#L40-L49
I'd like to propose to add MavenCentral and Github Packages.
https://github.com/omegat-org/omegat/pull/79
Thanks very much for your reports, Hiroshi.
I am wary of any host other than Maven Central disappearing the same way JCenter will soon. So I am looking to move all of our packages to Maven Central via Sonatype OSSRH. I've submitted tickets for my own packages and if all goes well I will move the OmegaT packages as well.
I thought about implementing [#1299] to avoid having to move some of the dependencies to Maven Central, but I decided that it's important to move everything so that historical versions of OmegaT can be built without too much trouble.
Related
Feature Requests: #1299