diff --git a/CHANGELOG.md b/CHANGELOG.md index a2871cf..772e1f0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,17 +5,28 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [Unreleased] +## [0.2.0] - 2022-08-02 + +Update RabbitMQ amqp-client from 4.x to 5.x. +Look into [changes between 4.x.x and 5.0.0](https://github.com/rabbitmq/rabbitmq-java-client/releases/tag/v5.0.0) for details. ### Added +* CodeQL and SonarCloud analysis. + ### Changed +* RabbitMQ amqp-client compatibility bumped from 4.x.x to 5.x.x (#8). Thanks to [@t-h-e](https://github.com/t-h-e). +* Single jar with dependencies provided as release artifact (#1). + ### Fixed +* NullPointerException on purging queue in AMQP Consumer (#10). Thanks to [@t-h-e](https://github.com/t-h-e). + ### Dependency Updates -* Up amqp-client version to 5.14.2. +* Up jmeter-core version to 5.5. +* Up amqp-client version to 5.15.0. ## [0.1.0] - 2022-01-15 @@ -41,20 +52,20 @@ Initial release. * Scenario example updated. * Code cleanup. -### Removed - -* Redundant dependencies removed. - ### Fixed * No header in reply-to message issue (see jlavallee#41). Thanks to [@gregLibert](https://github.com/gregLibert). * Checkstyle issues. +### Removed + +* Redundant dependencies removed. + ### Dependency Updates * Up jmeter-core version to 5.4.3. * Up amqp-client version to 4.12.0. * Up commons-lang3 version to 3.12.0. -[unreleased]: https://github.com/aliesbelik/jmeter-amqp-plugin/compare/v0.1.0...HEAD +[0.2.0]: https://github.com/aliesbelik/jmeter-amqp-plugin/compare/v0.1.0...HEAD [0.1.0]: https://github.com/aliesbelik/jmeter-amqp-plugin/releases/tag/v0.1.0 diff --git a/README.md b/README.md index e2b1749..88a1ff2 100644 --- a/README.md +++ b/README.md @@ -9,27 +9,23 @@ or any [AMQP](http://www.amqp.org/) message broker. ## Requirements -- Requires JDK 8+. -- Compatible with versions up to **5.14.2** of [com.rabbitmq:amqp-client](https://github.com/rabbitmq/rabbitmq-java-client). + - Requires JDK 8 or higher. + - Compatible with versions up to **5.15.x** of [com.rabbitmq:amqp-client](https://github.com/rabbitmq/rabbitmq-java-client). ## Installation 1. Download the [latest release](https://github.com/aliesbelik/jmeter-amqp-plugin/releases/latest) or [build your own](#build) from the source code. -2. Put `jmeter-amqp-plugin-VERSION-jar-with-dependencies.jar` into `$JMETER_HOME/lib/ext` directory.\ +2. Put `jmeter-amqp-plugin-VERSION.jar` into `$JMETER_HOME/lib/ext` directory.\ It contains the necessary AMQP client dependency, no other jars are required. 3. Restart JMeter GUI. -In case if you need the plugin without the AMQP client included, you can use the `jmeter-amqp-plugin-VERSION.jar`, -but you have to ensure that the [RabbitMQ client library](https://www.rabbitmq.com/java-client.html) - -`amqp-client-VERSION.jar` - is installed in `$JMETER_HOME/lib` directory. - ## Usage This plugin includes 2 samplers: -- [**AMQP Publisher**](#amqp-publisher) -- [**AMQP Consumer**](#amqp-consumer) + - [**AMQP Publisher**](#amqp-publisher) + - [**AMQP Consumer**](#amqp-consumer) Both samplers can be found in the Add -> Sampler list shown as below: @@ -51,15 +47,15 @@ A pre-configured example scenario can be found in the [examples](docs/examples) In order to build JMeter AMQP plugin from source, you will need: -- [Java 8](https://www.oracle.com/downloads/) -- [Apache Maven 3](https://maven.apache.org/) + - [Java 8 or higher](https://www.oracle.com/downloads/) + - [Apache Maven 3](https://maven.apache.org/) Build dependencies are managed by Maven.\ Jars should automatically be downloaded by Maven as part of the build process. In addition, you'll need to copy or symlink the following from `$JMETER_HOME/lib/ext` directory: -- ApacheJMeter_core.jar + - ApacheJMeter_core.jar ### Build from source @@ -69,35 +65,35 @@ To build, just execute: mvn clean package ``` -This will create 2 jars in `/target` directory, the original jar and the jar with all the dependencies within -(this is the one you need): +This will create 2 jars in `/target` directory - the jar with all the dependencies within +(this is the one you need) and the original jar (without amqp-client library inside): ``` target/jmeter-amqp-plugin-VERSION.jar -target/jmeter-amqp-plugin-VERSION-jar-with-dependencies.jar +target/original-jmeter-amqp-plugin-VERSION.jar ``` To install, execute: ``` -cp target/jmeter-amqp-plugin-VERSION-jar-with-dependencies.jar $JMETER_HOME/lib/ext +cp target/jmeter-amqp-plugin-VERSION.jar $JMETER_HOME/lib/ext ``` ## Acknowledgements Thanks to - - [jlavallee](https://github.com/jlavallee) (Jeff Lavallee), who created [original plugin](https://github.com/jlavallee/JMeter-Rabbit-AMQP); - - [polarnik](https://github.com/polarnik) (Viacheslav Smirnov), who spent time and efforts to create + - [jlavallee](https://github.com/jlavallee) (Jeff Lavallee), who created [original plugin](https://github.com/jlavallee/JMeter-Rabbit-AMQP); + - [polarnik](https://github.com/polarnik) (Viacheslav Smirnov), who spent time and efforts to create [comparison](https://github.com/polarnik/JMeter-Rabbit-AMQP-info) of the forks with valuable changes; - - for the features & enhancements implemented in their forks: - - [gregLibert](https://github.com/gregLibert/JMeter-Rabbit-AMQP) (Gregory Libert), - - [gybandi](https://github.com/gybandi/JMeter-Rabbit-AMQP) (Gyuro Andras), - - [looseend](https://github.com/looseend/JMeter-Rabbit-AMQP) (John Singleton), - - [sergiogouveia](https://github.com/sergiogouveia/JMeter-Rabbit-AMQP) (Sergio Gouveia), - - [wojtek-oledzki](https://github.com/voytek-solutions/JMeter-Rabbit-AMQP) (Wojtek Oledzki), - - [zeph1rus](https://github.com/zeph1rus/JMeter-Rabbit-AMQP); - - all the [contributors](https://github.com/jlavallee/JMeter-Rabbit-AMQP/graphs/contributors) to original project. + - for the features & enhancements implemented in their forks: + - [gregLibert](https://github.com/gregLibert/JMeter-Rabbit-AMQP) (Gregory Libert), + - [gybandi](https://github.com/gybandi/JMeter-Rabbit-AMQP) (Gyuro Andras), + - [looseend](https://github.com/looseend/JMeter-Rabbit-AMQP) (John Singleton), + - [sergiogouveia](https://github.com/sergiogouveia/JMeter-Rabbit-AMQP) (Sergio Gouveia), + - [wojtek-oledzki](https://github.com/voytek-solutions/JMeter-Rabbit-AMQP) (Wojtek Oledzki), + - [zeph1rus](https://github.com/zeph1rus/JMeter-Rabbit-AMQP); + - all the [contributors](https://github.com/jlavallee/JMeter-Rabbit-AMQP/graphs/contributors) to original project. ## Contributing diff --git a/docs/examples/rabbitmq-amqp-test.jmx b/docs/examples/rabbitmq-amqp-test.jmx index fb295b9..ce15e8d 100644 --- a/docs/examples/rabbitmq-amqp-test.jmx +++ b/docs/examples/rabbitmq-amqp-test.jmx @@ -1,5 +1,5 @@ - + diff --git a/pom.xml b/pom.xml index 3fc74bd..695e0ce 100644 --- a/pom.xml +++ b/pom.xml @@ -12,7 +12,7 @@ https://github.com/aliesbelik/jmeter-amqp-plugin - 0.1.1-SNAPSHOT + 0.2.0 1.8 UTF-8 UTF-8