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

torquebox.org is DOWN #124

Closed
AddisonSnyder opened this issue May 4, 2022 · 19 comments
Closed

torquebox.org is DOWN #124

AddisonSnyder opened this issue May 4, 2022 · 19 comments
Milestone

Comments

@AddisonSnyder
Copy link

Can't pull any maven dependencies. WHOIS showed that the domain expired on the 1st of May. Is the maintainer alive??

@abelsromero
Copy link
Contributor

abelsromero commented Apr 15, 2023

As a workaround, is the old IP still available and known?

@abelsromero
Copy link
Contributor

Current tests should report the issue https://github.com/torquebox/jruby-maven-plugins/blob/master/gem-maven-plugin/src/it/include-rubygems-in-test-resources/pom.xml.

In the past, we used this #88 (comment) but it's also failing now. Any suggestions or alternative?

@headius
Copy link
Member

headius commented May 1, 2023

@abelsromero what exactly is the problem with using the maven gem plugin? JRuby currently uses that plugin as part of our regular build.

@abelsromero
Copy link
Contributor

abelsromero commented May 1, 2023

thanks!
The issue is with the initialize goal. You can use https://github.com/asciidoctor/asciidoctor-maven-examples/blob/main/asciidoc-to-html-multipage-example/pom.xml as a reproducer (clone repo, cd into asciidoc-to-html-multipage-example, run mvn). To my understanding, the gem resolution fails and I started noticing this around the time torquebox went down. But I admit I have my doubts about the origin of the issue, I thought using <url>mavengem:https://rubygems.org</url> skipped that, but you can see in the error that it's not able to find the game using the rubygems

Downloading from mavengems: mavengem:https://rubygems.org/rubygems/asciidoctor-multipage/0.0.16/asciidoctor-multipage-0.0.16.pom
Downloading from central: https://repo.maven.apache.org/maven2/rubygems/asciidoctor-multipage/0.0.16/asciidoctor-multipage-0.0.16.pom
[INFO] Scanning for projects...
[INFO] 
[INFO] ------< org.asciidoctor.maven:asciidoc-to-html-multipage-example >------
[INFO] Building AsciiDoc to Multiple HTML Pages Maven Example 1.0.0-SNAPSHOT
[INFO]   from pom.xml
[INFO] --------------------------------[ jar ]---------------------------------
[WARNING] The POM for rubygems:asciidoctor-multipage:gem:0.0.16 is missing, no dependency information available
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  0.255 s
[INFO] Finished at: 2023-05-01T21:07:03+02:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project asciidoc-to-html-multipage-example: Could not resolve dependencies for project org.asciidoctor.maven:asciidoc-to-html-multipage-example:jar:1.0.0-SNAPSHOT: The following artifacts could not be resolved: rubygems:asciidoctor-multipage:gem:0.0.16 (absent): rubygems:asciidoctor-multipage:gem:0.0.16 was not found in mavengem:https://rubygems.org during a previous attempt. This failure was cached in the local repository and resolution is not reattempted until the update interval of mavengems has elapsed or updates are forced -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:

~/.../asciidoctor-maven-examples/asciidoc-to-html-multipage-example >>> mvn -e                                                                  ±[main]
[INFO] Error stacktraces are turned on.
[INFO] Scanning for projects...
[INFO] 
[INFO] ------< org.asciidoctor.maven:asciidoc-to-html-multipage-example >------
[INFO] Building AsciiDoc to Multiple HTML Pages Maven Example 1.0.0-SNAPSHOT
[INFO]   from pom.xml
[INFO] --------------------------------[ jar ]---------------------------------
Downloading from mavengems: mavengem:https://rubygems.org/rubygems/asciidoctor-multipage/0.0.16/asciidoctor-multipage-0.0.16.pom
Downloading from central: https://repo.maven.apache.org/maven2/rubygems/asciidoctor-multipage/0.0.16/asciidoctor-multipage-0.0.16.pom
[WARNING] The POM for rubygems:asciidoctor-multipage:gem:0.0.16 is missing, no dependency information available
Downloading from mavengems: mavengem:https://rubygems.org/rubygems/asciidoctor-multipage/0.0.16/asciidoctor-multipage-0.0.16.gem
Downloading from central: https://repo.maven.apache.org/maven2/rubygems/asciidoctor-multipage/0.0.16/asciidoctor-multipage-0.0.16.gem
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  3.262 s
[INFO] Finished at: 2023-05-01T21:08:45+02:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project asciidoc-to-html-multipage-example: Could not resolve dependencies for project org.asciidoctor.maven:asciidoc-to-html-multipage-example:jar:1.0.0-SNAPSHOT: The following artifacts could not be resolved: rubygems:asciidoctor-multipage:gem:0.0.16 (absent): Could not find artifact rubygems:asciidoctor-multipage:gem:0.0.16 in mavengems (mavengem:https://rubygems.org) -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal on project asciidoc-to-html-multipage-example: Could not resolve dependencies for project org.asciidoctor.maven:asciidoc-to-html-multipage-example:jar:1.0.0-SNAPSHOT: The following artifacts could not be resolved: rubygems:asciidoctor-multipage:gem:0.0.16 (absent): Could not find artifact rubygems:asciidoctor-multipage:gem:0.0.16 in mavengems (mavengem:https://rubygems.org)
    at org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.getDependencies (LifecycleDependencyResolver.java:252)
    at org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.resolveProjectDependencies (LifecycleDependencyResolver.java:145)
    at org.apache.maven.lifecycle.internal.MojoExecutor.ensureDependenciesAreResolved (MojoExecutor.java:369)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:327)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:213)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:175)
    at org.apache.maven.lifecycle.internal.MojoExecutor.access$000 (MojoExecutor.java:76)
    at org.apache.maven.lifecycle.internal.MojoExecutor$1.run (MojoExecutor.java:163)
    at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute (DefaultMojosExecutionStrategy.java:39)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:160)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:105)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:73)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:53)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:118)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:261)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:173)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:101)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:827)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:272)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:195)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
Caused by: org.apache.maven.project.DependencyResolutionException: Could not resolve dependencies for project org.asciidoctor.maven:asciidoc-to-html-multipage-example:jar:1.0.0-SNAPSHOT: The following artifacts could not be resolved: rubygems:asciidoctor-multipage:gem:0.0.16 (absent): Could not find artifact rubygems:asciidoctor-multipage:gem:0.0.16 in mavengems (mavengem:https://rubygems.org)
    at org.apache.maven.project.DefaultProjectDependenciesResolver.resolve (DefaultProjectDependenciesResolver.java:187)
    at org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.getDependencies (LifecycleDependencyResolver.java:233)
    at org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.resolveProjectDependencies (LifecycleDependencyResolver.java:145)
    at org.apache.maven.lifecycle.internal.MojoExecutor.ensureDependenciesAreResolved (MojoExecutor.java:369)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:327)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:213)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:175)
    at org.apache.maven.lifecycle.internal.MojoExecutor.access$000 (MojoExecutor.java:76)
    at org.apache.maven.lifecycle.internal.MojoExecutor$1.run (MojoExecutor.java:163)
    at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute (DefaultMojosExecutionStrategy.java:39)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:160)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:105)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:73)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:53)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:118)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:261)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:173)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:101)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:827)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:272)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:195)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
Caused by: org.eclipse.aether.resolution.DependencyResolutionException: The following artifacts could not be resolved: rubygems:asciidoctor-multipage:gem:0.0.16 (absent): Could not find artifact rubygems:asciidoctor-multipage:gem:0.0.16 in mavengems (mavengem:https://rubygems.org)
    at org.eclipse.aether.internal.impl.DefaultRepositorySystem.resolveDependencies (DefaultRepositorySystem.java:364)
    at org.apache.maven.project.DefaultProjectDependenciesResolver.resolve (DefaultProjectDependenciesResolver.java:182)
    at org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.getDependencies (LifecycleDependencyResolver.java:233)
    at org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.resolveProjectDependencies (LifecycleDependencyResolver.java:145)
    at org.apache.maven.lifecycle.internal.MojoExecutor.ensureDependenciesAreResolved (MojoExecutor.java:369)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:327)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:213)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:175)
    at org.apache.maven.lifecycle.internal.MojoExecutor.access$000 (MojoExecutor.java:76)
    at org.apache.maven.lifecycle.internal.MojoExecutor$1.run (MojoExecutor.java:163)
    at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute (DefaultMojosExecutionStrategy.java:39)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:160)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:105)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:73)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:53)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:118)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:261)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:173)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:101)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:827)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:272)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:195)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
Caused by: org.eclipse.aether.resolution.ArtifactResolutionException: The following artifacts could not be resolved: rubygems:asciidoctor-multipage:gem:0.0.16 (absent): Could not find artifact rubygems:asciidoctor-multipage:gem:0.0.16 in mavengems (mavengem:https://rubygems.org)
    at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve (DefaultArtifactResolver.java:456)
    at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifacts (DefaultArtifactResolver.java:261)
    at org.eclipse.aether.internal.impl.DefaultRepositorySystem.resolveDependencies (DefaultRepositorySystem.java:352)
    at org.apache.maven.project.DefaultProjectDependenciesResolver.resolve (DefaultProjectDependenciesResolver.java:182)
    at org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.getDependencies (LifecycleDependencyResolver.java:233)
    at org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.resolveProjectDependencies (LifecycleDependencyResolver.java:145)
    at org.apache.maven.lifecycle.internal.MojoExecutor.ensureDependenciesAreResolved (MojoExecutor.java:369)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:327)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:213)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:175)
    at org.apache.maven.lifecycle.internal.MojoExecutor.access$000 (MojoExecutor.java:76)
    at org.apache.maven.lifecycle.internal.MojoExecutor$1.run (MojoExecutor.java:163)
    at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute (DefaultMojosExecutionStrategy.java:39)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:160)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:105)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:73)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:53)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:118)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:261)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:173)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:101)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:827)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:272)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:195)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
Caused by: org.eclipse.aether.transfer.ArtifactNotFoundException: Could not find artifact rubygems:asciidoctor-multipage:gem:0.0.16 in mavengems (mavengem:https://rubygems.org)
    at org.eclipse.aether.connector.basic.ArtifactTransportListener.transferFailed (ArtifactTransportListener.java:42)
    at org.eclipse.aether.connector.basic.BasicRepositoryConnector$TaskRunner.run (BasicRepositoryConnector.java:417)
    at org.eclipse.aether.connector.basic.BasicRepositoryConnector.get (BasicRepositoryConnector.java:260)
    at org.eclipse.aether.internal.impl.DefaultArtifactResolver.performDownloads (DefaultArtifactResolver.java:516)
    at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve (DefaultArtifactResolver.java:433)
    at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifacts (DefaultArtifactResolver.java:261)
    at org.eclipse.aether.internal.impl.DefaultRepositorySystem.resolveDependencies (DefaultRepositorySystem.java:352)
    at org.apache.maven.project.DefaultProjectDependenciesResolver.resolve (DefaultProjectDependenciesResolver.java:182)
    at org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.getDependencies (LifecycleDependencyResolver.java:233)
    at org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.resolveProjectDependencies (LifecycleDependencyResolver.java:145)
    at org.apache.maven.lifecycle.internal.MojoExecutor.ensureDependenciesAreResolved (MojoExecutor.java:369)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:327)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:213)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:175)
    at org.apache.maven.lifecycle.internal.MojoExecutor.access$000 (MojoExecutor.java:76)
    at org.apache.maven.lifecycle.internal.MojoExecutor$1.run (MojoExecutor.java:163)
    at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute (DefaultMojosExecutionStrategy.java:39)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:160)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:105)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:73)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:53)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:118)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:261)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:173)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:101)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:827)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:272)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:195)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
[ERROR] 
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/DependencyResolutionException

@headius
Copy link
Member

headius commented May 1, 2023

Thank you for the information. I was able to reproduce by simply adding this gem to the JRuby build, alongside the few dozen other gems that resolve correctly. The question now is why this gem fails!

@headius
Copy link
Member

headius commented May 1, 2023

I'm not sure what it is but both asciidoctor and asciidoctor-multipage are not working while other gems I try do seem to work (and of course all those dozens we fetch during JRuby's build).

The gemspecs for those gems do contain more fields. I'm not seeing anything I would expect to break in this way, though.

The v1 and v2 API calls for rubygems.org also produce json for the gem that doesn't look unusual.

It might help if we knew how the gems were being built and pushed; perhaps it is something specific to the rubygems version or Ruby version being used? cc @mojavelinux

@mojavelinux
Copy link

It might help if we knew how the gems were being built and pushed; perhaps it is something specific to the rubygems version or Ruby version being used?

I seriously doubt it. The asciidoctor gem is built using gem build and published using gem push. See https://github.com/asciidoctor/asciidoctor/blob/main/release.sh#L39-L41

As far as I know, it's a typical gem. Nothing special about it. And there's never been a problem retrieving the asciidoctor gem.

@headius
Copy link
Member

headius commented May 2, 2023

@mojavelinux Thanks... yeah it was a long shot. I'm going to have to hook up a debugger to figure out why some gems are failing to download via mavengem.

@headius
Copy link
Member

headius commented May 2, 2023

Ok so here's a new wrinkle: everything just worked on my most recent build.

I'm wondering if there's something happening on the RG.org side to cause these issues.

@headius
Copy link
Member

headius commented May 2, 2023

The issue is with the initialize goal. You can use https://github.com/asciidoctor/asciidoctor-maven-examples/blob/main/asciidoc-to-html-multipage-example/pom.xml as a reproducer (clone repo, cd into asciidoc-to-html-multipage-example, run mvn).

So after my environment started working, I thought I'd try your suggestion. And it appeared to build ok.

I'm now trying to do a build with the rubygems maven artifacts wiped out (to force re-fetching) just to make sure.

I don't want to theorize yet, but all I changed was Java version and wiping out the rubygems maven artifacts.

@abelsromero
Copy link
Contributor

I'm now trying to do a build with the rubygems maven artifacts wiped out (to force re-fetching) just to make sure.

I already did, since Maven leaves a metadata file to avoid extra fetchings, it's a must usually.

I'm wondering if there's something happening on the RG.org side to cause these issues.

Me too, I just got it working again on MacOS and Linux, both Java 17 (Linux is where I did the previous testing in different days).
Maybe I was unlucky to have seen it failing on different days or something was wrong in rubygems and it has been fixed.
For context:

  • it's not only the multipage gem, the revealjs also failed.
  • asciidoctor gem is not download, this is bundled in AsciidoctorJ jar.

@headius So my understanding now then is that when using gem-maven-plugin to download a gem, no other connection is done right? The plugin only interacts with https://rubygems.org/ and nothing else?

@headius
Copy link
Member

headius commented May 2, 2023

@abelsromero Yes, I believe that is correct (only rubygems.org). The intermittent quality of this makes me wonder if we are seeing some sort of rate-limiting on RG.org, or possibly hitting some bad instance(s) in a cluster that reject some gem requests.

I will do a bit more research today, but then I will have to move on to something else until we can get a reliable way to reproduce this.

@headius
Copy link
Member

headius commented May 2, 2023

I may have found a rather stupid and frustrating cause for these intermittent failures.

https://github.com/rubygems/rubygems.org/blob/ae7982c4bde6ad6e7df34232ba0e919521efae25/app/controllers/api/v1/dependencies_controller.rb#L5-L22

This brownout_ranges appears to be specific days of the year where at least the RG.org v1 "dependencies" API will "brown out", warning about deprecation and returning 404, exactly what we were seeing here yesterday.

In fact, while poking around the mavengem implementation, I also tried some URLs like the v1 dependencies search. Hopefully this isn't confirmation bias, but it appear to fail for a while and then suddenly start working.

More worryingly, this appears to be the trailing edge of a phase-out of the v1 API altogether, which will happen on May 10.

rubygems/rubygems.org@1b4d6f6

If this is the case, then we have about 8 days to rework the mavengem backend to use the v2 API, or else beg the RG.org maintainers for an extension.

@headius
Copy link
Member

headius commented May 2, 2023

I've entered a comment on an issue another v1 dependencies API user filed here: https://bundler.slack.com/archives/C02A04XKP/p1683047044420869

I have also reached out to @hsbt and @indirect to ask for more time to make this transition.

@headius
Copy link
Member

headius commented May 2, 2023

Well there's good news after all. I conferred with the RubyGems.org team and we have a path forward:

  • The deprecated API originally slated to go down on May 10 will now have a whitelist for "Java" User-Agent used by the Maven clients, including mavengem. They will keep this in place for at least 90 days past the original shut-down date.
  • We will use this time to patch mavengem and any other maven/gem-related plugins to move away from the deprecated v1 dependencies API. It will take some time to get familiar with the codebase and further time for us to test and release.
  • Once released, there will be some lag time for downstream users to pick up the change.

Embedded users of JRuby or this plugin may still run into trouble and need updates, but I'm not sure how far-reaching that impact will be.

@abelsromero Thank you for bringing this to our attention! We just recently took ownership of this plugin, and until yesterday I had no idea we were even dependent on this API. Thank goodness we found it when we did!

@abelsromero
Copy link
Contributor

abelsromero commented May 2, 2023

I will do a bit more research today, but then I will have to move on to something else until we can get a reliable way to reproduce this.

Whatever you need 🙇 As Asciidoctor we are impacted in that some users may find this, but that's the Java+Maven ecosystem, which is just a subset of the whole family. And now that we have a WIP story, that's some way we can help them.

Well there's good news after all.

Glad it can work out in the end. I only feel bad for not reporting sooner, I've seen some indications someone fishy was going on and hadn't prioritized until now. Please do not stress over this.

PS: we hijacked the issue, maybe re-title it or create a new one?

@headius
Copy link
Member

headius commented May 3, 2023

we are impacted in that some users may find this

Yeah it is unfortunate timing but I'm hopeful they'll have the whitelist in place very soon. Then we can set about fixing mavengem.

we hijacked the issue, maybe re-title it or create a new one?

This issue was originally about the maven/gem proxy going down, and since it will never come back I'll just resolve this. The recommendation for users is to migrate to mavengem which remains, despite current problems, the path forward.

@headius headius closed this as completed May 3, 2023
@headius
Copy link
Member

headius commented May 3, 2023

Users still depending on these servers (which would be weird, since they've been dead for years) should migrate to https://github.com/jruby/mavengem, which performs all the rubygem/maven fakery on the client side. Recent issues with mavengem discussed here are summarized in jruby/mavengem#8 and will be fixed soon.

@headius
Copy link
Member

headius commented Aug 2, 2023

jruby/mavengem#9 is largely complete and updates the backend of mavengem to use newer APIs. I will put out a release this week.

@headius headius added this to the pre-3.0.0 milestone Aug 9, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants