Skip to content

doc: update README.md describing all the released flavours #530

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

Merged
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 44 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,17 +22,53 @@ regarding GraphQL Java itself.
We try to stay up to date with GraphQL Java as much as possible maintaining the retro-compatibility
with javax and Springframework 5.

On each release we publish two flavours of this project:
- the main one is using `jakarta` and Springframework `6.*`
- the legacy one is using `javax` and Springframework `5.*`
On each release we publish three flavours of this project:
- [latest jakarta](#jakarta-and-springframework-6)
- [jakarta5](#jakarta5)
- [javax](#javax-and-springframework-5)

All of them also supports legacy projects that can compile with older JDK versions: the minimum JDK
version supported is the `11`.

On maven central you can distinguish them from the version because the `javax` flavor has the
suffix `-javax`.
## Jakarta and Springframework 6.*
This is the main flavour using the latest version of `Jakarta` (currently the `6.*`) and the latest
version of `Springframework` (currently the `6.*`). All the codebase can be found in the branch:
`master`

Both of them also supports legacy projects that can compile with older JDK versions: the oldest
supported one is the `11`.
```xml
<dependency>
<groupId>com.graphql-java-kickstart</groupId>
<artifactId>graphql-java-servlet</artifactId>
<version>${graphql-java-servlet.version}</version>
</dependency>
```

## Jakarta5
This flavour use the `jakarta` version `5.*` and it is meant to be used for all the projects that
are already migrated to jakarta, but they are waiting that `jakarta6` will become more broadly used.
All the codebase can be found in the branch: `jakarta5`

```xml
<dependency>
<groupId>com.graphql-java-kickstart</groupId>
<artifactId>graphql-java-servlet-jakarta5</artifactId>
<version>${graphql-java-servlet-jakarta5.version}</version>
</dependency>
```

## Javax and Springframework 5.*
This is the legacy flavour using the `javax` dependency and the version `5.*` of `Springframework`
(since it is still broadly used by a lot of projects). All the codebase can be found in the branch:
`master`

```xml
<dependency>
<groupId>com.graphql-java-kickstart</groupId>
<artifactId>graphql-java-servlet-javax</artifactId>
<version>${graphql-java-servlet.version}</version>
</dependency>
```

See [gradle.properties](gradle.properties) to see currently supported versions.

## Installation and getting started

Expand Down