Dropwizard
==========
[![Build](https://github.com/dropwizard/dropwizard/workflows/Java%20CI/badge.svg)](https://github.com/dropwizard/dropwizard/actions?query=workflow%3A%22Java+CI%22)
[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=dropwizard_dropwizard&metric=alert_status)](https://sonarcloud.io/dashboard?id=dropwizard_dropwizard)
[![Maven Central](https://maven-badges.herokuapp.com/maven-central/io.dropwizard/dropwizard-core/badge.svg)](https://maven-badges.herokuapp.com/maven-central/io.dropwizard/dropwizard-core/)
[![Javadocs](https://javadoc.io/badge/io.dropwizard/dropwizard-project.svg?color=brightgreen)](https://javadoc.io/doc/io.dropwizard/dropwizard-project)
[![Documentation Status](https://readthedocs.org/projects/dropwizard/badge/?version=stable)](https://www.dropwizard.io/en/stable/?badge=stable)
[![Maintainability](https://api.codeclimate.com/v1/badges/11a16ea08c8b5499e2b9/maintainability)](https://codeclimate.com/github/dropwizard/dropwizard/maintainability)
[![Reproducible Builds](https://img.shields.io/badge/Reproducible_Builds-ok-green?labelColor=blue)](https://github.com/jvm-repo-rebuild/reproducible-central#io.dropwizard:dropwizard-core)
[![Contribute with Gitpod](https://img.shields.io/badge/Contribute%20with-Gitpod-908a85?logo=gitpod)](https://gitpod.io/#https://github.com/dropwizard/dropwizard)

*Dropwizard is a sneaky way of making fast Java web applications.*

It's a little bit of opinionated glue code which bangs together a set of libraries which have
historically not sucked:

* [Jetty](http://www.eclipse.org/jetty/) for HTTP servin'.
* [Jersey](https://jersey.github.io/) for REST modelin'.
* [Jackson](https://github.com/FasterXML/jackson) for JSON parsin' and generatin'.
* [Logback](http://logback.qos.ch/) for loggin'.
* [Hibernate Validator](http://hibernate.org/validator/) for validatin'.
* [Metrics](http://metrics.dropwizard.io) for figurin' out what your application is doin' in production.
* [JDBI](http://www.jdbi.org) and [Hibernate](http://www.hibernate.org/orm/) for databasin'.
* [Liquibase](http://www.liquibase.org/) for migratin'.

Read more at [dropwizard.io](http://www.dropwizard.io).

Want to contribute to Dropwizard?
---
Before working on the code, if you plan to contribute changes, please read the following [CONTRIBUTING](CONTRIBUTING.md) document.

Need help or found an issue?
---
When reporting an issue through the [issue tracker](https://github.com/dropwizard/dropwizard/issues?state=open)
on GitHub or sending an email to the
[Dropwizard User Google Group](https://groups.google.com/forum/#!forum/dropwizard-user)
mailing list, please use the following guidelines:

* Check existing issues to see if it has been addressed already
* The version of Dropwizard you are using
* A short description of the issue you are experiencing and the expected outcome
* Description of how someone else can reproduce the problem
* Paste error output or logs in your issue or in a Gist. If pasting them in the GitHub
issue, wrap it in three backticks: ```  so that it renders nicely
* Write a unit test to show the issue!

Sponsors
--------

Dropwizard is generously supported by some companies with licenses and free accounts for their products.

### JetBrains

![JetBrains](docs/source/about/jetbrains.png)

[JetBrains](https://www.jetbrains.com/) supports our open source project by sponsoring some [All Products Packs](https://www.jetbrains.com/products.html) within their [Free Open Source License](https://www.jetbrains.com/buy/opensource/) program.


# Build-Info

[![Build Info Extractor plugin](https://img.shields.io/maven-central/v/org.jfrog.buildinfo/build-info-extractor?label=build-info-extractor&style=for-the-badge)](https://search.maven.org/artifact/org.jfrog.buildinfo/build-info-extractor) [![Gradle plugin](https://img.shields.io/gradle-plugin-portal/v/com.jfrog.artifactory?label=Gradle%20Artifactory%20plugin&style=for-the-badge)](https://plugins.gradle.org/plugin/com.jfrog.artifactory)

[![Scanned by Frogbot](https://raw.github.com/jfrog/frogbot/master/images/frogbot-badge.svg)](https://github.com/jfrog/frogbot#readme) [![Tests](https://github.com/jfrog/build-info/actions/workflows/integrationTests.yml/badge.svg)](https://github.com/jfrog/build-info/actions/workflows/integrationTests.yml)

## Overview

Build Info is Artifactory's open integration layer for the CI servers and build tools. The build information is sent to Artifactory in json format.

## Building and testing the sources

* The code is built using Gradle and includes integration tests.

* It must run using JDK 8 and Gradle 5.6.2. If you are using different gradle version you can use the provided gradle wrapper.

* In order to run tests the following environment variables must be set:
```bash
export BITESTS_PLATFORM_URL='http://localhost:8081'
export BITESTS_PLATFORM_USERNAME=admin
export BITESTS_PLATFORM_ADMIN_TOKEN=admin-access-token
export BITESTS_ARTIFACTORY_PIP_ENV=/Users/user/venv-test/bin
```
See [here](https://www.jfrog.com/confluence/display/JFROG/Access+Tokens#AccessTokens-GeneratingAdminTokens) how to generate an admin token for the above environment variable.

### Building
When running the following commands to build the code, the entire testing suite is also executed. See the *Testing* section for configuration instructions prior to running the tests.

To build the code using the gradle wrapper in Unix run:
```bash
./gradlew clean build
```
To build the code using the gradle wrapper in Windows run:
```bash
gradlew clean build
```
To build the code using the environment gradle run:
```bash
gradle clean build
```
To build the code without running the tests, add to the "clean build" command the "-x test" option, for example:
```bash
./gradlew clean build -x test
```

### Testing
To run *all* tests:
```bash
./gradlew clean test
```

#### Extractor tests
```bash
./gradlew clean build-info-api:test build-info-client:test build-info-extractor:test build-info-vcs:test
```

#### Maven tests
```bash
./gradlew clean build-info-extractor-maven3:test
```

#### Gradle tests
```bash
./gradlew clean build-info-extractor-gradle:test
```

#### npm tests
* Add npm executable to the system search path (PATH environment variable).
* npm 7.7 or above is required.
```bash
./gradlew clean build-info-extractor-npm:test
```

#### Go tests
* Add Go executable to the system search path (PATH environment variable).
* Go v1.14 or above is required.
```bash
./gradlew clean build-info-extractor-go:test
```

#### Pip tests
* Add Python and pip executables to the system search path (PATH environment variable).
* Pip tests must run inside a clean pip-environment. Create a virtual environment and provide its path using the 'BITESTS_ARTIFACTORY_PIP_ENV' variable.
When running on a Windows machine, provide the path to the 'Scripts' directory.
When running on a unix machine, provide the path to the 'bin' directory.
```bash
python -m venv buildinfo-tests-env
export BITESTS_ARTIFACTORY_PIP_ENV=/Users/user/buildinfo-tests-env/bin
./gradlew clean build-info-extractor-pip:test
```

#### NuGet tests
* Add Nuget & Dotnet executable to the system search path (PATH environment variable).
```bash
./gradlew clean build-info-extractor-nuget:test
```

#### Docker tests
* Docker tests run only on Linux/mac.
* In addition to the general environment variables required for running the tests, you must set the following environment variables, required for the docker tests:
  ```bash
  export BITESTS_PLATFORM_CONTAINER_REGISTRY=127.0.0.1:8081
  export BITESTS_ARTIFACTORY_DOCKER_HOST=tcp://127.0.0.1:1234
  ```
* For OSX agents, run a Socat container:
 ```bash
 docker run -d -v /var/run/docker.sock:/var/run/docker.sock -p 127.0.0.1:1234:1234 bobrik/socat TCP-LISTEN:1234,fork UNIX-CONNECT:/var/run/docker.sock
 ```
* Run tests:
 ```bash
./gradlew clean build-info-extractor-docker:test
```

## More about build-info
Read more about build-info in the [Build Integration documentation](https://www.jfrog.com/confluence/display/JFROG/Build+Integration).

## Release notes
The release notes are available [here](https://github.com/jfrog/build-info/releases).


</>

    Community |
    Installation |
    Development  |
    License |
    Knowledge Base

The _Terasology_ project was born from a Minecraft-inspired tech demo and is becoming a stable platform for various types of gameplay settings in a voxel world.
The [creators and maintainers](https://github.com/MovingBlocks/Terasology/graphs/contributors) are a diverse mix of software developers, designers, game testers, graphic artists, and musicians. We encourage others to join!
We encourage contributions from anybody and try to keep a warm and friendly community and maintain a [code of conduct](.github/CODE_OF_CONDUCT.md).

## Community

If you want to get in contact with the **Terasology** community and the whole **MovingBlocks** team, you can easily connect with us, share your ideas, report and solve problems.
We are present in nearly the complete round-up of social networks. Follow/friend us wherever you want, chat with us and tell the world.

## Installation

        Minimum Requirements

        System (OS)
        Windows, MacOS, Linux (64 bit)

        Processor (CPU)
        dual-core CPU

        Memory (RAM)
        4 GB

        Graphics* (GPU)

            Intel HD Graphics (Gen 7)

            GeForce 8xxx series (or higher) or

            Radeon HD 2000 series (or higher)

            with OpenGL 3.3

        Storage (HDD)
        1 GB

\* _Please note, that if you have both integrated (chip) and dedicated (card) graphics, you should make sure that you're actually using your dedicated graphics when running Terasology._

Internet connectivity is required for downloading Terasology via the Launcher, afterwards playing offline is possible.

For easy game setup (recommended) you can use our launcher - [download it here](https://terasology.org/downloads/).

For more information about playing, like hot keys or server hosting, see the [dedicated page](docs/Playing.md) or check out the [modules](docs/Modules.md).

### Alternative Installation Methods

If you already have a Java Development Kit (JDK) installed, you may use a direct download release as an alternative to using the [launcher](https://github.com/MovingBlocks/TerasologyLauncher/releases). Java version 17 is required.

ßDirect download stable builds are uploaded to [our release section here on GitHub](https://github.com/MovingBlocks/Terasology/releases) while the cutting-edge develop version can be downloaded direct [here from our Jenkins](https://jenkins.terasology.io/job/Terasology/job/Omega/job/develop/lastSuccessfulBuild/artifact/distros/omega/build/distributions/TerasologyOmega.zip).

## Development

Development is possible on all common platforms (Windows, Linux, MacOS) as long as the JDK is properly set up.

### Requirements

Technical Requirements:
- Java SE Development Kit (JDK) 17. The CI will verify against this baseline version.

Using newer Java versions may cause issues (see [#3976](https://github.com/MovingBlocks/Terasology/issues/3976)).
- Git to clone the repo and commit changes.

Non-Technical Requirements:
- familiarity with Git. Have a look at https://learngitbranching.js.org/ if you're not familiar with Git yet.
- familiarity with GitHub, _especially forks_. Have a look at [GitHub's "Working with Forks" Guide](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks) if you don't know how to work with forks yet.

### Workspace Setup

To be able to run **Terasology** from source, you'll need to setup your workspace.
Follow the [Contributor Quick Start Guide](https://terasology.org/Terasology/#/Contributor-Quick-Start).
This guide is designed for [IntelliJ IDEA](https://www.jetbrains.com/idea/) (you can use the free community edition), but alternative setups are possible.

> :warning: _Note, that a Terasology workspace is a **multi-repo workspace**._

While your workspace itself is a clone of [MovingBlocks/Terasology](https://github.com/MovingBlocks/Terasology), every subdirectory in your workspace directory `./modules/` is a clone of a [Terasology module repo](https://github.com/Terasology).

Accordingly, if you want to contribute to modules, you'll need to navigate into the respective subdirectory and work with Git from in there.
Any Git commands executed in your workspace root will target [MovingBlocks/Terasology](https://github.com/MovingBlocks/Terasology).

For more information, see our wiki entry on [Understanding Terasology's Git Setup](https://terasology.org/Terasology/#/Developing-Modules?id=understanding-terasology39s-git-setup).

### Contributing

Detailed information on how to contribute can be found in [CONTRIBUTING.md](.github/CONTRIBUTING.md). Remember, that all submissions must be licensed under [Apache License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0).

Terasology has a rather steep learning curve in the beginning.
To help you with the learning process, our [Terasology Knowledge Base](https://terasology.org/Terasology/#/), formerly known as the Terasology Engine wiki, helps you find the resources you need according to the field of contribution you're interested in.
Additional learning resources can be found in our [tutorial modules](https://github.com/Terasology?q=Tutorial&type=all&language=&sort=).

If you find errors or issues in any of our resources, please report them using GitHub issues and help fix them.

For developers that have not worked with complex software systems or dealt with the intricacies of Java yet, we recommend to start with [Good First Issues in Module Land](https://github.com/search?l=&q=org%3ATerasology+label%3A%22Good+First+Issue%22+state%3Aopen&state=open&type=Issues).

Developers with previous experience in rendering, physics and other less trivial aspects of game development are welcome to give the [Good First Issues in Engine](https://github.com/MovingBlocks/Terasology/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc+label%3A%22Good+First+Issue%22) a go.

## License

Terasology is fully open source and licensed [Apache License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0) for code and [Creative Commons Attribution License, Version 4.0](https://creativecommons.org/licenses/by/4.0/) for artwork (unless indicated otherwise - see credits for minor exceptions).


# Archi - ArchiMate Modelling Editor

Archi® is a free, open source, cross-platform tool and editor to create ArchiMate models.

The Archi® modelling tool is targeted toward all levels of Enterprise Architects and Modellers. It provides a low cost to entry solution to users who may be making their first steps in the ArchiMate modelling language, or who are looking for a free, cross-platform ArchiMate modelling tool for their company or institution and wish to engage with the language within a TOGAF® or other Enterprise Architecture framework.

ArchiMate® is an open and independent Enterprise Architecture modelling language that supports the description, analysis and visualization of architecture within and across business domains. ArchiMate is one of the open standards hosted by The Open Group and is fully aligned with TOGAF®.

Archi website:

[https://www.archimatetool.com](https://www.archimatetool.com)

## Building and running the code

All developer resources are here:

[https://github.com/archimatetool/archi/wiki/Developer-Documentation](https://github.com/archimatetool/archi/wiki/Developer-Documentation)

## Contributing code to Archi

Please see [How can I contribute code to Archi?](https://github.com/Phillipus/archi/wiki/How-can-I-contribute-code-to-Archi%3F)


Plugin Compatibility Tester (PCT)
------

[![GitHub release (latest by date)](https://img.shields.io/github/v/release/jenkinsci/plugin-compat-tester?label=changelog)](https://github.com/jenkinsci/plugin-compat-tester/releases)

Generates a compatibility matrix for plugins against Jenkins core.

## Running PCT

The PCT CLI requires passing a WAR file containing plugins (generated from `jenkinsci/bom`, for example) as input;
the versions of the plugins are inferred from the WAR file contents.

```shell
java -jar target/plugins-compat-tester-cli.jar \
    --war "$(pwd)/megawar.war" \
    --working-dir "$(pwd)/pct-work"
```

To test a subset of plugins in the WAR, use `--include-plugins`:

```shell
java -jar target/plugins-compat-tester-cli.jar \
    --war "$(pwd)/megawar.war" \
    --include-plugins ssh-slaves,credentials \
    --working-dir "$(pwd)/pct-work"
```

You can run the CLI with the `--help` argument to get a full list of supported options.

### Running PCT with custom Java versions

PCT simply invokes Maven, which relies on the `JAVA_HOME` environment variable.
If you want to use a custom Java version, set `JAVA_HOME` appropriately before running PCT.

## Useful links

* Devoxx '11 BOF Presentation about Plugin Compat Tester is available [here](http://www.slideshare.net/fcamblor/devoxx-2011-jenkins-bof-on-plugin-compatibility-tester). This presentation is partially obsolete (GAE feature was removed in recent versions)


<img src="https://pbs.twimg.com/profile_images/545716709311520769/piLLa1iC_400x400.png" alt="logo" style="width: 32px;"/>

[![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.apache.bookkeeper/bookkeeper/badge.svg)](https://maven-badges.herokuapp.com/maven-central/org.apache.bookkeeper/bookkeeper)

# Apache BookKeeper

Apache BookKeeper is a scalable, fault-tolerant and low latency storage service optimized for append-only workloads.

It is suitable for being used in following scenarios:

- WAL (Write-Ahead-Logging), e.g. HDFS NameNode, Pravega.
- Message Store, e.g. Apache Pulsar.
- Offset/Cursor Store, e.g. Apache Pulsar.
- Object/Blob Store, e.g. storing state machine snapshots.

## Get Started

* Checkout the project [website](https://bookkeeper.apache.org/).
* *Concepts*: Start with the [basic concepts](https://bookkeeper.apache.org/docs/getting-started/concepts) of Apache BookKeeper.
  This will help you to fully understand the other parts of the documentation.
* Follow the [Installation](https://bookkeeper.apache.org/docs/getting-started/installation) guide to set up BookKeeper.

## Documentation

Please visit the [Documentation](https://bookkeeper.apache.org/docs/overview/) from the project website for more information.

## Get In Touch

### Report a Bug

For filing bugs, suggesting improvements, or requesting new features, help us out by [opening a GitHub issue](https://github.com/apache/bookkeeper/issues).

### Need Help?

[Subscribe](mailto:user-subscribe@bookkeeper.apache.org) or [mail](mailto:user@bookkeeper.apache.org) the [user@bookkeeper.apache.org](mailto:user@bookkeeper.apache.org) list - Ask questions, find answers, and also help other users.

[Subscribe](mailto:dev-subscribe@bookkeeper.apache.org) or [mail](mailto:dev@bookkeeper.apache.org) the [dev@bookkeeper.apache.org](mailto:dev@bookkeeper.apache.org) list - Join development discussions, propose new ideas and connect with contributors.

[Join us on Slack](https://communityinviter.com/apps/apachebookkeeper/apache-bookkeeper) - This is the most immediate way to connect with Apache BookKeeper committers and contributors.

## Contributing

We feel that a welcoming open community is important and welcome contributions.

### Contributing Code

1. See our [installation guide](https://bookkeeper.apache.org/docs/next/getting-started/installation/) to get your local environment setup.

2. Take a look at our open issues: [GitHub Issues](https://github.com/apache/bookkeeper/issues).

3. Review our [coding style](https://bookkeeper.apache.org/community/coding-guide/) and follow our [pull requests](https://github.com/apache/bookkeeper/pulls) to learn more about our conventions.

4. Make your changes according to our [contributing guide](https://bookkeeper.apache.org/community/contributing/)


= Arquillian - So you can rule your code. Not the bugs.
:asciidoctor-source: https://raw.githubusercontent.com/arquillian/arquillian-core/master/docs
:numbered:
:sectlink:
:sectanchors:
:sectid:
:source-language: java
:source-highlighter: coderay
:sectnums:
:icons: font
:toc: left

image:https://travis-ci.org/arquillian/arquillian-core.svg?branch=master["Build Status", link="https://travis-ci.org/arquillian/arquillian-core"]

ifndef::generated-doc[]
To read complete documentation visit https://arquillian.org/arquillian-core/
endif::generated-doc[]

Arquillian is an innovative and highly extensible testing platform for the JVM that enables developers to
easily create automated integration, functional and acceptance tests for Java middleware.

== Arquillian makes integration testing a breeze!

Picking up where unit tests leave off, Arquillian handles all the plumbing of container management, deployment and framework initialization so you can focus on the task at hand, writing your tests. Real tests. In short…

Arquillian brings the test to the runtime so you don’t have to manage the runtime from the test (or the build). Arquillian eliminates this burden by covering all aspects of test execution, which entails:

* Managing the lifecycle of the container (or containers)
* Bundling the test case, dependent classes and resources into a ShrinkWrap archive (or archives)
* Deploying the archive (or archives) to the container (or containers)
* Enriching the test case by providing dependency injection and other declarative services
* Executing the tests inside (or against) the container
* Capturing the results and returning them to the test runner for reporting

To avoid introducing unnecessary complexity into the developer’s build environment, Arquillian integrates seamlessly with familiar testing frameworks (e.g., JUnit 4, JUnit 5, TestNG 5), allowing tests to be launched using existing IDE, Ant and Maven test plugins — without any add-ons.

ifdef::generated-doc[]
== Guide

include::{asciidoctor-source}/introduction.adoc[]
include::{asciidoctor-source}/getting-started.adoc[]
include::{asciidoctor-source}/deployment-archives.adoc[]
include::{asciidoctor-source}/containers.adoc[]
include::{asciidoctor-source}/test-enrichers.adoc[]
include::{asciidoctor-source}/rules.adoc[]
include::{asciidoctor-source}/additional-features.adoc[]
include::{asciidoctor-source}/protocols.adoc[]
include::{asciidoctor-source}/build-integration.adoc[]
include::{asciidoctor-source}/advanced-topics.adoc[]
endif::generated-doc[]

== Useful URLs

* http://arquillian.org[Project Site]
* http://arquillian.org/guides[Guides]
* http://discuss.arquillian.org/[Forum]
* https://issues.redhat.com/browse/ARQ[Issue Tracker]


# Unirest for Java

[![Actions Status](https://github.com/kong/unirest-java/workflows/Verify/badge.svg)](https://github.com/kong/unirest-java/actions)
[![Maven Central](https://maven-badges.herokuapp.com/maven-central/com.konghq/unirest-java-parent/badge.svg)](https://maven-badges.herokuapp.com/maven-central/com.kong/unirest-java)
[![Javadocs](http://www.javadoc.io/badge/com.konghq/unirest-java-core.svg)](http://www.javadoc.io/doc/com.konghq/unirest-java)

## Unirest 4
Unirest 4 is build on modern Java standards, and as such requires at least Java 11.

Unirest 4's dependencies are fully modular, and have been moved to new Maven coordinates to avoid conflicts with the previous versions.
You can use a maven bom to manage the modules:

### Install With Maven

```xml
<dependencyManagement>
  <dependencies>
      <!-- https://mvnrepository.com/artifact/com.konghq/unirest-java-bom -->
      <dependency>
          <groupId>com.konghq</groupId>
          <artifactId>unirest-java-bom</artifactId>
          <version>4.4.0</version>
          <type>pom</type>
          <scope>import</scope>
      </dependency>
  </dependencies>
</dependencyManagement>

<dependencies>
    <!-- https://mvnrepository.com/artifact/com.konghq/unirest-java-core -->
    <dependency>
        <groupId>com.konghq</groupId>
        <artifactId>unirest-java-core</artifactId>
    </dependency>

    <!-- pick a JSON module if you want to parse JSON include one of these: -->
    <!-- Google GSON -->
    <dependency>
        <groupId>com.konghq</groupId>
        <artifactId>unirest-modules-gson</artifactId>
    </dependency>

    <!-- OR maybe you like Jackson better? -->
    <dependency>
        <groupId>com.konghq</groupId>
        <artifactId>unirest-modules-jackson</artifactId>
    </dependency>
</dependencies>
```

#### 🚨 Attention JSON users 🚨
Under Unirest 4, core no longer comes with ANY transient dependencies, and because Java itself lacks a JSON parser you MUST declare a JSON implementation if you wish to do object mappings or use Json objects.

## Upgrading from Previous Versions
See the [Upgrade Guide](UPGRADE_GUIDE.md)

## ChangeLog
See the [Change Log](CHANGELOG.md) for recent changes.

## Documentation
Our [Documentation](http://kong.github.io/unirest-java/)

## Unirest 3
### Maven
```xml
<!-- Pull in as a traditional dependency -->
<dependency>
    <groupId>com.konghq</groupId>
    <artifactId>unirest-java</artifactId>
    <version>3.14.1</version>
</dependency>
```


Magic
========

[![](https://discord.com/api/guilds/580099743875727363/widget.png)](https://discord.elmakers.com "Discord")
![](https://img.shields.io/github/languages/code-size/elBukkit/MagicPlugin.svg "Code size in bytes")
[![](https://img.shields.io/github/license/elBukkit/MagicPlugin.svg)](https://github.com/elBukkit/MagicPlugin/blob/master/LICENSE "License")

Magic plugin for CraftBukkit/Spigot. Adds powerful magic wands and items to your server.

Players may obtain or craft wands that can past a variety of configurable spells.

## Download

Distributed through BukkitDev: https://dev.bukkit.org/projects/magic

Distributed through Spigot: https://www.spigotmc.org/resources/magic.1056/

## Usage

FAQ: https://github.com/elBukkit/MagicPlugin/wiki/FAQ

Wiki: https://github.com/elBukkit/MagicPlugin/wiki

Reference: http://reference.elmakers.com/

Config info: http://magic.elmakers.com/

## Compile

Requires recent Java 8 JDK. Import directly as Maven Project. Build against parent with `clean install`

## Credits

- Lead Developer: NathanWolf
- Contributing Developers:
  - killme
  - dumptruckman
  - S-Toad
  - Boosik
  - Dr00bles
  - grisstyl

Please see README.md in the resource packs for artist credits!

https://github.com/elBukkit/MagicPlugin/blob/master/Magic/src/resource-pack/default/README.md

## Notes on Spell Icons

Some of the spell icons contained in this plugin are used with permission from eleazzaar's Painterly Spell Icons pack:

http://opengameart.org/content/painterly-spell-icons-part-1

This pack is licensed under Creative Commons 3.0, any re-use needs to fall under that license and
not the less-restrictive MIT license that covers the rest of the Magic source code and assets.

## Issues

Issues, feature requests, or suggestions for this plugin should be made at our issue tracker:

https://github.com/elBukkit/MagicPlugin/issues


podam
=====

[![CircleCI](https://circleci.com/gh/mtedone/podam.svg?style=shield)](https://circleci.com/gh/mtedone/podam)
[![Maven Central](https://maven-badges.herokuapp.com/maven-central/uk.co.jemos.podam/podam/badge.svg)](https://maven-badges.herokuapp.com/maven-central/uk.co.jemos.podam/podam)
[![Test Coverage](https://codecov.io/github/mtedone/podam/coverage.svg?branch=develop)](https://codecov.io/gh/mtedone/podam)

PODAM - POjo DAta Mocker

Podam (http://mtedone.github.io/podam/) is a Java testing tool which auto-fills POJOs with made-up data.

Podam can fill any tree of objects with data. It supports generics, collections, arrays and Java native types.

To get an idea of Podam's full potential, please visit the [Podam Requirements Page](http://mtedone.github.io/podam/serenity/capabilities.html)


# Jenkins Plugin 0.13.21 for Jetbrains products
[![Build Status](https://app.travis-ci.com/MCMicS/jenkins-control-plugin.svg?branch=master)](https://app.travis-ci.com/MCMicS/jenkins-control-plugin)
[![Plugin Compatibility](https://github.com/MCMicS/jenkins-control-plugin/actions/workflows/compatibility.yml/badge.svg)](https://github.com/MCMicS/jenkins-control-plugin/actions/workflows/compatibility.yml)

[![SonarCloud Analysis](https://github.com/MCMicS/jenkins-control-plugin/actions/workflows/build.yml/badge.svg)](https://github.com/MCMicS/jenkins-control-plugin/actions/workflows/sonar.yml)
[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=MCMicS_jenkins-control-plugin&metric=alert_status)](https://sonarcloud.io/dashboard?id=MCMicS_jenkins-control-plugin)
[![Vulnerabilities](https://sonarcloud.io/api/project_badges/measure?project=MCMicS_jenkins-control-plugin&metric=vulnerabilities)](https://sonarcloud.io/dashboard?id=MCMicS_jenkins-control-plugin)
[![Qodana](https://github.com/MCMicS/jenkins-control-plugin/actions/workflows/Qodana.yml/badge.svg?branch=master)](https://github.com/MCMicS/jenkins-control-plugin/actions/workflows/Qodana.yml)

[![Gitter](https://badges.gitter.im/jenkins-control-plugin/community.svg)](https://gitter.im/jenkins-control-plugin/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)

![GitHub Release Date](https://img.shields.io/github/release-date/MCMicS/jenkins-control-plugin)
[![Version](https://img.shields.io/jetbrains/plugin/v/6110?label=version)](https://plugins.jetbrains.com/plugin/6110-jenkins-control-plugin)
[![Downloads](https://img.shields.io/jetbrains/plugin/d/6110-jenkins-control-plugin)](https://plugins.jetbrains.com/plugin/6110-jenkins-control-plugin)
![JetBrains IntelliJ Plugins](https://img.shields.io/jetbrains/plugin/r/rating/6110)
![GitHub](https://img.shields.io/github/license/MCMicS/jenkins-control-plugin)

* [Jetbrains plugin page](https://plugins.jetbrains.com/idea/plugin/6110)
  * [Changelog](CHANGELOG.md)

### Current Release
* [Idea 2021.2 - 2022.1.4](../../releases/latest/download/jenkins-control-plugin-2021.2.zip)
* [Idea 2022.2 - 2023.1.4](../../releases/latest/download/jenkins-control-plugin-2022.2.zip)
* [Idea 2023.2 or newer](../../releases/latest/download/jenkins-control-plugin-2023.2.zip)

[//]: # (* [Idea 2022.2 or newer](../../releases/latest/download/jenkins-control-plugin-2022.2.zip))

### Use EAP Builds
* add https://plugins.jetbrains.com/plugins/eap/list as Plugin Repository

## Description
This plugin allows to view the content of your Jenkins Continuous Integration Server.

![Browser](doc/images/Browser.png?raw=true)

### Features
- Multibranch support

![Multibranch Support](doc/images/MultiBranch.png?raw=true)

- Views from Jenkins server

![Browser-Views.png](doc%2Fimages%2FBrowser-Views.png)

- Favorites

![Browser-favoriteView.png](doc%2Fimages%2FBrowser-favoriteView.png)

- Different Jenkins hostname as server url. Can be used if your server is behind a proxy or usage of VPN.
![Configuration-Hostname_Server.png](doc%2Fimages%2FConfiguration-Hostname_Server.png)
0
![Configuration-Hostname.png](doc%2Fimages%2FConfiguration-Hostname.png)

## Plugin Compatibility
This plugin was built with JDK 11 but Java 8 Source level for older IDEA versions. Jenkins CIs of jenkins-ci and apache.org are used for manual and stress testing.
https://ci.jenkins.io/
## Installation steps
Download this plugin from your IDE or [from the plugin website](http://plugins.jetbrains.com/plugin/6110).

## Configuration steps
* Click on the **Jenkins Settings** button located on the upper toolbar
(or you can also open IntelliJ Settings Screen and select the Jenkins Plugin section)
* The configuration is plitted into two areas. The first change the setting for the behaviour and a submenu for server settins
* Enter your Jenkins Server URL (e.g: https://ci.jenkins.io/) in **Servers**.
* If Security is enabled on the server, you have to provide credentials. Enter your username and the API Token.
The API Token will be stored in Intellij Password Manager. It could ask you a Master password.
  * Since Jenkins 2.176 it is recommended to use an API token to authenticate the plugin:
     1. Go to user setting: `_jenkins_url_/user/_username_/configure`
     2. Add New API Token (recommended new one specifically for Jenkins Plugin)
     3. Use this newly added API Token
* To make sure that all parameters are correct, you can click on the **Test Connection** button.
A feedback message will appear.
![Configuration-Settings.png](doc%2Fimages%2FConfiguration-Settings.png)

![Connection succeeded](doc/images/Configuration-Success.png?raw=true)

* If the server response is 401 or 403, a debug panel will appear below :

![Connection failed](doc/images/Configuration-failure.png?raw=true)

* You can specify a build start delay (in sec.).
* You can set an auto refresh Period value (in minutes) for both Job Browser and Rss Reader.
* You can filter the RSS data based on the status of the build
* When your configuration is set up, click on the **Apply** Button to save it.

## Notifications
This plugin uses the IDEA Notification System. Default is Tool Window Balloon (as in previous versions).
If the message is too large for screen it is not shown.
It can be configured from Event log window:
![Configure Notification from Event Log window](doc/images/Notification_EventLog.png?raw=true)

It is also possible to configure it (Settings -> Appearance -> Notifications -> Jenkins Notifications) to show only balloon or only log
![Configure Notification from Settings Dialog](doc/images/Notification_Menu.png?raw=true)

## Usage
* To view the jobs You have to refresh the Jenkins Workspace by right-clicking on the Server icon node
* You can select some view by selecting of them in the combo box.
* When you right click on a job some options are available such as Launch a Build, View The Job's Page and View the Last Build Results.
* You can sort builds by status (Fail, Unstable, Disabled/Cancelled and Success)

![Build sorting](doc/images/Browser-sortingByStatus.png?raw=true)

* To search specific Job, just start typing in the Browser and use UP and DOWN keys to navigate.

* You can set some jobs as favorite.

![Set Job as favorite ](doc/images/Browser-setAsFavorite.png?raw=true)

* A new View will appear in the combobox that will include your selected jobs.

![Favorite view](doc/images/Browser-selectFavoriteView.png?raw=true)

### RSS Reader
The RSS reader has moved to the Event Log. If you need to refresh manually, click on the Rss icon button.

![Rss view](doc/images/RssLatestBuilds.png?raw=true)

### Widget
* A small widget is available on the status bar. It indicates the overall status of the selected view. When there is no broken build then the icon color is blue (else, a red icon is displayed with the remaining broken builds. If the job auto-refresh is enabled then the widget updates itself.

![Widget](doc/images/Widget.png?raw=true)

### Patch Parameter Plugin Support (Pre-tested commit) by [Yuri Novitsky](https://github.com/nyver)
* (https://wiki.jenkins-ci.org/display/JENKINS/Patch+Parameter+Plugin)
* Information about pre-tested commit: https://wiki.jenkins-ci.org/display/JENKINS/Designing+pre-tested+commit

* **Setup the plugin from Jenkins server**

1. Install Patch Parameter Plugin in Jenkins ![setup1](doc/howto/1_setup_jenkins/01.png?raw=true)
2. Setup Jenkin's job for patch support ![setup2](doc/howto/1_setup_jenkins/02.png?raw=true)
3. Before each new build we need to rollback the patch changes with "revert" operation ![setup3](doc/howto/1_setup_jenkins/03.png?raw=true)

* **Setup from the IDE**

1. Updating the list of jobs i recommend to install in 1 minute for quick notifications of the results of the build ![notification](doc/howto/2_setup_ide/03.png)
2. That's all. Now you can run builds with local changes directly from the IDE ![Create](doc/howto/2_setup_ide/05.png?raw=true) ![Upload](doc/howto/2_setup_ide/04.png?raw=true)
3. Build status is displayed near the name of the changelist ![status](doc/howto/2_setup_ide/06.png?raw=true)

## How to build

This project is built with Gradle. Just run `./gradlew buildPlugin`.

## Update Gradle version

`gradle wrapper --gradle-version 6.8.1 --distribution-type bin`

### Open the plugin source in Intellij

Import the plugin as Gradle project into IntelliJ.

### Run Intellij from IntelliJ

Create a Gradle Run configuration with task `runIdea` and just run it.

## Limitations
* This software is written under Apache License 2.0.
* if Jenkins is behind an HTTPS web server, set a **trusted** certificate or add an exception in IDEA to trust the certificate.

## Use Jenkins Icons
We use some of the icons from [Jenkins project ](https://github.com/jenkinsci/jenkins/tree/master/war/src/main/resources/images/symbols).
Download the files to `src/main/resources/images`, remove `weather-icon-` prefix and change the defined color variables to the [Jetbrains Guideline](https://jetbrains.design/intellij/principles/icons/#action-icons) values.
```
var(--yellow) --> #EDA200
var(--cyan) --> #389FD6
var(--text-color-secondary) --> #6E6E6E
fill="transparent" --> fill="none"
```
Also change the size to `16px x 16px`. Create icon for dark UI with different colors.

## Thanks
I would like to thank:
* All Github contributors who fixed the plugin for Jenkins 2
* [David Boissier](https://github.com/dboissier) for develop and maintain the plugin in the last years
    * His wife and his daughters who support him to have fun in software development and also remind him the husband/father duty ;).
* [Cezary Butler](https://github.com/cezary-butler) and **Marcin Seroka** from [Programisci](http://programisci.eu/en/) for their contribution to fix and improve this plugin for Idea 14 and 15
* [Yuri Novitsky](https://github.com/nyver) for his contribution to this plugin (pre-commit feature)
* Kohsuke Kawaguchi for providing us such a great CI server
* Jetbrains Team for providing us such an incredible IDE (certainly the best that Java developers could have).
* All users who sent valuable suggestions
* Mark James author of the famfamfam web site who provides beautiful icons.
* Guys from Lex Group : Boris Gonnot, Regis Medina, Sébastien Crego, Olivier Catteau, Jean Baptiste Potonnier and others Agile ninjas.
* Icon is from [Jenkins Artwork](https://jenkins.io/artwork/)


saucerest-java

A Java client for Sauce Labs REST API.

Currently, this client only support the endpoints listed [here](https://docs.saucelabs.com/dev/api/).

With version 2.x of SauceREST we have made code-breaking changes to this wrapper. It has been updated to be more
future-proof and to also support the newest APIs from Sauce Labs.

This is going to be continuous process which means we will release changes to SauceREST over time.

If a function you're after isn't supported, we suggest either shelling out and using the curl version, _or_ sending a pull
request!  [Contribution Details Here](https://github.com/saucelabs/saucerest-java/blob/master/CONTRIBUTING.md).

# How to use

  Creating a client object

```java
SauceREST sauceREST = new SauceREST("username", "access-key", DataCenter.EU_CENTRAL);
```

Parameters:

| Name        | Type                            | Details                        |
|-------------|---------------------------------|--------------------------------|
| username    | String (required)               | Your sauce labs username       |
| access-key  | String (required)               | Your sauce labs accesskey      |
| data_center | String or DataCenter (required) | One of `US_WEST`, `EU_CENTRAL` |

## Code examples

The best way to find out how to use this library is to look at the tests. They are located in the `src/test/java` directory. Especially the integration tests
will provide you with a good overview of how to use this library.

# Maven

```xml

<dependencies>
    <dependency>
        <groupId>com.saucelabs</groupId>
        <artifactId>saucerest</artifactId>
        <version>LATEST VERSION</version>
        <scope>test</scope>
    </dependency>
</dependencies>
```

For latest version please check the following link: [click](https://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22com.saucelabs%22%20AND%20a%3A%22saucerest%22).

## Contributing

Check out our contribution guide [here](CONTRIBUTING.md) for details.

Want a fast, setup dev
environment?  [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/saucelabs/saucerest-java)


Joda-Time
---------

Joda-Time provides a quality replacement for the Java date and time classes.
The design allows for multiple calendar systems, while still providing a simple API.
The 'default' calendar is the ISO8601 standard which is used by XML.
The Gregorian, Julian, Buddhist, Coptic, Ethiopic and Islamic systems are also included.
Supporting classes include time zone, duration, format and parsing.

**Joda-time is no longer in active development except to keep timezone data up to date.**
From Java SE 8 onwards, users are asked to migrate to `java.time` (JSR-310) - a core part of the JDK which replaces this project.
For Android users, `java.time` is [added in API 26+](https://developer.android.com/reference/java/time/package-summary).
Projects needing to support lower API levels can use [the ThreeTenABP library](https://github.com/JakeWharton/ThreeTenABP).

As a flavour of Joda-Time, here's some example code:

```java
public boolean isAfterPayDay(DateTime datetime) {
  if (datetime.getMonthOfYear() == 2) {   // February is month 2!!
    return datetime.getDayOfMonth() > 26;
  }
  return datetime.getDayOfMonth() > 28;
}

public Days daysToNewYear(LocalDate fromDate) {
  LocalDate newYear = fromDate.plusYears(1).withDayOfYear(1);
  return Days.daysBetween(fromDate, newYear);
}

public boolean isRentalOverdue(DateTime datetimeRented) {
  Period rentalPeriod = new Period().withDays(2).withHours(12);
  return datetimeRented.plus(rentalPeriod).isBeforeNow();
}

public String getBirthMonthText(LocalDate dateOfBirth) {
  return dateOfBirth.monthOfYear().getAsText(Locale.ENGLISH);
}
```

Joda-Time is licensed under the business-friendly [Apache 2.0 licence](https://www.joda.org/joda-time/licenses.html).

![Tidelift dependency check](https://tidelift.com/badges/github/JodaOrg/joda-time)
[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/6310/badge)](https://bestpractices.coreinfrastructure.org/projects/6310)

### Documentation
Various documentation is available:

* The [home page](https://www.joda.org/joda-time/)
* Two user guides - [quick](https://www.joda.org/joda-time/quickstart.html) and [full](https://www.joda.org/joda-time/userguide.html)
* The [Javadoc](https://www.joda.org/joda-time/apidocs/index.html)
* The [FAQ](https://www.joda.org/joda-time/faq.html) list
* Information on [downloading and installing](https://www.joda.org/joda-time/installation.html) Joda-Time including release notes

### Releases
[Release 2.12.7](https://www.joda.org/joda-time/download.html) is the current latest release.
This release is considered stable and worthy of the 2.x tag.
It depends on JDK 1.5 or later.

Available in the [Maven Central repository](https://search.maven.org/search?q=g:joda-time%20AND%20a:joda-time&core=gav)

**Maven configuration:**
```xml
<dependency>
  <groupId>joda-time</groupId>
  <artifactId>joda-time</artifactId>
  <version>2.12.7</version>
</dependency>
```

**Gradle configuration:**
```groovy
compile 'joda-time:joda-time:2.12.7'
```

### Related projects
Related projects at GitHub:
- https://github.com/JodaOrg/joda-time-hibernate
- https://github.com/JodaOrg/joda-time-jsptags
- https://github.com/JodaOrg/joda-time-i18n

Other related projects:
- https://www.joda.org/joda-time/related.html

### For enterprise
Available as part of the Tidelift Subscription.

Joda and the maintainers of thousands of other packages are working with Tidelift to deliver one enterprise subscription that covers all of the open source you use.

If you want the flexibility of open source and the confidence of commercial-grade software, this is for you.

[Learn more](https://tidelift.com/subscription/pkg/maven-joda-time-joda-time?utm_source=maven-joda-time-joda-time&utm_medium=github)

### Support
Please use [Stack Overflow](https://stackoverflow.com/questions/tagged/jodatime) for general usage questions.
GitHub [issues](https://github.com/JodaOrg/joda-time/issues) and [pull requests](https://github.com/JodaOrg/joda-time/pulls)
should be used when you want to help advance the project.

Any donations to support the project are accepted via [OpenCollective](https://opencollective.com/joda).

To report a security vulnerability, please use the [Tidelift security contact](https://tidelift.com/security).
Tidelift will coordinate the fix and disclosure.

### Development and Contributions
Joda-Time is developed using standard [GitHub tools](https://github.com/JodaOrg/joda-time).
A [checkstyle](https://checkstyle.sourceforge.io/) file is available, and PRs must comply with it.
The project can be built using [Apache Maven](https://maven.apache.org/), such as mvn clean install.
Continuous Integration takes place using [GitHub Actions](https://github.com/JodaOrg/joda-time/actions).
Units tests are written in [JUnit](https://junit.org/) and run as part of the build and continuous integration.
Changes via PR must include appropiate test coverage.

Note that Joda-Time is considered to be a largely “finished” project. No major enhancements are planned. If using Java SE 8, please migrate to java.time (JSR-310).

### Release process

* Update version (pom.xml, README.md, index.md, MANIFEST.MF, changes.xml)
* Commit and push
* Ensure on Java SE 8
* `mvn clean deploy -Doss.repo -Dgpg.passphrase=""`
* Website will be built and released by GitHub Actions


# MVEL
MVFLEX Expression Language (MVEL) is a hybrid dynamic/statically typed, embeddable Expression Language and runtime for the Java Platform.

## Document

http://mvel.documentnode.com/

## How to build

```
git clone https://github.com/mvel/mvel.git
cd mvel
mvn clean install
```


## The CometD Project

Welcome to the [CometD](https://cometd.org) Project, a scalable comet (server push) implementation for the web.

### CometD Versions

| CometD Version | Min Java Version | Min Jetty Version | Servlet APIs             |
|----------------|------------------|-------------------|--------------------------|
| `8.0.x`        | Java 17          | Jetty 12.0.x      | EE10 `jakarta.servlet.*` |
| `7.0.x`        | Java 11          | Jetty 11.0.x      | EE9  `jakarta.servlet.*` |
| `6.0.x`        | Java 11          | Jetty 10.0.x      | EE8  `javax.servlet.*`   |
| `5.0.x`        | Java 8           | Jetty 9.4.x       | EE7  `javax.servlet.*`   |

### CometD License

The CometD source code is released under the Apache 2.0 License.

### Project Directory Layout

    cometd-archetypes    - The Maven archetypes for quick application development
    cometd-demo          - Demo of the Java server and of the ES6/jQuery clients
    cometd-documentation - The CometD documentation
    cometd-java          - The Java server and java client libraries
    cometd-javascript    - The JavaScript (ES6/jQuery) client libraries

### Running the CometD Demo

If you have [downloaded](https://download.cometd.org) the release bundle, then the CometD is already built for you.
To run the demonstration with Maven, unzip the release bundle and execute:

    $ cd cometd-demo
    $ mvn jetty:run

then point your browser at http://localhost:8080

Alternately you can deploy the CometD demo war file into
any Servlet 2.5 or later server (e.g. jetty, tomcat, glassfish)
with commands like:

    $ cp cometd-demo/target/cometd-demo/target/cometd-demo-*.war  $MY_SERVER/webapps/cometd.war
    cd $MY_SERVER
    <command to run my server>

### Reporting Issues

Issues, bugs and requests for enhancements should be filed at https://bugs.cometd.org

### Building CometD

If you have cloned the source release, follow the instructions at
https://docs.cometd.org/current/reference/#_build, or just do:

    $ mvn install

### CometD Benchmark

The [CometD Benchmark](https://docs.cometd.org/current/reference/#_benchmarking) can be run interactively or in batch mode.

To run the server interactively, open a terminal window and type:

    $ cd cometd-java/cometd-java-benchmark/cometd-java-benchmark-server/
    $ mvn exec:exec

Then follow the instructions printed in the terminal.

To run the client interactively, open another terminal window (potentially on another machine), and type:

    $ cd cometd-java/cometd-java-benchmark/cometd-java-benchmark-client/
    $ mvn exec:exec

Then follow instructions printed on the terminal to generate the load.


[![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.nutz/nutz/badge.svg)](https://maven-badges.herokuapp.com/maven-central/org.nutz/nutz/)
[![License](https://img.shields.io/badge/license-Apache%202-4EB1BA.svg)](https://www.apache.org/licenses/LICENSE-2.0.html)

## 项目目标

在力所能及的情况下，最大限度的提高 Java 开发人员的生产力。

*Talk is cheap. Show me the code!!*

Nutz遵循Apache协议,完全开源,文档齐全,永远免费(商用也是)

完整的Mvc,Ioc,Dao,Aop, 快速开发Web/桌面/嵌入式应用,无强制依赖

## 项目各种资源地址

*   [项目官网](https://nutzam.com)
*   [Nutz社区](https://nutz.cn/) 秒回, 就是这么爽
*   [NutzBoot](https://nutz.io) 可靠的企业级微服务框架,提供自动配置,嵌入式web服务,分布式会话,RPC等一篮子解决方案
*   在线文档
    *   [官网](https://nutzam.com/core/nutz_preface.html) Nutz手册,涵盖方方面面
    *   [w3cschool上的文档](http://www.w3cschool.cn/nutz/) [由vincent109维护](https://github.com/vincent109)
    *   [github pages](https://nutzam.github.io/nutz/) github 的 pages
*   [各种插件](http://github.com/nutzam/nutzmore) 您能想到的都有哦(基本上`^_^`)
*   [好玩的Nutzbook](http://nutzbook.wendal.net) 几分钟搭建一个demo有何不可? 入门从这里开始
*	[在线javadoc](https://nutzam.com/javadoc/) 注释就是这么全
*	[NutzWk](https://github.com/Wizzercn/NutzWk) 基于Nutz的Java开源企业级开发框架
*	[Idea插件](https://github.com/threefish/NutzCodeInsight) idea 插件

## Nutz生态系统

![nutz系统架构](nutz-graph.png)

### Maven 资源

```xml
		<dependency>
			<groupId>org.nutz</groupId>
			<artifactId>nutz</artifactId>
			<version>1.r.69.v20220703</version>
		</dependency>
```

详情: [https://nutzam.com/core/basic/maven.html](https://nutzam.com/core/basic/maven.html)

## 关于我们

广州市文尔软件科技有限公司

## Contributors

This project exists thanks to all the people who contribute. [[Contribute](CONTRIBUTING.md)].

## Stargazers over time

[![Stargazers over time](https://starchart.cc/nutzam/nutz.svg)](https://starchart.cc/nutzam/nutz)


# [JSqlParser 4.9 Website](https://jsqlparser.github.io/JSqlParser)

![Build Status](https://github.com/JSQLParser/JSqlParser/actions/workflows/maven.yml/badge.svg)
[![Build Status (Legacy)](https://travis-ci.com/JSQLParser/JSqlParser.svg?branch=master)](https://travis-ci.com/JSQLParser/JSqlParser)   [![Coverage Status](https://coveralls.io/repos/JSQLParser/JSqlParser/badge.svg?branch=master)](https://coveralls.io/r/JSQLParser/JSqlParser?branch=master) [![Codacy Badge](https://app.codacy.com/project/badge/Grade/6f9a2d7eb98f45969749e101322634a1)](https://www.codacy.com/gh/JSQLParser/JSqlParser/dashboard?utm_source=github.com&utm_medium=referral&utm_content=JSQLParser/JSqlParser&utm_campaign=Badge_Grade)
[![Maven Central](https://maven-badges.herokuapp.com/maven-central/com.github.jsqlparser/jsqlparser/badge.svg)](http://maven-badges.herokuapp.com/maven-central/com.github.jsqlparser/jsqlparser) [![Javadocs](https://www.javadoc.io/badge/com.github.jsqlparser/jsqlparser.svg)](https://www.javadoc.io/doc/com.github.jsqlparser/jsqlparser)
[![Gitter](https://badges.gitter.im/JSQLParser/JSqlParser.svg)](https://gitter.im/JSQLParser/JSqlParser?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)

## Summary

Please visit the [WebSite](https://jsqlparser.github.io/JSqlParser). **JSqlParser** is a RDBMS agnostic SQL statement parser. It translates SQL statements into a traversable hierarchy of Java classes (see [Samples](https://jsqlparser.github.io/JSqlParser/usage.html#parse-a-sql-statements)):

```sql
SELECT 1 FROM dual WHERE a = b
```

```text
SQL Text
 └─Statements: statement.select.PlainSelect
    ├─selectItems: statement.select.SelectItem
    │  └─LongValue: 1
    ├─Table: dual
    └─where: expression.operators.relational.EqualsTo
       ├─Column: a
       └─Column: b
```

```java
String sqlStr = "select 1 from dual where a=b";

PlainSelect select = (PlainSelect) CCJSqlParserUtil.parse(sqlStr);

SelectItem selectItem =
        select.getSelectItems().get(0);
Assertions.assertEquals(
        new LongValue(1)
        , selectItem.getExpression());

Table table = (Table) select.getFromItem();
Assertions.assertEquals("dual", table.getName());

EqualsTo equalsTo = (EqualsTo) select.getWhere();
Column a = (Column) equalsTo.getLeftExpression();
Column b = (Column) equalsTo.getRightExpression();
Assertions.assertEquals("a", a.getColumnName());
Assertions.assertEquals("b", b.getColumnName());
}
```

JSQLParser-4.9 is the last JDK8 compatible version and any future development will depend on JDK11.

## [Supported Grammar and Syntax](https://jsqlparser.github.io/JSqlParser/syntax.html)

**JSqlParser** aims to support the SQL standard as well as all major RDBMS. Any missing syntax or features can be added on demand.

| RDBMS                                                                                | Statements                                                                                |
|-----------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------|
| Oracle
MS SQL Server and Sybase
Postgres
MySQL and MariaDB
DB2
H2 and HSQLDB and Derby
SQLite | `SELECT`
`INSERT`, `UPDATE`, `UPSERT`, `MERGE`
`DELETE`, `TRUNCATE TABLE`
`CREATE ...`, `ALTER ....`, `DROP ...`
`WITH ...`         |
| Salesforce SOQL                                                                                | `INCLUDES`, `EXCLUDES` |

**JSqlParser** can also be used to create SQL Statements from Java Code with a fluent API (see [Samples](https://jsqlparser.github.io/JSqlParser/usage.html#build-a-sql-statements)).

## Alternatives to JSqlParser?
[**General SQL Parser**](http://www.sqlparser.com/features/introduce.php?utm_source=github-jsqlparser&utm_medium=text-general) looks pretty good, with extended SQL syntax (like PL/SQL and T-SQL) and java + .NET APIs. The tool is commercial (license available online), with a free download option.

Alternatively the dual-licensed [JOOQ](https://www.jooq.org/doc/latest/manual/sql-building/sql-parser/) provides a hand-written Parser supporting a lot of RDBMS, translation between dialects, SQL transformation, can be used as a JDBC proxy for translation and transformation purposes.

## [Documentation](https://jsqlparser.github.io/JSqlParser)
  1. [Samples](https://jsqlparser.github.io/JSqlParser/usage.html#parse-a-sql-statements)
  2. [Build Instructions](https://jsqlparser.github.io/JSqlParser/usage.html) and [Maven Artifact](https://jsqlparser.github.io/JSqlParser/usage.html#build-dependencies)
  3. [Contribution](https://jsqlparser.github.io/JSqlParser/contribution.html)
  4. [Change Log](https://jsqlparser.github.io/JSqlParser/changelog.html#latest-changes-since-jsqlparser-version)
  5. [Issues](https://github.com/JSQLParser/JSqlParser/issues)

## License

**JSqlParser** is dual licensed under **LGPL V2.1** or **Apache Software License, Version 2.0**.


[![Main Site][gh-pages-shield]][gh-pages-link]
[![Build Status][ci-shield]][ci-link]
[![Maven Release][maven-shield]][maven-link]
[![Stackoverflow][stackoverflow-shield]][stackoverflow-link]

## What is Truth?

Truth makes your [test assertions] and [failure messages] more readable.
[Similar][comparison] to [AssertJ], it [natively supports][known_types] many JDK
and [Guava] types, and it is [extensible][extension] to others.

Truth is owned and maintained by the [Guava] team. It is used in the majority
of the tests in Google’s own codebase.

Read more at [the main website](https://truth.dev).

<!-- references -->

[test assertions]: https://truth.dev/benefits#readable-assertions
[failure messages]: https://truth.dev/benefits#readable-messages
[comparison]: https://truth.dev/comparison
[AssertJ]: http://joel-costigliola.github.io/assertj/
[known_types]: https://truth.dev/known_types
[extension]: https://truth.dev/extension
[Guava]: https://github.com/google/guava
[gh-pages-shield]: https://img.shields.io/badge/main%20site-truth.dev-ff55ff.png?style=flat
[gh-pages-link]: https://truth.dev/
[ci-shield]: https://github.com/google/truth/workflows/CI/badge.svg?branch=master
[ci-link]: https://github.com/google/truth/actions
[maven-shield]: https://img.shields.io/maven-central/v/com.google.truth/truth.png
[maven-link]: https://search.maven.org/artifact/com.google.truth/truth
[stackoverflow-shield]: https://img.shields.io/badge/stackoverflow-google‐truth-5555ff.png?style=flat
[stackoverflow-link]: https://stackoverflow.com/questions/tagged/google-truth


# Cucumber JVM

[![#StandWithUkraine](https://raw.githubusercontent.com/vshymanskyy/StandWithUkraine/main/badges/StandWithUkraine.svg)](https://vshymanskyy.github.io/StandWithUkraine)
[![OpenCollective](https://opencollective.com/cucumber/backers/badge.svg)](https://opencollective.com/cucumber)
[![OpenCollective](https://opencollective.com/cucumber/sponsors/badge.svg)](https://opencollective.com/cucumber)
[![Maven Central](https://img.shields.io/maven-central/v/io.cucumber/cucumber-java.svg?label=Maven%20Central)](https://central.sonatype.com/artifact/io.cucumber/cucumber-java)
[![Build Status](https://github.com/cucumber/cucumber-jvm/workflows/Cucumber%20CI/badge.svg)](https://github.com/cucumber/cucumber-jvm/actions)
[![Coverage Status](https://codecov.io/gh/cucumber/cucumber-jvm/branch/main/graph/badge.svg)](https://codecov.io/gh/cucumber/cucumber-jvm/branch/main)

Cucumber-JVM is a pure Java implementation of Cucumber.
You can [run](https://cucumber.io/docs/cucumber/api/#running-cucumber) it with
the tool of your choice.

Cucumber-JVM also integrates with all the popular
[Dependency Injection containers](https://cucumber.io/docs/installation/java/#dependency-injection).

## Getting started

* [Installation](https://cucumber.io/docs/installation/java/)
* [Documentation](https://cucumber.io/docs/cucumber/)
* [Hello World project](https://github.com/cucumber/cucumber-java-skeleton)

## Upgrading?

Migration instructions from previous major versions and a long form
explanation of noteworthy changes can be found in the [release-notes archive](release-notes)

The changes for the current major version can be found in the [CHANGELOG.md](CHANGELOG.md).

## Questions, Problems, Help needed?

Please ask on

* [Stack Overflow](https://stackoverflow.com/questions/tagged/cucumber-jvm).
* [CucumberBDD Slack](https://communityinviter.com/apps/cucumberbdd/docs-page) <sup>[direct link](https://cucumberbdd.slack.com/)</sup>

## Bugs and Feature requests

You can register bugs and feature requests in the
[GitHub Issue Tracker](https://github.com/cucumber/cucumber-jvm/issues).

Please bear in mind that this project is almost entirely developed by
volunteers. If you do not provide the implementation yourself (or pay someone
to do it for you), the bug might never get fixed. If it is a serious bug, other
people than you might care enough to provide a fix.

## Contributing

If you'd like to contribute to the documentation, checkout
[cucumber/docs.cucumber.io](https://github.com/cucumber/docs.cucumber.io)
otherwise see our
[CONTRIBUTING.md](https://github.com/cucumber/cucumber-jvm/blob/main/CONTRIBUTING.md).


MessagePack for Java
===

[MessagePack](http://msgpack.org) is a binary serialization format. If you need a fast and compact alternative of JSON, MessagePack is your friend. For example, a small integer can be encoded in a single byte, and short strings only need a single byte prefix + the original byte array. MessagePack implementation is already available in various languages (See also the list in http://msgpack.org) and works as a universal data format.

 * Message Pack specification: <https://github.com/msgpack/msgpack/blob/master/spec.md>

MessagePack v7 (or later) is a faster implementation of the previous version [v06](https://github.com/msgpack/msgpack-java/tree/v06), and
supports all of the message pack types, including [extension format](https://github.com/msgpack/msgpack/blob/master/spec.md#formats-ext).

[JavaDoc is available at javadoc.io](https://www.javadoc.io/doc/org.msgpack/msgpack-core).

## Quick Start

[![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.msgpack/msgpack-core/badge.svg)](https://maven-badges.herokuapp.com/maven-central/org.msgpack/msgpack-core/)
[![Javadoc](https://javadoc.io/badge/org.msgpack/msgpack-core.svg)](https://www.javadoc.io/doc/org.msgpack/msgpack-core)

For Maven users:
```
<dependency>
   <groupId>org.msgpack</groupId>
   <artifactId>msgpack-core</artifactId>
   <version>(version)</version>
</dependency>
```

For sbt users:
```
libraryDependencies += "org.msgpack" % "msgpack-core" % "(version)"
```

For gradle users:
```
repositories {
    mavenCentral()
}

dependencies {
    compile 'org.msgpack:msgpack-core:(version)'
}
```

- [Usage examples](https://github.com/msgpack/msgpack-java/blob/develop/msgpack-core/src/test/java/org/msgpack/core/example/MessagePackExample.java)

### Java 17 Support

For using DirectByteBuffer (off-heap memory access methods) in JDK17, you need to specify two JVM options:
```
--add-opens=java.base/java.nio=ALL-UNNAMED
--add-opens=java.base/sun.nio.ch=ALL-UNNAMED
```

### Integration with Jackson ObjectMapper (jackson-databind)

msgpack-java supports serialization and deserialization of Java objects through [jackson-databind](https://github.com/FasterXML/jackson-databind).
For details, see [msgpack-jackson/README.md](https://github.com/msgpack/msgpack-java/blob/develop/msgpack-jackson/README.md). The template-based serialization mechanism used in v06 is deprecated.

- [Release Notes](https://github.com/msgpack/msgpack-java/blob/develop/RELEASE_NOTES.md)

## For MessagePack Developers [![Travis CI](https://travis-ci.org/msgpack/msgpack-java.svg?branch=v07-develop)](https://travis-ci.org/msgpack/msgpack-java)

msgpack-java uses [sbt](http://www.scala-sbt.org/) for building the projects. For the basic usage of sbt, see:
 * [Building Java projects with sbt](http://xerial.org/blog/2014/03/24/sbt/)

Coding style
 * msgpack-java uses [the same coding style](https://github.com/airlift/codestyle) with Facebook Presto
  * [IntelliJ setting file](https://raw.githubusercontent.com/airlift/codestyle/master/IntelliJIdea14/Airlift.xml)

### Basic sbt commands
Enter the sbt console:
```
$ ./sbt
```

Here is a list of sbt commands for daily development:
```
> ~compile                                 # Compile source codes
> ~test:compile                            # Compile both source and test codes
> ~test                                    # Run tests upon source code change
> ~testOnly *MessagePackTest               # Run tests in the specified class
> ~testOnly *MessagePackTest -- (pattern)  # Run tests matching the pattern
> project msgpack-core                     # Focus on a specific project
> package                                  # Create a jar file in the target folder of each project
> jcheckStyle                              # Run check style
> scalafmtAll                              # Reformat code
```

### Publishing

```
> publishLocal            # Install to local .ivy2 repository
> publishM2               # Install to local .m2 Maven repository
> publish                 # Publishing a snapshot version to the Sonatype repository
```

### Publish to Sonatype (Maven Central)

To publish a new version, add a new git tag and push it to GitHub. GitHub Action will deploy a new release version to Maven Central (Sonatype).

```scala
$ git tag v0.x.y
$ git push origin v0.x.y
```

A new release note will be generated automatically at the [GitHub Releases](https://github.com/msgpack/msgpack-java/releases) page.

#### Publishing to Sonatype from Local Machine

If you need to publish to Maven central using a local machine, you need to configure [sbt-sonatype](https://github.com/xerial/sbt-sonatype) plugin. First set Sonatype account information (user name and password) in the global sbt settings. To protect your password, never include this file in your project.

___$HOME/.sbt/(sbt-version)/sonatype.sbt___

```
credentials += Credentials("Sonatype Nexus Repository Manager",
        "oss.sonatype.org",
        "(Sonatype user name)",
        "(Sonatype password)")
```

You may also need to configure GPG. See the instruction in [sbt-pgp](https://github.com/sbt/sbt-pgp).

Then, run `publishedSigned` followed by `sonatypeBundleRelease`:
```
# [optional] When you need to perform the individual release steps manually, use the following commands:
> publishSigned           # Publish GPG signed artifacts to the Sonatype repository
> sonatypeBundleRelease   # Publish to the Maven Central (It will be synched within less than 4 hours)
```

If some sporadic error happens (e.g., Sonatype timeout), rerun `sonatypeBundleRelease` again.

### Project Structure

```
msgpack-core                 # Contains packer/unpacker implementation that never uses third-party libraries
msgpack-jackson              # Contains jackson-dataformat-java implementation
```


image:https://spring.io/badges/spring-data-redis/ga.svg[Spring Data Redis,link=https://spring.io/projects/spring-data-redis/#quick-start]
image:https://spring.io/badges/spring-data-redis/snapshot.svg[Spring Data Redis,link=https://spring.io/projects/spring-data-redis/#quick-start]

= Spring Data Redis image:https://jenkins.spring.io/buildStatus/icon?job=spring-data-redis%2Fmain&subject=Build[link=https://jenkins.spring.io/view/SpringData/job/spring-data-redis/] https://gitter.im/spring-projects/spring-data[image:https://badges.gitter.im/spring-projects/spring-data.svg[Gitter]] image:https://img.shields.io/badge/Revved%20up%20by-Develocity-06A0CE?logo=Gradle&labelColor=02303A["Revved up by Develocity", link="https://ge.spring.io/scans?search.rootProjectNames=Spring Data Redis"]

The primary goal of the https://spring.io/projects/spring-data/[Spring Data] project is to make it easier to build Spring-powered applications that use new data access technologies such as non-relational databases, map-reduce frameworks, and cloud based data services.

This modules provides integration with the https://redis.io/[Redis] store.

== Features

* Connection package as low-level abstraction across multiple Redis drivers (https://github.com/lettuce-io/lettuce-core[Lettuce] and https://github.com/redis/jedis[Jedis]).
* Exception translation to Spring’s portable Data Access exception hierarchy for Redis driver exceptions
* https://docs.spring.io/spring-data/redis/reference/redis/template.html[`RedisTemplate`] that provides a high level abstraction for performing various Redis operations, exception translation and serialization support.
* Pubsub support (such as a MessageListenerContainer for message-driven POJOs).
* https://docs.spring.io/spring-data/redis/reference/redis/connection-modes.html#redis:sentinel[Redis Sentinel] and https://docs.spring.io/spring-data/redis/reference/redis/connection-modes.html#cluster.enable[Redis Cluster] support.
* Reactive API using the Lettuce driver.
* JDK, String, JSON and Spring Object/XML mapping serializers.
* JDK Collection implementations on top of Redis.
* Atomic counter support classes.
* Sorting and Pipelining functionality.
* Dedicated support for SORT, SORT/GET pattern and returned bulk values.
* Redis implementation for Spring 3.1 cache abstraction.
* Automatic implementation of `Repository` interfaces including support for custom finder methods using `@EnableRedisRepositories`.
* CDI support for repositories.

== Code of Conduct

This project is governed by the https://github.com/spring-projects/.github/blob/e3cc2ff230d8f1dca06535aa6b5a4a23815861d4/CODE_OF_CONDUCT.md[Spring Code of Conduct]. By participating, you are expected to uphold this code of conduct. Please report unacceptable behavior to spring-code-of-conduct@pivotal.io.

== Getting Started

Here is a quick teaser of an application using Spring Data Redis in Java:

[source,java]
----
public class Example {

    // inject the actual template
    @Autowired
    private RedisTemplate<String, String> template;

    // inject the template as ListOperations
    // can also inject as Value, Set, ZSet, and HashOperations
    @Resource(name="redisTemplate")
    private ListOperations<String, String> listOps;

    public void addLink(String userId, URL url) {
        listOps.leftPush(userId, url.toExternalForm());
        // or use template directly
        redisTemplate.boundListOps(userId).leftPush(url.toExternalForm());
    }
}

@Configuration
class ApplicationConfig {

  @Bean
  public RedisConnectionFactory redisConnectionFactory() {
    return new LettuceConnectionFactory();
  }
}
----

=== Maven configuration

Add the Maven dependency:

[source,xml]
----
<dependency>
  <groupId>org.springframework.data</groupId>
  <artifactId>spring-data-redis</artifactId>
  <version>${version}</version>
</dependency>
----

If you'd rather like the latest snapshots of the upcoming major version, use our Maven snapshot repository and declare the appropriate dependency version.

[source,xml]
----
<dependency>
  <groupId>org.springframework.data</groupId>
  <artifactId>spring-data-redis</artifactId>
  <version>${version}-SNAPSHOT</version>
</dependency>

<repository>
  <id>spring-snapshot</id>
  <name>Spring Snapshot Repository</name>
  <url>https://repo.spring.io/snapshot</url>
</repository>
----

== Getting Help

Having trouble with Spring Data? We’d love to help!

* Check the
https://docs.spring.io/spring-data/redis/reference/[reference documentation], and https://docs.spring.io/spring-data/redis/docs/current/api/[Javadocs].
* Learn the Spring basics – Spring Data builds on Spring Framework, check the https://spring.io[spring.io] web-site for a wealth of reference documentation.
If you are just starting out with Spring, try one of the https://spring.io/guides[guides].
* If you are upgrading, check out the https://github.com/spring-projects/spring-data-commons/wiki#release-notes[Release notes] for "`new and noteworthy`" features.
* Ask a question - we monitor https://stackoverflow.com[stackoverflow.com] for questions tagged with https://stackoverflow.com/tags/spring-data[`spring-data-redis`].
You can also chat with the community on https://gitter.im/spring-projects/spring-data[Gitter].
* Report bugs with Spring Data Redis at https://github.com/spring-projects/spring-data-redis/issues/new[github.com/spring-projects/spring-data-redis].

== Reporting Issues

Spring Data uses Github as issue tracking system to record bugs and feature requests.
If you want to raise an issue, please follow the recommendations below:

* Before you log a bug, please search the https://github.com/spring-projects/spring-data-redis/issues[issue tracker] to see if someone has already reported the problem.
* If the issue does not already exist, https://github.com/spring-projects/spring-data-redis/issues/new[create a new issue].
* Please provide as much information as possible with the issue report, we like to know the version of Spring Data that you are using, the JVM version, Stacktrace, etc.
* If you need to paste code, or include a stack trace use https://guides.github.com/features/mastering-markdown/[Markdown] code fences +++```+++.
* If possible try to create a test-case or project that replicates the issue.
Attach a link to your code or a compressed file containing your code.

== Building from Source

You don’t need to build from source to use Spring Data (binaries in https://repo.spring.io[repo.spring.io]), but if you want to try out the latest and greatest, Spring Data can be easily built with the https://github.com/takari/maven-wrapper[maven wrapper].
You also need JDK 17 or above and `make`.
The local build environment is managed within a `Makefile` to download, build and spin up Redis in various configurations (Standalone, Sentinel, Cluster, etc.)

[source,bash]
----
 $ make test
----

The preceding command runs a full build.
You can use `make start`, `make stop`, and `make clean` commands to control the environment yourself.
This is useful if you want to avoid constant server restarts.
Once all Redis instances have been started, you can either run tests in your IDE or the full Maven build:

[source,bash]
----
 $ ./mvnw clean install
----

If you want to build with the regular `mvn` command, you will need https://maven.apache.org/run-maven/index.html[Maven v3.8.0 or above].

_Also see link:CONTRIBUTING.adoc[CONTRIBUTING.adoc] if you wish to submit pull requests, and in particular please sign the https://cla.pivotal.io/sign/spring[Contributor’s Agreement] before your first non-trivial change._

=== Building reference documentation

Building the documentation builds also the project without running tests.

[source,bash]
----
 $ ./mvnw clean install -Pantora
----

The generated documentation is available from `target/antora/site/index.html`.

== Guides

The https://spring.io/[spring.io] site contains several guides that show how to use Spring Data step-by-step:

* https://spring.io/guides/gs/messaging-redis/[Messaging with Redis]: Learn how to use Redis as a message broker.
* https://spring.io/guides/gs/spring-data-reactive-redis/[Accessing Data Reactively with Redis]: Learn how to reactively interface with Redis and Spring Data.

== Examples

* https://github.com/spring-projects/spring-data-examples/[Spring Data Examples] contains example projects that explain specific features in more detail.

== License

Spring Data Redis is Open Source software released under the https://www.apache.org/licenses/LICENSE-2.0.html[Apache 2.0 license].


# Swagger Core <img src="https://raw.githubusercontent.com/swagger-api/swagger.io/wordpress/images/assets/SW-logo-clr.png" height="50" align="right">

**NOTE:** If you're looking for Swagger Core 1.5.X and OpenAPI 2.0, please refer to [1.5 branch](https://github.com/swagger-api/swagger-core/tree/1.5).

**NOTE:** Since version 2.1.7, Swagger Core also supports the Jakarta namespace. There are a parallel set of artifacts with the `-jakarta` suffix, providing the same functionality as the unsuffixed (i.e.: `javax`) artifacts.
Please see the [Wiki](https://github.com/swagger-api/swagger-core/wiki/Swagger-2.X---Getting-started) for more details.

**NOTE:** Since version 2.2.0 Swagger Core supports OpenAPI 3.1; see [this page](https://github.com/swagger-api/swagger-core/wiki/Swagger-2.X---OpenAPI-3.1) for details

![Build Test Deploy](https://github.com/swagger-api/swagger-core/workflows/Build%20Test%20Deploy%20master/badge.svg?branch=master)
[![Maven Central](https://maven-badges.herokuapp.com/maven-central/io.swagger.core.v3/swagger-project/badge.svg?style=plastic)](https://maven-badges.herokuapp.com/maven-central/io.swagger.core.v3/swagger-project)

Swagger Core is a Java implementation of the OpenAPI Specification. Current version supports *JAX-RS2* (`javax` and `jakarta` namespaces).

## Get started with Swagger Core!
See the guide on [getting started with Swagger Core](https://github.com/swagger-api/swagger-core/wiki/Swagger-2.X---Getting-started) to get started with adding Swagger to your API.

## See the Wiki!
The [github wiki](https://github.com/swagger-api/swagger-core/wiki) contains documentation, samples, contributions, etc. Start there.

## Compatibility
The OpenAPI Specification has undergone several revisions since initial creation in 2010.  The Swagger Core project has the following compatibilities with the OpenAPI Specification:

Swagger core Version      | Release Date | OpenAPI Spec compatibility | Notes | Status
------------------------- | ------------ | -------------------------- | ----- | ----
2.2.22 (**current stable**)| 2024-05-15   | 3.x           | [tag v2.2.22](https://github.com/swagger-api/swagger-core/tree/v2.2.22) | Supported
2.2.21                     | 2024-03-20   | 3.x           | [tag v2.2.21](https://github.com/swagger-api/swagger-core/tree/v2.2.21) | Supported
2.2.20                     | 2023-12-19   | 3.x           | [tag v2.2.20](https://github.com/swagger-api/swagger-core/tree/v2.2.20) | Supported
2.2.19                     | 2023-11-10   | 3.x           | [tag v2.2.19](https://github.com/swagger-api/swagger-core/tree/v2.2.19) | Supported
2.2.18                     | 2023-10-25   | 3.x           | [tag v2.2.18](https://github.com/swagger-api/swagger-core/tree/v2.2.18) | Supported
2.2.17                     | 2023-10-12   | 3.x           | [tag v2.2.17](https://github.com/swagger-api/swagger-core/tree/v2.2.17) | Supported
2.2.16                     | 2023-09-18   | 3.x           | [tag v2.2.16](https://github.com/swagger-api/swagger-core/tree/v2.2.16) | Supported
2.2.15                     | 2023-07-08   | 3.x           | [tag v2.2.15](https://github.com/swagger-api/swagger-core/tree/v2.2.15) | Supported
2.2.14                     | 2023-06-26   | 3.x           | [tag v2.2.14](https://github.com/swagger-api/swagger-core/tree/v2.2.14) | Supported
2.2.13                     | 2023-06-24   | 3.x           | [tag v2.2.13](https://github.com/swagger-api/swagger-core/tree/v2.2.13) | Supported
2.2.12                     | 2023-06-13   | 3.x           | [tag v2.2.12](https://github.com/swagger-api/swagger-core/tree/v2.2.12) | Supported
2.2.11                     | 2023-06-01   | 3.x           | [tag v2.2.11](https://github.com/swagger-api/swagger-core/tree/v2.2.11) | Supported
2.2.10                     | 2023-05-15   | 3.x           | [tag v2.2.10](https://github.com/swagger-api/swagger-core/tree/v2.2.10) | Supported
2.2.9                     | 2023-03-20  | 3.x           | [tag v2.2.9](https://github.com/swagger-api/swagger-core/tree/v2.2.9)                                             | Supported
2.2.8                     | 2023-01-06  | 3.x           | [tag v2.2.8](https://github.com/swagger-api/swagger-core/tree/v2.2.8)                                             | Supported
2.2.7                     | 2022-11-15  | 3.0           | [tag v2.2.7](https://github.com/swagger-api/swagger-core/tree/v2.2.7)                                             | Supported
2.2.6                     | 2022-11-02  | 3.0           | [tag v2.2.6](https://github.com/swagger-api/swagger-core/tree/v2.2.6)                                             | Supported
2.2.5                     | 2022-11-02  | 3.0           | [tag v2.2.5](https://github.com/swagger-api/swagger-core/tree/v2.2.5)                                             | Supported
2.2.4                     | 2022-10-16  | 3.0           | [tag v2.2.4](https://github.com/swagger-api/swagger-core/tree/v2.2.4)                                             | Supported
2.2.3                     | 2022-09-27  | 3.0           | [tag v2.2.3](https://github.com/swagger-api/swagger-core/tree/v2.2.3)                                             | Supported
2.2.2                     | 2022-07-20  | 3.0           | [tag v2.2.2](https://github.com/swagger-api/swagger-core/tree/v2.2.2)                                             | Supported
2.2.1                     | 2022-06-15  | 3.0           | [tag v2.2.1](https://github.com/swagger-api/swagger-core/tree/v2.2.1)                                             | Supported
2.2.0                     | 2022-04-04  | 3.0           | [tag v2.2.0](https://github.com/swagger-api/swagger-core/tree/v2.2.0)                                             | Supported
2.1.13                     | 2022-02-07  | 3.0           | [tag v2.1.13](https://github.com/swagger-api/swagger-core/tree/v2.1.13)                                           | Supported
2.1.12                     | 2021-12-23  | 3.0           | [tag v2.1.12](https://github.com/swagger-api/swagger-core/tree/v2.1.12)                                           | Supported
2.1.11                     | 2021-09-29  | 3.0           | [tag v2.1.11](https://github.com/swagger-api/swagger-core/tree/v2.1.11)                                           | Supported
2.1.10                     | 2021-06-28  | 3.0           | [tag v2.1.10](https://github.com/swagger-api/swagger-core/tree/v2.1.10)                                           | Supported
2.1.9                     | 2021-04-20  | 3.0           | [tag v2.1.9](https://github.com/swagger-api/swagger-core/tree/v2.1.9)                                             | Supported
2.1.8                     | 2021-04-18  | 3.0           | [tag v2.1.8](https://github.com/swagger-api/swagger-core/tree/v2.1.8)                                             | Supported
2.1.7                     | 2021-02-18  | 3.0           | [tag v2.1.7](https://github.com/swagger-api/swagger-core/tree/v2.1.7)                                             | Supported
2.1.6                     | 2020-12-04  | 3.0           | [tag v2.1.6](https://github.com/swagger-api/swagger-core/tree/v2.1.6)                                             | Supported
2.1.5                     | 2020-10-01  | 3.0           | [tag v2.1.5](https://github.com/swagger-api/swagger-core/tree/v2.1.5)                                             | Supported
2.1.4                     | 2020-07-24  | 3.0           | [tag v2.1.4](https://github.com/swagger-api/swagger-core/tree/v2.1.4)                                             | Supported
2.1.3                     | 2020-06-27  | 3.0           | [tag v2.1.3](https://github.com/swagger-api/swagger-core/tree/v2.1.3)                                             | Supported
2.1.2                     | 2020-04-01  | 3.0           | [tag v2.1.2](https://github.com/swagger-api/swagger-core/tree/v2.1.2)                                             | Supported
2.1.1                     | 2020-01-02  | 3.0           | [tag v2.1.1](https://github.com/swagger-api/swagger-core/tree/v2.1.1)                                             | Supported
2.1.0                     | 2019-11-16  | 3.0           | [tag v2.1.0](https://github.com/swagger-api/swagger-core/tree/v2.1.0)                                             | Supported
2.0.10                    | 2019-10-11  | 3.0           | [tag v2.0.10](https://github.com/swagger-api/swagger-core/tree/v2.0.10)                                           | Supported
2.0.9                     | 2019-08-22  | 3.0           | [tag v2.0.9](https://github.com/swagger-api/swagger-core/tree/v2.0.9)                                             | Supported
2.0.8                     | 2019-04-24  | 3.0           | [tag v2.0.8](https://github.com/swagger-api/swagger-core/tree/v2.0.8)                                             | Supported
2.0.7                     | 2019-02-18  | 3.0           | [tag v2.0.7](https://github.com/swagger-api/swagger-core/tree/v2.0.7)                                             | Supported
2.0.6                     | 2018-11-27  | 3.0           | [tag v2.0.6](https://github.com/swagger-api/swagger-core/tree/v2.0.6)                                             | Supported
2.0.5                     | 2018-09-19  | 3.0           | [tag v2.0.5](https://github.com/swagger-api/swagger-core/tree/v2.0.5)                                             | Supported
2.0.4                     | 2018-09-05  | 3.0           | [tag v2.0.4](https://github.com/swagger-api/swagger-core/tree/v2.0.4)                                             | Supported
2.0.3                     | 2018-08-09  | 3.0           | [tag v2.0.3](https://github.com/swagger-api/swagger-core/tree/v2.0.3)                                             | Supported
1.6.14 (**current stable**)| 2024-03-19   | 2.0           | [tag v1.6.14](https://github.com/swagger-api/swagger-core/tree/v1.6.14)                                           | Supported
1.6.13                    | 2024-01-26   | 2.0           | [tag v1.6.13](https://github.com/swagger-api/swagger-core/tree/v1.6.13)                                           | Supported
1.6.12                    | 2023-10-14   | 2.0           | [tag v1.6.12](https://github.com/swagger-api/swagger-core/tree/v1.6.12)                                           | Supported
1.6.11                    | 2023-05-15  | 2.0           | [tag v1.6.11](https://github.com/swagger-api/swagger-core/tree/v1.6.11)                                           | Supported
1.6.10                    | 2023-03-21  | 2.0           | [tag v1.6.10](https://github.com/swagger-api/swagger-core/tree/v1.6.10)                                           | Supported
1.6.9                     | 2022-11-15  | 2.0           | [tag v1.6.9](https://github.com/swagger-api/swagger-core/tree/v1.6.9)                                             | Supported
1.6.8                     | 2022-10-16  | 2.0           | [tag v1.6.8](https://github.com/swagger-api/swagger-core/tree/v1.6.8)                                             | Supported
1.6.7                     | 2022-09-27  | 2.0           | [tag v1.6.7](https://github.com/swagger-api/swagger-core/tree/v1.6.7)                                             | Supported
1.6.6                     | 2022-04-04  | 2.0           | [tag v1.6.6](https://github.com/swagger-api/swagger-core/tree/v1.6.6)                                             | Supported
1.6.5                     | 2022-02-07  | 2.0           | [tag v1.6.5](https://github.com/swagger-api/swagger-core/tree/v1.6.5)                                             | Supported
1.6.4                     | 2021-12-23  | 2.0           | [tag v1.6.4](https://github.com/swagger-api/swagger-core/tree/v1.6.4)                                             | Supported
1.6.3                     | 2021-09-29  | 2.0           | [tag v1.6.3](https://github.com/swagger-api/swagger-core/tree/v1.6.3)                                             | Supported
1.6.2                     | 2020-07-01  | 2.0           | [tag v1.6.2](https://github.com/swagger-api/swagger-core/tree/v1.6.2)                                             | Supported
1.6.1                     | 2020-04-01  | 2.0           | [tag v1.6.1](https://github.com/swagger-api/swagger-core/tree/v1.6.1)                                             | Supported
1.6.0                     | 2019-11-16  | 2.0           | [tag v1.6.0](https://github.com/swagger-api/swagger-core/tree/v1.6.0)                                             | Supported
1.5.24                    | 2019-10-11  | 2.0           | [tag v1.5.24](https://github.com/swagger-api/swagger-core/tree/v1.5.24)                                           | Supported
1.5.23                    | 2019-08-22  | 2.0           | [tag v1.5.23](https://github.com/swagger-api/swagger-core/tree/v1.5.23)                                           | Supported
1.5.22                    | 2019-02-18  | 2.0           | [tag v1.5.22](https://github.com/swagger-api/swagger-core/tree/v1.5.22)                                           | Supported
1.5.21                    | 2018-08-09  | 2.0           | [tag v1.5.21](https://github.com/swagger-api/swagger-core/tree/v1.5.21)                                           | Supported
1.5.20                    | 2018-05-23  | 2.0           | [tag v1.5.20](https://github.com/swagger-api/swagger-core/tree/v1.5.20)                                           | Supported
2.0.2                     | 2018-05-23  | 3.0           | [tag v2.0.2](https://github.com/swagger-api/swagger-core/tree/v2.0.2)                                             | Supported
2.0.1                     | 2018-04-16  | 3.0           | [tag v2.0.1](https://github.com/swagger-api/swagger-core/tree/v2.0.1)                                             | Supported
1.5.19                    | 2018-04-16  | 2.0           | [tag v1.5.19](https://github.com/swagger-api/swagger-core/tree/v1.5.19)                                           | Supported
2.0.0                     | 2018-03-20  | 3.0           | [tag v2.0.0](https://github.com/swagger-api/swagger-core/tree/v2.0.0)                                             | Supported
2.0.0-rc4                 | 2018-01-22  | 3.0           | [tag v2.0.0-rc4](https://github.com/swagger-api/swagger-core/tree/v2.0.0-rc4)                                     | Supported
2.0.0-rc3                 | 2017-11-21  | 3.0           | [tag v2.0.0-rc3](https://github.com/swagger-api/swagger-core/tree/v2.0.0-rc3)                                     | Supported
2.0.0-rc2                 | 2017-09-29  | 3.0           | [tag v2.0.0-rc2](https://github.com/swagger-api/swagger-core/tree/v2.0.0-rc2)                                     | Supported
2.0.0-rc1                 | 2017-08-17  | 3.0           | [tag v2.0.0-rc1](https://github.com/swagger-api/swagger-core/tree/v2.0.0-rc1)                                     | Supported
1.5.18                    | 2018-01-22  | 2.0           | [tag v1.5.18](https://github.com/swagger-api/swagger-core/tree/v1.5.18)                                           | Supported
1.5.17                    | 2017-11-21  | 2.0           | [tag v1.5.17](https://github.com/swagger-api/swagger-core/tree/v1.5.17)                                           | Supported
1.5.16                    | 2017-07-15  | 2.0           | [tag v1.5.16](https://github.com/swagger-api/swagger-core/tree/v1.5.16)                                           | Supported
1.3.12                    | 2014-12-23  | 1.2           | [tag v1.3.12](https://github.com/swagger-api/swagger-core/tree/v1.3.12)                                           | Supported
1.2.4                     | 2013-06-19  | 1.1           | [tag swagger-project_2.10.0-1.2.4](https://github.com/swagger-api/swagger-core/tree/swagger-project_2.10.0-1.2.4) | Deprecated
1.0.0                     | 2011-10-16  | 1.0           | [tag v1.0](https://github.com/swagger-api/swagger-core/tree/v1.0)                                                 | Deprecated

### Change History
If you're interested in the change history of swagger and the Swagger Core framework, see [here](https://github.com/swagger-api/swagger-core/releases).

### Prerequisites
You need the following installed and available in your $PATH:

* Java 11
* Apache maven 3.0.4 or greater
* Jackson 2.4.5 or greater

### To build from source (currently 2.2.23-SNAPSHOT)
```
# first time building locally
mvn -N
```

Subsequent builds:
```
mvn install
```

This will build the modules.

Of course if you don't want to build locally you can grab artifacts from maven central:

`https://repo1.maven.org/maven2/io/swagger/core/`

## Sample Apps
The samples have moved to [a new repository](https://github.com/swagger-api/swagger-samples/tree/2.0) and contain various integrations and configurations.

## Security contact

Please disclose any security-related issues or vulnerabilities by emailing [security@swagger.io](mailto:security@swagger.io), instead of using the public issue tracker.


# Liquibase [![Build and Test](https://github.com/liquibase/liquibase/actions/workflows/build.yml/badge.svg)](https://github.com/liquibase/liquibase/actions/workflows/build.yml) [![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=liquibase&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=liquibase)

Liquibase helps millions of developers track, version, and deploy database schema changes. It will help you to:
- Control database schema changes for specific versions
- Eliminate errors and delays when releasing databases
- Automatically order scripts for deployment
- Easily rollback changes
- Collaborate with tools you already use

This repository contains the main source code for Liquibase Open Source. For more information about the product, see the [Liquibase website](https://www.liquibase.com/).

## Liquibase Automation and Integrations

Liquibase Open Source has built-in support for a variety of databases. Databases that are not part of Liquibase Open Source require extensions that you can download for free. Here is the full list of [supported databases](https://www.liquibase.com/supported-databases).

Liquibase can be integrated with Maven, Ant, Gradle, Spring Boot, and other CI/CD tools. For a full list, see [Liquibase Tools & Integrations](https://docs.liquibase.com/tools-integrations/home.html). You can use Liquibase with [GitHub Actions](https://github.com/liquibase/liquibase-github-action-example), [Spinnaker](https://github.com/liquibase/liquibase-spinnaker-plugin), and many different [workflows](https://docs.liquibase.com/workflows/home.html).

## Install and Run Liquibase

### System Requirements
Liquibase system requirements can be found on the [Download Liquibase](https://www.liquibase.com/download) page.

### An H2 in-memory database example for CLI
1. [Download and run the appropriate installer](https://www.liquibase.com/download).
2. Make sure to add Liquibase to your PATH.
3. Copy the included `examples` directory to the needed location.
4. Open your CLI and navigate to your `examples/sql` or `examples/xml` directory.
5. Start the included H2 database with the `liquibase init start-h2` command.
6. Run the `liquibase update` command.
7. Run the `liquibase history` command to see what has executed!

See also how to [get started with Liquibase in minutes](https://docs.liquibase.com/start/home.html) or refer to our [Installing Liquibase](https://docs.liquibase.com/start/install/home.html) documentation page for more details.

## Documentation

Visit the [Liquibase Documentation](https://docs.liquibase.com/home.html) website to find the information on how Liquibase works.

## Courses

Learn all about Liquibase by taking our free online courses at [Liquibase University](https://learn.liquibase.com/).

## Want to help?

Want to file a bug or improve documentation? Excellent! Read up on our guidelines for [contributing](https://contribute.liquibase.com/)!

### Contribute code

Use our [step-by-step instructions](https://contribute.liquibase.com/code/) for contributing code to the Liquibase open source project.

### Join the Liquibase Community

Earn points for your achievements and contributions, collect and show off your badges, add accreditations to your LinkedIn. [Learn more about the pathway to Legend and benefits](https://www.liquibase.com/community/liquibase-legends). Enjoy being part of the community!

## Liquibase Extensions

[Provide more database support and features for Liquibase](https://contribute.liquibase.com/extensions-integrations/directory/).

## License

Liquibase Open Source is [licensed under the Apache 2.0 License](https://github.com/liquibase/liquibase/blob/master/LICENSE.txt).

[Liquibase Pro](https://www.liquibase.com/products/pro) has additional features and support and is commercially licensed.

LIQUIBASE is a registered trademark of [Liquibase Inc.](https://www.liquibase.com/company)

## [Contact us](https://www.liquibase.com/contact)

[Liquibase Forum](https://forum.liquibase.org/)

[Liquibase Blog](https://www.liquibase.com/blog)

[Get Support & Advanced Features](https://www.liquibase.com/pricing)

## Publish Release Manual Trigger to Sonatype

1. When a PO (Product Owner) or a Team Leader navigates to Publish a release from here -> https://github.com/liquibase/liquibase/releases/, the workflow from /workflow/release-published.yml job is triggered.
2. When a release is triggered, the workflow file will stop after `Setup` step and an email will be sent out to the list of `approvers` mentioned in job `manual_trigger_deployment`. You can click on the link and perform anyone of the options mentioned in description.
3. A minimum of 2 approvers are needed in order for the other jobs such as `deploy_maven`, `deploy_javadocs`, `publish_to_github_packages`, etc to be executed.
4. When you view the GitHub PR, make sure to verify the version which is being published. It should say something like `Deploying v4.20.0 to sonatype`