Compare commits

...
Author SHA1 Message Date
James MaesandCodex adefa969c8 ci: scan develop with the shared CodeQL workflow
Co-Authored-By: Codex (GPT-6) <noreply@openai.com>
2026-10-29 12:30:09 -05:00
james.maesandCodex 2ae5150012 ci: enroll in the shared QQQ orb (#19)
Co-authored-by: Codex <noreply@openai.com>
2026-10-21 21:08:52 -05:00
james.maes 1383d92f0a Merge pull request #10 from QRun-IO/feature/ga-only-release-tags
ci: publish only GA tags (vX.Y.Z), never RC tags
2026-10-12 16:02:43 -05:00
james.maesandClaude Opus 5.5 d9c313ffca ci: publish only GA tags (vX.Y.Z), never RC tags
An RC tag matched /v.*/ and the orb republished it as the next RC.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-12 16:00:28 -05:00
james.maes 45facd1b31 Merge pull request #8 from QRun-IO/feature/GH-945-assertj-3277
fix(deps): update test AssertJ to 3.27.7 (QQQ #945)
2026-10-01 00:06:22 -05:00
james.maes 253e15b77c fix(deps): update test AssertJ to 3.27.7 2026-10-01 00:04:06 -05:00
james.maes fa731308f1 Merge pull request #7 from QRun-IO/feature/GH-944-packaged-notices
fix(#944): locate root notices for geo modules
2026-09-30 23:46:23 -05:00
james.maes 93ebe812fc Merge develop into packaged-notices branch (#944) 2026-09-30 23:44:36 -05:00
james.maes 2c403b77c8 fix(#944): locate root notices for geo modules 2026-09-30 23:40:11 -05:00
james.maes e96b49beb6 fix: align first-party Apache-2.0 declarations (#6)
Refs QRun-IO/qqq#923.
2026-09-30 20:21:30 -05:00
james.maes 64723faa2a fix: align first-party Apache-2.0 declarations
Refs QRun-IO/qqq#923.
2026-09-30 20:17:46 -05:00
james.maes d745a3753a ci: require release tags and pin QQQ orb 0.6.8 (#5)
* ci: retain main tests and gate GA publication on tags

Refs QRun-IO/qqq-all#10. Preserve reviewed selectors; version pins remain separate and publication remains gated.

* ci: pin settings-safe QQQ orb 0.6.8

Use the reviewed immutable release tooling for QRun-IO/qqq-all#10.
2026-09-30 10:50:03 -05:00
james.maes 68f6a6309b build: flatten published poms (#4)
Refs QRun-IO/qqq#785. Part of QRun-IO/qqq-all#1.
2026-09-26 02:12:28 -05:00
james.maes 3cf53b5f1a build: re-pin to qbit-build-parent 2.0.0 (#3)
Closes QRun-IO/qqq#769. Part of QRun-IO/qqq-all#1.
2026-09-26 01:09:18 -05:00
james.maes a73162babb docs: note qqq 4.0.0 re-pin and Java 21 prerequisite
Part of QRun-IO/qqq-all#1
2026-09-25 20:43:14 -05:00
james.maes 4e9c047fdb ci: keep apt unattended on CircleCI machine images
Adds the configure-package-install pre-step from qbit-quick-search so needrestart cannot stall install_java (QRun-IO/qqq-orb#11).

Part of QRun-IO/qqq-all#1
2026-09-25 20:42:59 -05:00
james.maes 6ae6f3dfdd build: add opt-in qqq-snapshot profile
Imports qqq-bom-pom ${qqq.snapshot.version} (default 4.1.0-SNAPSHOT) ahead of the parent's BOM, from Central snapshots.

Part of QRun-IO/qqq-all#1
2026-09-25 20:42:17 -05:00
james.maes 2f87fbb31a build: re-pin to qbit-build-parent 2.0.0 (qqq 4.0.0)
The parent imports qqq-bom-pom 4.0.0; qqq modules keep taking their versions from it.

Part of QRun-IO/qqq-all#1
2026-09-25 20:41:32 -05:00
james.maes 819b3da7d7 chore: merge main into develop
Part of QRun-IO/qqq-all#1
2026-09-25 20:39:25 -05:00
CircleCI b9eaa6cf48 Bump version to 0.2.0-SNAPSHOT [skip ci] 2025-12-29 12:42:41 +00:00
james.maes e6a2ce7f58 fix(claude): removed settings 2025-12-29 06:40:40 -06:00
james.maes 3ae9356462 build(gitignore): added claude settings 2025-12-29 06:40:03 -06:00
12 changed files with 145 additions and 84 deletions

No files matched your search

+10 -53
View File
@@ -1,57 +1,14 @@
version: 2.1
setup: true
orbs:
qqq-orb: kingsrook/qqq-orb@0.5.0
qqq-orb: kingsrook/qqq-orb@0.8
workflows:
test_only:
setup:
jobs:
- qqq-orb/mvn_test_only:
context: [ qqq-maven-registry-credentials ]
filters:
branches:
ignore: /(develop|main|release/.*|hotfix/.*|integration.*)/
tags:
only: []
publish_snapshot:
jobs:
- qqq-orb/mvn_publish:
context: [ qqq-maven-registry-credentials ]
branch_type: snapshot
filters:
branches:
only:
- develop
publish_release_candidate:
jobs:
- qqq-orb/mvn_publish:
context: [ qqq-maven-registry-credentials ]
branch_type: release_candidate
filters:
branches:
only:
- /release\/.*/
publish_release:
jobs:
- qqq-orb/mvn_publish:
context: [ qqq-maven-registry-credentials ]
branch_type: release
filters:
branches:
only: [ main ]
tags:
only: [ /v.*/ ]
publish_hotfix_release:
jobs:
- qqq-orb/mvn_publish:
context: [ qqq-maven-registry-credentials ]
branch_type: hotfix
filters:
branches:
only:
- /hotfix\/.*/
- qqq-orb/generate_pipeline:
orb_version: '0.8'
filters:
branches:
ignore: automation/qbit-rc-pending
tags:
only: /^v\d+\.\d+\.\d+$/
-22
View File
@@ -1,22 +0,0 @@
{
"permissions": {
"allow": [
"Bash(wc:*)",
"Bash(mvn clean compile:*)",
"Bash(mvn compile:*)",
"Bash(find:*)",
"Bash(mvn test:*)",
"Bash(git add:*)",
"Bash(git commit:*)",
"Bash(git push:*)",
"Bash(mvn clean test:*)",
"Bash(gh pr create:*)",
"Bash(gh pr merge:*)",
"Bash(git checkout:*)",
"Bash(git pull:*)",
"Bash(git merge:*)",
"mcp__circleci-mcp-server__get_latest_pipeline_status",
"mcp__circleci-mcp-server__get_build_failure_logs"
]
}
}
+23
View File
@@ -0,0 +1,23 @@
name: CodeQL
'on':
push:
branches:
- main
- develop
- release/**
- hotfix/**
pull_request: {}
schedule:
- cron: 41 16 * * 0
workflow_dispatch: {}
permissions:
contents: read
actions: read
security-events: write
packages: read
concurrency:
group: codeql-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
jobs:
analyze:
uses: QRun-IO/qqq-orb/.github/workflows/qbit-codeql.yml@c288a8864fe9054f68410e1d78f5863aea4c4d22
+5
View File
@@ -21,3 +21,8 @@ Thumbs.db
# Generated
generated/
.claude/
# flatten-maven-plugin output
.flattened-pom.xml
+16
View File
@@ -0,0 +1,16 @@
profile: qbit
orb_version: '0.8'
default_branch: main
java_version: '21'
browsers: true
api_checks: false
docs_only: false
release_on_main: false
release_tag_policy: stable
test_branch_policy: non-release-no-hotfix-integration
publish:
snapshot: true
release_candidate: true
release: true
hotfix: true
asciidoc: false
+4
View File
@@ -19,6 +19,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Changed
- Upgraded to QQQ 0.35.0 with Java 21 support
- Re-pinned to qbit-build-parent 2.0.0 (QQQ 4.0.0); opt-in `qqq-snapshot` Maven profile builds against QQQ 4.1.0-SNAPSHOT
### Fixed
- Published module poms name their parent by its real version instead of `${revision}` (flatten-maven-plugin)
## [0.1.0-alpha] - 2024-12-28
+1 -1
View File
@@ -9,4 +9,4 @@ Reviewed knowledge for this repo and the wider QQQ platform lives in the second-
(reviewed commit `f7889fdf7495` on `main`, 2026-07-04)
- QBit mechanics refresher: `R:/Git.Local/KofTwentyTwo/second-brain/knowledge/qqq/architecture/metadata-model.md`
Key cautions from the review: entities produce PossibleValueSources only (`produceTableMetaData` defaults false — no tables are registered); the sync step's natural keys (`countryAlpha2`/`stateCode`) don't exist in the schema; the `geoDataSync` process name collides on multi-instance registration; pom/README still declare AGPL-3.0 while LICENSE/NOTICE are Apache-2.0; main and develop have diverged.
Key cautions from the review: entities produce PossibleValueSources only (`produceTableMetaData` defaults false — no tables are registered); the sync step's natural keys (`countryAlpha2`/`stateCode`) don't exist in the schema; the `geoDataSync` process name collides on multi-instance registration; current first-party pom/README declarations align with Apache-2.0 LICENSE/NOTICE; main and develop have diverged.
+8 -1
View File
@@ -162,4 +162,11 @@ The generator creates a changelog with your prefix substituted and only includes
## License
AGPL-3.0 - See [LICENSE](LICENSE)
Both Maven child modules set `qbit.noticesDirectory` to their parent directory,
where this repository's `LICENSE` and `NOTICE` live. This supports the shared
notice packaging correction in `qbit-build-parent`; it takes effect after adopting
a parent version containing that correction. Existing public parent 2.0.0 is
unchanged. Verify each generated module archive against these root files when
integrating the new parent.
Apache-2.0 - See [LICENSE](LICENSE)
+68 -5
View File
@@ -7,7 +7,7 @@
<parent>
<groupId>com.kingsrook</groupId>
<artifactId>qbit-build-parent</artifactId>
<version>1.5.1</version>
<version>2.0.0</version>
</parent>
<groupId>com.kingsrook.qbits</groupId>
@@ -21,8 +21,8 @@
<licenses>
<license>
<name>GNU Affero General Public License v3.0</name>
<url>https://www.gnu.org/licenses/agpl-3.0.html</url>
<name>Apache License, Version 2.0</name>
<url>https://www.apache.org/licenses/LICENSE-2.0</url>
<distribution>repo</distribution>
</license>
</licenses>
@@ -50,7 +50,7 @@
</modules>
<properties>
<revision>0.1.0</revision>
<revision>0.2.0-SNAPSHOT</revision>
<maven.compiler.source>21</maven.compiler.source>
<maven.compiler.target>21</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
@@ -73,7 +73,7 @@
<dependency>
<groupId>org.assertj</groupId>
<artifactId>assertj-core</artifactId>
<version>3.27.3</version>
<version>3.27.7</version>
</dependency>
</dependencies>
</dependencyManagement>
@@ -93,5 +93,68 @@
</plugin>
</plugins>
</pluginManagement>
<plugins>
<!-- Replace ${revision} with its value in the poms that get installed and published. -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>flatten-maven-plugin</artifactId>
<version>1.7.3</version>
<configuration>
<updatePomFile>true</updatePomFile>
<flattenMode>resolveCiFriendliesOnly</flattenMode>
</configuration>
<executions>
<execution>
<id>flatten</id>
<phase>process-resources</phase>
<goals>
<goal>flatten</goal>
</goals>
</execution>
<execution>
<id>flatten.clean</id>
<phase>clean</phase>
<goals>
<goal>clean</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<profiles>
<!-- Opt-in check against the next qqq line: mvn -B verify -Pqqq-snapshot -->
<!-- (override the version with -Dqqq.snapshot.version=...). Default builds -->
<!-- take the qqq version only from qbit-build-parent. -->
<profile>
<id>qqq-snapshot</id>
<properties>
<qqq.snapshot.version>4.1.0-SNAPSHOT</qqq.snapshot.version>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.kingsrook.qqq</groupId>
<artifactId>qqq-bom-pom</artifactId>
<version>${qqq.snapshot.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<repositories>
<repository>
<id>sonatype-snapshots</id>
<url>https://central.sonatype.com/repository/maven-snapshots/</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
</profile>
</profiles>
</project>
@@ -2,9 +2,9 @@
## Prerequisites
- Java 17+
- Java 21+
- Maven 3.8+
- QQQ 0.23.0+
- QQQ 4.0.0+
## Creating Your Data QBit
+4
View File
@@ -13,6 +13,10 @@
<artifactId>qbit-geo-data</artifactId>
<packaging>jar</packaging>
<properties>
<qbit.noticesDirectory>${project.basedir}/..</qbit.noticesDirectory>
</properties>
<name>QBit Geographic Data</name>
<description>Geographic reference data for QQQ applications - countries, states/provinces, and cities</description>
+4
View File
@@ -13,6 +13,10 @@
<artifactId>qbit-geo-data-tools</artifactId>
<packaging>jar</packaging>
<properties>
<qbit.noticesDirectory>${project.basedir}/..</qbit.noticesDirectory>
</properties>
<name>QBit Geographic Data - Tools</name>
<description>Data acquisition and formatting utilities for geo-data</description>