forked from quarkusio/quarkus
-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Move the loom-unit extension as an independent project
This commit brings the functionality from loom-unit (partially, but the important ones are there) into Quarkus. Thus, @ShouldPin and @ShouldNotPin can be used on a @QuarkusTest directly as soon as the junit5-virtual-threads dependency is in the project and the extension declared on the test case with the `io.quarkus.test.junit5.virtual.VirtualThreadUnit` annotation. loom-unit original repo: https://github.com/cescoffier/loom-unit
- Loading branch information
1 parent
7903aa7
commit 8d80397
Showing
12 changed files
with
986 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,298 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<project xmlns="http://maven.apache.org/POM/4.0.0" | ||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> | ||
<modelVersion>4.0.0</modelVersion> | ||
|
||
<parent> | ||
<groupId>io.quarkus</groupId> | ||
<artifactId>quarkus-parent</artifactId> | ||
<version>999-SNAPSHOT</version> | ||
<relativePath>../parent/pom.xml</relativePath> | ||
</parent> | ||
|
||
<groupId>io.quarkus.junit5</groupId> | ||
<artifactId>junit5-virtual-threads</artifactId> | ||
|
||
<name>Quarkus - JUnit 5 Extension - Virtual Threads</name> | ||
<description>Module that allows detecting virtual threads pinning</description> | ||
<url>https://github.com/quarkusio/quarkus</url> | ||
|
||
<licenses> | ||
<license> | ||
<name>Apache License, Version 2.0</name> | ||
<distribution>repo</distribution> | ||
<url>https://www.apache.org/licenses/LICENSE-2.0.html</url> | ||
</license> | ||
</licenses> | ||
|
||
<scm child.scm.connection.inherit.append.path="false" | ||
child.scm.developerConnection.inherit.append.path="false" | ||
child.scm.url.inherit.append.path="false"> | ||
<url>https://github.com/quarkusio/quarkus</url> | ||
<connection>scm:git:git@github.com:quarkusio/quarkus.git</connection> | ||
<developerConnection>scm:git:git@github.com:quarkusio/quarkus.git</developerConnection> | ||
<tag>HEAD</tag> | ||
</scm> | ||
|
||
<properties> | ||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> | ||
<maven.compiler.target>11</maven.compiler.target> | ||
<maven.compiler.source>11</maven.compiler.source> | ||
<maven.compiler.release>11</maven.compiler.release> | ||
|
||
<compiler.plugin.version>3.11.0</compiler.plugin.version> | ||
<enforcer.plugin.version>3.2.1</enforcer.plugin.version> | ||
<surefire.plugin.version>3.1.2</surefire.plugin.version> | ||
<jandex.version>3.1.3</jandex.version> | ||
<formatter-maven-plugin.version>2.23.0</formatter-maven-plugin.version> | ||
<impsort-maven-plugin.version>1.9.0</impsort-maven-plugin.version> | ||
|
||
<junit.jupiter.version>5.9.3</junit.jupiter.version> | ||
</properties> | ||
|
||
|
||
<dependencies> | ||
<dependency> | ||
<groupId>org.junit.jupiter</groupId> | ||
<artifactId>junit-jupiter</artifactId> | ||
<scope>compile</scope> | ||
<version>${junit.jupiter.version}</version> | ||
</dependency> | ||
</dependencies> | ||
|
||
<build> | ||
<pluginManagement> | ||
<plugins> | ||
<plugin> | ||
<artifactId>maven-compiler-plugin</artifactId> | ||
<version>${compiler.plugin.version}</version> | ||
</plugin> | ||
<plugin> | ||
<groupId>io.smallrye</groupId> | ||
<artifactId>jandex-maven-plugin</artifactId> | ||
<version>${jandex.version}</version> | ||
</plugin> | ||
<plugin> | ||
<artifactId>maven-javadoc-plugin</artifactId> | ||
<configuration> | ||
<quiet>true</quiet> | ||
<doclint>none</doclint> | ||
</configuration> | ||
</plugin> | ||
<plugin> | ||
<groupId>org.apache.maven.plugins</groupId> | ||
<artifactId>maven-enforcer-plugin</artifactId> | ||
<dependencies> | ||
<dependency> | ||
<groupId>io.quarkus</groupId> | ||
<artifactId>quarkus-enforcer-rules</artifactId> | ||
<version>${project.version}</version> | ||
</dependency> | ||
</dependencies> | ||
<executions> | ||
<execution> | ||
<id>enforce</id> | ||
<configuration> | ||
<rules> | ||
<dependencyConvergence/> | ||
<externalRules> | ||
<location>classpath:enforcer-rules/quarkus-require-java-version.xml</location> | ||
</externalRules> | ||
<externalRules> | ||
<location>classpath:enforcer-rules/quarkus-require-maven-version.xml</location> | ||
</externalRules> | ||
<externalRules> | ||
<location>classpath:enforcer-rules/quarkus-banned-dependencies.xml</location> | ||
</externalRules> | ||
<bannedDependencies> | ||
<excludes> | ||
<!-- findbugs is not required at runtime --> | ||
<exclude>com.google.code.findbugs:jsr305</exclude> | ||
<!-- com.google.guava:listenablefuture is empty and the ListenableFuture class is available in Guava --> | ||
<exclude>com.google.guava:listenablefuture</exclude> | ||
</excludes> | ||
</bannedDependencies> | ||
</rules> | ||
</configuration> | ||
<goals> | ||
<goal>enforce</goal> | ||
</goals> | ||
</execution> | ||
</executions> | ||
</plugin> | ||
<plugin> | ||
<artifactId>maven-surefire-plugin</artifactId> | ||
<version>${surefire.plugin.version}</version> | ||
<configuration> | ||
<!-- combine.self suppresses warnings about java.io.tmpdir being defined twice --> | ||
<systemPropertyVariables combine.self="override"/> | ||
<!-- set tmpdir as early as possible because failsafe sets it too late for JDK16 --> | ||
<argLine>-Djava.io.tmpdir="${project.build.directory}"</argLine> | ||
<excludedEnvironmentVariables>MAVEN_OPTS</excludedEnvironmentVariables> | ||
</configuration> | ||
</plugin> | ||
<!-- Replicate what's in parent, since this pom doesn't inherit parent but IDE settings will be common --> | ||
<plugin> | ||
<groupId>net.revelc.code.formatter</groupId> | ||
<artifactId>formatter-maven-plugin</artifactId> | ||
<version>${formatter-maven-plugin.version}</version> | ||
<dependencies> | ||
<dependency> | ||
<artifactId>quarkus-ide-config</artifactId> | ||
<groupId>io.quarkus</groupId> | ||
<version>${project.version}</version> | ||
</dependency> | ||
</dependencies> | ||
<configuration> | ||
<!-- store outside of target to speed up formatting when mvn clean is used --> | ||
<cachedir>.cache/formatter-maven-plugin-${formatter-maven-plugin.version}</cachedir> | ||
<configFile>eclipse-format.xml</configFile> | ||
<lineEnding>LF</lineEnding> | ||
<skip>${format.skip}</skip> | ||
</configuration> | ||
</plugin> | ||
<plugin> | ||
<groupId>net.revelc.code</groupId> | ||
<artifactId>impsort-maven-plugin</artifactId> | ||
<version>${impsort-maven-plugin.version}</version> | ||
<configuration> | ||
<!-- store outside of target to speed up formatting when mvn clean is used --> | ||
<cachedir>.cache/impsort-maven-plugin-${impsort-maven-plugin.version}</cachedir> | ||
<groups>java.,javax.,jakarta.,org.,com.</groups> | ||
<staticGroups>*</staticGroups> | ||
<skip>${format.skip}</skip> | ||
<removeUnused>true</removeUnused> | ||
</configuration> | ||
</plugin> | ||
</plugins> | ||
</pluginManagement> | ||
</build> | ||
|
||
<distributionManagement> | ||
<snapshotRepository> | ||
<id>sonatype-nexus-snapshots</id> | ||
<url>https://s01.oss.sonatype.org/content/repositories/snapshots</url> | ||
</snapshotRepository> | ||
<repository> | ||
<id>sonatype-nexus-release</id> | ||
<url>https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/</url> | ||
</repository> | ||
</distributionManagement> | ||
|
||
<profiles> | ||
<profile> | ||
<id>quick-build</id> | ||
<activation> | ||
<property> | ||
<name>quickly</name> | ||
</property> | ||
</activation> | ||
<properties> | ||
<skipTests>true</skipTests> | ||
<skipITs>true</skipITs> | ||
<enforcer.skip>true</enforcer.skip> | ||
</properties> | ||
<build> | ||
<defaultGoal>clean install</defaultGoal> | ||
</build> | ||
</profile> | ||
|
||
<profile> | ||
<!-- separate "quickly" profile for CI to keep local "quickly" demands separated from CI demands --> | ||
<id>quick-build-ci</id> | ||
<activation> | ||
<property> | ||
<name>quickly-ci</name> | ||
</property> | ||
</activation> | ||
<properties> | ||
<skipTests>true</skipTests> | ||
<skipITs>true</skipITs> | ||
<enforcer.skip>true</enforcer.skip> | ||
<format.skip>true</format.skip> | ||
</properties> | ||
</profile> | ||
<profile> | ||
<id>format</id> | ||
<activation> | ||
<activeByDefault>true</activeByDefault> | ||
<property> | ||
<name>!no-format</name> | ||
</property> | ||
</activation> | ||
<build> | ||
<plugins> | ||
<plugin> | ||
<groupId>net.revelc.code.formatter</groupId> | ||
<artifactId>formatter-maven-plugin</artifactId> | ||
<executions> | ||
<execution> | ||
<phase>process-sources</phase> | ||
<goals> | ||
<goal>format</goal> | ||
</goals> | ||
</execution> | ||
</executions> | ||
</plugin> | ||
<plugin> | ||
<groupId>net.revelc.code</groupId> | ||
<artifactId>impsort-maven-plugin</artifactId> | ||
<executions> | ||
<execution> | ||
<id>sort-imports</id> | ||
<goals> | ||
<goal>sort</goal> | ||
</goals> | ||
</execution> | ||
</executions> | ||
<configuration> | ||
<removeUnused>true</removeUnused> | ||
</configuration> | ||
</plugin> | ||
</plugins> | ||
</build> | ||
</profile> | ||
<profile> | ||
<id>validate</id> | ||
<activation> | ||
<activeByDefault>true</activeByDefault> | ||
<property> | ||
<name>no-format</name> | ||
</property> | ||
</activation> | ||
<build> | ||
<plugins> | ||
<plugin> | ||
<groupId>net.revelc.code.formatter</groupId> | ||
<artifactId>formatter-maven-plugin</artifactId> | ||
<executions> | ||
<execution> | ||
<phase>process-sources</phase> | ||
<goals> | ||
<goal>validate</goal> | ||
</goals> | ||
</execution> | ||
</executions> | ||
</plugin> | ||
<plugin> | ||
<groupId>net.revelc.code</groupId> | ||
<artifactId>impsort-maven-plugin</artifactId> | ||
<configuration> | ||
<removeUnused>true</removeUnused> | ||
</configuration> | ||
<executions> | ||
<execution> | ||
<id>check-imports</id> | ||
<goals> | ||
<goal>check</goal> | ||
</goals> | ||
</execution> | ||
</executions> | ||
</plugin> | ||
</plugins> | ||
</build> | ||
</profile> | ||
</profiles> | ||
|
||
</project> |
Oops, something went wrong.