pom.xml: parent -> 2.2.1 pom.xml: qqq.version: 4.1.0-RC.22 -> 4.1.0-RC.26 pom.xml: qbit-object-storage: 0.1.0-RC.4 -> 0.1.0-RC.10 pom.xml: qbit-redis.version: 0.1.0-RC.1 -> 0.2.0-RC.1 pom.xml: qbit-email.version: 0.1.0-RC.2 -> 0.1.0-RC.11 pom.xml: revision -> 1.2.0-SNAPSHOT Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
299 lines
12 KiB
XML
299 lines
12 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!--
|
|
~ Copyright 2026 Kingsrook, LLC
|
|
~
|
|
~ Licensed under the Apache License, Version 2.0 (the "License");
|
|
~ you may not use this file except in compliance with the License.
|
|
~ You may obtain a copy of the License at
|
|
~
|
|
~ http://www.apache.org/licenses/LICENSE-2.0
|
|
~
|
|
~ Unless required by applicable law or agreed to in writing, software
|
|
~ distributed under the License is distributed on an "AS IS" BASIS,
|
|
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
~ See the License for the specific language governing permissions and
|
|
~ limitations under the License.
|
|
-->
|
|
|
|
<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">
|
|
|
|
<properties>
|
|
<!-- Only the published Redis API package is a permitted cross-qbit boundary. -->
|
|
<qbit.guardrails.allowedApiPackages>com.kingsrook.qbits.objectstorage.api,com.kingsrook.qbits.email.api,com.kingsrook.qbits.redis.api</qbit.guardrails.allowedApiPackages>
|
|
<qbit.guardrails.allowedQbitArtifacts>com.kingsrook.qbits:qbit-object-storage,com.kingsrook.qbits:qbit-email,com.kingsrook.qbits:*-api,com.kingsrook.qbits:qbit-redis</qbit.guardrails.allowedQbitArtifacts>
|
|
<revision>1.2.0-SNAPSHOT</revision>
|
|
<maven.compiler.source>21</maven.compiler.source>
|
|
<maven.compiler.target>21</maven.compiler.target>
|
|
<jacoco.version>0.8.15</jacoco.version>
|
|
<!-- qbit-email from Maven Central -->
|
|
<qbit-email.version>0.1.0-RC.11</qbit-email.version>
|
|
<!-- Core RC.22 (QBitMetaDataProducer, VirtualFieldValueProviderInterface, QServiceUnavailableException); BLOCKED until it resolves from Central/the registry in CI. -->
|
|
<qqq.version>4.1.0-RC.26</qqq.version>
|
|
<!-- qbit-redis first release candidate of release/0.1 (producer run 5119 did not publish it yet): BLOCKED, verify the published artifact before pushing. -->
|
|
<qbit-redis.version>0.2.0-RC.1</qbit-redis.version>
|
|
</properties>
|
|
|
|
<parent>
|
|
<groupId>com.kingsrook</groupId>
|
|
<artifactId>qbit-build-parent</artifactId>
|
|
<version>2.2.1</version>
|
|
</parent>
|
|
|
|
<groupId>com.kingsrook.qbits</groupId>
|
|
<artifactId>qbit-collaboration</artifactId>
|
|
<version>${revision}</version>
|
|
<packaging>jar</packaging>
|
|
|
|
<name>QBit Collaboration</name>
|
|
<description>QQQ QBit: record collaboration: attachments, tags, custom fields, comments with mentions, presence, sharing, favorites, follow, timeline, tasks</description>
|
|
<url>https://github.com/QRun-IO/qbit-collaboration</url>
|
|
|
|
<modelVersion>4.0.0</modelVersion>
|
|
|
|
<licenses>
|
|
<license>
|
|
<name>Apache License, Version 2.0</name>
|
|
<url>https://www.apache.org/licenses/LICENSE-2.0</url>
|
|
<distribution>repo</distribution>
|
|
</license>
|
|
</licenses>
|
|
|
|
<developers>
|
|
<developer>
|
|
<id>kingsrook</id>
|
|
<name>Kingsrook Team</name>
|
|
<email>contact@kingsrook.com</email>
|
|
<organization>Kingsrook, LLC</organization>
|
|
<organizationUrl>https://kingsrook.com</organizationUrl>
|
|
</developer>
|
|
</developers>
|
|
|
|
<scm>
|
|
<connection>scm:git:git://github.com/QRun-IO/qbit-collaboration.git</connection>
|
|
<developerConnection>scm:git:ssh://github.com:QRun-IO/qbit-collaboration.git</developerConnection>
|
|
<url>https://github.com/QRun-IO/qbit-collaboration</url>
|
|
<tag>HEAD</tag>
|
|
</scm>
|
|
|
|
<dependencyManagement>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>com.kingsrook.qqq</groupId>
|
|
<artifactId>qqq-bom-pom</artifactId>
|
|
<version>${qqq.version}</version>
|
|
<type>pom</type>
|
|
<scope>import</scope>
|
|
</dependency>
|
|
</dependencies>
|
|
</dependencyManagement>
|
|
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>com.kingsrook.qqq</groupId>
|
|
<artifactId>qqq-backend-module-rdbms</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.kingsrook.qbits</groupId>
|
|
<artifactId>qbit-redis</artifactId>
|
|
<version>${qbit-redis.version}</version>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.kingsrook.qbits</groupId>
|
|
<artifactId>qbit-object-storage</artifactId>
|
|
<version>0.1.0-RC.10</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.kingsrook.qqq</groupId>
|
|
<artifactId>qqq-backend-core</artifactId>
|
|
</dependency>
|
|
<!-- optional: email through qbit-email when it is produced in the host instance (EmailCollaborationNotifier) -->
|
|
<dependency>
|
|
<groupId>com.kingsrook.qbits</groupId>
|
|
<artifactId>qbit-email</artifactId>
|
|
<version>${qbit-email.version}</version>
|
|
<optional>true</optional>
|
|
<exclusions>
|
|
<exclusion>
|
|
<groupId>com.kingsrook.qqq</groupId>
|
|
<artifactId>*</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.kingsrook.qqq</groupId>
|
|
<artifactId>qqq-middleware-javalin</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.junit.jupiter</groupId>
|
|
<artifactId>junit-jupiter</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.assertj</groupId>
|
|
<artifactId>assertj-core</artifactId>
|
|
<version>3.27.7</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<!-- upload journal and attachment transaction suites: real JDBC (H2, MySQL and PostgreSQL 17 containers) -->
|
|
<dependency>
|
|
<groupId>com.h2database</groupId>
|
|
<artifactId>h2</artifactId>
|
|
<version>2.4.240</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.testcontainers</groupId>
|
|
<artifactId>testcontainers</artifactId>
|
|
<version>2.0.3</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.testcontainers</groupId>
|
|
<artifactId>testcontainers-mysql</artifactId>
|
|
<version>2.0.3</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.postgresql</groupId>
|
|
<artifactId>postgresql</artifactId>
|
|
<version>42.7.8</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<!-- native PostgreSQL module (vendor/type "postgres"), version managed by the qqq BOM -->
|
|
<dependency>
|
|
<groupId>com.kingsrook.qqq</groupId>
|
|
<artifactId>qqq-backend-module-postgres</artifactId>
|
|
<scope>test</scope>
|
|
<exclusions>
|
|
<exclusion>
|
|
<groupId>com.kingsrook.qqq</groupId>
|
|
<artifactId>qqq-backend-module-rdbms</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>com.kingsrook.qqq</groupId>
|
|
<artifactId>qqq-backend-core</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
</dependencies>
|
|
|
|
<build>
|
|
<resources>
|
|
<!-- help bundles carry the artifact version (QQQ help bundle provenance) -->
|
|
<resource>
|
|
<directory>src/main/resources</directory>
|
|
<filtering>true</filtering>
|
|
<includes>
|
|
<include>help/*.yaml</include>
|
|
<include>qbit-collaboration.properties</include>
|
|
</includes>
|
|
</resource>
|
|
<resource>
|
|
<directory>src/main/resources</directory>
|
|
<filtering>false</filtering>
|
|
<excludes>
|
|
<exclude>help/*.yaml</exclude>
|
|
<exclude>qbit-collaboration.properties</exclude>
|
|
</excludes>
|
|
</resource>
|
|
</resources>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId><artifactId>maven-resources-plugin</artifactId><version>3.3.1</version>
|
|
<executions><execution><id>package-license-notices</id><phase>process-resources</phase><goals><goal>copy-resources</goal></goals>
|
|
<configuration><outputDirectory>${project.build.outputDirectory}/META-INF</outputDirectory><resources><resource>
|
|
<directory>${project.basedir}</directory><filtering>false</filtering><includes><include>LICENSE</include><include>NOTICE</include></includes>
|
|
</resource></resources></configuration>
|
|
</execution></executions>
|
|
</plugin>
|
|
<!-- the artifact version, for the help bundle version test -->
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-surefire-plugin</artifactId>
|
|
<configuration>
|
|
<systemPropertyVariables combine.children="append">
|
|
<qbit.artifactVersion>${project.version}</qbit.artifactVersion>
|
|
</systemPropertyVariables>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-checkstyle-plugin</artifactId>
|
|
<version>3.3.1</version>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>com.puppycrawl.tools</groupId>
|
|
<artifactId>checkstyle</artifactId>
|
|
<version>10.12.6</version>
|
|
</dependency>
|
|
</dependencies>
|
|
<configuration>
|
|
<configLocation>checkstyle/config.xml</configLocation>
|
|
<headerLocation>checkstyle/license.txt</headerLocation>
|
|
<encoding>UTF-8</encoding>
|
|
<consoleOutput>true</consoleOutput>
|
|
<failsOnError>false</failsOnError>
|
|
<failOnViolation>true</failOnViolation>
|
|
<violationSeverity>warning</violationSeverity>
|
|
<includeTestSourceDirectory>false</includeTestSourceDirectory>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>validate</id>
|
|
<phase>validate</phase>
|
|
<goals>
|
|
<goal>check</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.jacoco</groupId>
|
|
<artifactId>jacoco-maven-plugin</artifactId>
|
|
<version>${jacoco.version}</version>
|
|
<executions>
|
|
<execution>
|
|
<id>prepare-agent</id>
|
|
<goals>
|
|
<goal>prepare-agent</goal>
|
|
</goals>
|
|
</execution>
|
|
<execution>
|
|
<id>report</id>
|
|
<phase>verify</phase>
|
|
<goals>
|
|
<goal>report</goal>
|
|
</goals>
|
|
</execution>
|
|
<execution>
|
|
<id>check</id>
|
|
<goals>
|
|
<goal>check</goal>
|
|
</goals>
|
|
<configuration>
|
|
<rules>
|
|
<rule>
|
|
<element>BUNDLE</element>
|
|
<limits>
|
|
<limit>
|
|
<counter>INSTRUCTION</counter>
|
|
<value>COVEREDRATIO</value>
|
|
<minimum>0.70</minimum>
|
|
</limit>
|
|
<limit>
|
|
<counter>CLASS</counter>
|
|
<value>COVEREDRATIO</value>
|
|
<minimum>0.90</minimum>
|
|
</limit>
|
|
</limits>
|
|
</rule>
|
|
</rules>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</project>
|