io.quarkus.extensions:quarkus-extension-catalog

Provides, via submodules, a base configuration for JBoss project builds, as well as a derived configuration supporting multi-release JARs

License

License

Categories

Categories

Quarkus Container Microservices
GroupId

GroupId

io.quarkus.extensions
ArtifactId

ArtifactId

quarkus-extension-catalog
Last Version

Last Version

1.0.0.Alpha12
Release Date

Release Date

Type

Type

jar
Description

Description

Provides, via submodules, a base configuration for JBoss project builds, as well as a derived configuration supporting multi-release JARs
Project Organization

Project Organization

JBoss by Red Hat

Download quarkus-extension-catalog

How to add to project

<!-- https://jarcasting.com/artifacts/io.quarkus.extensions/quarkus-extension-catalog/ -->
<dependency>
    <groupId>io.quarkus.extensions</groupId>
    <artifactId>quarkus-extension-catalog</artifactId>
    <version>1.0.0.Alpha12</version>
</dependency>
// https://jarcasting.com/artifacts/io.quarkus.extensions/quarkus-extension-catalog/
implementation 'io.quarkus.extensions:quarkus-extension-catalog:1.0.0.Alpha12'
// https://jarcasting.com/artifacts/io.quarkus.extensions/quarkus-extension-catalog/
implementation ("io.quarkus.extensions:quarkus-extension-catalog:1.0.0.Alpha12")
'io.quarkus.extensions:quarkus-extension-catalog:jar:1.0.0.Alpha12'
<dependency org="io.quarkus.extensions" name="quarkus-extension-catalog" rev="1.0.0.Alpha12">
  <artifact name="quarkus-extension-catalog" type="jar" />
</dependency>
@Grapes(
@Grab(group='io.quarkus.extensions', module='quarkus-extension-catalog', version='1.0.0.Alpha12')
)
libraryDependencies += "io.quarkus.extensions" % "quarkus-extension-catalog" % "1.0.0.Alpha12"
[io.quarkus.extensions/quarkus-extension-catalog "1.0.0.Alpha12"]

Dependencies

compile (2)

Group / Artifact Type Version
io.quarkus.extensions : quarkus-extension-catalog-api jar 1.0.0.Alpha12
io.quarkus : quarkus-resteasy-jackson jar

test (4)

Group / Artifact Type Version
io.quarkus : quarkus-junit5 jar
io.rest-assured : rest-assured jar
org.junit.jupiter : junit-jupiter jar
org.assertj : assertj-core jar

Project Modules

There are no modules declared in this project.

Quarkus Registry Descriptor

This project provides a model and a parser API to handle the Quarkus extension registry.

Definitions

Repository

A repository is a local directory (which can be cloned from a Git repository) with the following structure:

.
├── extensions
│   └── jsf.json
└── platforms.json

Extensions

For maintenance purposes, each extension is declared in its own file and has the following structure:

{
  "group-id": "org.apache.myfaces.core.extensions.quarkus",
  "artifact-id": "quarkus-myfaces",
  "releases": [
    {
      "version": "2.3-next",
      "quarkus-core":  "1.3.1.Final"
    },
    {
      "version": "2.4-next",
      "quarkus-core": "1.3.2.Final"
    }
  ]
}

The Quarkus extension MUST be released to a Maven repository. The descriptor states the GAV and the Quarkus version for each release (which is listed here for performance purposes - if not specified, the parser will attempt to resolve using the Maven Resolver API)

Platforms

Platforms are a set of extensions of a specific version and MUST exist as a BOM. Since the order is important, it is declared as a single JSON (ordered by priority - the preferred BOMs in the top)

[
  {
    "group-id": "io.quarkus",
    "artifact-id": "quarkus-universe-bom",
    "releases": [
      {
        "version": "1.3.1.Final"
      },
      {
        "version": "1.3.2.Final"
      }
    ]
  },
  {
    "group-id": "io.quarkus",
    "artifact-id": "quarkus-bom",
    "artifact-id-json": "quarkus-bom-descriptor-json",
    "releases": [
      {
        "version": "1.3.1.Final"
      },
      {
        "version": "1.3.2.Final"
      },
      {
        "version": "1.4.0.CR1"
      }
    ]
  }
]

The idea is to provide an utility that would allow to perform all sorts of queries across the registry, such as:

  • which Quarkus Core versions are available;
  • which platforms are available;
  • which extensions are available.

For a given Quarkus Core version:

  • list the available platforms;
  • list all the extensions including those that aren't a part of any platform.

For a given platform:

  • list the platform versions available (i.e. releases of this platform);
  • list Quarkus Core versions it supports.

For a given platform release:

  • Quarkus Core version;
  • Extension releases that are included.

For a given extension:

  • list available versions of the extension (i.e. releases of the extension);
  • (The list could be easily extended)

For a given extension release:

  • Quarkus Core versions it was found to be compatible with;
  • Platforms it is appearing in.
io.quarkus.extensions

QuarkusIO

Quarkus: Supersonic Subatomic Java

Versions

Version
1.0.0.Alpha12
1.0.0.Alpha11
1.0.0.Alpha10
1.0.0.Alpha9
1.0.0.Alpha8
1.0.0.Alpha7
1.0.0.Alpha6
1.0.0.Alpha5