From 41faedbadc62c3a9d1c0a5e5a68bb987403659b9 Mon Sep 17 00:00:00 2001 From: jcpitre Date: Wed, 1 Apr 2026 21:06:54 -0400 Subject: [PATCH 01/25] Added an action to extract the version form tags. --- .github/actions/extract-version/action.yml | 62 ++++++++++++ .github/workflows/build.yml | 7 +- .github/workflows/deploy-snapshot.yml | 91 +++++++++++++++++ .github/workflows/deploy.yml | 57 ----------- .github/workflows/release.yml | 108 +++++++++++++++++++++ .gitignore | 2 + .mvn/extensions.xml | 10 ++ .mvn/maven-git-versioning-extension.xml | 23 +++++ gbfs-validator-java-api/pom.xml | 9 +- gbfs-validator-java-cli/pom.xml | 5 +- gbfs-validator-java-loader/pom.xml | 3 +- gbfs-validator-java/pom.xml | 11 ++- pom.xml | 11 ++- 13 files changed, 321 insertions(+), 78 deletions(-) create mode 100644 .github/actions/extract-version/action.yml create mode 100644 .github/workflows/deploy-snapshot.yml delete mode 100644 .github/workflows/deploy.yml create mode 100644 .github/workflows/release.yml create mode 100644 .mvn/extensions.xml create mode 100644 .mvn/maven-git-versioning-extension.xml diff --git a/.github/actions/extract-version/action.yml b/.github/actions/extract-version/action.yml new file mode 100644 index 0000000..c31d03e --- /dev/null +++ b/.github/actions/extract-version/action.yml @@ -0,0 +1,62 @@ +name: Extract Version +description: > + Extracts the version from the nearest git tag matching v... + If HEAD is exactly on that tag, snapshot=false. Otherwise snapshot=true. + +outputs: + major: + description: Major version number + value: ${{ steps.extract.outputs.major }} + minor: + description: Minor version number + value: ${{ steps.extract.outputs.minor }} + patch: + description: Patch version number + value: ${{ steps.extract.outputs.patch }} + snapshot: + description: "true if HEAD is not on a release tag, false if it is" + value: ${{ steps.extract.outputs.snapshot }} + version: + description: "Full version string, e.g. 2.0.67 or 2.0.67-SNAPSHOT" + value: ${{ steps.extract.outputs.version }} + +runs: + using: composite + steps: + - name: Extract version from nearest tag + id: extract + shell: bash + run: | + TAG_PATTERN="^v([0-9]+)\.([0-9]+)\.([0-9]+)$" + + # Check if HEAD itself carries a matching tag + HEAD_TAG=$(git tag --points-at HEAD | grep -E "$TAG_PATTERN" | head -1) + + if [[ -n "$HEAD_TAG" ]]; then + TAG="$HEAD_TAG" + SNAPSHOT="false" + else + # Find the nearest ancestor tag matching strict semver format + TAG=$(git describe --tags --abbrev=0 --match "v[0-9]*.[0-9]*.[0-9]*" 2>/dev/null) + + if [[ -z "$TAG" ]] || [[ ! "$TAG" =~ $TAG_PATTERN ]]; then + echo "ERROR: No tag matching v.. found in git history." >&2 + exit 1 + fi + SNAPSHOT="true" + fi + + # Parse the version components + [[ "$TAG" =~ $TAG_PATTERN ]] + MAJOR="${BASH_REMATCH[1]}" + MINOR="${BASH_REMATCH[2]}" + PATCH="${BASH_REMATCH[3]}" + + echo "Found tag: $TAG (snapshot=$SNAPSHOT)" + VERSION="${MAJOR}.${MINOR}.${PATCH}" + [[ "$SNAPSHOT" == "true" ]] && VERSION="${VERSION}-SNAPSHOT" + echo "major=$MAJOR" >> "$GITHUB_OUTPUT" + echo "minor=$MINOR" >> "$GITHUB_OUTPUT" + echo "patch=$PATCH" >> "$GITHUB_OUTPUT" + echo "snapshot=$SNAPSHOT" >> "$GITHUB_OUTPUT" + echo "version=$VERSION" >> "$GITHUB_OUTPUT" diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index f5dfb91..a515f41 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -3,9 +3,6 @@ on: pull_request: branches: - master - push: - branches: - - master jobs: maven-package: runs-on: ubuntu-24.04 @@ -15,8 +12,8 @@ jobs: fetch-depth: 0 - uses: actions/setup-java@v5 with: - java-version: 17.0.13 - distribution: liberica + java-version: '17' + distribution: zulu - name: Cache Maven dependencies uses: actions/cache@v4 with: diff --git a/.github/workflows/deploy-snapshot.yml b/.github/workflows/deploy-snapshot.yml new file mode 100644 index 0000000..c73c491 --- /dev/null +++ b/.github/workflows/deploy-snapshot.yml @@ -0,0 +1,91 @@ +name: Publish Snapshot + +concurrency: + group: deploy-master + cancel-in-progress: false + +on: + push: + branches: + - master + workflow_dispatch: # Manual trigger + +env: + java_version: '17' + java_distribution: 'zulu' + +jobs: + publish-snapshot: + if: "github.event_name == 'workflow_dispatch' || !contains(github.event.head_commit.message, 'ci skip')" + runs-on: ubuntu-24.04 + env: + HAS_1PASSWORD: ${{ secrets.OP_SERVICE_ACCOUNT_TOKEN != '' }} + steps: + - uses: actions/checkout@v5 + with: + fetch-depth: 0 + - name: Extract version + id: version + uses: ./.github/actions/extract-version + - name: Set up JDK ${{ env.java_version }}-${{ env.java_distribution }} + uses: actions/setup-java@v5 + with: + java-version: ${{ env.java_version }} + distribution: ${{ env.java_distribution }} + - name: Cache Maven dependencies + uses: actions/cache@v4 + with: + path: ~/.m2/repository + key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} + restore-keys: | + ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} + ${{ runner.os }}-maven- + ${{ runner.os }}- + - name: Load secrets from 1Password + if: env.HAS_1PASSWORD == 'true' + uses: MobilityData/gtfs-validator/.github/actions/extract-1password-secret@master + with: + OP_SERVICE_ACCOUNT_TOKEN: ${{ secrets.OP_SERVICE_ACCOUNT_TOKEN }} + VARIABLES_TO_EXTRACT: 'MAVEN_GPG_PASSPHRASE, MAVEN_GPG_PRIVATE_KEY, MAVEN_CENTRAL_PORTAL_TOKEN_USERNAME, MAVEN_CENTRAL_PORTAL_TOKEN_PASSWORD' + ONE_PASSWORD_SECRET_REFERENCES: ${{ vars.ONE_PASSWORD_SECRET_REFERENCES }} + - name: Load secrets from GitHub secrets (fallback for forks without 1Password) + if: env.HAS_1PASSWORD != 'true' + env: + GPG_KEY: ${{ secrets.MAVEN_GPG_PRIVATE_KEY }} + GPG_PASS: ${{ secrets.MAVEN_GPG_PASSPHRASE }} + MVN_USER: ${{ secrets.MAVEN_CENTRAL_PORTAL_TOKEN_USERNAME }} + MVN_PASS: ${{ secrets.MAVEN_CENTRAL_PORTAL_TOKEN_PASSWORD }} + run: | + { + echo "MAVEN_GPG_PASSPHRASE=$GPG_PASS" + echo "MAVEN_GPG_PRIVATE_KEY<> "$GITHUB_ENV" + - name: Setup GPG and JReleaser credentials + run: | + echo "$MAVEN_GPG_PRIVATE_KEY" | gpg --batch --import + GPG_KEY_ID=$(gpg --list-secret-keys --keyid-format LONG | grep '^sec' | awk '{print $2}' | cut -d'/' -f2 | head -1) + { + echo "JRELEASER_GPG_PUBLIC_KEY<> "$GITHUB_ENV" + - name: Stage artifacts + run: mvn deploy -Ppublication -Dprettier.skip=true -Drevision=${{ steps.version.outputs.version }} + - name: Publish snapshot to Maven Central + run: mvn jreleaser:deploy -Djreleaser.output.directory=out -Drevision=${{ steps.version.outputs.version }} + - name: Upload JReleaser output + if: always() + uses: actions/upload-artifact@v4 + with: + name: jreleaser-snapshot-logs + path: out/ diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml deleted file mode 100644 index 9b0a877..0000000 --- a/.github/workflows/deploy.yml +++ /dev/null @@ -1,57 +0,0 @@ -name: Deploy Maven Central - -concurrency: - group: deploy-master - cancel-in-progress: false - -on: - push: - branches: - - master -env: - JFROG_USER: ${{ secrets.ARTIFACTORY_AUTH_USER }} - JFROG_PASS: ${{ secrets.ARTIFACTORY_AUTH_TOKEN }} - SONATYPE_GPG_KEY_BASE64: ${{ secrets.SONATYPE_GPG_KEY_BASE64 }} - SONATYPE_USERNAME: ${{ secrets.SONATYPE_USERNAME }} - SONATYPE_PASSWORD: ${{ secrets.SONATYPE_PASSWORD }} - SONATYPE_GPG_KEY_PASSWORD: ${{ secrets.SONATYPE_GPG_KEY_PASSWORD }} - NVD_API_KEY: ${{ secrets.NVD_API_KEY }} -jobs: - maven-package: - if: github.event_name == 'push' && !contains(github.event.head_commit.message, 'ci skip') - runs-on: ubuntu-24.04 - steps: - - uses: actions/checkout@v5 - with: - fetch-depth: 0 - - name: Copy maven settings - run: | - wget https://raw.githubusercontent.com/entur/ror-maven-settings/master/.m2/settings.xml -O .github/workflows/settings.xml - - uses: actions/setup-java@v5 - with: - java-version: 17.0.13 - distribution: liberica - - name: Cache Maven dependencies - uses: actions/cache@v4 - with: - path: ~/.m2/repository - key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} - restore-keys: | - ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} - ${{ runner.os }}-maven- - ${{ runner.os }}- - - name: Run maven build - run: mvn package -s .github/workflows/settings.xml -PprettierCheck -Dprettier.nodePath=node -Dprettier.npmPath=npm - - name: Upload artifact - uses: actions/upload-artifact@v4.6.2 - with: - path: gbfs-validator-java/target/*.jar - publish-release: - if: github.repository_owner == 'entur' && github.event_name == 'push' - name: Publish release to maven central - uses: entur/gha-maven-central/.github/workflows/maven-publish.yml@v1 - secrets: inherit - with: - push_to_repo: true - snapshot: false - next_version: '' diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..85896e9 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,108 @@ +name: Release + +# Triggered by GitHub release events: +# - Creating a pre-release with tag vX.Y.Z → builds and stages artifacts to Maven Central +# (USER_MANAGED, pending). Review them at https://central.sonatype.com, then convert +# the pre-release to a full release when satisfied. +# - Publishing a full release → rebuilds and publishes artifacts to Maven Central immediately. +# +# The project version is derived automatically from the git tag via maven-git-versioning-extension. +# No pom.xml version commits are needed. +on: + release: + types: [prereleased, released] + +env: + java_version: '17' + java_distribution: 'zulu' + +jobs: + release: + runs-on: ubuntu-24.04 + permissions: + contents: write + env: + HAS_1PASSWORD: ${{ secrets.OP_SERVICE_ACCOUNT_TOKEN != '' }} + steps: + - uses: actions/checkout@v5 + with: + fetch-depth: 0 + # Check out the exact tagged commit so the version is correctly resolved from the tag. + ref: ${{ github.event.release.tag_name }} + - name: Extract version + id: version + uses: ./.github/actions/extract-version + - name: Set up JDK ${{ env.java_version }}-${{ env.java_distribution }} + uses: actions/setup-java@v5 + with: + java-version: ${{ env.java_version }} + distribution: ${{ env.java_distribution }} + - name: Cache Maven dependencies + uses: actions/cache@v4 + with: + path: ~/.m2/repository + key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} + restore-keys: | + ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} + ${{ runner.os }}-maven- + ${{ runner.os }}- + - name: Load secrets from 1Password + if: env.HAS_1PASSWORD == 'true' + uses: MobilityData/gtfs-validator/.github/actions/extract-1password-secret@master + with: + OP_SERVICE_ACCOUNT_TOKEN: ${{ secrets.OP_SERVICE_ACCOUNT_TOKEN }} + VARIABLES_TO_EXTRACT: 'MAVEN_GPG_PASSPHRASE, MAVEN_GPG_PRIVATE_KEY, MAVEN_CENTRAL_PORTAL_TOKEN_USERNAME, MAVEN_CENTRAL_PORTAL_TOKEN_PASSWORD' + ONE_PASSWORD_SECRET_REFERENCES: ${{ vars.ONE_PASSWORD_SECRET_REFERENCES }} + - name: Load secrets from GitHub secrets (fallback for forks without 1Password) + if: env.HAS_1PASSWORD != 'true' + env: + GPG_KEY: ${{ secrets.MAVEN_GPG_PRIVATE_KEY }} + GPG_PASS: ${{ secrets.MAVEN_GPG_PASSPHRASE }} + MVN_USER: ${{ secrets.MAVEN_CENTRAL_PORTAL_TOKEN_USERNAME }} + MVN_PASS: ${{ secrets.MAVEN_CENTRAL_PORTAL_TOKEN_PASSWORD }} + run: | + { + echo "MAVEN_GPG_PASSPHRASE=$GPG_PASS" + echo "MAVEN_GPG_PRIVATE_KEY<> "$GITHUB_ENV" + - name: Setup GPG and JReleaser credentials + run: | + echo "$MAVEN_GPG_PRIVATE_KEY" | gpg --batch --import + GPG_KEY_ID=$(gpg --list-secret-keys --keyid-format LONG | grep '^sec' | awk '{print $2}' | cut -d'/' -f2 | head -1) + { + echo "JRELEASER_GPG_PUBLIC_KEY<> "$GITHUB_ENV" + - name: Stage artifacts + run: mvn deploy -Ppublication -Dprettier.skip=true -Drevision=${{ steps.version.outputs.version }} + - name: Deploy to Maven Central + # prereleased: USER_MANAGED — artifacts sit pending in the portal for review. + # released: AUTOMATIC — artifacts are published immediately after validation. + # jreleaser:deploy only handles Maven Central; GitHub release management is done by the GitHub UI. + env: + JRELEASER_DEPLOY_MAVEN_MAVENCENTRAL_SONATYPE_PUBLISHING_TYPE: ${{ github.event.action == 'prereleased' && 'USER_MANAGED' || 'AUTOMATIC' }} + run: mvn jreleaser:deploy -Djreleaser.output.directory=out -Drevision=${{ steps.version.outputs.version }} + - name: Upload CLI fat jar to GitHub release + run: | + gh release upload "${{ github.event.release.tag_name }}" \ + gbfs-validator-java-cli/target/gbfs-validator-cli.jar \ + --clobber + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: Upload JReleaser output + if: always() + uses: actions/upload-artifact@v4 + with: + name: jreleaser-release-logs + path: out/ diff --git a/.gitignore b/.gitignore index 0bf1286..b6868e8 100644 --- a/.gitignore +++ b/.gitignore @@ -10,5 +10,7 @@ buildNumber.properties .mvn/timing.properties # https://github.com/takari/maven-wrapper#usage-without-binary-jar .mvn/wrapper/maven-wrapper.jar +# generated by maven-git-versioning-extension +.git-versioned-pom.xml .vscode diff --git a/.mvn/extensions.xml b/.mvn/extensions.xml new file mode 100644 index 0000000..76a9ecb --- /dev/null +++ b/.mvn/extensions.xml @@ -0,0 +1,10 @@ + + + + me.qoomon + maven-git-versioning-extension + 9.11.0 + + diff --git a/.mvn/maven-git-versioning-extension.xml b/.mvn/maven-git-versioning-extension.xml new file mode 100644 index 0000000..7e2ce87 --- /dev/null +++ b/.mvn/maven-git-versioning-extension.xml @@ -0,0 +1,23 @@ + + + + + + + ${version} + + + + + ${describe.tag.version.major}.${describe.tag.version.minor}.${describe.tag.version.patch.next}-SNAPSHOT + + + + + ${describe.tag.version.major}.${describe.tag.version.minor}.${describe.tag.version.patch.next}-SNAPSHOT + + + diff --git a/gbfs-validator-java-api/pom.xml b/gbfs-validator-java-api/pom.xml index c5cc643..eea2b1d 100644 --- a/gbfs-validator-java-api/pom.xml +++ b/gbfs-validator-java-api/pom.xml @@ -5,13 +5,14 @@ org.mobilitydata gbfs-validator-java-parent - 2.0.67 + + 0.0.0-placeholder gbfs-validator-java-api gbfs-validator-java-api gbfs-validator-java-api - https://github.com/entur/gbfs-validator-java + https://github.com/MobilityData/gbfs-validator-java Apache License, Version 2.0 @@ -134,13 +135,13 @@ org.mobilitydata gbfs-validator-java-loader - 2.0.67 + ${project.version} org.mobilitydata gbfs-validator-java - 2.0.67 + ${project.version} com.google.guava diff --git a/gbfs-validator-java-cli/pom.xml b/gbfs-validator-java-cli/pom.xml index 75d9c44..7750403 100644 --- a/gbfs-validator-java-cli/pom.xml +++ b/gbfs-validator-java-cli/pom.xml @@ -6,7 +6,8 @@ org.mobilitydata gbfs-validator-java-parent - 2.0.67 + + 0.0.0-placeholder gbfs-validator-java-cli @@ -25,6 +26,8 @@ 0.8.14 + + true diff --git a/gbfs-validator-java-loader/pom.xml b/gbfs-validator-java-loader/pom.xml index 9018146..73bad34 100644 --- a/gbfs-validator-java-loader/pom.xml +++ b/gbfs-validator-java-loader/pom.xml @@ -6,7 +6,8 @@ org.mobilitydata gbfs-validator-java-parent - 2.0.67 + + 0.0.0-placeholder gbfs-validator-java-loader diff --git a/gbfs-validator-java/pom.xml b/gbfs-validator-java/pom.xml index d633be2..a8673f7 100644 --- a/gbfs-validator-java/pom.xml +++ b/gbfs-validator-java/pom.xml @@ -4,20 +4,21 @@ org.mobilitydata gbfs-validator-java-parent - 2.0.67 + + 0.0.0-placeholder gbfs-validator-java - 2.0.67 + 0.0.0-placeholder jar gbfs-validator-java Validate GBFS feeds - https://github.com/entur/gbfs-validator-java + https://github.com/MobilityData/gbfs-validator-java - Entur AS - http://www.entur.org/ + MobilityData + https://mobilitydata.org/ diff --git a/pom.xml b/pom.xml index df76ad2..347a5c8 100644 --- a/pom.xml +++ b/pom.xml @@ -4,16 +4,17 @@ org.mobilitydata gbfs-validator-java-parent - 2.0.67 + + 0.0.0-placeholder pom GBFS Validator Parent Aggregator POM for GBFS Validator modules - https://github.com/entur/gbfs-validator-java + https://github.com/MobilityData/gbfs-validator-java - Entur AS - https://www.entur.org/ + MobilityData + https://mobilitydata.org/ @@ -94,7 +95,7 @@ - false + true true From f615b6836c406e57962af3fdc7e9a99ab9cc0289 Mon Sep 17 00:00:00 2001 From: jcpitre Date: Wed, 1 Apr 2026 23:09:05 -0400 Subject: [PATCH 02/25] Misc changes --- .github/workflows/deploy-snapshot.yml | 7 ++----- .github/workflows/release.yml | 7 ++----- 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/.github/workflows/deploy-snapshot.yml b/.github/workflows/deploy-snapshot.yml index c73c491..11c5fd5 100644 --- a/.github/workflows/deploy-snapshot.yml +++ b/.github/workflows/deploy-snapshot.yml @@ -24,9 +24,6 @@ jobs: - uses: actions/checkout@v5 with: fetch-depth: 0 - - name: Extract version - id: version - uses: ./.github/actions/extract-version - name: Set up JDK ${{ env.java_version }}-${{ env.java_distribution }} uses: actions/setup-java@v5 with: @@ -80,9 +77,9 @@ jobs: echo "JRELEASER_NEXUS2_MAVEN_CENTRAL_PASSWORD=$MAVEN_CENTRAL_PORTAL_TOKEN_PASSWORD" } >> "$GITHUB_ENV" - name: Stage artifacts - run: mvn deploy -Ppublication -Dprettier.skip=true -Drevision=${{ steps.version.outputs.version }} + run: mvn deploy -Ppublication -Dprettier.skip=true - name: Publish snapshot to Maven Central - run: mvn jreleaser:deploy -Djreleaser.output.directory=out -Drevision=${{ steps.version.outputs.version }} + run: mvn jreleaser:deploy -Djreleaser.output.directory=out - name: Upload JReleaser output if: always() uses: actions/upload-artifact@v4 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 85896e9..8a04f4a 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -29,9 +29,6 @@ jobs: fetch-depth: 0 # Check out the exact tagged commit so the version is correctly resolved from the tag. ref: ${{ github.event.release.tag_name }} - - name: Extract version - id: version - uses: ./.github/actions/extract-version - name: Set up JDK ${{ env.java_version }}-${{ env.java_distribution }} uses: actions/setup-java@v5 with: @@ -85,14 +82,14 @@ jobs: echo "JRELEASER_MAVENCENTRAL_SONATYPE_PASSWORD=$MAVEN_CENTRAL_PORTAL_TOKEN_PASSWORD" } >> "$GITHUB_ENV" - name: Stage artifacts - run: mvn deploy -Ppublication -Dprettier.skip=true -Drevision=${{ steps.version.outputs.version }} + run: mvn deploy -Ppublication -Dprettier.skip=true - name: Deploy to Maven Central # prereleased: USER_MANAGED — artifacts sit pending in the portal for review. # released: AUTOMATIC — artifacts are published immediately after validation. # jreleaser:deploy only handles Maven Central; GitHub release management is done by the GitHub UI. env: JRELEASER_DEPLOY_MAVEN_MAVENCENTRAL_SONATYPE_PUBLISHING_TYPE: ${{ github.event.action == 'prereleased' && 'USER_MANAGED' || 'AUTOMATIC' }} - run: mvn jreleaser:deploy -Djreleaser.output.directory=out -Drevision=${{ steps.version.outputs.version }} + run: mvn jreleaser:deploy -Djreleaser.output.directory=out - name: Upload CLI fat jar to GitHub release run: | gh release upload "${{ github.event.release.tag_name }}" \ From ba0a78ca718779351167e06b5523ddf912fac1f3 Mon Sep 17 00:00:00 2001 From: jcpitre Date: Wed, 1 Apr 2026 23:37:18 -0400 Subject: [PATCH 03/25] Added temp trigger --- .github/workflows/deploy-snapshot.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/deploy-snapshot.yml b/.github/workflows/deploy-snapshot.yml index 11c5fd5..a7c75ce 100644 --- a/.github/workflows/deploy-snapshot.yml +++ b/.github/workflows/deploy-snapshot.yml @@ -8,6 +8,7 @@ on: push: branches: - master + - 187-create-mobilitydata-maven-packages # TEMPORARY: remove after testing workflow_dispatch: # Manual trigger env: From 0d3cc57be22c2120f3dd31f4781902cf69e2cfcc Mon Sep 17 00:00:00 2001 From: jcpitre Date: Thu, 2 Apr 2026 00:01:44 -0400 Subject: [PATCH 04/25] Some corrections. --- .github/workflows/deploy-snapshot.yml | 2 +- .github/workflows/release.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/deploy-snapshot.yml b/.github/workflows/deploy-snapshot.yml index a7c75ce..2bc5883 100644 --- a/.github/workflows/deploy-snapshot.yml +++ b/.github/workflows/deploy-snapshot.yml @@ -20,7 +20,7 @@ jobs: if: "github.event_name == 'workflow_dispatch' || !contains(github.event.head_commit.message, 'ci skip')" runs-on: ubuntu-24.04 env: - HAS_1PASSWORD: ${{ secrets.OP_SERVICE_ACCOUNT_TOKEN != '' }} + HAS_1PASSWORD: ${{ secrets.OP_SERVICE_ACCOUNT_TOKEN != '' && vars.ONE_PASSWORD_SECRET_REFERENCES != '' }} steps: - uses: actions/checkout@v5 with: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 8a04f4a..219ecca 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -22,7 +22,7 @@ jobs: permissions: contents: write env: - HAS_1PASSWORD: ${{ secrets.OP_SERVICE_ACCOUNT_TOKEN != '' }} + HAS_1PASSWORD: ${{ secrets.OP_SERVICE_ACCOUNT_TOKEN != '' && vars.ONE_PASSWORD_SECRET_REFERENCES != '' }} steps: - uses: actions/checkout@v5 with: From 71cb7637eeede99ef86b4991f37b8461b7bdb7bd Mon Sep 17 00:00:00 2001 From: jcpitre Date: Mon, 6 Apr 2026 22:55:48 -0400 Subject: [PATCH 05/25] simplify GPG credential passing via environment variables in publish workflows --- .github/workflows/build.yml | 1 + .github/workflows/release.yml | 17 ++--------------- pom.xml | 11 ++++++++++- 3 files changed, 13 insertions(+), 16 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a515f41..526dcd0 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -3,6 +3,7 @@ on: pull_request: branches: - master + workflow_dispatch: jobs: maven-package: runs-on: ubuntu-24.04 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 219ecca..1e876da 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -66,21 +66,6 @@ jobs: echo "MAVEN_CENTRAL_PORTAL_TOKEN_USERNAME=$MVN_USER" echo "MAVEN_CENTRAL_PORTAL_TOKEN_PASSWORD=$MVN_PASS" } >> "$GITHUB_ENV" - - name: Setup GPG and JReleaser credentials - run: | - echo "$MAVEN_GPG_PRIVATE_KEY" | gpg --batch --import - GPG_KEY_ID=$(gpg --list-secret-keys --keyid-format LONG | grep '^sec' | awk '{print $2}' | cut -d'/' -f2 | head -1) - { - echo "JRELEASER_GPG_PUBLIC_KEY<> "$GITHUB_ENV" - name: Stage artifacts run: mvn deploy -Ppublication -Dprettier.skip=true - name: Deploy to Maven Central @@ -89,6 +74,8 @@ jobs: # jreleaser:deploy only handles Maven Central; GitHub release management is done by the GitHub UI. env: JRELEASER_DEPLOY_MAVEN_MAVENCENTRAL_SONATYPE_PUBLISHING_TYPE: ${{ github.event.action == 'prereleased' && 'USER_MANAGED' || 'AUTOMATIC' }} + JRELEASER_GPG_PASSPHRASE: ${{ env.MAVEN_GPG_PASSPHRASE }} + JRELEASER_GPG_SECRET_KEY: ${{ env.MAVEN_GPG_PRIVATE_KEY }} run: mvn jreleaser:deploy -Djreleaser.output.directory=out - name: Upload CLI fat jar to GitHub release run: | diff --git a/pom.xml b/pom.xml index 347a5c8..aabf66b 100644 --- a/pom.xml +++ b/pom.xml @@ -52,7 +52,7 @@ HEAD - 1.20.0 + 1.23.0 5.2.0.4988 2.1.0 0.22 @@ -69,6 +69,11 @@ ALWAYS true + + false @@ -77,6 +82,8 @@ RELEASE https://central.sonatype.com/api/v1/publisher target/staging-deploy + ${env.MAVEN_CENTRAL_PORTAL_TOKEN_USERNAME} + ${env.MAVEN_CENTRAL_PORTAL_TOKEN_PASSWORD} @@ -89,6 +96,8 @@ true true target/staging-deploy + ${env.MAVEN_CENTRAL_PORTAL_TOKEN_USERNAME} + ${env.MAVEN_CENTRAL_PORTAL_TOKEN_PASSWORD} From 7c8c7b7dd772ca6208073653d1d58b059b0fcdb9 Mon Sep 17 00:00:00 2001 From: jcpitre Date: Mon, 6 Apr 2026 23:09:53 -0400 Subject: [PATCH 06/25] simplify GPG credential passing via environment variables in publish workflows --- .github/workflows/deploy-snapshot.yml | 18 +++--------------- 1 file changed, 3 insertions(+), 15 deletions(-) diff --git a/.github/workflows/deploy-snapshot.yml b/.github/workflows/deploy-snapshot.yml index 2bc5883..1402247 100644 --- a/.github/workflows/deploy-snapshot.yml +++ b/.github/workflows/deploy-snapshot.yml @@ -62,24 +62,12 @@ jobs: echo "MAVEN_CENTRAL_PORTAL_TOKEN_USERNAME=$MVN_USER" echo "MAVEN_CENTRAL_PORTAL_TOKEN_PASSWORD=$MVN_PASS" } >> "$GITHUB_ENV" - - name: Setup GPG and JReleaser credentials - run: | - echo "$MAVEN_GPG_PRIVATE_KEY" | gpg --batch --import - GPG_KEY_ID=$(gpg --list-secret-keys --keyid-format LONG | grep '^sec' | awk '{print $2}' | cut -d'/' -f2 | head -1) - { - echo "JRELEASER_GPG_PUBLIC_KEY<> "$GITHUB_ENV" - name: Stage artifacts run: mvn deploy -Ppublication -Dprettier.skip=true - name: Publish snapshot to Maven Central + env: + JRELEASER_GPG_PASSPHRASE: ${{ env.MAVEN_GPG_PASSPHRASE }} + JRELEASER_GPG_SECRET_KEY: ${{ env.MAVEN_GPG_PRIVATE_KEY }} run: mvn jreleaser:deploy -Djreleaser.output.directory=out - name: Upload JReleaser output if: always() From b2fcf6a687a252609451f0469e456064ddb75d78 Mon Sep 17 00:00:00 2001 From: jcpitre Date: Tue, 7 Apr 2026 09:45:29 -0400 Subject: [PATCH 07/25] Suppress Maven download progress, fix shade plugin bug --- .github/workflows/build.yml | 4 ++++ .github/workflows/deploy-snapshot.yml | 1 + .github/workflows/release.yml | 1 + gbfs-validator-java-cli/pom.xml | 3 ++- 4 files changed, 8 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 526dcd0..44e85c3 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -4,6 +4,10 @@ on: branches: - master workflow_dispatch: + +env: + MAVEN_OPTS: '-Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' + jobs: maven-package: runs-on: ubuntu-24.04 diff --git a/.github/workflows/deploy-snapshot.yml b/.github/workflows/deploy-snapshot.yml index 1402247..a84a8c4 100644 --- a/.github/workflows/deploy-snapshot.yml +++ b/.github/workflows/deploy-snapshot.yml @@ -14,6 +14,7 @@ on: env: java_version: '17' java_distribution: 'zulu' + MAVEN_OPTS: '-Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' jobs: publish-snapshot: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 1e876da..991758f 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -15,6 +15,7 @@ on: env: java_version: '17' java_distribution: 'zulu' + MAVEN_OPTS: '-Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' jobs: release: diff --git a/gbfs-validator-java-cli/pom.xml b/gbfs-validator-java-cli/pom.xml index 7750403..df47fcf 100644 --- a/gbfs-validator-java-cli/pom.xml +++ b/gbfs-validator-java-cli/pom.xml @@ -118,7 +118,8 @@ org.apache.maven.plugins maven-shade-plugin - 3.6.1 + + 3.5.3 package From 5a902a25ee6f88f1793dc94c4c3db473ba51e63d Mon Sep 17 00:00:00 2001 From: jcpitre Date: Tue, 7 Apr 2026 10:24:52 -0400 Subject: [PATCH 08/25] Suppress Maven download progress output in CI workflows --- .github/workflows/build.yml | 5 +---- .github/workflows/deploy-snapshot.yml | 5 ++--- .github/workflows/release.yml | 5 ++--- 3 files changed, 5 insertions(+), 10 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 44e85c3..888ad65 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -5,9 +5,6 @@ on: - master workflow_dispatch: -env: - MAVEN_OPTS: '-Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' - jobs: maven-package: runs-on: ubuntu-24.04 @@ -29,7 +26,7 @@ jobs: ${{ runner.os }}-maven- ${{ runner.os }}- - name: Run maven build - run: mvn verify -PprettierCheck -Dprettier.nodePath=node -Dprettier.npmPath=npm + run: mvn verify -PprettierCheck -Dprettier.nodePath=node -Dprettier.npmPath=npm -ntp - name: codecov uses: codecov/codecov-action@v5 with: diff --git a/.github/workflows/deploy-snapshot.yml b/.github/workflows/deploy-snapshot.yml index a84a8c4..2bb0ac9 100644 --- a/.github/workflows/deploy-snapshot.yml +++ b/.github/workflows/deploy-snapshot.yml @@ -14,7 +14,6 @@ on: env: java_version: '17' java_distribution: 'zulu' - MAVEN_OPTS: '-Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' jobs: publish-snapshot: @@ -64,12 +63,12 @@ jobs: echo "MAVEN_CENTRAL_PORTAL_TOKEN_PASSWORD=$MVN_PASS" } >> "$GITHUB_ENV" - name: Stage artifacts - run: mvn deploy -Ppublication -Dprettier.skip=true + run: mvn deploy -Ppublication -Dprettier.skip=true -ntp - name: Publish snapshot to Maven Central env: JRELEASER_GPG_PASSPHRASE: ${{ env.MAVEN_GPG_PASSPHRASE }} JRELEASER_GPG_SECRET_KEY: ${{ env.MAVEN_GPG_PRIVATE_KEY }} - run: mvn jreleaser:deploy -Djreleaser.output.directory=out + run: mvn jreleaser:deploy -Djreleaser.output.directory=out -ntp - name: Upload JReleaser output if: always() uses: actions/upload-artifact@v4 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 991758f..3c3dcb6 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -15,7 +15,6 @@ on: env: java_version: '17' java_distribution: 'zulu' - MAVEN_OPTS: '-Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' jobs: release: @@ -68,7 +67,7 @@ jobs: echo "MAVEN_CENTRAL_PORTAL_TOKEN_PASSWORD=$MVN_PASS" } >> "$GITHUB_ENV" - name: Stage artifacts - run: mvn deploy -Ppublication -Dprettier.skip=true + run: mvn deploy -Ppublication -Dprettier.skip=true -ntp - name: Deploy to Maven Central # prereleased: USER_MANAGED — artifacts sit pending in the portal for review. # released: AUTOMATIC — artifacts are published immediately after validation. @@ -77,7 +76,7 @@ jobs: JRELEASER_DEPLOY_MAVEN_MAVENCENTRAL_SONATYPE_PUBLISHING_TYPE: ${{ github.event.action == 'prereleased' && 'USER_MANAGED' || 'AUTOMATIC' }} JRELEASER_GPG_PASSPHRASE: ${{ env.MAVEN_GPG_PASSPHRASE }} JRELEASER_GPG_SECRET_KEY: ${{ env.MAVEN_GPG_PRIVATE_KEY }} - run: mvn jreleaser:deploy -Djreleaser.output.directory=out + run: mvn jreleaser:deploy -Djreleaser.output.directory=out -ntp - name: Upload CLI fat jar to GitHub release run: | gh release upload "${{ github.event.release.tag_name }}" \ From 6ec5f7462a097c54941579b74f44b3c210c867c7 Mon Sep 17 00:00:00 2001 From: jcpitre Date: Tue, 7 Apr 2026 14:07:46 -0400 Subject: [PATCH 09/25] exclude META-INF/versions from shaded jar to prevent build failure on Linux CI --- .github/workflows/build.yml | 2 ++ .github/workflows/deploy-snapshot.yml | 2 ++ .github/workflows/release.yml | 2 ++ gbfs-validator-java-cli/pom.xml | 8 +++++--- 4 files changed, 11 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 888ad65..bff33ca 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -16,6 +16,8 @@ jobs: with: java-version: '17' distribution: zulu + - name: Print Java and Maven versions + run: mvn --version - name: Cache Maven dependencies uses: actions/cache@v4 with: diff --git a/.github/workflows/deploy-snapshot.yml b/.github/workflows/deploy-snapshot.yml index 2bb0ac9..30a3cdc 100644 --- a/.github/workflows/deploy-snapshot.yml +++ b/.github/workflows/deploy-snapshot.yml @@ -30,6 +30,8 @@ jobs: with: java-version: ${{ env.java_version }} distribution: ${{ env.java_distribution }} + - name: Print Java and Maven versions + run: mvn --version - name: Cache Maven dependencies uses: actions/cache@v4 with: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 3c3dcb6..ebce625 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -34,6 +34,8 @@ jobs: with: java-version: ${{ env.java_version }} distribution: ${{ env.java_distribution }} + - name: Print Java and Maven versions + run: mvn --version - name: Cache Maven dependencies uses: actions/cache@v4 with: diff --git a/gbfs-validator-java-cli/pom.xml b/gbfs-validator-java-cli/pom.xml index df47fcf..d9a423f 100644 --- a/gbfs-validator-java-cli/pom.xml +++ b/gbfs-validator-java-cli/pom.xml @@ -118,8 +118,7 @@ org.apache.maven.plugins maven-shade-plugin - - 3.5.3 + 3.6.1 package @@ -135,12 +134,15 @@ gbfs-validator-cli - + *:* META-INF/*.SF META-INF/*.DSA META-INF/*.RSA + META-INF/versions/** From d8f9166744bf2e25750329930c4592f3f89e22a4 Mon Sep 17 00:00:00 2001 From: jcpitre Date: Tue, 7 Apr 2026 14:18:52 -0400 Subject: [PATCH 10/25] Exclude module-info.class from shaded jar to prevent CI build failure --- gbfs-validator-java-cli/pom.xml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gbfs-validator-java-cli/pom.xml b/gbfs-validator-java-cli/pom.xml index d9a423f..558e282 100644 --- a/gbfs-validator-java-cli/pom.xml +++ b/gbfs-validator-java-cli/pom.xml @@ -134,15 +134,16 @@ gbfs-validator-cli - + *:* META-INF/*.SF META-INF/*.DSA META-INF/*.RSA META-INF/versions/** + module-info.class From d1100b29e8d6994d7096f7cc7ece1e1e334999fd Mon Sep 17 00:00:00 2001 From: jcpitre Date: Tue, 7 Apr 2026 15:05:46 -0400 Subject: [PATCH 11/25] Upgrade maven-shade-plugin to 3.6.2 to fix filtering bug causing CI build failure --- gbfs-validator-java-cli/pom.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gbfs-validator-java-cli/pom.xml b/gbfs-validator-java-cli/pom.xml index 558e282..51ec7f0 100644 --- a/gbfs-validator-java-cli/pom.xml +++ b/gbfs-validator-java-cli/pom.xml @@ -118,7 +118,7 @@ org.apache.maven.plugins maven-shade-plugin - 3.6.1 + 3.6.2 package @@ -135,8 +135,8 @@ + 3.6.1 had a bug where filters were not applied to all JARs (fixed in 3.6.2). + module-info.class and META-INF/versions prevent "Collections sizes are not equals". --> *:* META-INF/*.SF From db96a36c9361839a7c0cef434093256f33427965 Mon Sep 17 00:00:00 2001 From: jcpitre Date: Tue, 7 Apr 2026 15:32:30 -0400 Subject: [PATCH 12/25] Enabled debug for mvn --- .github/workflows/release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index ebce625..fda02a4 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -69,7 +69,7 @@ jobs: echo "MAVEN_CENTRAL_PORTAL_TOKEN_PASSWORD=$MVN_PASS" } >> "$GITHUB_ENV" - name: Stage artifacts - run: mvn deploy -Ppublication -Dprettier.skip=true -ntp + run: mvn deploy -Ppublication -Dprettier.skip=true -ntp -e - name: Deploy to Maven Central # prereleased: USER_MANAGED — artifacts sit pending in the portal for review. # released: AUTOMATIC — artifacts are published immediately after validation. From 172f84a7612e6c614563b9aca4eeca0c15153ef5 Mon Sep 17 00:00:00 2001 From: jcpitre Date: Tue, 7 Apr 2026 15:38:45 -0400 Subject: [PATCH 13/25] Disable dependency-reduced POM creation to prevent git-versioning extension crash --- gbfs-validator-java-cli/pom.xml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gbfs-validator-java-cli/pom.xml b/gbfs-validator-java-cli/pom.xml index 51ec7f0..dbc13e7 100644 --- a/gbfs-validator-java-cli/pom.xml +++ b/gbfs-validator-java-cli/pom.xml @@ -126,6 +126,11 @@ shade + + false org.entur.gbfs.validator.cli.GbfsValidatorCli From dec1db2d1f230696739eb05bb03c3f999afe2a8d Mon Sep 17 00:00:00 2001 From: jcpitre Date: Tue, 7 Apr 2026 16:08:30 -0400 Subject: [PATCH 14/25] Debugging versioning. --- .github/workflows/release.yml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index fda02a4..6281d35 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -70,6 +70,14 @@ jobs: } >> "$GITHUB_ENV" - name: Stage artifacts run: mvn deploy -Ppublication -Dprettier.skip=true -ntp -e + - name: Debug - show resolved versions and staged artifacts + if: always() + run: | + echo "=== Git tag/describe ===" + git describe --tags --exact-match HEAD || echo "(no exact tag match)" + git describe --tags || echo "(no tags found)" + echo "=== Staging directory ===" + find target/staging-deploy -name "*.pom" | sort | head -30 - name: Deploy to Maven Central # prereleased: USER_MANAGED — artifacts sit pending in the portal for review. # released: AUTOMATIC — artifacts are published immediately after validation. From 468ca9c85d75e851e07f803fc092decf38d28e26 Mon Sep 17 00:00:00 2001 From: jcpitre Date: Tue, 7 Apr 2026 16:20:45 -0400 Subject: [PATCH 15/25] add release workflow debug steps to diagnose version resolution issue --- .github/workflows/release.yml | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 6281d35..7015c7e 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -68,16 +68,17 @@ jobs: echo "MAVEN_CENTRAL_PORTAL_TOKEN_USERNAME=$MVN_USER" echo "MAVEN_CENTRAL_PORTAL_TOKEN_PASSWORD=$MVN_PASS" } >> "$GITHUB_ENV" - - name: Stage artifacts - run: mvn deploy -Ppublication -Dprettier.skip=true -ntp -e - - name: Debug - show resolved versions and staged artifacts - if: always() + - name: Debug - show resolved version before build run: | echo "=== Git tag/describe ===" git describe --tags --exact-match HEAD || echo "(no exact tag match)" - git describe --tags || echo "(no tags found)" - echo "=== Staging directory ===" - find target/staging-deploy -name "*.pom" | sort | head -30 + echo "=== Maven resolved version ===" + mvn help:evaluate -Dexpression=project.version -q -DforceStdout + - name: Stage artifacts + run: mvn deploy -Ppublication -Dprettier.skip=true -ntp -e + - name: Debug - show staged artifacts + if: always() + run: find target/staging-deploy -name "*.pom" | sort | head -30 - name: Deploy to Maven Central # prereleased: USER_MANAGED — artifacts sit pending in the portal for review. # released: AUTOMATIC — artifacts are published immediately after validation. From db80cb718da23d49d5e12c38ef795faf0e5e6388 Mon Sep 17 00:00:00 2001 From: jcpitre Date: Tue, 7 Apr 2026 21:07:57 -0400 Subject: [PATCH 16/25] add verbose versioning debug to release workflow --- .github/workflows/release.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 7015c7e..b2b6fcb 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -70,10 +70,14 @@ jobs: } >> "$GITHUB_ENV" - name: Debug - show resolved version before build run: | - echo "=== Git tag/describe ===" + echo "=== Git state ===" git describe --tags --exact-match HEAD || echo "(no exact tag match)" + git branch --show-current || echo "(detached HEAD)" + git log --oneline -1 + echo "=== Extension config ===" + cat .mvn/maven-git-versioning-extension.xml echo "=== Maven resolved version ===" - mvn help:evaluate -Dexpression=project.version -q -DforceStdout + mvn help:evaluate -Dexpression=project.version -q -DforceStdout -Dversioning.verbose=true 2>&1 | tail -20 - name: Stage artifacts run: mvn deploy -Ppublication -Dprettier.skip=true -ntp -e - name: Debug - show staged artifacts From fbfc8060d17e0cba5f67df9d2db9bba0c68a0dde Mon Sep 17 00:00:00 2001 From: jcpitre Date: Tue, 7 Apr 2026 21:18:57 -0400 Subject: [PATCH 17/25] Set release version from git tag using versions:set instead of git versioning extension --- .github/workflows/release.yml | 23 ++++++++--------------- 1 file changed, 8 insertions(+), 15 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index b2b6fcb..d719077 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -6,8 +6,8 @@ name: Release # the pre-release to a full release when satisfied. # - Publishing a full release → rebuilds and publishes artifacts to Maven Central immediately. # -# The project version is derived automatically from the git tag via maven-git-versioning-extension. -# No pom.xml version commits are needed. +# The project version is derived from the git tag (e.g. v3.0.0 → 3.0.0) and applied to all +# modules in-place via versions:set before building. No pom.xml version commits are needed. on: release: types: [prereleased, released] @@ -68,21 +68,14 @@ jobs: echo "MAVEN_CENTRAL_PORTAL_TOKEN_USERNAME=$MVN_USER" echo "MAVEN_CENTRAL_PORTAL_TOKEN_PASSWORD=$MVN_PASS" } >> "$GITHUB_ENV" - - name: Debug - show resolved version before build + - name: Set release version from tag run: | - echo "=== Git state ===" - git describe --tags --exact-match HEAD || echo "(no exact tag match)" - git branch --show-current || echo "(detached HEAD)" - git log --oneline -1 - echo "=== Extension config ===" - cat .mvn/maven-git-versioning-extension.xml - echo "=== Maven resolved version ===" - mvn help:evaluate -Dexpression=project.version -q -DforceStdout -Dversioning.verbose=true 2>&1 | tail -20 + TAG="${{ github.event.release.tag_name }}" + VERSION="${TAG#v}" + echo "Setting version: $VERSION" + mvn --batch-mode -ntp versions:set -DnewVersion="$VERSION" -DprocessAllModules=true -DgenerateBackupPoms=false - name: Stage artifacts - run: mvn deploy -Ppublication -Dprettier.skip=true -ntp -e - - name: Debug - show staged artifacts - if: always() - run: find target/staging-deploy -name "*.pom" | sort | head -30 + run: mvn deploy -Ppublication -Dprettier.skip=true -ntp - name: Deploy to Maven Central # prereleased: USER_MANAGED — artifacts sit pending in the portal for review. # released: AUTOMATIC — artifacts are published immediately after validation. From 9af1e75cafe1cbbaeb047684d5be0ebec7ce0397 Mon Sep 17 00:00:00 2001 From: jcpitre Date: Wed, 8 Apr 2026 15:10:10 -0400 Subject: [PATCH 18/25] Removed staging step and cleanup --- .github/actions/extract-version/action.yml | 62 ------------------- .github/workflows/release.yml | 14 ++--- .mvn/extensions.xml | 10 --- .mvn/maven-git-versioning-extension.xml | 23 ------- .../validation/GbfsValidatorBuildInfo3.java | 13 ++++ 5 files changed, 17 insertions(+), 105 deletions(-) delete mode 100644 .github/actions/extract-version/action.yml delete mode 100644 .mvn/extensions.xml delete mode 100644 .mvn/maven-git-versioning-extension.xml create mode 100644 gbfs-validator-java/src/main/java/org/entur/gbfs/validation/GbfsValidatorBuildInfo3.java diff --git a/.github/actions/extract-version/action.yml b/.github/actions/extract-version/action.yml deleted file mode 100644 index c31d03e..0000000 --- a/.github/actions/extract-version/action.yml +++ /dev/null @@ -1,62 +0,0 @@ -name: Extract Version -description: > - Extracts the version from the nearest git tag matching v... - If HEAD is exactly on that tag, snapshot=false. Otherwise snapshot=true. - -outputs: - major: - description: Major version number - value: ${{ steps.extract.outputs.major }} - minor: - description: Minor version number - value: ${{ steps.extract.outputs.minor }} - patch: - description: Patch version number - value: ${{ steps.extract.outputs.patch }} - snapshot: - description: "true if HEAD is not on a release tag, false if it is" - value: ${{ steps.extract.outputs.snapshot }} - version: - description: "Full version string, e.g. 2.0.67 or 2.0.67-SNAPSHOT" - value: ${{ steps.extract.outputs.version }} - -runs: - using: composite - steps: - - name: Extract version from nearest tag - id: extract - shell: bash - run: | - TAG_PATTERN="^v([0-9]+)\.([0-9]+)\.([0-9]+)$" - - # Check if HEAD itself carries a matching tag - HEAD_TAG=$(git tag --points-at HEAD | grep -E "$TAG_PATTERN" | head -1) - - if [[ -n "$HEAD_TAG" ]]; then - TAG="$HEAD_TAG" - SNAPSHOT="false" - else - # Find the nearest ancestor tag matching strict semver format - TAG=$(git describe --tags --abbrev=0 --match "v[0-9]*.[0-9]*.[0-9]*" 2>/dev/null) - - if [[ -z "$TAG" ]] || [[ ! "$TAG" =~ $TAG_PATTERN ]]; then - echo "ERROR: No tag matching v.. found in git history." >&2 - exit 1 - fi - SNAPSHOT="true" - fi - - # Parse the version components - [[ "$TAG" =~ $TAG_PATTERN ]] - MAJOR="${BASH_REMATCH[1]}" - MINOR="${BASH_REMATCH[2]}" - PATCH="${BASH_REMATCH[3]}" - - echo "Found tag: $TAG (snapshot=$SNAPSHOT)" - VERSION="${MAJOR}.${MINOR}.${PATCH}" - [[ "$SNAPSHOT" == "true" ]] && VERSION="${VERSION}-SNAPSHOT" - echo "major=$MAJOR" >> "$GITHUB_OUTPUT" - echo "minor=$MINOR" >> "$GITHUB_OUTPUT" - echo "patch=$PATCH" >> "$GITHUB_OUTPUT" - echo "snapshot=$SNAPSHOT" >> "$GITHUB_OUTPUT" - echo "version=$VERSION" >> "$GITHUB_OUTPUT" diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index d719077..a197779 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,16 +1,14 @@ name: Release -# Triggered by GitHub release events: -# - Creating a pre-release with tag vX.Y.Z → builds and stages artifacts to Maven Central -# (USER_MANAGED, pending). Review them at https://central.sonatype.com, then convert -# the pre-release to a full release when satisfied. -# - Publishing a full release → rebuilds and publishes artifacts to Maven Central immediately. +# Triggered when a GitHub release is published (released). +# Builds, signs, and publishes all artifacts to Maven Central automatically. +# The CLI fat jar is also uploaded to the GitHub release assets. # # The project version is derived from the git tag (e.g. v3.0.0 → 3.0.0) and applied to all # modules in-place via versions:set before building. No pom.xml version commits are needed. on: release: - types: [prereleased, released] + types: [released] env: java_version: '17' @@ -77,11 +75,7 @@ jobs: - name: Stage artifacts run: mvn deploy -Ppublication -Dprettier.skip=true -ntp - name: Deploy to Maven Central - # prereleased: USER_MANAGED — artifacts sit pending in the portal for review. - # released: AUTOMATIC — artifacts are published immediately after validation. - # jreleaser:deploy only handles Maven Central; GitHub release management is done by the GitHub UI. env: - JRELEASER_DEPLOY_MAVEN_MAVENCENTRAL_SONATYPE_PUBLISHING_TYPE: ${{ github.event.action == 'prereleased' && 'USER_MANAGED' || 'AUTOMATIC' }} JRELEASER_GPG_PASSPHRASE: ${{ env.MAVEN_GPG_PASSPHRASE }} JRELEASER_GPG_SECRET_KEY: ${{ env.MAVEN_GPG_PRIVATE_KEY }} run: mvn jreleaser:deploy -Djreleaser.output.directory=out -ntp diff --git a/.mvn/extensions.xml b/.mvn/extensions.xml deleted file mode 100644 index 76a9ecb..0000000 --- a/.mvn/extensions.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - me.qoomon - maven-git-versioning-extension - 9.11.0 - - diff --git a/.mvn/maven-git-versioning-extension.xml b/.mvn/maven-git-versioning-extension.xml deleted file mode 100644 index 7e2ce87..0000000 --- a/.mvn/maven-git-versioning-extension.xml +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - ${version} - - - - - ${describe.tag.version.major}.${describe.tag.version.minor}.${describe.tag.version.patch.next}-SNAPSHOT - - - - - ${describe.tag.version.major}.${describe.tag.version.minor}.${describe.tag.version.patch.next}-SNAPSHOT - - - diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/GbfsValidatorBuildInfo3.java b/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/GbfsValidatorBuildInfo3.java new file mode 100644 index 0000000..4c5d37b --- /dev/null +++ b/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/GbfsValidatorBuildInfo3.java @@ -0,0 +1,13 @@ +package org.entur.gbfs.validation; + +/** + * Build marker class — presence and BUILD_TAG value confirm which snapshot is in use. + * Check with: jar tf gbfs-validator-java-*.jar | grep BuildInfo + */ +public final class GbfsValidatorBuildInfo3 { + + public static final String BUILD_TAG = "jcpitre-2026-04-06"; + + private GbfsValidatorBuildInfo3() {} +} + From 7b2f4eac5301925c0010e63cbc9fd1383cdf2f2d Mon Sep 17 00:00:00 2001 From: jcpitre Date: Wed, 8 Apr 2026 16:02:08 -0400 Subject: [PATCH 19/25] Restore maven-git-versioning-extension and add placeholder version guard in release workflow --- .github/workflows/release.yml | 8 ++++++++ .gitignore | 3 ++- .mvn/extensions.xml | 10 ++++++++++ .mvn/maven-git-versioning-extension.xml | 23 +++++++++++++++++++++++ 4 files changed, 43 insertions(+), 1 deletion(-) create mode 100644 .mvn/extensions.xml create mode 100644 .mvn/maven-git-versioning-extension.xml diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index a197779..5710725 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -72,6 +72,14 @@ jobs: VERSION="${TAG#v}" echo "Setting version: $VERSION" mvn --batch-mode -ntp versions:set -DnewVersion="$VERSION" -DprocessAllModules=true -DgenerateBackupPoms=false + - name: Verify version is not placeholder + run: | + VERSION=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout) + if [[ "$VERSION" == *"placeholder"* || "$VERSION" == "0.0.0"* ]]; then + echo "ERROR: Version is still '$VERSION' — aborting release." + exit 1 + fi + echo "Version OK: $VERSION" - name: Stage artifacts run: mvn deploy -Ppublication -Dprettier.skip=true -ntp - name: Deploy to Maven Central diff --git a/.gitignore b/.gitignore index b6868e8..4677424 100644 --- a/.gitignore +++ b/.gitignore @@ -10,7 +10,8 @@ buildNumber.properties .mvn/timing.properties # https://github.com/takari/maven-wrapper#usage-without-binary-jar .mvn/wrapper/maven-wrapper.jar -# generated by maven-git-versioning-extension + +# Generated by maven-git-versioning-extension at build time — not to be committed .git-versioned-pom.xml .vscode diff --git a/.mvn/extensions.xml b/.mvn/extensions.xml new file mode 100644 index 0000000..76a9ecb --- /dev/null +++ b/.mvn/extensions.xml @@ -0,0 +1,10 @@ + + + + me.qoomon + maven-git-versioning-extension + 9.11.0 + + diff --git a/.mvn/maven-git-versioning-extension.xml b/.mvn/maven-git-versioning-extension.xml new file mode 100644 index 0000000..75295f6 --- /dev/null +++ b/.mvn/maven-git-versioning-extension.xml @@ -0,0 +1,23 @@ + + + + + + + ${version} + + + + + ${describe.tag.version.major}.${describe.tag.version.minor}.${describe.tag.version.patch.next}-SNAPSHOT + + + + + ${describe.tag.version.major}.${describe.tag.version.minor}.${describe.tag.version.patch.next}-${ref.name.slugified}-SNAPSHOT + + + From 846dbe8f4c522ac5939db8d074cf2fbf1db200b4 Mon Sep 17 00:00:00 2001 From: jcpitre Date: Wed, 8 Apr 2026 17:02:32 -0400 Subject: [PATCH 20/25] Removed slugified. --- .mvn/maven-git-versioning-extension.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.mvn/maven-git-versioning-extension.xml b/.mvn/maven-git-versioning-extension.xml index 75295f6..456c76f 100644 --- a/.mvn/maven-git-versioning-extension.xml +++ b/.mvn/maven-git-versioning-extension.xml @@ -17,7 +17,7 @@ - ${describe.tag.version.major}.${describe.tag.version.minor}.${describe.tag.version.patch.next}-${ref.name.slugified}-SNAPSHOT + ${describe.tag.version.major}.${describe.tag.version.minor}.${describe.tag.version.patch.next}-SNAPSHOT From c56a3c7a8d4fefa601a3509be23dcab4507017cb Mon Sep 17 00:00:00 2001 From: jcpitre Date: Wed, 8 Apr 2026 20:51:06 -0400 Subject: [PATCH 21/25] Replaced org.entur with org.mobilitydata in package names. --- gbfs-validator-java-api/pom.xml | 6 +- .../api/handler/LoaderConfiguration.java | 4 +- .../api/handler/LoaderProperties.java | 2 +- .../validator/api/handler/SecurityConfig.java | 2 +- .../handler/ValidateApiDelegateHandler.java | 64 +++++++++---------- .../api/handler/VersionProvider.java | 2 +- .../src/main/resources/application.properties | 2 +- .../api/ValidateIntegrationTest.java | 6 +- gbfs-validator-java-cli/pom.xml | 2 +- .../gbfs/validator/cli/AuthOptions.java | 2 +- .../gbfs/validator/cli/AuthType.java | 2 +- .../validator/cli/AuthenticationHandler.java | 10 +-- .../gbfs/validator/cli/GbfsValidatorCli.java | 20 +++--- .../gbfs/validator/cli/ReportWriter.java | 2 +- .../gbfs/validator/cli/VersionProvider.java | 2 +- .../cli/formatter/ConsoleReportFormatter.java | 14 ++-- .../cli/formatter/JsonReportFormatter.java | 6 +- .../cli/formatter/ReportFormatter.java | 6 +- .../main/resources/simplelogger.properties | 2 +- .../cli/GbfsValidatorCliIntegrationTest.java | 2 +- .../gbfs/validator/loader/LoadedFile.java | 2 +- .../gbfs/validator/loader/Loader.java | 10 +-- .../gbfs/validator/loader/LoaderError.java | 2 +- .../gbfs/validator/loader/auth/AuthType.java | 2 +- .../validator/loader/auth/Authentication.java | 2 +- .../gbfs/validator/loader/auth/BasicAuth.java | 2 +- .../loader/auth/BearerTokenAuth.java | 2 +- .../auth/OAuthClientCredentialsGrantAuth.java | 2 +- .../gbfs/validator/loader/LoaderTest.java | 8 +-- .../gbfs/validation/GbfsValidator.java | 6 +- .../validation/GbfsValidatorBuildInfo3.java | 2 +- .../gbfs/validation/GbfsValidatorFactory.java | 4 +- .../validation/model/FileValidationError.java | 2 +- .../model/FileValidationResult.java | 2 +- .../validation/model/ValidationResult.java | 2 +- .../ValidationResultComponentIdentity.java | 2 +- .../validation/model/ValidationSummary.java | 2 +- .../gbfs/validation/model/ValidatorError.java | 2 +- .../validation/validator/FileValidator.java | 10 +-- .../validator/GbfsJsonValidator.java | 16 ++--- .../validator/URIFormatValidator.java | 2 +- .../rules/CustomRuleSchemaPatcher.java | 2 +- ...eferenceToPricingPlansInVehicleStatus.java | 2 +- ...ReferenceToPricingPlansInVehicleTypes.java | 2 +- ...ReferenceToRegionInStationInformation.java | 2 +- .../rules/NoInvalidReferenceToStation.java | 2 +- ...eferenceToVehicleTypesInStationStatus.java | 2 +- ...rsInVehicleStatusForMotorizedVehicles.java | 2 +- ...dInVehicleStatusWhenVehicleTypesExist.java | 2 +- .../NoMissingStoreUriInSystemInformation.java | 2 +- ...eTypesAvailableWhenVehicleTypesExists.java | 2 +- .../validator/versions/AbstractVersion.java | 8 +-- .../validator/versions/Version.java | 2 +- .../validator/versions/Version10.java | 2 +- .../validator/versions/Version11.java | 2 +- .../validator/versions/Version20.java | 2 +- .../validator/versions/Version21.java | 18 +++--- .../validator/versions/Version22.java | 20 +++--- .../validator/versions/Version23.java | 22 +++---- .../validator/versions/Version30.java | 22 +++---- .../validator/versions/VersionFactory.java | 2 +- .../model/ValidationResultTest.java | 2 +- .../validator/GbfsJsonValidatorTest.java | 8 +-- 63 files changed, 186 insertions(+), 186 deletions(-) rename gbfs-validator-java-api/src/main/java/org/{entur => mobilitydata}/gbfs/validator/api/handler/LoaderConfiguration.java (92%) rename gbfs-validator-java-api/src/main/java/org/{entur => mobilitydata}/gbfs/validator/api/handler/LoaderProperties.java (98%) rename gbfs-validator-java-api/src/main/java/org/{entur => mobilitydata}/gbfs/validator/api/handler/SecurityConfig.java (98%) rename gbfs-validator-java-api/src/main/java/org/{entur => mobilitydata}/gbfs/validator/api/handler/ValidateApiDelegateHandler.java (82%) rename gbfs-validator-java-api/src/main/java/org/{entur => mobilitydata}/gbfs/validator/api/handler/VersionProvider.java (96%) rename gbfs-validator-java-api/src/test/java/org/{entur => mobilitydata}/gbfs/validator/api/ValidateIntegrationTest.java (97%) rename gbfs-validator-java-cli/src/main/java/org/{entur => mobilitydata}/gbfs/validator/cli/AuthOptions.java (96%) rename gbfs-validator-java-cli/src/main/java/org/{entur => mobilitydata}/gbfs/validator/cli/AuthType.java (54%) rename gbfs-validator-java-cli/src/main/java/org/{entur => mobilitydata}/gbfs/validator/cli/AuthenticationHandler.java (79%) rename gbfs-validator-java-cli/src/main/java/org/{entur => mobilitydata}/gbfs/validator/cli/GbfsValidatorCli.java (88%) rename gbfs-validator-java-cli/src/main/java/org/{entur => mobilitydata}/gbfs/validator/cli/ReportWriter.java (89%) rename gbfs-validator-java-cli/src/main/java/org/{entur => mobilitydata}/gbfs/validator/cli/VersionProvider.java (94%) rename gbfs-validator-java-cli/src/main/java/org/{entur => mobilitydata}/gbfs/validator/cli/formatter/ConsoleReportFormatter.java (90%) rename gbfs-validator-java-cli/src/main/java/org/{entur => mobilitydata}/gbfs/validator/cli/formatter/JsonReportFormatter.java (90%) rename gbfs-validator-java-cli/src/main/java/org/{entur => mobilitydata}/gbfs/validator/cli/formatter/ReportFormatter.java (72%) rename gbfs-validator-java-cli/src/test/java/org/{entur => mobilitydata}/gbfs/validator/cli/GbfsValidatorCliIntegrationTest.java (99%) rename gbfs-validator-java-loader/src/main/java/org/{entur => mobilitydata}/gbfs/validator/loader/LoadedFile.java (96%) rename gbfs-validator-java-loader/src/main/java/org/{entur => mobilitydata}/gbfs/validator/loader/Loader.java (97%) rename gbfs-validator-java-loader/src/main/java/org/{entur => mobilitydata}/gbfs/validator/loader/LoaderError.java (55%) rename gbfs-validator-java-loader/src/main/java/org/{entur => mobilitydata}/gbfs/validator/loader/auth/AuthType.java (94%) rename gbfs-validator-java-loader/src/main/java/org/{entur => mobilitydata}/gbfs/validator/loader/auth/Authentication.java (93%) rename gbfs-validator-java-loader/src/main/java/org/{entur => mobilitydata}/gbfs/validator/loader/auth/BasicAuth.java (95%) rename gbfs-validator-java-loader/src/main/java/org/{entur => mobilitydata}/gbfs/validator/loader/auth/BearerTokenAuth.java (94%) rename gbfs-validator-java-loader/src/main/java/org/{entur => mobilitydata}/gbfs/validator/loader/auth/OAuthClientCredentialsGrantAuth.java (96%) rename gbfs-validator-java-loader/src/test/java/org/{entur => mobilitydata}/gbfs/validator/loader/LoaderTest.java (97%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/GbfsValidator.java (88%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/GbfsValidatorBuildInfo3.java (88%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/GbfsValidatorFactory.java (89%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/model/FileValidationError.java (96%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/model/FileValidationResult.java (98%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/model/ValidationResult.java (96%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/model/ValidationResultComponentIdentity.java (95%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/model/ValidationSummary.java (97%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/model/ValidatorError.java (70%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/validator/FileValidator.java (92%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/validator/GbfsJsonValidator.java (95%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/validator/URIFormatValidator.java (96%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/validator/rules/CustomRuleSchemaPatcher.java (95%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/validator/rules/NoInvalidReferenceToPricingPlansInVehicleStatus.java (97%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/validator/rules/NoInvalidReferenceToPricingPlansInVehicleTypes.java (97%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/validator/rules/NoInvalidReferenceToRegionInStationInformation.java (97%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/validator/rules/NoInvalidReferenceToStation.java (97%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/validator/rules/NoInvalidReferenceToVehicleTypesInStationStatus.java (98%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/validator/rules/NoMissingCurrentRangeMetersInVehicleStatusForMotorizedVehicles.java (98%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/validator/rules/NoMissingOrInvalidVehicleTypeIdInVehicleStatusWhenVehicleTypesExist.java (97%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/validator/rules/NoMissingStoreUriInSystemInformation.java (98%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/validator/rules/NoMissingVehicleTypesAvailableWhenVehicleTypesExists.java (96%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/validator/versions/AbstractVersion.java (95%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/validator/versions/Version.java (97%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/validator/versions/Version10.java (95%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/validator/versions/Version11.java (95%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/validator/versions/Version20.java (95%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/validator/versions/Version21.java (72%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/validator/versions/Version22.java (70%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/validator/versions/Version23.java (69%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/validator/versions/Version30.java (69%) rename gbfs-validator-java/src/main/java/org/{entur => mobilitydata}/gbfs/validation/validator/versions/VersionFactory.java (95%) rename gbfs-validator-java/src/test/java/org/{entur => mobilitydata}/gbfs/validation/model/ValidationResultTest.java (97%) rename gbfs-validator-java/src/test/java/org/{entur => mobilitydata}/gbfs/validation/validator/GbfsJsonValidatorTest.java (98%) diff --git a/gbfs-validator-java-api/pom.xml b/gbfs-validator-java-api/pom.xml index eea2b1d..91353c3 100644 --- a/gbfs-validator-java-api/pom.xml +++ b/gbfs-validator-java-api/pom.xml @@ -308,9 +308,9 @@ ${project.basedir}/src/main/resources/public/openapi.yaml spring ${project.build.directory}/generated-sources/openapi - org.entur.gbfs.validator.api.gen - org.entur.gbfs.validator.api.model - org.entur.gbfs.validator.api.handler + org.mobilitydata.gbfs.validator.api.gen + org.mobilitydata.gbfs.validator.api.model + org.mobilitydata.gbfs.validator.api.handler false false ${project.basedir}/.openapi-generator-ignore diff --git a/gbfs-validator-java-api/src/main/java/org/entur/gbfs/validator/api/handler/LoaderConfiguration.java b/gbfs-validator-java-api/src/main/java/org/mobilitydata/gbfs/validator/api/handler/LoaderConfiguration.java similarity index 92% rename from gbfs-validator-java-api/src/main/java/org/entur/gbfs/validator/api/handler/LoaderConfiguration.java rename to gbfs-validator-java-api/src/main/java/org/mobilitydata/gbfs/validator/api/handler/LoaderConfiguration.java index 8506a0a..5f3a3b6 100644 --- a/gbfs-validator-java-api/src/main/java/org/entur/gbfs/validator/api/handler/LoaderConfiguration.java +++ b/gbfs-validator-java-api/src/main/java/org/mobilitydata/gbfs/validator/api/handler/LoaderConfiguration.java @@ -18,9 +18,9 @@ * */ -package org.entur.gbfs.validator.api.handler; +package org.mobilitydata.gbfs.validator.api.handler; -import org.entur.gbfs.validator.loader.Loader; +import org.mobilitydata.gbfs.validator.loader.Loader; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; diff --git a/gbfs-validator-java-api/src/main/java/org/entur/gbfs/validator/api/handler/LoaderProperties.java b/gbfs-validator-java-api/src/main/java/org/mobilitydata/gbfs/validator/api/handler/LoaderProperties.java similarity index 98% rename from gbfs-validator-java-api/src/main/java/org/entur/gbfs/validator/api/handler/LoaderProperties.java rename to gbfs-validator-java-api/src/main/java/org/mobilitydata/gbfs/validator/api/handler/LoaderProperties.java index 80cfcfb..9e6f48b 100644 --- a/gbfs-validator-java-api/src/main/java/org/entur/gbfs/validator/api/handler/LoaderProperties.java +++ b/gbfs-validator-java-api/src/main/java/org/mobilitydata/gbfs/validator/api/handler/LoaderProperties.java @@ -18,7 +18,7 @@ * */ -package org.entur.gbfs.validator.api.handler; +package org.mobilitydata.gbfs.validator.api.handler; import java.util.HashMap; import java.util.Map; diff --git a/gbfs-validator-java-api/src/main/java/org/entur/gbfs/validator/api/handler/SecurityConfig.java b/gbfs-validator-java-api/src/main/java/org/mobilitydata/gbfs/validator/api/handler/SecurityConfig.java similarity index 98% rename from gbfs-validator-java-api/src/main/java/org/entur/gbfs/validator/api/handler/SecurityConfig.java rename to gbfs-validator-java-api/src/main/java/org/mobilitydata/gbfs/validator/api/handler/SecurityConfig.java index 57b9dd3..80d4f80 100644 --- a/gbfs-validator-java-api/src/main/java/org/entur/gbfs/validator/api/handler/SecurityConfig.java +++ b/gbfs-validator-java-api/src/main/java/org/mobilitydata/gbfs/validator/api/handler/SecurityConfig.java @@ -18,7 +18,7 @@ * */ -package org.entur.gbfs.validator.api.handler; +package org.mobilitydata.gbfs.validator.api.handler; import java.util.Arrays; import java.util.List; diff --git a/gbfs-validator-java-api/src/main/java/org/entur/gbfs/validator/api/handler/ValidateApiDelegateHandler.java b/gbfs-validator-java-api/src/main/java/org/mobilitydata/gbfs/validator/api/handler/ValidateApiDelegateHandler.java similarity index 82% rename from gbfs-validator-java-api/src/main/java/org/entur/gbfs/validator/api/handler/ValidateApiDelegateHandler.java rename to gbfs-validator-java-api/src/main/java/org/mobilitydata/gbfs/validator/api/handler/ValidateApiDelegateHandler.java index 0b9838e..8a6fef4 100644 --- a/gbfs-validator-java-api/src/main/java/org/entur/gbfs/validator/api/handler/ValidateApiDelegateHandler.java +++ b/gbfs-validator-java-api/src/main/java/org/mobilitydata/gbfs/validator/api/handler/ValidateApiDelegateHandler.java @@ -18,7 +18,7 @@ * */ -package org.entur.gbfs.validator.api.handler; +package org.mobilitydata.gbfs.validator.api.handler; import com.google.common.collect.Multimap; import com.google.common.collect.MultimapBuilder; @@ -29,23 +29,23 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -import org.entur.gbfs.validation.GbfsValidator; -import org.entur.gbfs.validation.GbfsValidatorFactory; -import org.entur.gbfs.validation.model.FileValidationError; -import org.entur.gbfs.validation.model.FileValidationResult; -import org.entur.gbfs.validation.model.ValidationResult; -import org.entur.gbfs.validation.model.ValidatorError; -import org.entur.gbfs.validator.api.gen.ValidateApiDelegate; -import org.entur.gbfs.validator.api.model.FileError; -import org.entur.gbfs.validator.api.model.GbfsFile; -import org.entur.gbfs.validator.api.model.SystemError; -import org.entur.gbfs.validator.api.model.ValidatePostRequest; -import org.entur.gbfs.validator.api.model.ValidatePostRequestAuth; -import org.entur.gbfs.validator.api.model.ValidationResultSummary; -import org.entur.gbfs.validator.loader.LoadedFile; -import org.entur.gbfs.validator.loader.Loader; -import org.entur.gbfs.validator.loader.LoaderError; -import org.entur.gbfs.validator.loader.auth.Authentication; +import org.mobilitydata.gbfs.validation.GbfsValidator; +import org.mobilitydata.gbfs.validation.GbfsValidatorFactory; +import org.mobilitydata.gbfs.validation.model.FileValidationError; +import org.mobilitydata.gbfs.validation.model.FileValidationResult; +import org.mobilitydata.gbfs.validation.model.ValidationResult; +import org.mobilitydata.gbfs.validation.model.ValidatorError; +import org.mobilitydata.gbfs.validator.api.gen.ValidateApiDelegate; +import org.mobilitydata.gbfs.validator.api.model.FileError; +import org.mobilitydata.gbfs.validator.api.model.GbfsFile; +import org.mobilitydata.gbfs.validator.api.model.SystemError; +import org.mobilitydata.gbfs.validator.api.model.ValidatePostRequest; +import org.mobilitydata.gbfs.validator.api.model.ValidatePostRequestAuth; +import org.mobilitydata.gbfs.validator.api.model.ValidationResultSummary; +import org.mobilitydata.gbfs.validator.loader.LoadedFile; +import org.mobilitydata.gbfs.validator.loader.Loader; +import org.mobilitydata.gbfs.validator.loader.LoaderError; +import org.mobilitydata.gbfs.validator.loader.auth.Authentication; import org.openapitools.jackson.nullable.JsonNullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -102,7 +102,7 @@ public void destroy() { * @return validation results with file-level errors and system errors */ @Override - public ResponseEntity validatePost( + public ResponseEntity validatePost( ValidatePostRequest validatePostRequest ) { logger.debug( @@ -131,7 +131,7 @@ public ResponseEntity valid } GbfsValidator validator = GbfsValidatorFactory.getGbfsJsonValidator(); - List resultsPerLanguage = + List resultsPerLanguage = new ArrayList<>(); filesByLanguage @@ -185,7 +185,7 @@ private static Authentication getAuthentication( if ("basicAuth".equals(authType)) { if (apiAuth.getUsername() != null && apiAuth.getPassword() != null) { loaderAuth = - new org.entur.gbfs.validator.loader.auth.BasicAuth( + new org.mobilitydata.gbfs.validator.loader.auth.BasicAuth( apiAuth.getUsername(), apiAuth.getPassword() ); @@ -193,7 +193,7 @@ private static Authentication getAuthentication( } else if ("bearerToken".equals(authType)) { if (apiAuth.getToken() != null) { loaderAuth = - new org.entur.gbfs.validator.loader.auth.BearerTokenAuth( + new org.mobilitydata.gbfs.validator.loader.auth.BearerTokenAuth( apiAuth.getToken() ); } @@ -204,7 +204,7 @@ private static Authentication getAuthentication( apiAuth.getTokenUrl() != null ) { loaderAuth = - new org.entur.gbfs.validator.loader.auth.OAuthClientCredentialsGrantAuth( + new org.mobilitydata.gbfs.validator.loader.auth.OAuthClientCredentialsGrantAuth( apiAuth.getClientId(), apiAuth.getClientSecret(), apiAuth.getTokenUrl() @@ -215,12 +215,12 @@ private static Authentication getAuthentication( return loaderAuth; } - private org.entur.gbfs.validator.api.model.ValidationResult mergeValidationResults( - List results + private org.mobilitydata.gbfs.validator.api.model.ValidationResult mergeValidationResults( + List results ) { if (results.isEmpty()) { - org.entur.gbfs.validator.api.model.ValidationResult emptyApiResult = - new org.entur.gbfs.validator.api.model.ValidationResult(); + org.mobilitydata.gbfs.validator.api.model.ValidationResult emptyApiResult = + new org.mobilitydata.gbfs.validator.api.model.ValidationResult(); ValidationResultSummary emptySummary = new ValidationResultSummary(); emptySummary.setValidatorVersion(versionProvider.getVersion()); emptySummary.setFiles(new ArrayList<>()); @@ -228,8 +228,8 @@ private org.entur.gbfs.validator.api.model.ValidationResult mergeValidationResul return emptyApiResult; } - org.entur.gbfs.validator.api.model.ValidationResult mergedResult = - new org.entur.gbfs.validator.api.model.ValidationResult(); + org.mobilitydata.gbfs.validator.api.model.ValidationResult mergedResult = + new org.mobilitydata.gbfs.validator.api.model.ValidationResult(); ValidationResultSummary summary = new ValidationResultSummary(); summary.setValidatorVersion( results.get(0).getSummary().getValidatorVersion() @@ -249,7 +249,7 @@ private org.entur.gbfs.validator.api.model.ValidationResult mergeValidationResul return mergedResult; } - private org.entur.gbfs.validator.api.model.ValidationResult mapValidationResult( + private org.mobilitydata.gbfs.validator.api.model.ValidationResult mapValidationResult( ValidationResult internalValidationResult, List loadedFilesForLanguage, String language @@ -266,8 +266,8 @@ private org.entur.gbfs.validator.api.model.ValidationResult mapValidationResult( ) ); - org.entur.gbfs.validator.api.model.ValidationResult apiResult = - new org.entur.gbfs.validator.api.model.ValidationResult(); + org.mobilitydata.gbfs.validator.api.model.ValidationResult apiResult = + new org.mobilitydata.gbfs.validator.api.model.ValidationResult(); apiResult.setSummary(validationResultSummary); return apiResult; } diff --git a/gbfs-validator-java-api/src/main/java/org/entur/gbfs/validator/api/handler/VersionProvider.java b/gbfs-validator-java-api/src/main/java/org/mobilitydata/gbfs/validator/api/handler/VersionProvider.java similarity index 96% rename from gbfs-validator-java-api/src/main/java/org/entur/gbfs/validator/api/handler/VersionProvider.java rename to gbfs-validator-java-api/src/main/java/org/mobilitydata/gbfs/validator/api/handler/VersionProvider.java index 73c6935..c80df6b 100644 --- a/gbfs-validator-java-api/src/main/java/org/entur/gbfs/validator/api/handler/VersionProvider.java +++ b/gbfs-validator-java-api/src/main/java/org/mobilitydata/gbfs/validator/api/handler/VersionProvider.java @@ -18,7 +18,7 @@ * */ -package org.entur.gbfs.validator.api.handler; +package org.mobilitydata.gbfs.validator.api.handler; import org.springframework.boot.info.BuildProperties; import org.springframework.stereotype.Component; diff --git a/gbfs-validator-java-api/src/main/resources/application.properties b/gbfs-validator-java-api/src/main/resources/application.properties index 489dca6..cc9da0d 100644 --- a/gbfs-validator-java-api/src/main/resources/application.properties +++ b/gbfs-validator-java-api/src/main/resources/application.properties @@ -1,6 +1,6 @@ spring.application.name=gbfs-validator-java-api -logging.level.org.entur.gbfs.validator.api.handler.ValidateApiDelegateHandler=DEBUG +logging.level.org.mobilitydata.gbfs.validator.api.handler.ValidateApiDelegateHandler=DEBUG server.compression.enabled=true server.compression.min-response-size=1024 diff --git a/gbfs-validator-java-api/src/test/java/org/entur/gbfs/validator/api/ValidateIntegrationTest.java b/gbfs-validator-java-api/src/test/java/org/mobilitydata/gbfs/validator/api/ValidateIntegrationTest.java similarity index 97% rename from gbfs-validator-java-api/src/test/java/org/entur/gbfs/validator/api/ValidateIntegrationTest.java rename to gbfs-validator-java-api/src/test/java/org/mobilitydata/gbfs/validator/api/ValidateIntegrationTest.java index 9a0cbae..9683800 100644 --- a/gbfs-validator-java-api/src/test/java/org/entur/gbfs/validator/api/ValidateIntegrationTest.java +++ b/gbfs-validator-java-api/src/test/java/org/mobilitydata/gbfs/validator/api/ValidateIntegrationTest.java @@ -1,4 +1,4 @@ -package org.entur.gbfs.validator.api; +package org.mobilitydata.gbfs.validator.api; import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath; @@ -7,8 +7,8 @@ import com.fasterxml.jackson.databind.ObjectMapper; import java.nio.file.Files; import java.nio.file.Path; -import org.entur.gbfs.validator.api.handler.OpenApiGeneratorApplication; -import org.entur.gbfs.validator.api.model.*; +import org.mobilitydata.gbfs.validator.api.handler.OpenApiGeneratorApplication; +import org.mobilitydata.gbfs.validator.api.model.*; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.io.TempDir; diff --git a/gbfs-validator-java-cli/pom.xml b/gbfs-validator-java-cli/pom.xml index dbc13e7..9b9b374 100644 --- a/gbfs-validator-java-cli/pom.xml +++ b/gbfs-validator-java-cli/pom.xml @@ -133,7 +133,7 @@ false - org.entur.gbfs.validator.cli.GbfsValidatorCli + org.mobilitydata.gbfs.validator.cli.GbfsValidatorCli gbfs-validator-cli diff --git a/gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/AuthOptions.java b/gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/AuthOptions.java similarity index 96% rename from gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/AuthOptions.java rename to gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/AuthOptions.java index 0d52137..6a36f23 100644 --- a/gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/AuthOptions.java +++ b/gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/AuthOptions.java @@ -1,4 +1,4 @@ -package org.entur.gbfs.validator.cli; +package org.mobilitydata.gbfs.validator.cli; import picocli.CommandLine.ArgGroup; import picocli.CommandLine.Option; diff --git a/gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/AuthType.java b/gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/AuthType.java similarity index 54% rename from gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/AuthType.java rename to gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/AuthType.java index d514728..692d4d0 100644 --- a/gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/AuthType.java +++ b/gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/AuthType.java @@ -1,4 +1,4 @@ -package org.entur.gbfs.validator.cli; +package org.mobilitydata.gbfs.validator.cli; public enum AuthType { BASIC, diff --git a/gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/AuthenticationHandler.java b/gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/AuthenticationHandler.java similarity index 79% rename from gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/AuthenticationHandler.java rename to gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/AuthenticationHandler.java index 8861101..d25feb6 100644 --- a/gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/AuthenticationHandler.java +++ b/gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/AuthenticationHandler.java @@ -1,9 +1,9 @@ -package org.entur.gbfs.validator.cli; +package org.mobilitydata.gbfs.validator.cli; -import org.entur.gbfs.validator.loader.auth.Authentication; -import org.entur.gbfs.validator.loader.auth.BasicAuth; -import org.entur.gbfs.validator.loader.auth.BearerTokenAuth; -import org.entur.gbfs.validator.loader.auth.OAuthClientCredentialsGrantAuth; +import org.mobilitydata.gbfs.validator.loader.auth.Authentication; +import org.mobilitydata.gbfs.validator.loader.auth.BasicAuth; +import org.mobilitydata.gbfs.validator.loader.auth.BearerTokenAuth; +import org.mobilitydata.gbfs.validator.loader.auth.OAuthClientCredentialsGrantAuth; public class AuthenticationHandler { diff --git a/gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/GbfsValidatorCli.java b/gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/GbfsValidatorCli.java similarity index 88% rename from gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/GbfsValidatorCli.java rename to gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/GbfsValidatorCli.java index 9acf89c..222c379 100644 --- a/gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/GbfsValidatorCli.java +++ b/gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/GbfsValidatorCli.java @@ -1,4 +1,4 @@ -package org.entur.gbfs.validator.cli; +package org.mobilitydata.gbfs.validator.cli; import java.io.File; import java.io.IOException; @@ -7,15 +7,15 @@ import java.util.List; import java.util.Map; import java.util.concurrent.Callable; -import org.entur.gbfs.validation.GbfsValidator; -import org.entur.gbfs.validation.GbfsValidatorFactory; -import org.entur.gbfs.validation.model.ValidationResult; -import org.entur.gbfs.validator.cli.formatter.ConsoleReportFormatter; -import org.entur.gbfs.validator.cli.formatter.JsonReportFormatter; -import org.entur.gbfs.validator.cli.formatter.ReportFormatter; -import org.entur.gbfs.validator.loader.LoadedFile; -import org.entur.gbfs.validator.loader.Loader; -import org.entur.gbfs.validator.loader.auth.Authentication; +import org.mobilitydata.gbfs.validation.GbfsValidator; +import org.mobilitydata.gbfs.validation.GbfsValidatorFactory; +import org.mobilitydata.gbfs.validation.model.ValidationResult; +import org.mobilitydata.gbfs.validator.cli.formatter.ConsoleReportFormatter; +import org.mobilitydata.gbfs.validator.cli.formatter.JsonReportFormatter; +import org.mobilitydata.gbfs.validator.cli.formatter.ReportFormatter; +import org.mobilitydata.gbfs.validator.loader.LoadedFile; +import org.mobilitydata.gbfs.validator.loader.Loader; +import org.mobilitydata.gbfs.validator.loader.auth.Authentication; import picocli.CommandLine; import picocli.CommandLine.ArgGroup; import picocli.CommandLine.Command; diff --git a/gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/ReportWriter.java b/gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/ReportWriter.java similarity index 89% rename from gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/ReportWriter.java rename to gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/ReportWriter.java index 83cda9a..48060c8 100644 --- a/gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/ReportWriter.java +++ b/gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/ReportWriter.java @@ -1,4 +1,4 @@ -package org.entur.gbfs.validator.cli; +package org.mobilitydata.gbfs.validator.cli; import java.io.File; import java.io.IOException; diff --git a/gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/VersionProvider.java b/gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/VersionProvider.java similarity index 94% rename from gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/VersionProvider.java rename to gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/VersionProvider.java index 8f7505f..c690359 100644 --- a/gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/VersionProvider.java +++ b/gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/VersionProvider.java @@ -1,4 +1,4 @@ -package org.entur.gbfs.validator.cli; +package org.mobilitydata.gbfs.validator.cli; import java.io.IOException; import java.io.InputStream; diff --git a/gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/formatter/ConsoleReportFormatter.java b/gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/formatter/ConsoleReportFormatter.java similarity index 90% rename from gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/formatter/ConsoleReportFormatter.java rename to gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/formatter/ConsoleReportFormatter.java index d831588..d5549c2 100644 --- a/gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/formatter/ConsoleReportFormatter.java +++ b/gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/formatter/ConsoleReportFormatter.java @@ -1,12 +1,12 @@ -package org.entur.gbfs.validator.cli.formatter; +package org.mobilitydata.gbfs.validator.cli.formatter; import java.util.List; -import org.entur.gbfs.validation.model.FileValidationError; -import org.entur.gbfs.validation.model.FileValidationResult; -import org.entur.gbfs.validation.model.ValidationResult; -import org.entur.gbfs.validation.model.ValidatorError; -import org.entur.gbfs.validator.loader.LoadedFile; -import org.entur.gbfs.validator.loader.LoaderError; +import org.mobilitydata.gbfs.validation.model.FileValidationError; +import org.mobilitydata.gbfs.validation.model.FileValidationResult; +import org.mobilitydata.gbfs.validation.model.ValidationResult; +import org.mobilitydata.gbfs.validation.model.ValidatorError; +import org.mobilitydata.gbfs.validator.loader.LoadedFile; +import org.mobilitydata.gbfs.validator.loader.LoaderError; public class ConsoleReportFormatter implements ReportFormatter { diff --git a/gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/formatter/JsonReportFormatter.java b/gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/formatter/JsonReportFormatter.java similarity index 90% rename from gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/formatter/JsonReportFormatter.java rename to gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/formatter/JsonReportFormatter.java index f959cf1..7b6b6c7 100644 --- a/gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/formatter/JsonReportFormatter.java +++ b/gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/formatter/JsonReportFormatter.java @@ -1,4 +1,4 @@ -package org.entur.gbfs.validator.cli.formatter; +package org.mobilitydata.gbfs.validator.cli.formatter; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.SerializationFeature; @@ -6,8 +6,8 @@ import java.util.List; import java.util.Map; import java.util.stream.Collectors; -import org.entur.gbfs.validation.model.ValidationResult; -import org.entur.gbfs.validator.loader.LoadedFile; +import org.mobilitydata.gbfs.validation.model.ValidationResult; +import org.mobilitydata.gbfs.validator.loader.LoadedFile; public class JsonReportFormatter implements ReportFormatter { diff --git a/gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/formatter/ReportFormatter.java b/gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/formatter/ReportFormatter.java similarity index 72% rename from gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/formatter/ReportFormatter.java rename to gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/formatter/ReportFormatter.java index eab7ff5..f1270ce 100644 --- a/gbfs-validator-java-cli/src/main/java/org/entur/gbfs/validator/cli/formatter/ReportFormatter.java +++ b/gbfs-validator-java-cli/src/main/java/org/mobilitydata/gbfs/validator/cli/formatter/ReportFormatter.java @@ -1,8 +1,8 @@ -package org.entur.gbfs.validator.cli.formatter; +package org.mobilitydata.gbfs.validator.cli.formatter; import java.util.List; -import org.entur.gbfs.validation.model.ValidationResult; -import org.entur.gbfs.validator.loader.LoadedFile; +import org.mobilitydata.gbfs.validation.model.ValidationResult; +import org.mobilitydata.gbfs.validator.loader.LoadedFile; public interface ReportFormatter { /** diff --git a/gbfs-validator-java-cli/src/main/resources/simplelogger.properties b/gbfs-validator-java-cli/src/main/resources/simplelogger.properties index 3f399f1..e206ab2 100644 --- a/gbfs-validator-java-cli/src/main/resources/simplelogger.properties +++ b/gbfs-validator-java-cli/src/main/resources/simplelogger.properties @@ -1,6 +1,6 @@ # SLF4J SimpleLogger configuration for CLI org.slf4j.simpleLogger.defaultLogLevel=warn -org.slf4j.simpleLogger.log.org.entur.gbfs=info +org.slf4j.simpleLogger.log.org.mobilitydata.gbfs=info org.slf4j.simpleLogger.showDateTime=false org.slf4j.simpleLogger.showThreadName=false org.slf4j.simpleLogger.showLogName=false diff --git a/gbfs-validator-java-cli/src/test/java/org/entur/gbfs/validator/cli/GbfsValidatorCliIntegrationTest.java b/gbfs-validator-java-cli/src/test/java/org/mobilitydata/gbfs/validator/cli/GbfsValidatorCliIntegrationTest.java similarity index 99% rename from gbfs-validator-java-cli/src/test/java/org/entur/gbfs/validator/cli/GbfsValidatorCliIntegrationTest.java rename to gbfs-validator-java-cli/src/test/java/org/mobilitydata/gbfs/validator/cli/GbfsValidatorCliIntegrationTest.java index 3875035..3044e6f 100644 --- a/gbfs-validator-java-cli/src/test/java/org/entur/gbfs/validator/cli/GbfsValidatorCliIntegrationTest.java +++ b/gbfs-validator-java-cli/src/test/java/org/mobilitydata/gbfs/validator/cli/GbfsValidatorCliIntegrationTest.java @@ -1,4 +1,4 @@ -package org.entur.gbfs.validator.cli; +package org.mobilitydata.gbfs.validator.cli; import static org.junit.jupiter.api.Assertions.*; diff --git a/gbfs-validator-java-loader/src/main/java/org/entur/gbfs/validator/loader/LoadedFile.java b/gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/LoadedFile.java similarity index 96% rename from gbfs-validator-java-loader/src/main/java/org/entur/gbfs/validator/loader/LoadedFile.java rename to gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/LoadedFile.java index e84601a..f0a2d6f 100644 --- a/gbfs-validator-java-loader/src/main/java/org/entur/gbfs/validator/loader/LoadedFile.java +++ b/gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/LoadedFile.java @@ -18,7 +18,7 @@ * */ -package org.entur.gbfs.validator.loader; +package org.mobilitydata.gbfs.validator.loader; import java.io.InputStream; import java.util.ArrayList; diff --git a/gbfs-validator-java-loader/src/main/java/org/entur/gbfs/validator/loader/Loader.java b/gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/Loader.java similarity index 97% rename from gbfs-validator-java-loader/src/main/java/org/entur/gbfs/validator/loader/Loader.java rename to gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/Loader.java index 1a6133b..4383a97 100644 --- a/gbfs-validator-java-loader/src/main/java/org/entur/gbfs/validator/loader/Loader.java +++ b/gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/Loader.java @@ -18,7 +18,7 @@ * */ -package org.entur.gbfs.validator.loader; +package org.mobilitydata.gbfs.validator.loader; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; @@ -50,10 +50,10 @@ import org.apache.hc.core5.http.io.entity.EntityUtils; import org.apache.hc.core5.http.io.entity.StringEntity; import org.apache.hc.core5.util.Timeout; -import org.entur.gbfs.validator.loader.auth.Authentication; -import org.entur.gbfs.validator.loader.auth.BasicAuth; -import org.entur.gbfs.validator.loader.auth.BearerTokenAuth; -import org.entur.gbfs.validator.loader.auth.OAuthClientCredentialsGrantAuth; +import org.mobilitydata.gbfs.validator.loader.auth.Authentication; +import org.mobilitydata.gbfs.validator.loader.auth.BasicAuth; +import org.mobilitydata.gbfs.validator.loader.auth.BearerTokenAuth; +import org.mobilitydata.gbfs.validator.loader.auth.OAuthClientCredentialsGrantAuth; import org.json.JSONObject; import org.json.JSONTokener; diff --git a/gbfs-validator-java-loader/src/main/java/org/entur/gbfs/validator/loader/LoaderError.java b/gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/LoaderError.java similarity index 55% rename from gbfs-validator-java-loader/src/main/java/org/entur/gbfs/validator/loader/LoaderError.java rename to gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/LoaderError.java index e053b8e..8296254 100644 --- a/gbfs-validator-java-loader/src/main/java/org/entur/gbfs/validator/loader/LoaderError.java +++ b/gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/LoaderError.java @@ -1,3 +1,3 @@ -package org.entur.gbfs.validator.loader; +package org.mobilitydata.gbfs.validator.loader; public record LoaderError(String error, String message) {} diff --git a/gbfs-validator-java-loader/src/main/java/org/entur/gbfs/validator/loader/auth/AuthType.java b/gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/auth/AuthType.java similarity index 94% rename from gbfs-validator-java-loader/src/main/java/org/entur/gbfs/validator/loader/auth/AuthType.java rename to gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/auth/AuthType.java index fd6e1eb..bf4c685 100644 --- a/gbfs-validator-java-loader/src/main/java/org/entur/gbfs/validator/loader/auth/AuthType.java +++ b/gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/auth/AuthType.java @@ -18,7 +18,7 @@ * */ -package org.entur.gbfs.validator.loader.auth; +package org.mobilitydata.gbfs.validator.loader.auth; public enum AuthType { BASIC, diff --git a/gbfs-validator-java-loader/src/main/java/org/entur/gbfs/validator/loader/auth/Authentication.java b/gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/auth/Authentication.java similarity index 93% rename from gbfs-validator-java-loader/src/main/java/org/entur/gbfs/validator/loader/auth/Authentication.java rename to gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/auth/Authentication.java index 36740da..eee676b 100644 --- a/gbfs-validator-java-loader/src/main/java/org/entur/gbfs/validator/loader/auth/Authentication.java +++ b/gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/auth/Authentication.java @@ -18,6 +18,6 @@ * */ -package org.entur.gbfs.validator.loader.auth; +package org.mobilitydata.gbfs.validator.loader.auth; public interface Authentication {} diff --git a/gbfs-validator-java-loader/src/main/java/org/entur/gbfs/validator/loader/auth/BasicAuth.java b/gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/auth/BasicAuth.java similarity index 95% rename from gbfs-validator-java-loader/src/main/java/org/entur/gbfs/validator/loader/auth/BasicAuth.java rename to gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/auth/BasicAuth.java index cf76f85..66984a4 100644 --- a/gbfs-validator-java-loader/src/main/java/org/entur/gbfs/validator/loader/auth/BasicAuth.java +++ b/gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/auth/BasicAuth.java @@ -18,7 +18,7 @@ * */ -package org.entur.gbfs.validator.loader.auth; +package org.mobilitydata.gbfs.validator.loader.auth; public class BasicAuth implements Authentication { diff --git a/gbfs-validator-java-loader/src/main/java/org/entur/gbfs/validator/loader/auth/BearerTokenAuth.java b/gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/auth/BearerTokenAuth.java similarity index 94% rename from gbfs-validator-java-loader/src/main/java/org/entur/gbfs/validator/loader/auth/BearerTokenAuth.java rename to gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/auth/BearerTokenAuth.java index 7e9a431..f594727 100644 --- a/gbfs-validator-java-loader/src/main/java/org/entur/gbfs/validator/loader/auth/BearerTokenAuth.java +++ b/gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/auth/BearerTokenAuth.java @@ -18,7 +18,7 @@ * */ -package org.entur.gbfs.validator.loader.auth; +package org.mobilitydata.gbfs.validator.loader.auth; public class BearerTokenAuth implements Authentication { diff --git a/gbfs-validator-java-loader/src/main/java/org/entur/gbfs/validator/loader/auth/OAuthClientCredentialsGrantAuth.java b/gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/auth/OAuthClientCredentialsGrantAuth.java similarity index 96% rename from gbfs-validator-java-loader/src/main/java/org/entur/gbfs/validator/loader/auth/OAuthClientCredentialsGrantAuth.java rename to gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/auth/OAuthClientCredentialsGrantAuth.java index 1f5b96c..4b4f9f5 100644 --- a/gbfs-validator-java-loader/src/main/java/org/entur/gbfs/validator/loader/auth/OAuthClientCredentialsGrantAuth.java +++ b/gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/auth/OAuthClientCredentialsGrantAuth.java @@ -18,7 +18,7 @@ * */ -package org.entur.gbfs.validator.loader.auth; +package org.mobilitydata.gbfs.validator.loader.auth; public class OAuthClientCredentialsGrantAuth implements Authentication { diff --git a/gbfs-validator-java-loader/src/test/java/org/entur/gbfs/validator/loader/LoaderTest.java b/gbfs-validator-java-loader/src/test/java/org/mobilitydata/gbfs/validator/loader/LoaderTest.java similarity index 97% rename from gbfs-validator-java-loader/src/test/java/org/entur/gbfs/validator/loader/LoaderTest.java rename to gbfs-validator-java-loader/src/test/java/org/mobilitydata/gbfs/validator/loader/LoaderTest.java index 91bbd0a..efb7d52 100644 --- a/gbfs-validator-java-loader/src/test/java/org/entur/gbfs/validator/loader/LoaderTest.java +++ b/gbfs-validator-java-loader/src/test/java/org/mobilitydata/gbfs/validator/loader/LoaderTest.java @@ -1,4 +1,4 @@ -package org.entur.gbfs.validator.loader; +package org.mobilitydata.gbfs.validator.loader; import static com.github.tomakehurst.wiremock.client.WireMock.*; import static com.github.tomakehurst.wiremock.core.WireMockConfiguration.wireMockConfig; @@ -12,9 +12,9 @@ import java.util.Base64; import java.util.List; import org.apache.hc.core5.http.HttpHeaders; -import org.entur.gbfs.validator.loader.auth.BasicAuth; -import org.entur.gbfs.validator.loader.auth.BearerTokenAuth; -import org.entur.gbfs.validator.loader.auth.OAuthClientCredentialsGrantAuth; +import org.mobilitydata.gbfs.validator.loader.auth.BasicAuth; +import org.mobilitydata.gbfs.validator.loader.auth.BearerTokenAuth; +import org.mobilitydata.gbfs.validator.loader.auth.OAuthClientCredentialsGrantAuth; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/GbfsValidator.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/GbfsValidator.java similarity index 88% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/GbfsValidator.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/GbfsValidator.java index 52e9a9e..637f2b6 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/GbfsValidator.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/GbfsValidator.java @@ -16,12 +16,12 @@ * */ -package org.entur.gbfs.validation; +package org.mobilitydata.gbfs.validation; import java.io.InputStream; import java.util.Map; -import org.entur.gbfs.validation.model.FileValidationResult; -import org.entur.gbfs.validation.model.ValidationResult; +import org.mobilitydata.gbfs.validation.model.FileValidationResult; +import org.mobilitydata.gbfs.validation.model.ValidationResult; /** * Represents a validator of GBFS files diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/GbfsValidatorBuildInfo3.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/GbfsValidatorBuildInfo3.java similarity index 88% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/GbfsValidatorBuildInfo3.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/GbfsValidatorBuildInfo3.java index 4c5d37b..4bb9613 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/GbfsValidatorBuildInfo3.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/GbfsValidatorBuildInfo3.java @@ -1,4 +1,4 @@ -package org.entur.gbfs.validation; +package org.mobilitydata.gbfs.validation; /** * Build marker class — presence and BUILD_TAG value confirm which snapshot is in use. diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/GbfsValidatorFactory.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/GbfsValidatorFactory.java similarity index 89% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/GbfsValidatorFactory.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/GbfsValidatorFactory.java index a9a7b1f..d49f33c 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/GbfsValidatorFactory.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/GbfsValidatorFactory.java @@ -16,9 +16,9 @@ * */ -package org.entur.gbfs.validation; +package org.mobilitydata.gbfs.validation; -import org.entur.gbfs.validation.validator.GbfsJsonValidator; +import org.mobilitydata.gbfs.validation.validator.GbfsJsonValidator; /** * Main library entrypoint diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/model/FileValidationError.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/model/FileValidationError.java similarity index 96% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/model/FileValidationError.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/model/FileValidationError.java index fa32879..52311bb 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/model/FileValidationError.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/model/FileValidationError.java @@ -16,7 +16,7 @@ * */ -package org.entur.gbfs.validation.model; +package org.mobilitydata.gbfs.validation.model; import java.util.Objects; diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/model/FileValidationResult.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/model/FileValidationResult.java similarity index 98% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/model/FileValidationResult.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/model/FileValidationResult.java index c148e3a..4273ecf 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/model/FileValidationResult.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/model/FileValidationResult.java @@ -16,7 +16,7 @@ * */ -package org.entur.gbfs.validation.model; +package org.mobilitydata.gbfs.validation.model; import java.util.ArrayList; import java.util.List; diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/model/ValidationResult.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/model/ValidationResult.java similarity index 96% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/model/ValidationResult.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/model/ValidationResult.java index 745b741..aecf22e 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/model/ValidationResult.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/model/ValidationResult.java @@ -16,7 +16,7 @@ * */ -package org.entur.gbfs.validation.model; +package org.mobilitydata.gbfs.validation.model; import java.util.Map; diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/model/ValidationResultComponentIdentity.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/model/ValidationResultComponentIdentity.java similarity index 95% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/model/ValidationResultComponentIdentity.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/model/ValidationResultComponentIdentity.java index 1118fe2..be735de 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/model/ValidationResultComponentIdentity.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/model/ValidationResultComponentIdentity.java @@ -18,7 +18,7 @@ * */ -package org.entur.gbfs.validation.model; +package org.mobilitydata.gbfs.validation.model; public interface ValidationResultComponentIdentity { /** diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/model/ValidationSummary.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/model/ValidationSummary.java similarity index 97% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/model/ValidationSummary.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/model/ValidationSummary.java index 71e1b6d..5704053 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/model/ValidationSummary.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/model/ValidationSummary.java @@ -16,7 +16,7 @@ * */ -package org.entur.gbfs.validation.model; +package org.mobilitydata.gbfs.validation.model; import java.util.Objects; diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/model/ValidatorError.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/model/ValidatorError.java similarity index 70% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/model/ValidatorError.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/model/ValidatorError.java index 5cd865c..bb5e0ca 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/model/ValidatorError.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/model/ValidatorError.java @@ -1,4 +1,4 @@ -package org.entur.gbfs.validation.model; +package org.mobilitydata.gbfs.validation.model; public record ValidatorError(String error, String message) { // No additional body needed for a simple record diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/FileValidator.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/FileValidator.java similarity index 92% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/FileValidator.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/FileValidator.java index c83fb45..5af466e 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/FileValidator.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/FileValidator.java @@ -16,16 +16,16 @@ * */ -package org.entur.gbfs.validation.validator; +package org.mobilitydata.gbfs.validation.validator; import java.util.List; import java.util.Map; import java.util.Optional; import java.util.concurrent.ConcurrentHashMap; -import org.entur.gbfs.validation.model.FileValidationError; -import org.entur.gbfs.validation.model.FileValidationResult; -import org.entur.gbfs.validation.validator.versions.Version; -import org.entur.gbfs.validation.validator.versions.VersionFactory; +import org.mobilitydata.gbfs.validation.model.FileValidationError; +import org.mobilitydata.gbfs.validation.model.FileValidationResult; +import org.mobilitydata.gbfs.validation.validator.versions.Version; +import org.mobilitydata.gbfs.validation.validator.versions.VersionFactory; import org.everit.json.schema.ValidationException; import org.json.JSONObject; import org.slf4j.Logger; diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/GbfsJsonValidator.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/GbfsJsonValidator.java similarity index 95% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/GbfsJsonValidator.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/GbfsJsonValidator.java index 7637ae6..ff23baf 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/GbfsJsonValidator.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/GbfsJsonValidator.java @@ -16,7 +16,7 @@ * */ -package org.entur.gbfs.validation.validator; +package org.mobilitydata.gbfs.validation.validator; import java.io.BufferedReader; import java.io.IOException; @@ -33,13 +33,13 @@ import java.util.Set; import java.util.function.Predicate; import java.util.stream.Collectors; -import org.entur.gbfs.validation.GbfsValidator; -import org.entur.gbfs.validation.model.FileValidationResult; -import org.entur.gbfs.validation.model.ValidationResult; -import org.entur.gbfs.validation.model.ValidationSummary; -import org.entur.gbfs.validation.model.ValidatorError; // Changed to use model.SystemError -import org.entur.gbfs.validation.validator.versions.Version; -import org.entur.gbfs.validation.validator.versions.VersionFactory; +import org.mobilitydata.gbfs.validation.GbfsValidator; +import org.mobilitydata.gbfs.validation.model.FileValidationResult; +import org.mobilitydata.gbfs.validation.model.ValidationResult; +import org.mobilitydata.gbfs.validation.model.ValidationSummary; +import org.mobilitydata.gbfs.validation.model.ValidatorError; // Changed to use model.SystemError +import org.mobilitydata.gbfs.validation.validator.versions.Version; +import org.mobilitydata.gbfs.validation.validator.versions.VersionFactory; import org.json.JSONException; import org.json.JSONObject; import org.slf4j.Logger; diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/URIFormatValidator.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/URIFormatValidator.java similarity index 96% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/URIFormatValidator.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/URIFormatValidator.java index 9832906..c227283 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/URIFormatValidator.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/URIFormatValidator.java @@ -16,7 +16,7 @@ * */ -package org.entur.gbfs.validation.validator; +package org.mobilitydata.gbfs.validation.validator; import java.net.URI; import java.net.URISyntaxException; diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/CustomRuleSchemaPatcher.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/CustomRuleSchemaPatcher.java similarity index 95% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/CustomRuleSchemaPatcher.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/CustomRuleSchemaPatcher.java index 5f8c533..36abdc0 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/CustomRuleSchemaPatcher.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/CustomRuleSchemaPatcher.java @@ -18,7 +18,7 @@ * */ -package org.entur.gbfs.validation.validator.rules; +package org.mobilitydata.gbfs.validation.validator.rules; import com.jayway.jsonpath.DocumentContext; import java.util.Map; diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoInvalidReferenceToPricingPlansInVehicleStatus.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoInvalidReferenceToPricingPlansInVehicleStatus.java similarity index 97% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoInvalidReferenceToPricingPlansInVehicleStatus.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoInvalidReferenceToPricingPlansInVehicleStatus.java index 089a700..342763e 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoInvalidReferenceToPricingPlansInVehicleStatus.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoInvalidReferenceToPricingPlansInVehicleStatus.java @@ -18,7 +18,7 @@ * */ -package org.entur.gbfs.validation.validator.rules; +package org.mobilitydata.gbfs.validation.validator.rules; import com.jayway.jsonpath.DocumentContext; import com.jayway.jsonpath.JsonPath; diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoInvalidReferenceToPricingPlansInVehicleTypes.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoInvalidReferenceToPricingPlansInVehicleTypes.java similarity index 97% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoInvalidReferenceToPricingPlansInVehicleTypes.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoInvalidReferenceToPricingPlansInVehicleTypes.java index bc36834..f78f750 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoInvalidReferenceToPricingPlansInVehicleTypes.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoInvalidReferenceToPricingPlansInVehicleTypes.java @@ -18,7 +18,7 @@ * */ -package org.entur.gbfs.validation.validator.rules; +package org.mobilitydata.gbfs.validation.validator.rules; import com.jayway.jsonpath.DocumentContext; import com.jayway.jsonpath.JsonPath; diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoInvalidReferenceToRegionInStationInformation.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoInvalidReferenceToRegionInStationInformation.java similarity index 97% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoInvalidReferenceToRegionInStationInformation.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoInvalidReferenceToRegionInStationInformation.java index 038de97..1387387 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoInvalidReferenceToRegionInStationInformation.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoInvalidReferenceToRegionInStationInformation.java @@ -18,7 +18,7 @@ * */ -package org.entur.gbfs.validation.validator.rules; +package org.mobilitydata.gbfs.validation.validator.rules; import com.jayway.jsonpath.DocumentContext; import com.jayway.jsonpath.JsonPath; diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoInvalidReferenceToStation.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoInvalidReferenceToStation.java similarity index 97% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoInvalidReferenceToStation.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoInvalidReferenceToStation.java index eb2fe80..564d653 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoInvalidReferenceToStation.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoInvalidReferenceToStation.java @@ -18,7 +18,7 @@ * */ -package org.entur.gbfs.validation.validator.rules; +package org.mobilitydata.gbfs.validation.validator.rules; import com.jayway.jsonpath.DocumentContext; import com.jayway.jsonpath.JsonPath; diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoInvalidReferenceToVehicleTypesInStationStatus.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoInvalidReferenceToVehicleTypesInStationStatus.java similarity index 98% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoInvalidReferenceToVehicleTypesInStationStatus.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoInvalidReferenceToVehicleTypesInStationStatus.java index d66c847..4f09e76 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoInvalidReferenceToVehicleTypesInStationStatus.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoInvalidReferenceToVehicleTypesInStationStatus.java @@ -18,7 +18,7 @@ * */ -package org.entur.gbfs.validation.validator.rules; +package org.mobilitydata.gbfs.validation.validator.rules; import com.jayway.jsonpath.DocumentContext; import com.jayway.jsonpath.JsonPath; diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoMissingCurrentRangeMetersInVehicleStatusForMotorizedVehicles.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoMissingCurrentRangeMetersInVehicleStatusForMotorizedVehicles.java similarity index 98% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoMissingCurrentRangeMetersInVehicleStatusForMotorizedVehicles.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoMissingCurrentRangeMetersInVehicleStatusForMotorizedVehicles.java index 38b41b2..8ced430 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoMissingCurrentRangeMetersInVehicleStatusForMotorizedVehicles.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoMissingCurrentRangeMetersInVehicleStatusForMotorizedVehicles.java @@ -18,7 +18,7 @@ * */ -package org.entur.gbfs.validation.validator.rules; +package org.mobilitydata.gbfs.validation.validator.rules; import static com.jayway.jsonpath.Criteria.where; diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoMissingOrInvalidVehicleTypeIdInVehicleStatusWhenVehicleTypesExist.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoMissingOrInvalidVehicleTypeIdInVehicleStatusWhenVehicleTypesExist.java similarity index 97% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoMissingOrInvalidVehicleTypeIdInVehicleStatusWhenVehicleTypesExist.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoMissingOrInvalidVehicleTypeIdInVehicleStatusWhenVehicleTypesExist.java index 1b55a8f..cf8885f 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoMissingOrInvalidVehicleTypeIdInVehicleStatusWhenVehicleTypesExist.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoMissingOrInvalidVehicleTypeIdInVehicleStatusWhenVehicleTypesExist.java @@ -18,7 +18,7 @@ * */ -package org.entur.gbfs.validation.validator.rules; +package org.mobilitydata.gbfs.validation.validator.rules; import com.jayway.jsonpath.DocumentContext; import com.jayway.jsonpath.JsonPath; diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoMissingStoreUriInSystemInformation.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoMissingStoreUriInSystemInformation.java similarity index 98% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoMissingStoreUriInSystemInformation.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoMissingStoreUriInSystemInformation.java index 7b496ae..a4dc19e 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoMissingStoreUriInSystemInformation.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoMissingStoreUriInSystemInformation.java @@ -18,7 +18,7 @@ * */ -package org.entur.gbfs.validation.validator.rules; +package org.mobilitydata.gbfs.validation.validator.rules; import com.jayway.jsonpath.DocumentContext; import com.jayway.jsonpath.JsonPath; diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoMissingVehicleTypesAvailableWhenVehicleTypesExists.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoMissingVehicleTypesAvailableWhenVehicleTypesExists.java similarity index 96% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoMissingVehicleTypesAvailableWhenVehicleTypesExists.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoMissingVehicleTypesAvailableWhenVehicleTypesExists.java index 0630807..a88880d 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/rules/NoMissingVehicleTypesAvailableWhenVehicleTypesExists.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/rules/NoMissingVehicleTypesAvailableWhenVehicleTypesExists.java @@ -18,7 +18,7 @@ * */ -package org.entur.gbfs.validation.validator.rules; +package org.mobilitydata.gbfs.validation.validator.rules; import com.jayway.jsonpath.DocumentContext; import java.util.Map; diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/AbstractVersion.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/AbstractVersion.java similarity index 95% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/AbstractVersion.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/AbstractVersion.java index ec0c370..e17a5c5 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/AbstractVersion.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/AbstractVersion.java @@ -16,7 +16,7 @@ * */ -package org.entur.gbfs.validation.validator.versions; +package org.mobilitydata.gbfs.validation.validator.versions; import com.jayway.jsonpath.Configuration; import com.jayway.jsonpath.JsonPath; @@ -33,9 +33,9 @@ import java.util.Optional; import java.util.Set; import java.util.concurrent.ConcurrentHashMap; -import org.entur.gbfs.validation.validator.FileValidator; -import org.entur.gbfs.validation.validator.URIFormatValidator; -import org.entur.gbfs.validation.validator.rules.CustomRuleSchemaPatcher; +import org.mobilitydata.gbfs.validation.validator.FileValidator; +import org.mobilitydata.gbfs.validation.validator.URIFormatValidator; +import org.mobilitydata.gbfs.validation.validator.rules.CustomRuleSchemaPatcher; import org.everit.json.schema.Schema; import org.everit.json.schema.ValidationException; import org.everit.json.schema.loader.SchemaLoader; diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/Version.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/Version.java similarity index 97% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/Version.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/Version.java index 1a85c7b..85bde10 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/Version.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/Version.java @@ -16,7 +16,7 @@ * */ -package org.entur.gbfs.validation.validator.versions; +package org.mobilitydata.gbfs.validation.validator.versions; import java.util.List; import java.util.Map; diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/Version10.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/Version10.java similarity index 95% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/Version10.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/Version10.java index 84e0535..52a8ac8 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/Version10.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/Version10.java @@ -16,7 +16,7 @@ * */ -package org.entur.gbfs.validation.validator.versions; +package org.mobilitydata.gbfs.validation.validator.versions; import java.util.Arrays; import java.util.List; diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/Version11.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/Version11.java similarity index 95% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/Version11.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/Version11.java index 51c750e..dd39d75 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/Version11.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/Version11.java @@ -16,7 +16,7 @@ * */ -package org.entur.gbfs.validation.validator.versions; +package org.mobilitydata.gbfs.validation.validator.versions; import java.util.Arrays; import java.util.List; diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/Version20.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/Version20.java similarity index 95% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/Version20.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/Version20.java index 8ce0fe5..c9ba72b 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/Version20.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/Version20.java @@ -16,7 +16,7 @@ * */ -package org.entur.gbfs.validation.validator.versions; +package org.mobilitydata.gbfs.validation.validator.versions; import java.util.Arrays; import java.util.List; diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/Version21.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/Version21.java similarity index 72% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/Version21.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/Version21.java index 5926673..f9b7309 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/Version21.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/Version21.java @@ -16,19 +16,19 @@ * */ -package org.entur.gbfs.validation.validator.versions; +package org.mobilitydata.gbfs.validation.validator.versions; import java.util.Arrays; import java.util.List; import java.util.Map; -import org.entur.gbfs.validation.validator.rules.CustomRuleSchemaPatcher; -import org.entur.gbfs.validation.validator.rules.NoInvalidReferenceToRegionInStationInformation; -import org.entur.gbfs.validation.validator.rules.NoInvalidReferenceToStation; -import org.entur.gbfs.validation.validator.rules.NoInvalidReferenceToVehicleTypesInStationStatus; -import org.entur.gbfs.validation.validator.rules.NoMissingCurrentRangeMetersInVehicleStatusForMotorizedVehicles; -import org.entur.gbfs.validation.validator.rules.NoMissingOrInvalidVehicleTypeIdInVehicleStatusWhenVehicleTypesExist; -import org.entur.gbfs.validation.validator.rules.NoMissingStoreUriInSystemInformation; -import org.entur.gbfs.validation.validator.rules.NoMissingVehicleTypesAvailableWhenVehicleTypesExists; +import org.mobilitydata.gbfs.validation.validator.rules.CustomRuleSchemaPatcher; +import org.mobilitydata.gbfs.validation.validator.rules.NoInvalidReferenceToRegionInStationInformation; +import org.mobilitydata.gbfs.validation.validator.rules.NoInvalidReferenceToStation; +import org.mobilitydata.gbfs.validation.validator.rules.NoInvalidReferenceToVehicleTypesInStationStatus; +import org.mobilitydata.gbfs.validation.validator.rules.NoMissingCurrentRangeMetersInVehicleStatusForMotorizedVehicles; +import org.mobilitydata.gbfs.validation.validator.rules.NoMissingOrInvalidVehicleTypeIdInVehicleStatusWhenVehicleTypesExist; +import org.mobilitydata.gbfs.validation.validator.rules.NoMissingStoreUriInSystemInformation; +import org.mobilitydata.gbfs.validation.validator.rules.NoMissingVehicleTypesAvailableWhenVehicleTypesExists; public class Version21 extends AbstractVersion { diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/Version22.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/Version22.java similarity index 70% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/Version22.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/Version22.java index f5ae4d0..9c89ded 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/Version22.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/Version22.java @@ -16,20 +16,20 @@ * */ -package org.entur.gbfs.validation.validator.versions; +package org.mobilitydata.gbfs.validation.validator.versions; import java.util.Arrays; import java.util.List; import java.util.Map; -import org.entur.gbfs.validation.validator.rules.CustomRuleSchemaPatcher; -import org.entur.gbfs.validation.validator.rules.NoInvalidReferenceToPricingPlansInVehicleStatus; -import org.entur.gbfs.validation.validator.rules.NoInvalidReferenceToRegionInStationInformation; -import org.entur.gbfs.validation.validator.rules.NoInvalidReferenceToStation; -import org.entur.gbfs.validation.validator.rules.NoInvalidReferenceToVehicleTypesInStationStatus; -import org.entur.gbfs.validation.validator.rules.NoMissingCurrentRangeMetersInVehicleStatusForMotorizedVehicles; -import org.entur.gbfs.validation.validator.rules.NoMissingOrInvalidVehicleTypeIdInVehicleStatusWhenVehicleTypesExist; -import org.entur.gbfs.validation.validator.rules.NoMissingStoreUriInSystemInformation; -import org.entur.gbfs.validation.validator.rules.NoMissingVehicleTypesAvailableWhenVehicleTypesExists; +import org.mobilitydata.gbfs.validation.validator.rules.CustomRuleSchemaPatcher; +import org.mobilitydata.gbfs.validation.validator.rules.NoInvalidReferenceToPricingPlansInVehicleStatus; +import org.mobilitydata.gbfs.validation.validator.rules.NoInvalidReferenceToRegionInStationInformation; +import org.mobilitydata.gbfs.validation.validator.rules.NoInvalidReferenceToStation; +import org.mobilitydata.gbfs.validation.validator.rules.NoInvalidReferenceToVehicleTypesInStationStatus; +import org.mobilitydata.gbfs.validation.validator.rules.NoMissingCurrentRangeMetersInVehicleStatusForMotorizedVehicles; +import org.mobilitydata.gbfs.validation.validator.rules.NoMissingOrInvalidVehicleTypeIdInVehicleStatusWhenVehicleTypesExist; +import org.mobilitydata.gbfs.validation.validator.rules.NoMissingStoreUriInSystemInformation; +import org.mobilitydata.gbfs.validation.validator.rules.NoMissingVehicleTypesAvailableWhenVehicleTypesExists; public class Version22 extends AbstractVersion { diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/Version23.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/Version23.java similarity index 69% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/Version23.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/Version23.java index 9e78b1d..8a56182 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/Version23.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/Version23.java @@ -16,21 +16,21 @@ * */ -package org.entur.gbfs.validation.validator.versions; +package org.mobilitydata.gbfs.validation.validator.versions; import java.util.Arrays; import java.util.List; import java.util.Map; -import org.entur.gbfs.validation.validator.rules.CustomRuleSchemaPatcher; -import org.entur.gbfs.validation.validator.rules.NoInvalidReferenceToPricingPlansInVehicleStatus; -import org.entur.gbfs.validation.validator.rules.NoInvalidReferenceToPricingPlansInVehicleTypes; -import org.entur.gbfs.validation.validator.rules.NoInvalidReferenceToRegionInStationInformation; -import org.entur.gbfs.validation.validator.rules.NoInvalidReferenceToStation; -import org.entur.gbfs.validation.validator.rules.NoInvalidReferenceToVehicleTypesInStationStatus; -import org.entur.gbfs.validation.validator.rules.NoMissingCurrentRangeMetersInVehicleStatusForMotorizedVehicles; -import org.entur.gbfs.validation.validator.rules.NoMissingOrInvalidVehicleTypeIdInVehicleStatusWhenVehicleTypesExist; -import org.entur.gbfs.validation.validator.rules.NoMissingStoreUriInSystemInformation; -import org.entur.gbfs.validation.validator.rules.NoMissingVehicleTypesAvailableWhenVehicleTypesExists; +import org.mobilitydata.gbfs.validation.validator.rules.CustomRuleSchemaPatcher; +import org.mobilitydata.gbfs.validation.validator.rules.NoInvalidReferenceToPricingPlansInVehicleStatus; +import org.mobilitydata.gbfs.validation.validator.rules.NoInvalidReferenceToPricingPlansInVehicleTypes; +import org.mobilitydata.gbfs.validation.validator.rules.NoInvalidReferenceToRegionInStationInformation; +import org.mobilitydata.gbfs.validation.validator.rules.NoInvalidReferenceToStation; +import org.mobilitydata.gbfs.validation.validator.rules.NoInvalidReferenceToVehicleTypesInStationStatus; +import org.mobilitydata.gbfs.validation.validator.rules.NoMissingCurrentRangeMetersInVehicleStatusForMotorizedVehicles; +import org.mobilitydata.gbfs.validation.validator.rules.NoMissingOrInvalidVehicleTypeIdInVehicleStatusWhenVehicleTypesExist; +import org.mobilitydata.gbfs.validation.validator.rules.NoMissingStoreUriInSystemInformation; +import org.mobilitydata.gbfs.validation.validator.rules.NoMissingVehicleTypesAvailableWhenVehicleTypesExists; public class Version23 extends AbstractVersion { diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/Version30.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/Version30.java similarity index 69% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/Version30.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/Version30.java index f4d0c78..2363611 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/Version30.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/Version30.java @@ -16,21 +16,21 @@ * */ -package org.entur.gbfs.validation.validator.versions; +package org.mobilitydata.gbfs.validation.validator.versions; import java.util.Arrays; import java.util.List; import java.util.Map; -import org.entur.gbfs.validation.validator.rules.CustomRuleSchemaPatcher; -import org.entur.gbfs.validation.validator.rules.NoInvalidReferenceToPricingPlansInVehicleStatus; -import org.entur.gbfs.validation.validator.rules.NoInvalidReferenceToPricingPlansInVehicleTypes; -import org.entur.gbfs.validation.validator.rules.NoInvalidReferenceToRegionInStationInformation; -import org.entur.gbfs.validation.validator.rules.NoInvalidReferenceToStation; -import org.entur.gbfs.validation.validator.rules.NoInvalidReferenceToVehicleTypesInStationStatus; -import org.entur.gbfs.validation.validator.rules.NoMissingCurrentRangeMetersInVehicleStatusForMotorizedVehicles; -import org.entur.gbfs.validation.validator.rules.NoMissingOrInvalidVehicleTypeIdInVehicleStatusWhenVehicleTypesExist; -import org.entur.gbfs.validation.validator.rules.NoMissingStoreUriInSystemInformation; -import org.entur.gbfs.validation.validator.rules.NoMissingVehicleTypesAvailableWhenVehicleTypesExists; +import org.mobilitydata.gbfs.validation.validator.rules.CustomRuleSchemaPatcher; +import org.mobilitydata.gbfs.validation.validator.rules.NoInvalidReferenceToPricingPlansInVehicleStatus; +import org.mobilitydata.gbfs.validation.validator.rules.NoInvalidReferenceToPricingPlansInVehicleTypes; +import org.mobilitydata.gbfs.validation.validator.rules.NoInvalidReferenceToRegionInStationInformation; +import org.mobilitydata.gbfs.validation.validator.rules.NoInvalidReferenceToStation; +import org.mobilitydata.gbfs.validation.validator.rules.NoInvalidReferenceToVehicleTypesInStationStatus; +import org.mobilitydata.gbfs.validation.validator.rules.NoMissingCurrentRangeMetersInVehicleStatusForMotorizedVehicles; +import org.mobilitydata.gbfs.validation.validator.rules.NoMissingOrInvalidVehicleTypeIdInVehicleStatusWhenVehicleTypesExist; +import org.mobilitydata.gbfs.validation.validator.rules.NoMissingStoreUriInSystemInformation; +import org.mobilitydata.gbfs.validation.validator.rules.NoMissingVehicleTypesAvailableWhenVehicleTypesExists; public class Version30 extends AbstractVersion { diff --git a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/VersionFactory.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/VersionFactory.java similarity index 95% rename from gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/VersionFactory.java rename to gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/VersionFactory.java index 61e5b94..4bfcc2d 100644 --- a/gbfs-validator-java/src/main/java/org/entur/gbfs/validation/validator/versions/VersionFactory.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/VersionFactory.java @@ -16,7 +16,7 @@ * */ -package org.entur.gbfs.validation.validator.versions; +package org.mobilitydata.gbfs.validation.validator.versions; public class VersionFactory { diff --git a/gbfs-validator-java/src/test/java/org/entur/gbfs/validation/model/ValidationResultTest.java b/gbfs-validator-java/src/test/java/org/mobilitydata/gbfs/validation/model/ValidationResultTest.java similarity index 97% rename from gbfs-validator-java/src/test/java/org/entur/gbfs/validation/model/ValidationResultTest.java rename to gbfs-validator-java/src/test/java/org/mobilitydata/gbfs/validation/model/ValidationResultTest.java index 9d247c8..a3ebcb9 100644 --- a/gbfs-validator-java/src/test/java/org/entur/gbfs/validation/model/ValidationResultTest.java +++ b/gbfs-validator-java/src/test/java/org/mobilitydata/gbfs/validation/model/ValidationResultTest.java @@ -18,7 +18,7 @@ * */ -package org.entur.gbfs.validation.model; +package org.mobilitydata.gbfs.validation.model; import java.util.List; import java.util.Map; diff --git a/gbfs-validator-java/src/test/java/org/entur/gbfs/validation/validator/GbfsJsonValidatorTest.java b/gbfs-validator-java/src/test/java/org/mobilitydata/gbfs/validation/validator/GbfsJsonValidatorTest.java similarity index 98% rename from gbfs-validator-java/src/test/java/org/entur/gbfs/validation/validator/GbfsJsonValidatorTest.java rename to gbfs-validator-java/src/test/java/org/mobilitydata/gbfs/validation/validator/GbfsJsonValidatorTest.java index 4666865..bd49e90 100644 --- a/gbfs-validator-java/src/test/java/org/entur/gbfs/validation/validator/GbfsJsonValidatorTest.java +++ b/gbfs-validator-java/src/test/java/org/mobilitydata/gbfs/validation/validator/GbfsJsonValidatorTest.java @@ -16,7 +16,7 @@ * */ -package org.entur.gbfs.validation.validator; +package org.mobilitydata.gbfs.validation.validator; import static org.junit.jupiter.api.Assertions.*; import static org.mockito.Mockito.mock; @@ -28,9 +28,9 @@ import java.nio.charset.StandardCharsets; import java.util.HashMap; import java.util.Map; -import org.entur.gbfs.validation.model.FileValidationResult; -import org.entur.gbfs.validation.model.ValidationResult; -import org.entur.gbfs.validation.model.ValidatorError; +import org.mobilitydata.gbfs.validation.model.FileValidationResult; +import org.mobilitydata.gbfs.validation.model.ValidationResult; +import org.mobilitydata.gbfs.validation.model.ValidatorError; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; import org.mockito.Mockito; From ba56d9c8107b9a3b79ba03d23e3d12323960af31 Mon Sep 17 00:00:00 2001 From: jcpitre Date: Wed, 8 Apr 2026 21:47:27 -0400 Subject: [PATCH 22/25] Changed to upload the cli to the release before publishing. --- .github/workflows/release.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 5710725..b2729ce 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -82,11 +82,6 @@ jobs: echo "Version OK: $VERSION" - name: Stage artifacts run: mvn deploy -Ppublication -Dprettier.skip=true -ntp - - name: Deploy to Maven Central - env: - JRELEASER_GPG_PASSPHRASE: ${{ env.MAVEN_GPG_PASSPHRASE }} - JRELEASER_GPG_SECRET_KEY: ${{ env.MAVEN_GPG_PRIVATE_KEY }} - run: mvn jreleaser:deploy -Djreleaser.output.directory=out -ntp - name: Upload CLI fat jar to GitHub release run: | gh release upload "${{ github.event.release.tag_name }}" \ @@ -94,6 +89,11 @@ jobs: --clobber env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: Deploy to Maven Central + env: + JRELEASER_GPG_PASSPHRASE: ${{ env.MAVEN_GPG_PASSPHRASE }} + JRELEASER_GPG_SECRET_KEY: ${{ env.MAVEN_GPG_PRIVATE_KEY }} + run: mvn jreleaser:deploy -Djreleaser.output.directory=out -ntp - name: Upload JReleaser output if: always() uses: actions/upload-artifact@v4 From 8f64393ccfc449545e6d3355a2541effcf77adac Mon Sep 17 00:00:00 2001 From: jcpitre Date: Wed, 8 Apr 2026 22:44:32 -0400 Subject: [PATCH 23/25] Made sure the upload is only done at the root module. --- .github/workflows/release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index b2729ce..4a4e3a8 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -93,7 +93,7 @@ jobs: env: JRELEASER_GPG_PASSPHRASE: ${{ env.MAVEN_GPG_PASSPHRASE }} JRELEASER_GPG_SECRET_KEY: ${{ env.MAVEN_GPG_PRIVATE_KEY }} - run: mvn jreleaser:deploy -Djreleaser.output.directory=out -ntp + run: mvn jreleaser:deploy -Djreleaser.output.directory=out -ntp -N - name: Upload JReleaser output if: always() uses: actions/upload-artifact@v4 From 0df50553e6b6097bc5e1e793546ac417d2816a69 Mon Sep 17 00:00:00 2001 From: jcpitre Date: Thu, 9 Apr 2026 09:30:01 -0400 Subject: [PATCH 24/25] Ran mvn prettier. --- .../gbfs/validator/api/ValidateIntegrationTest.java | 4 ++-- .../mobilitydata/gbfs/validator/loader/Loader.java | 4 ++-- .../gbfs/validator/loader/LoaderTest.java | 6 +++--- .../gbfs/validation/GbfsValidatorBuildInfo3.java | 13 ------------- .../gbfs/validation/validator/FileValidator.java | 4 ++-- .../validation/validator/GbfsJsonValidator.java | 4 ++-- .../validator/versions/AbstractVersion.java | 6 +++--- .../validation/validator/GbfsJsonValidatorTest.java | 4 ++-- 8 files changed, 16 insertions(+), 29 deletions(-) delete mode 100644 gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/GbfsValidatorBuildInfo3.java diff --git a/gbfs-validator-java-api/src/test/java/org/mobilitydata/gbfs/validator/api/ValidateIntegrationTest.java b/gbfs-validator-java-api/src/test/java/org/mobilitydata/gbfs/validator/api/ValidateIntegrationTest.java index 9683800..c38d1a0 100644 --- a/gbfs-validator-java-api/src/test/java/org/mobilitydata/gbfs/validator/api/ValidateIntegrationTest.java +++ b/gbfs-validator-java-api/src/test/java/org/mobilitydata/gbfs/validator/api/ValidateIntegrationTest.java @@ -7,11 +7,11 @@ import com.fasterxml.jackson.databind.ObjectMapper; import java.nio.file.Files; import java.nio.file.Path; -import org.mobilitydata.gbfs.validator.api.handler.OpenApiGeneratorApplication; -import org.mobilitydata.gbfs.validator.api.model.*; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.io.TempDir; +import org.mobilitydata.gbfs.validator.api.handler.OpenApiGeneratorApplication; +import org.mobilitydata.gbfs.validator.api.model.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc; import org.springframework.boot.test.context.SpringBootTest; diff --git a/gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/Loader.java b/gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/Loader.java index 4383a97..e030282 100644 --- a/gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/Loader.java +++ b/gbfs-validator-java-loader/src/main/java/org/mobilitydata/gbfs/validator/loader/Loader.java @@ -50,12 +50,12 @@ import org.apache.hc.core5.http.io.entity.EntityUtils; import org.apache.hc.core5.http.io.entity.StringEntity; import org.apache.hc.core5.util.Timeout; +import org.json.JSONObject; +import org.json.JSONTokener; import org.mobilitydata.gbfs.validator.loader.auth.Authentication; import org.mobilitydata.gbfs.validator.loader.auth.BasicAuth; import org.mobilitydata.gbfs.validator.loader.auth.BearerTokenAuth; import org.mobilitydata.gbfs.validator.loader.auth.OAuthClientCredentialsGrantAuth; -import org.json.JSONObject; -import org.json.JSONTokener; /** * Loads GBFS (General Bikeshare Feed Specification) files from HTTP/HTTPS URLs or local file system. diff --git a/gbfs-validator-java-loader/src/test/java/org/mobilitydata/gbfs/validator/loader/LoaderTest.java b/gbfs-validator-java-loader/src/test/java/org/mobilitydata/gbfs/validator/loader/LoaderTest.java index efb7d52..f81e39b 100644 --- a/gbfs-validator-java-loader/src/test/java/org/mobilitydata/gbfs/validator/loader/LoaderTest.java +++ b/gbfs-validator-java-loader/src/test/java/org/mobilitydata/gbfs/validator/loader/LoaderTest.java @@ -12,13 +12,13 @@ import java.util.Base64; import java.util.List; import org.apache.hc.core5.http.HttpHeaders; -import org.mobilitydata.gbfs.validator.loader.auth.BasicAuth; -import org.mobilitydata.gbfs.validator.loader.auth.BearerTokenAuth; -import org.mobilitydata.gbfs.validator.loader.auth.OAuthClientCredentialsGrantAuth; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; +import org.mobilitydata.gbfs.validator.loader.auth.BasicAuth; +import org.mobilitydata.gbfs.validator.loader.auth.BearerTokenAuth; +import org.mobilitydata.gbfs.validator.loader.auth.OAuthClientCredentialsGrantAuth; import org.mockito.junit.jupiter.MockitoExtension; @ExtendWith(MockitoExtension.class) diff --git a/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/GbfsValidatorBuildInfo3.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/GbfsValidatorBuildInfo3.java deleted file mode 100644 index 4bb9613..0000000 --- a/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/GbfsValidatorBuildInfo3.java +++ /dev/null @@ -1,13 +0,0 @@ -package org.mobilitydata.gbfs.validation; - -/** - * Build marker class — presence and BUILD_TAG value confirm which snapshot is in use. - * Check with: jar tf gbfs-validator-java-*.jar | grep BuildInfo - */ -public final class GbfsValidatorBuildInfo3 { - - public static final String BUILD_TAG = "jcpitre-2026-04-06"; - - private GbfsValidatorBuildInfo3() {} -} - diff --git a/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/FileValidator.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/FileValidator.java index 5af466e..9609872 100644 --- a/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/FileValidator.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/FileValidator.java @@ -22,12 +22,12 @@ import java.util.Map; import java.util.Optional; import java.util.concurrent.ConcurrentHashMap; +import org.everit.json.schema.ValidationException; +import org.json.JSONObject; import org.mobilitydata.gbfs.validation.model.FileValidationError; import org.mobilitydata.gbfs.validation.model.FileValidationResult; import org.mobilitydata.gbfs.validation.validator.versions.Version; import org.mobilitydata.gbfs.validation.validator.versions.VersionFactory; -import org.everit.json.schema.ValidationException; -import org.json.JSONObject; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/GbfsJsonValidator.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/GbfsJsonValidator.java index ff23baf..18a83be 100644 --- a/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/GbfsJsonValidator.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/GbfsJsonValidator.java @@ -33,6 +33,8 @@ import java.util.Set; import java.util.function.Predicate; import java.util.stream.Collectors; +import org.json.JSONException; +import org.json.JSONObject; import org.mobilitydata.gbfs.validation.GbfsValidator; import org.mobilitydata.gbfs.validation.model.FileValidationResult; import org.mobilitydata.gbfs.validation.model.ValidationResult; @@ -40,8 +42,6 @@ import org.mobilitydata.gbfs.validation.model.ValidatorError; // Changed to use model.SystemError import org.mobilitydata.gbfs.validation.validator.versions.Version; import org.mobilitydata.gbfs.validation.validator.versions.VersionFactory; -import org.json.JSONException; -import org.json.JSONObject; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/AbstractVersion.java b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/AbstractVersion.java index e17a5c5..a2aeabe 100644 --- a/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/AbstractVersion.java +++ b/gbfs-validator-java/src/main/java/org/mobilitydata/gbfs/validation/validator/versions/AbstractVersion.java @@ -33,14 +33,14 @@ import java.util.Optional; import java.util.Set; import java.util.concurrent.ConcurrentHashMap; -import org.mobilitydata.gbfs.validation.validator.FileValidator; -import org.mobilitydata.gbfs.validation.validator.URIFormatValidator; -import org.mobilitydata.gbfs.validation.validator.rules.CustomRuleSchemaPatcher; import org.everit.json.schema.Schema; import org.everit.json.schema.ValidationException; import org.everit.json.schema.loader.SchemaLoader; import org.json.JSONObject; import org.json.JSONTokener; +import org.mobilitydata.gbfs.validation.validator.FileValidator; +import org.mobilitydata.gbfs.validation.validator.URIFormatValidator; +import org.mobilitydata.gbfs.validation.validator.rules.CustomRuleSchemaPatcher; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/gbfs-validator-java/src/test/java/org/mobilitydata/gbfs/validation/validator/GbfsJsonValidatorTest.java b/gbfs-validator-java/src/test/java/org/mobilitydata/gbfs/validation/validator/GbfsJsonValidatorTest.java index bd49e90..8da1d96 100644 --- a/gbfs-validator-java/src/test/java/org/mobilitydata/gbfs/validation/validator/GbfsJsonValidatorTest.java +++ b/gbfs-validator-java/src/test/java/org/mobilitydata/gbfs/validation/validator/GbfsJsonValidatorTest.java @@ -28,11 +28,11 @@ import java.nio.charset.StandardCharsets; import java.util.HashMap; import java.util.Map; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; import org.mobilitydata.gbfs.validation.model.FileValidationResult; import org.mobilitydata.gbfs.validation.model.ValidationResult; import org.mobilitydata.gbfs.validation.model.ValidatorError; -import org.junit.jupiter.api.Assertions; -import org.junit.jupiter.api.Test; import org.mockito.Mockito; class GbfsJsonValidatorTest { From d1bbcc229afc336e55754adc687966307b48ae17 Mon Sep 17 00:00:00 2001 From: jcpitre Date: Thu, 9 Apr 2026 10:07:54 -0400 Subject: [PATCH 25/25] Minor corrections. --- .github/workflows/deploy-snapshot.yml | 5 +++-- gbfs-validator-java/pom.xml | 1 - 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/deploy-snapshot.yml b/.github/workflows/deploy-snapshot.yml index 30a3cdc..8204521 100644 --- a/.github/workflows/deploy-snapshot.yml +++ b/.github/workflows/deploy-snapshot.yml @@ -8,7 +8,6 @@ on: push: branches: - master - - 187-create-mobilitydata-maven-packages # TEMPORARY: remove after testing workflow_dispatch: # Manual trigger env: @@ -70,7 +69,9 @@ jobs: env: JRELEASER_GPG_PASSPHRASE: ${{ env.MAVEN_GPG_PASSPHRASE }} JRELEASER_GPG_SECRET_KEY: ${{ env.MAVEN_GPG_PRIVATE_KEY }} - run: mvn jreleaser:deploy -Djreleaser.output.directory=out -ntp + # -N (non-recursive): run JReleaser only at the root so it uploads a single bundle. + # Without it, JReleaser runs once per module and the second run fails with "already deployed". + run: mvn jreleaser:deploy -Djreleaser.output.directory=out -ntp -N - name: Upload JReleaser output if: always() uses: actions/upload-artifact@v4 diff --git a/gbfs-validator-java/pom.xml b/gbfs-validator-java/pom.xml index a8673f7..c91a6aa 100644 --- a/gbfs-validator-java/pom.xml +++ b/gbfs-validator-java/pom.xml @@ -9,7 +9,6 @@ gbfs-validator-java - 0.0.0-placeholder jar gbfs-validator-java