IDE

Last Version: 0.15.0

Release Date:

Providence Utils : Thrift Protocols

net.morimekta.providence : providence-thrift-protocols

Wrapping thrift TProtocols to use in serialization of providence structures.

Last Version: 2.7.0

Release Date:

Last Version: 0.1.4

Release Date:

Providence Core : Clients

net.morimekta.providence : providence-core-client

Providence Core extension for Client - Server RPC calls. This handled the client side of the RPC.

Last Version: 2.7.0

Release Date:

Snapshot Storage Provider

org.duracloud : snapshotstorageprovider

Cloud-based digital content preservation system

Last Version: 7.1.1

Release Date:

Providence Utils : Jakarta WS RESTful compatibility

net.morimekta.providence : providence-jax-rs

Compatibility layer for jakarta.rw.rs based servlet infrastructure.

Last Version: 2.7.0

Release Date:

Conditional Authentication - Functions Common

org.wso2.carbon.identity.conditional.auth.functions : org.wso2.carbon.identity.conditional.auth.functions.common

WSO2 is an open source application development software company focused on providing service-oriented architecture solutions for professional developers.

Last Version: 1.2.2

Release Date:

Token Exchange grant type for OAuth2

org.wso2.carbon.extension.identity.oauth2.grantType.token.exchange : org.wso2.carbon.identity.oauth2.grant.token.exchange

WSO2 is an open source application development software company focused on providing service-oriented architecture solutions for professional developers.

Last Version: 1.0.2

Release Date:

DSpace Discovery :: Discovery Provider Library

org.dspace : dspace-discovery-provider

Build Information $Id: pom.xml 5367 2010-09-30 00:30:11Z mdiggory $ $URL: https://scm.dspace.org/svn/repo/modules/dspace-discovery/trunk/provider/pom.xml $

Last Version: 1.8.3

Release Date:

Providence Utils : Config

net.morimekta.providence : providence-config

Wrapping Config Utilities to use in serialization of providence structures.

Last Version: 2.7.0

Release Date:

Last Version: 0.11.0

Release Date:

cognito-auth-provider

ru.greatbit.whoru : cognito-auth-provider

Sonatype helps open source projects to set up Maven repositories on https://oss.sonatype.org/

Last Version: 1.9

Release Date:

org.openwms.core.infrastructure.configuration.provider

org.openwms : org.openwms.core.infrastructure.configuration.provider

This component wraps the org.openwms.core.infrastructure.configuration component into a JAR file that is deployed in Non-OSGI environments and can be accessed by Spring from classpath.

Last Version: 1.0

Release Date:

Last Version: 1.0.4

Release Date:

org-netbeans-modules-gsf-testrunner-ui

org.netbeans.modules : org-netbeans-modules-gsf-testrunner-ui

Apache NetBeans is an integrated development environment, tooling platform, and application framework.

Last Version: RELEASE140

Release Date:

org-netbeans-api-xml-ui

org.netbeans.api : org-netbeans-api-xml-ui

Apache NetBeans is an integrated development environment, tooling platform, and application framework.

Last Version: RELEASE140

Release Date:

org-netbeans-bootstrap

org.netbeans.modules : org-netbeans-bootstrap

Apache NetBeans is an integrated development environment, tooling platform, and application framework.

Last Version: RELEASE140

Release Date:

org-netbeans-modules-html-lexer

org.netbeans.api : org-netbeans-modules-html-lexer

Apache NetBeans is an integrated development environment, tooling platform, and application framework.

Last Version: RELEASE140

Release Date:

org-netbeans-libs-javacimpl

org.netbeans.modules : org-netbeans-libs-javacimpl

Apache NetBeans is an integrated development environment, tooling platform, and application framework.

Last Version: RELEASE126

Release Date:

contextprovider-javaee

io.tracee.contextlogger.contextprovider : contextprovider-javaee

Please refer to https://github.com/tracee/contextlogger.

Last Version: 0.11.0

Release Date:

Last Version: 3.2.2

Release Date:

Plugin ServerService :: Plugin :: IDE

org.eclipse.che.sample : plugin-serverservice-ide

Provides version of third parties artifacts to use in Codenvy platform projects

Last Version: 6.19.0

Release Date:

Last Version: 3.2.2

Release Date:

Last Version: 0.7.2

Release Date:

junit5

au.com.dius.pact.provider : junit5

# Pact Junit 5 Extension ## Dependency The library is available on maven central using: * group-id = `au.com.dius.pact.provider` * artifact-id = `junit5` * version-id = `4.1.x` ## Overview For writing Pact verification tests with JUnit 5, there is an JUnit 5 Invocation Context Provider that you can use with the `@TestTemplate` annotation. This will generate a test for each interaction found for the pact files for the provider. To use it, add the `@Provider` and one of the pact source annotations to your test class (as per a JUnit 4 test), then add a method annotated with `@TestTemplate` and `@ExtendWith(PactVerificationInvocationContextProvider.class)` that takes a `PactVerificationContext` parameter. You will need to call `verifyInteraction()` on the context parameter in your test template method. For example: ```java @Provider("myAwesomeService") @PactFolder("pacts") public class ContractVerificationTest { @TestTemplate @ExtendWith(PactVerificationInvocationContextProvider.class) void pactVerificationTestTemplate(PactVerificationContext context) { context.verifyInteraction(); } } ``` For details on the provider and pact source annotations, refer to the [Pact junit runner](../junit/README.md) docs. ## Test target You can set the test target (the object that defines the target of the test, which should point to your provider) on the `PactVerificationContext`, but you need to do this in a before test method (annotated with `@BeforeEach`). There are three different test targets you can use: `HttpTestTarget`, `HttpsTestTarget` and `MessageTestTarget`. For example: ```java @BeforeEach void before(PactVerificationContext context) { context.setTarget(HttpTestTarget.fromUrl(new URL(myProviderUrl))); // or something like // context.setTarget(new HttpTestTarget("localhost", myProviderPort, "/")); } ``` ### HttpTestTarget `HttpTestTarget` accepts the following options: | Option | Type | Default | Description | | ------ | ---- | ------- | ----------- | | host | String | localhost | The hostname to use to access the provider | | port | Int | 8080 | The port the provider is running on | | path | String | "/" | The base path the provider is mounted on | | httpClientFactory | () -> IHttpClientFactory | Default Factory | Callback used to override the HTTP client factory | ### HttpsTestTarget `HttpsTestTarget` accepts the following options: | Option | Type | Default | Description | | ------ | ---- | ------- | ----------- | | host | String | localhost | The hostname to use to access the provider | | port | Int | 8443 | The port the provider is running on | | path | String | "/" | The base path the provider is mounted on | | insecure | Boolean | false | Disables the standard TLS verification used with HTTPS connections | | httpClientFactory | () -> IHttpClientFactory | Default Factory | Callback used to override the HTTP client factory | ### MessageTestTarget `MessageTestTarget` accepts the following options: | Option | Type | Default | Description | | ------ | ---- | ------- | ----------- | | packagesToScan | List<String> | empty List | The Java packages to scan to find classes with annotated methods. If your methods are on your test class, you don't need to supply a value for this. | | classLoader | ClassLoader? | null | Class loader to use to load the classes with annotated methods | ## !! Important note for Maven users !! If you use Maven to run your tests, you will have to make sure that the Maven Surefire plugin is at least version 2.22.1 and configured to use an isolated classpath. For example, configure it by adding the following to your POM: ```xml <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.22.1</version> <configuration> <useSystemClassLoader>false</useSystemClassLoader> </configuration> </plugin> ``` ### IMPORTANT NOTE!!!: JVM system properties needs to be set on the test JVM if your build is running with Gradle or Maven. Gradle and Maven do not pass in the system properties in to the test JVM from the command line. The system properties specified on the command line only control the build JVM (the one that runs Gradle or Maven), but the tests will run in a new JVM. See [Maven Surefire Using System Properties](https://maven.apache.org/surefire/maven-surefire-plugin/examples/system-properties.html) and [Gradle Test docs](https://docs.gradle.org/current/dsl/org.gradle.api.tasks.testing.Test.html#org.gradle.api.tasks.testing.Test:systemProperties). ### For Message Tests and Spring and Maven If you are using Spring (or Springboot), and want to have values injected into your test, you need to ensure that the same class loader is used to execute your annotated test method as Spring is using to inject the values. In particular, options like the Maven Surefire plugin's `forkCount == 0` can impact this. Either don't supply any packages to scan (this will use the default class loader and the annotated methods **have** to be on your test class), or you can provide the classloader to use as the second parameter to `MessageTestTarget`. ## Provider State Methods Provider State Methods work in the same way as with JUnit 4 tests, refer to the [Pact junit runner](../junit/README.md) docs. ### Using multiple classes for the state change methods If you have a large number of state change methods, you can split things up by moving them to other classes. You will need to specify the additional classes on the test context in a `Before` method. Do this with the `withStateHandler` or `setStateHandlers` methods. See [StateAnnotationsOnAdditionalClassTest](https://github.com/DiUS/pact-jvm/blob/master/provider/junit5/src/test/java/au/com/dius/pact/provider/junit5/StateAnnotationsOnAdditionalClassTest.java) for an example. ## Modifying the requests before they are sent **Important Note:** You should only use this feature for things that can not be persisted in the pact file. By modifying the request, you are potentially modifying the contract from the consumer tests! **NOTE: JUnit 5 tests do not use `@TargetRequestFilter`** Sometimes you may need to add things to the requests that can't be persisted in a pact file. Examples of these would be authentication tokens, which have a small life span. The Http and Https test targets support injecting the request that will executed into the test template method (of type `org.apache.http.HttpRequest` for versions 4.2.x and before, `org.apache.hc.core5.http.HttpRequest` for versions 4.3.0+). You can then add things to the request before calling the `verifyInteraction()` method. For example to add a header: ```java @TestTemplate @ExtendWith(PactVerificationInvocationContextProvider.class) void testTemplate(PactVerificationContext context, HttpRequest request) { // This will add a header to the request request.addHeader("X-Auth-Token", "1234"); context.verifyInteraction(); } ``` ## Objects that can be injected into the test methods You can inject the following objects into your test methods (just like the `PactVerificationContext`). They will be null if injected before the supported phase. | Object | Can be injected from phase | Description | | ------ | --------------- | ----------- | | PactVerificationContext | @BeforeEach | The context to use to execute the interaction test | | Pact | any | The Pact model for the test | | Interaction | any | The Interaction model for the test | | HttpRequest | @TestTemplate | The request that is going to be executed (only for HTTP and HTTPS targets) | | ProviderVerifier | @TestTemplate | The verifier instance that is used to verify the interaction | ## Allowing the test to pass when no pacts are found to verify (version 4.0.7+) By default, the test will fail with an exception if no pacts were found to verify. This can be overridden by adding the `@IgnoreNoPactsToVerify` annotation to the test class. For this to work, you test class will need to be able to receive null values for any of the injected parameters. ## Overriding the handling of a body data type **NOTE: version 4.1.3+** By default, bodies will be handled based on their content types. For binary contents, the bodies will be base64 encoded when written to the Pact file and then decoded again when the file is loaded. You can change this with an override property: `pact.content_type.override.<TYPE>.<SUBTYPE>=text|json|binary`. For instance, setting `pact.content_type.override.application.pdf=text` will treat PDF bodies as a text type and not encode/decode them. ### Controlling the generation of diffs **NOTE: version 4.2.7+** When there are mismatches with large bodies the calculation of the diff can take a long time . You can turn off the generation of the diffs with the JVM system property: `pact.verifier.generateDiff=true|false|<dataSize>`, where `dataSize`, if specified, must be a valid data size (for instance `100kb` or `1mb`). This will turn off the diff calculation for payloads that exceed this size. For instance, setting `pact.verifier.generateDiff=false` will turn off the generation of diffs for all bodies, while `pact.verifier.generateDiff=512kb` will only turn off the diffs if the actual or expected body is larger than 512kb. # Publishing verification results to a Pact Broker For pacts that are loaded from a Pact Broker, the results of running the verification can be published back to the broker against the URL for the pact. You will be able to see the result on the Pact Broker home screen. You need to set the version of the provider that is verified using the `pact.provider.version` system property. To enable publishing of results, set the Java system property or environment variable `pact.verifier.publishResults` to `true`. ### IMPORTANT NOTE!!!: this property needs to be set on the test JVM if your build is running with Gradle or Maven. Gradle and Maven do not pass in the system properties in to the test JVM from the command line. The system properties specified on the command line only control the build JVM (the one that runs Gradle or Maven), but the tests will run in a new JVM. See [Maven Surefire Using System Properties](https://maven.apache.org/surefire/maven-surefire-plugin/examples/system-properties.html) and [Gradle Test docs](https://docs.gradle.org/current/dsl/org.gradle.api.tasks.testing.Test.html#org.gradle.api.tasks.testing.Test:systemProperties). ## Tagging the provider before verification results are published [4.0.1+] You can have a tag pushed against the provider version before the verification results are published. To do this you need set the `pact.provider.tag` JVM system property to the tag value. From 4.1.8+, you can specify multiple tags with a comma separated string for the `pact.provider.tag` system property. ## Setting the provider branch before verification results are published [4.3.0-beta.7+] Pact Broker version 2.86.0 or later You can have a branch pushed against the provider version before the verification results are published. To do this you need set the `pact.provider.branch` JVM system property to the branch value. ## Setting the build URL for verification results [4.3.2+] You can specify a URL to link to your CI build output. To do this you need to set the `pact.verifier.buildUrl` JVM system property to the URL value. # Pending Pact Support (version 4.1.0 and later) If your Pact broker supports pending pacts, you can enable support for that by enabling that on your Pact broker annotation or with JVM system properties. You also need to provide the tags that will be published with your provider's verification results. The broker will then label any pacts found that don't have a successful verification result as pending. That way, if they fail verification, the verifier will ignore those failures and not fail the build. For example, with annotation: ```java @Provider("Activity Service") @PactBroker(host = "test.pactflow.io", tags = {"test"}, scheme = "https", enablePendingPacts = "true", providerTags = "master" ) public class PactJUnitTest { ``` You can also use the `pactbroker.enablePending` and `pactbroker.providerTags` JVM system properties. Then any pending pacts will not cause a build failure. # Work In Progress (WIP) Pact Support (version 4.1.5 and later) WIP pacts work in the same way as with JUnit 4 tests, refer to the [Pact junit runner](../junit/README.md) docs. # Verifying V4 Pact files that require plugins (version 4.3.0+) Pact files that require plugins can be verified with version 4.3.0+. For details on how plugins work, see the [Pact plugin project](https://github.com/pact-foundation/pact-plugins). Each required plugin is defined in the `plugins` section in the Pact metadata in the Pact file. The plugins will be loaded from the plugin directory. By default, this is `~/.pact/plugins` or the value of the `PACT_PLUGIN_DIR` environment variable. Each plugin required by the Pact file must be installed there. You will need to follow the installation instructions for each plugin, but the default is to unpack the plugin into a sub-directory `<plugin-name>-<plugin-version>` (i.e., for the Protobuf plugin 0.0.0 it will be `protobuf-0.0.0`). The plugin manifest file must be present for the plugin to be able to be loaded. # Test Analytics We are tracking anonymous analytics to gather important usage statistics like JVM version and operating system. To disable tracking, set the 'pact_do_not_track' system property or environment variable to 'true'.

Last Version: 4.4.0-beta.2

Release Date:

jclouds Azure Storage provider

org.apache.jclouds.provider : azureblob

jclouds components to access Azure Blob Service

Last Version: 2.5.0

Release Date:

Providence Utils : Storage / Hazelcast

net.morimekta.providence : providence-storage-hazelcast

Utilities for handling storage of providence objects using hazelcast.

Last Version: 2.7.0

Release Date:

Last Version: 0.7.2

Release Date:

Confound App Profider

io.confound : confound-app-provider

Csar concern provider for an application configuration.

Last Version: 0.7.2

Release Date:

Maven SLF4J Simple Provider

org.apache.maven : maven-slf4j-provider

Maven SLF4J provider based on SLF4J's simple provider, extended to support Maven styled colors for levels and stacktraces rendering.

Last Version: 3.8.6

Release Date:

contextprovider-servlet

io.tracee.contextlogger.contextprovider : contextprovider-servlet

Please refer to https://github.com/tracee/contextlogger.

Last Version: 0.11.0

Release Date:

glide-transformations

jp.wasabeef : glide-transformations

Which provides simple Transformations to Glide

Last Version: 4.3.0

Release Date:

contextprovider-aspectj

io.tracee.contextlogger.contextprovider : contextprovider-aspectj

Please refer to https://github.com/tracee/contextlogger.

Last Version: 0.11.0

Release Date:

contextprovider-jaxws

io.tracee.contextlogger.contextprovider : contextprovider-jaxws

Please refer to https://github.com/tracee/contextlogger.

Last Version: 0.11.0

Release Date:

contextprovider-springmvc

io.tracee.contextlogger.contextprovider : contextprovider-springmvc

Please refer to https://github.com/tracee/contextlogger.

Last Version: 0.11.0

Release Date:

org-netbeans-core-startup

org.netbeans.modules : org-netbeans-core-startup

Apache NetBeans is an integrated development environment, tooling platform, and application framework.

Last Version: RELEASE140

Release Date:

org-netbeans-core

org.netbeans.modules : org-netbeans-core

Apache NetBeans is an integrated development environment, tooling platform, and application framework.

Last Version: RELEASE140

Release Date:

org-netbeans-modules-project-ant-ui

org.netbeans.api : org-netbeans-modules-project-ant-ui

Apache NetBeans is an integrated development environment, tooling platform, and application framework.

Last Version: RELEASE140

Release Date:

org-netbeans-modules-xml-catalog

org.netbeans.api : org-netbeans-modules-xml-catalog

Apache NetBeans is an integrated development environment, tooling platform, and application framework.

Last Version: RELEASE140

Release Date:

Che Plugin :: Github :: Factory Resolver

org.eclipse.che.plugin : che-plugin-github-factory-resolver

Provides version of third parties artifacts to use in Codenvy platform projects

Last Version: 7.0.0-beta-2.0

Release Date:

Che Plugin :: Github :: OAuth2

org.eclipse.che.plugin : che-plugin-github-oauth2

Provides version of third parties artifacts to use in Codenvy platform projects

Last Version: 7.0.0-beta-2.0

Release Date:

Plugin ServerService :: Plugin :: Server

org.eclipse.che.sample : plugin-serverservice-server

Provides version of third parties artifacts to use in Codenvy platform projects

Last Version: 6.19.0

Release Date:

Providence Utils : JDBI v3

net.morimekta.providence : providence-jdbi-v3

Utilities for handling providence messages using jdbi v3.

Last Version: 2.7.0

Release Date:

provider-mychainx

com.alipay.chainstack : provider-mychainx

An all-in-one dapp development tool.

Last Version: 2.0.3-rc

Release Date:

Last Version: 3.0.0-Beta4

Release Date: