Skip to content

Conversation

@tiulpin
Copy link
Member

@tiulpin tiulpin commented Jan 15, 2026

No description provided.

Update Kotlin version to support Java 25.
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request adds a Maven plugin for Qodana, enabling Maven projects to run Qodana static code analysis. The implementation includes the plugin source code, tests, documentation, and CI/CD workflows for building and publishing the plugin.

Changes:

  • Added Maven plugin implementation with scan goal to run Qodana analysis
  • Added unit and integration tests for the Maven plugin
  • Added GitHub Actions workflows for testing and releasing the Maven plugin
  • Updated Kotlin version from 1.8.10 to 2.3.0 across the project

Reviewed changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
maven/src/main/kotlin/org/jetbrains/qodana/maven/QodanaScanMojo.kt Implements the main Maven plugin mojo for running Qodana scans
maven/src/main/kotlin/org/jetbrains/qodana/maven/QodanaMavenConstants.kt Defines constants for Maven plugin environment variables
maven/src/test/kotlin/org/jetbrains/qodana/maven/QodanaScanMojoTest.kt Unit tests for the Maven plugin
maven/src/test/kotlin/org/jetbrains/qodana/maven/QodanaScanMojoIntegrationTest.kt Integration tests for the Maven plugin with critical package and path issues
maven/pom.xml Maven project configuration with dependencies, build plugins, and release profile
maven/.gitignore Git ignore configuration for Maven build artifacts
MAVEN.md Documentation for using the Qodana Maven plugin
.github/workflows/maven.yml CI workflow for testing Maven plugin across multiple platforms
.github/workflows/release.yml Release workflow updated to publish Maven plugin to Maven Central
gradle/libs.versions.toml Updated Kotlin and Dokka versions for Gradle builds

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@github-actions
Copy link

github-actions bot commented Jan 15, 2026

Qodana for JVM

It seems all right 👌

No new problems were found according to the checks applied

💡 Qodana analysis was run in the pull request mode: only the changed files were checked
☁️ View the detailed Qodana report

Detected 191 dependencies

Third-party software list

This page lists the third-party software dependencies used in qodana

Dependency Version Licenses
@actions/artifact 2.3.2 MIT
@actions/cache 4.1.0 MIT
@actions/core 1.11.1 MIT
@actions/exec 1.1.1 MIT
@actions/github 5.1.1 MIT
@actions/github 6.0.1 MIT
@actions/glob 0.1.2 MIT
@actions/http-client 2.2.1 MIT
@actions/io 1.1.3 MIT
@actions/tool-cache 2.0.2 MIT
@azure/abort-controller 1.1.0 MIT
@azure/abort-controller 2.1.2 MIT
@azure/core-auth 1.7.2 MIT
@azure/core-util 1.9.0 MIT
@azure/ms-rest-js 2.7.0 MIT
@azure/storage-blob 12.17.0 MIT
@fastify/busboy 2.1.1 MIT
@gitbeaker/core 43.7.0 MIT
@gitbeaker/requester-utils 43.7.0 MIT
@gitbeaker/rest 43.7.0 MIT
@isaacs/fs-minipass 4.0.1 ISC
@octokit/auth-token 2.5.0 MIT
@octokit/core 3.6.0 MIT
@octokit/core 5.2.0 MIT
@octokit/core 7.0.6 MIT
@octokit/endpoint 6.0.12 MIT
@octokit/endpoint 9.0.6 MIT
@octokit/graphql 4.8.0 MIT
@octokit/openapi-types 12.11.0 MIT
@octokit/openapi-types 20.0.0 MIT
@octokit/openapi-types 27.0.0 MIT
@octokit/openapi-webhooks-types 12.0.3 MIT
@octokit/plugin-paginate-rest 14.0.0 MIT
@octokit/plugin-paginate-rest 2.21.3 MIT
@octokit/plugin-paginate-rest 9.2.2 MIT
@octokit/plugin-request-log 1.0.4 MIT
@octokit/plugin-request-log 6.0.0 MIT
@octokit/plugin-rest-endpoint-methods 10.4.1 MIT
@octokit/plugin-rest-endpoint-methods 17.0.0 MIT
@octokit/plugin-rest-endpoint-methods 5.16.2 MIT
@octokit/plugin-retry 3.0.9 MIT
@octokit/request-error 2.1.0 MIT
@octokit/request-error 5.1.1 MIT
@octokit/request-error 7.0.0 MIT
@octokit/request 5.6.3 MIT
@octokit/request 8.4.1 MIT
@octokit/rest 22.0.1 MIT
@octokit/types 12.6.0 MIT
@octokit/types 13.10.0 MIT
@octokit/types 14.1.0 MIT
@octokit/types 16.0.0 MIT
@octokit/types 6.41.0 MIT
@octokit/webhooks-methods 6.0.0 MIT
@octokit/webhooks 14.1.3 MIT
@protobuf-ts/plugin-framework 2.9.4 Apache-2.0
BSD-3-Clause
@protobuf-ts/plugin 2.9.4 Apache-2.0
@protobuf-ts/protoc 2.9.4 Apache-2.0
@protobuf-ts/runtime-rpc 2.11.1 Apache-2.0
@protobuf-ts/runtime 2.11.1 Apache-2.0
BSD-3-Clause
@qodana/action 1.0.0 Apache-2.0
@qodana/ci-common 1.0.0 Apache-2.0
@qodana/gitlab 1.0.0 Apache-2.0
@qodana/vsts 1.0.0 Apache-2.0
@types/adm-zip 0.5.7 MIT
@types/node 16.11.68 MIT
@types/node 24.9.2 MIT
@types/sarif 2.1.7 MIT
@types/semver 5.5.0 MIT
@types/uuid 3.4.13 MIT
abort-controller 3.0.0 MIT
adm-zip 0.5.16 MIT
archiver-utils 5.0.2 MIT
archiver 7.0.1 MIT
argparse 1.0.10 MIT
async 3.2.5 MIT
asynckit 0.4.0 MIT
axios 1.13.1 MIT
azure-devops-node-api 15.1.1 MIT
azure-pipelines-task-lib 4.17.3 MIT
azure-pipelines-task-lib 5.2.1 MIT
azure-pipelines-tasks-utility-common 3.265.0 MIT
azure-pipelines-tool-lib 2.0.10 MIT
b4a 1.6.6 Apache-2.0
balanced-match 1.0.2 MIT
bare-events 2.2.2 Apache-2.0
before-after-hook 2.2.3 Apache-2.0
binary 0.3.0 MIT
bottleneck 2.19.5 MIT
brace-expansion 1.1.12 MIT
brace-expansion 2.0.2 MIT
buffer-crc32 1.0.0 MIT
buffers 0.1.1 MIT
call-bind-apply-helpers 1.0.2 MIT
chainsaw 0.1.0 MIT
chownr 3.0.0 BlueOak-1.0.0
combined-stream 1.0.8 MIT
compress-commons 6.0.2 MIT
core-util-is 1.0.3 MIT
crc-32 1.2.2 Apache-2.0
crc32-stream 6.0.0 MIT
delayed-stream 1.0.0 MIT
deprecation 2.3.1 ISC
des.js 1.1.0 MIT
dunder-proto 1.0.1 MIT
es-define-property 1.0.1 MIT
es-errors 1.3.0 MIT
es-object-atoms 1.1.1 MIT
es-set-tostringtag 2.1.0 MIT
esprima 4.0.1 BSD-2-Clause
event-target-shim 5.0.1 MIT
fast-fifo 1.3.2 MIT
follow-redirects 1.15.6 MIT
form-data 2.5.1 MIT
form-data 4.0.4 MIT
function-bind 1.1.2 MIT
get-intrinsic 1.3.0 MIT
get-proto 1.0.1 MIT
gopd 1.2.0 MIT
has-symbols 1.1.0 MIT
has-tostringtag 1.0.2 MIT
hasown 2.0.2 MIT
immediate 3.0.6 MIT
inherits 2.0.4 ISC
is-plain-object 5.0.0 MIT
is-stream 2.0.1 MIT
isarray 1.0.0 MIT
js-md4 0.3.2 MIT
js-yaml 3.13.1 MIT
jszip 3.10.1 GPL-3.0-or-later
MIT
jwt-decode 3.1.2 MIT
lie 3.3.0 MIT
math-intrinsics 1.1.0 MIT
mime-db 1.52.0 MIT
mime-types 2.1.35 MIT
minimatch 3.0.5 ISC
minimatch 3.1.2 ISC
minimatch 5.1.6 ISC
minimist 1.2.8 MIT
minipass 7.1.2 ISC
minizlib 3.1.0 MIT
mkdirp 0.5.6 MIT
node-fetch 2.7.0 MIT
nodejs-file-downloader 4.12.1 ISC
normalize-path 3.0.0 MIT
once 1.4.0 ISC
pako 1.0.11 MIT
Zlib
picomatch-browser 2.2.6 MIT
process-nextick-args 2.0.1 MIT
proxy-from-env 1.1.0 MIT
q 1.5.1 MIT
qs 6.14.0 BSD-3-Clause
queue-tick 1.0.1 MIT
rate-limiter-flexible 8.1.0 ISC
readable-stream 2.3.8 MIT
readable-stream 4.5.2 MIT
readdir-glob 1.1.3 Apache-2.0
safe-buffer 5.1.2 MIT
sax 1.3.0 ISC
semver-compare 1.0.0 MIT
semver 5.7.2 ISC
semver 6.3.1 ISC
setimmediate 1.0.5 MIT
shelljs 0.8.5 BSD-3-Clause
sprintf-js 1.0.3 BSD-3-Clause
streamx 2.16.1 MIT
string_decoder 1.1.1 MIT
tar-stream 3.1.7 MIT
tar 7.5.2 BlueOak-1.0.0
tr46 0.0.3 MIT
traverse 0.3.9 MIT
tslib 1.14.1 0BSD
tslib 2.8.1 0BSD
tunnel 0.0.6 MIT
typed-rest-client 1.8.11 MIT
typed-rest-client 2.1.0 MIT
typescript 3.9.10 Apache-2.0
underscore 1.13.6 MIT
undici-types 7.16.0 MIT
undici 5.29.0 MIT
universal-user-agent 6.0.1 ISC
unzip-stream 0.3.4 MIT
util-deprecate 1.0.2 MIT
uuid 3.4.0 MIT
uuid 8.3.2 MIT
webidl-conversions 3.0.1 BSD-2-Clause
whatwg-url 5.0.0 MIT
xcase 2.0.1 MIT
xml2js 0.5.0 MIT
xmlbuilder 11.0.1 MIT
yallist 5.0.0 BlueOak-1.0.0
zip-stream 6.0.1 MIT
Contact Qodana team

Contact us at [email protected]

@tiulpin tiulpin marked this pull request as ready for review January 16, 2026 14:38
@tiulpin tiulpin requested a review from a team as a code owner January 16, 2026 14:38
Add Maven plugin (io.github.qodana:qodana-maven-plugin) that mirrors
the functionality of the existing Gradle plugin:

- qodana:scan goal to run Qodana analysis
- Automatic CLI download with checksum verification
- Cross-platform support (Windows, macOS, Linux)
- Configurable via pom.xml or command line properties

Includes:
- Unit and integration tests
- CI workflow for testing on all platforms
- Release workflow for Maven Central publishing
- Documentation (MAVEN.md)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants