Skip to content

Releases: Accenture/MethodAtlas

MethodAtlas 3.3.0

20 May 16:32
release@3.3.0
32eb185

Choose a tag to compare

Changelog

All notable changes to MethodAtlas are documented in this file.
The format follows Keep a Changelog
and this project adheres to Semantic Versioning.

[3.3.0] — 2026-05-20

Bug Fixes

  • Replace parser-tree visitors with token-stream scanners
  • Use BufferedTokenStream for fill()/get()/size() access
  • Reorder lexer rules so single-char whitespace is skipped
  • Satisfy PMD complexity and StringBuilder size warnings
  • Add /* default */ marker to package-private unquote helper
  • Correct java pluginId mapping and reduce saveAllChanges NPath

Features

  • Add SAP ABAP and COBOL test discovery modules
  • Scope source write-back to Java/C# with explicit diagnostics

MethodAtlas 3.2.0

19 May 20:40
release@3.2.0
0325fc0

Choose a tag to compare

Changelog

All notable changes to MethodAtlas are documented in this file.
The format follows Keep a Changelog
and this project adheres to Semantic Versioning.

[3.2.0] — 2026-05-19

Bug Fixes

  • Resolve build warnings and add Python script integrity check
  • Resolve PMD and Javadoc warnings in PowerShell plugin
  • Resolve SpotBugs and PMD warnings in Python plugin
  • Replace volatile boolean errors with AtomicBoolean
  • Replace @value with @code for non-constant DEFAULT_POOL_SIZE

Documentation

  • Document Go, Python, and PowerShell discovery plugins in MkDocs
  • Add Go, Python, and PowerShell to hero and feature list
  • Add parser-internals reference page and fix C# tag-reading docs

Features

  • Add Go, Python, and PowerShell test discovery modules

Refactoring

  • Replace regex parsers with professional AST/ANTLR4 implementations

MethodAtlas 3.1.1

19 May 13:18
release@3.1.1
c9c8743

Choose a tag to compare

Changelog

All notable changes to MethodAtlas are documented in this file.
The format follows Keep a Changelog
and this project adheres to Semantic Versioning.

[3.1.1] — 2026-05-19

Bug Fixes

  • Incorrect link to repository
  • Gui chapter moved to another section
  • Repair scheduled PIT and SpotBugs failures introduced in ac9b4c4
  • Resolve PMD violations and Eclipse Buildship CycloneDX conflict
  • Repair Eclipse Buildship CycloneDX Gradle 9 incompatibility
  • Extend CycloneDX pre-realization fix to root project
  • Remove redundant @SuppressWarnings(unchecked) from updateOverrideYaml

Features

  • Complete PDF handbook

MethodAtlas 3.1.0

02 May 23:35
74d304f

Choose a tag to compare

Changelog

All notable changes to MethodAtlas are documented in this file.
The format follows Keep a Changelog
and this project adheres to Semantic Versioning.

[3.1.0] — 2026-05-02

Bug Fixes

  • Resolve Eclipse Java Problem warnings (serialVersionUID, unused imports/fields)
  • Add jackson-dataformat-yaml compile dependency for AuditWriter
  • Editor pane vertical space and YAML compile dependency
  • Suppress getActiveProfile() from JSON; rename dist scripts to methodatlas-gui
  • 1-arg AiSuggestionEngineImpl constructor must call 1-arg factory
  • Replace fileMode with filePermissions for Gradle 9 compat; add OSS governance files
  • Widen visibility of root-package types for command subpackage
  • Resolve all PMD violations across main, dotnet, and gui modules
  • Fix six residual GUI violations and allow commented empty catches
  • Unexpected end tag in javadoc
  • Generate CycloneDX SBOM from root direct task

Build

  • Centralise PMD config in root subprojects block

Features

  • Add desktop GUI module (Swing + FlatLaf + RSyntaxTextArea)
  • AI progress panel, rate-limit notification, per-plugin file masks
  • Staged save workflow, audit trail, AI profiles, and UX improvements
  • Enforce 10% min width for scan pane; tag editor takes natural height
  • Merge CLI and GUI into one distribution; drop dead code in TagEditorPanel

Refactoring

  • Split MethodAtlasApp into command-handler classes

MethodAtlas 3.0.3

30 Apr 16:15
release@3.0.3
4ffc92f

Choose a tag to compare

Changelog

All notable changes to MethodAtlas are documented in this file.
The format follows Keep a Changelog
and this project adheres to Semantic Versioning.

[3.0.3] — 2026-04-30

Documentation

  • Correct Java-only language claims across documentation

MethodAtlas 3.0.2

30 Apr 15:41
release@3.0.2
5ea37f1

Choose a tag to compare

Changelog

All notable changes to MethodAtlas are documented in this file.
The format follows Keep a Changelog
and this project adheres to Semantic Versioning.

[3.0.2] — 2026-04-30

Bug Fixes

  • Replace placeholder to prevent HTML stripping in GitHub
  • Incorrect relative link
  • Resolve all pmdMain violations
  • Update overview.html for post-refactoring package layout
  • Resolve AvoidInstantiatingObjectsInLoops and UncommentedEmptyConstructor
  • Survive parse errors, report file/line, extend grammar
  • Update visitor for usingTypeName grammar refactor
  • Support expression-body constructors (=> expr;)
  • Allow contextual keywords as identifiers in all name positions
  • Handle nested braces in interpolated strings; tolerate null positional args
  • Comprehensive C# grammar fixes for TelegramBot codebase
  • Replace IDENTIFIER Unicode ranges with ANTLR4 property escapes
  • Fix BOM skip, interpolated strings and constructor initializer
  • Missing import
  • Ignore node_modules and package-lock.json to prevent :dirty version

CI/CD

  • Deploy Pages only on release tags
  • Add explicit Node.js setup to workflows for TypeScript plugin

Documentation

  • Fix stale Javadoc references after package restructuring
  • Update all documentation for testAnnotations → testMarkers rename
  • Add discovery-plugins.md with per-language marker reference
  • Add migration guide for 2.x → 3.x upgrade path
  • Document C# parser scope and grammar limitations

Features

  • Establish ServiceLoader SPI for extensible test discovery
  • Implement full C# test discovery and source patching plugin
  • TypeScript/JavaScript test discovery plugin
  • User-guide (in PDF) from the existing MD documentation

Miscellaneous

  • Image - scanning finding in GitHub

Performance

  • Lazy-start worker pool – spawn Node.js only on first scan request
  • Defer Node.js detection until a TS/JS file is actually found

Refactoring

  • Introduce api, discovery.jvm, and emit sub-packages
  • Generalise TestDiscoveryConfig for multi-language plugin support

Tests

  • Add comprehensive JUnit tests for untested core classes

MethodAtlas 2.2.0

27 Apr 11:55
release@2.2.0
9e9e34a

Choose a tag to compare

Changelog

All notable changes to MethodAtlas are documented in this file.
The format follows Keep a Changelog
and this project adheres to Semantic Versioning.

[2.2.0] — 2026-04-27

Bug Fixes

  • Always compare display_name, normalize null to empty string
  • Fix file paths and enrich finding messages for GitHub Code Scanning
  • Enrich all findings with full decision-making context
  • Resolve NPathComplexity, AppendCharacterWithChar, and InsufficientStringBufferDeclaration warnings
  • Correct AiMethodSuggestion argument order in placebo SARIF tests
  • Use isBlank() for title selection in GitHubAnnotationsEmitter

Documentation

  • Synchronize display_name documentation with actual output
  • Add three missing pages to mkdocs nav

Features

  • Detect display_name changes in delta report
  • Detect and report @DisplayName("") as a security finding
  • Add -emit-source-root flag for multi-root and monorepo scanning
  • Add dedicated security-test/placebo rule for high interaction-score findings

Tests

  • Fill JaCoCo gaps across DeltaEmitter and existing emitter tests

MethodAtlas 2.1.1

26 Apr 02:17
release@2.1.1
5cc33ba

Choose a tag to compare

Changelog

All notable changes to MethodAtlas are documented in this file.
The format follows Keep a Changelog
and this project adheres to Semantic Versioning.

[2.1.1] — 2026-04-26

Bug Fixes

  • Guard against null return from Path.getFileName()

[2.1.0] — 2026-04-26

Bug Fixes

  • Update MethodAtlasAppManualTest for ai_interaction_score column
  • Resolve all PMD and SpotBugs violations
  • Address remaining PMD/SpotBugs violations
  • Reference pitest task by name in check.dependsOn
  • Correct GitHubAnnotationsEmitter drift test assumptions
  • Resolve three PMD violations
  • Remove continue-on-error from reusable workflow job in pages.yml
  • Suppress EmptyControlStatement false positive on JUnit 5 detection branch
  • Use enum literal for CycloneDX schemaVersion to avoid Gradle 10 breakage
  • Create build/reports before redirecting MethodAtlas SARIF output
  • Correct egothor/methodatlas URLs to Accenture/MethodAtlas
  • Add models: read permission for GitHub Models inference API
  • Grant models: read in pages.yml caller for reusable workflow
  • Reduce token footprint and add retries for GitHub Models free tier
  • Retry HTTP 429 rate-limit responses instead of failing immediately
  • Replace dark-blue node fill with readable light indigo in diagrams
  • Resolve PMD violations in HttpSupport.postJson
  • Add required comments to empty catch blocks per Google Java Style
  • Resolve AvoidDuplicateLiterals and AvoidLiteralsInIfCondition in SarifEmitter
  • Add -include-non-security to SARIF structural tests
  • Use /chat/completions path for GITHUB_MODELS, XAI, and MISTRAL providers
  • Treat Retry-After: 0 as missing and fall back to default 60s wait
  • Preserve @DisplayName when display_name column absent from CSV
  • Resolve PMD and Error Prone violations introduced by apply-tags-from-csv
  • Fix remaining PMD violations from apply-tags-from-csv
  • Fix compilation errors in MethodAtlasAppApplyTagsFromCsvTest
  • Resolve three test failures

CI/CD

  • Add reusable methodatlas-analysis.yml workflow; call from pages.yml

Documentation

  • Publish PIT report to Pages; document OWASP, SBOM, self-analysis
  • Clarify OWASP runs only on demand when NVD_API_KEY is set
  • Document JUnit 4 / TestNG auto-detection in cli-reference, why-methodatlas, README
  • Add Concepts, CI/CD guides, and Regulated Deployment sections
  • Add D5 security-teams guide, D6 release gating, D2 Azure DevOps
  • Add D7 monorepo guide, D8 custom taxonomy, D9 remediation guide
  • Add troubleshooting, air-gapped deployment, SOC 2, data governance, ASVS mapping
  • Restructure navigation into eight audience-oriented tabs
  • Fix seven factual and structural issues found in multi-perspective review
  • Fix reviewer suggestions plus README and source-accuracy audit
  • Replace text diagrams with Mermaid diagrams
  • Document backward-compatible display_name column behaviour
  • Add apply-tags-from-csv to SDLC integration table and remediation guide
  • Broaden test-inventory feature blurb to JUnit 4 and TestNG
  • Comprehensive documentation audit — 12 issues resolved

Features

  • Add Azure OpenAI provider and restructure AI documentation
  • Add human classification override file support
  • Add -diff flag to compare two scan outputs
  • Add -security-only output filter
  • Add ai_interaction_score field to detect placebo tests
  • Add -ai-cache flag to skip API calls for unchanged classes
  • Add -github-annotations mode for inline PR feedback
  • Add Tag vs AI security classification drift detector (#17)
  • Add ArchUnit layer rules (#8) and PIT mutation gate (#9)
  • Add Groq as a supported AI provider
  • Add xAI, GitHub Models, Mistral providers; document AI brand mapping
  • Auto-detect JUnit 4 and TestNG frameworks per file
  • Make security-only filtering the default for SARIF output
  • Add override-file input to reusable workflow
  • Add enterprise-grade remote override support to reusable workflow
  • Cache AI classifications between runs to eliminate redundant API calls
  • Add -apply-tags-from-csv mode for human-reviewed annotation write-back

Tests

  • Add @tag("security") annotations and improve JUnit test quality

MethodAtlas 2.0.0

22 Apr 18:52
release@2.0.0
af42119

Choose a tag to compare

Changelog

All notable changes to MethodAtlas are documented in this file.
The format follows Keep a Changelog
and this project adheres to Semantic Versioning.

[2.0.0] — 2026-04-22

Bug Fixes

  • Package application as fat JAR and fix distribution contents
  • Exclude duplicate multi-release module descriptors from fatJar
  • Resolve PMD violations in AnnotationInspector, MethodAtlasApp, OutputEmitter
  • Resolve 4 of 5 remaining PMD violations in MethodAtlasApp
  • Merge META-INF/services SPI files in fatJar to avoid duplicate entry conflict
  • Align jackson-yaml version to 2.21.1 and fix isJUnitTest for qualified annotation names
  • Resolve all PMD warnings introduced since b73faf4
  • Correct off-by-one comma in OutputEmitterTest null-suggestion CSV assertion
  • Remove Confidence.DEFAULT from spotbugs config
  • Resolve all 37 Error Prone warnings that blocked compilation
  • Skip OWASP and MethodAtlas steps when secrets are absent
  • Replace h2 with h1 in overview.html to satisfy doclint HTML sequence check
  • Correct broken MkDocs links in compliance.md and usage-modes/api-ai.md
  • Pin CycloneDX output to build/reports/bom.json
  • Locate bom.json dynamically instead of hardcoding path
  • Update SBOM path to build/reports/cyclonedx/bom.json

Build

  • Support any JDK 21+ instead of pinning to JDK 21

CI/CD

  • Add GitHub Actions workflows for release distribution and GitHub Pages
  • Add quality gate to Gitea CI and both release workflows
  • Implement full professional quality suite (all ideas A1–F2)
  • Remove non-AI MethodAtlas self-analysis from Code Scanning upload
  • Enable MethodAtlas AI self-analysis when OPENROUTER_API_KEY is set

Documentation

  • Explain deterministic AST discovery vs AI classification
  • Document manual AI workflow in README
  • Document SARIF, YAML config, -test-annotation, and -apply-tags
  • Enterprise README, apply-tags caveat, SarifEmitter PMD warnings
  • Add CI/CD environment setup guide
  • Add overview.html and copyright footer
  • Replace tile landing page with MkDocs Material site
  • Redesign home page and expand documentation structure
  • Remove horizontal rules, split long pages into subpages
  • Document data scope — only test source files are submitted to AI providers

Features

  • Add @tag reporting and CSV/plain output
  • Add AI-based security suggestion engine and CLI integration
  • Restrict AI tagging to parser-discovered test methods
  • Implement manual AI workflow for offline AI enrichment
  • Pre-create empty response files during manual prepare phase
  • Separate workdir/responsedir in prepare phase; support multiple file suffixes
  • Configurable test annotations, scan metadata output, extract DEFAULT_MODEL constant
  • Add AI confidence scoring and split documentation
  • Use path-derived file stems for manual AI workflow
  • Add -apply-tags mode to write AI annotations to source files
  • Add -content-hash flag for per-class SHA-256 fingerprints

License

    • (c) 2026 Accenture

Miscellaneous

  • Logo
  • Fix PMD warnings and improve code quality
  • Rename license temporarily
  • Restore canonical LICENSE filename
  • Remove duplicate imports

Refactoring

  • Decompose MethodAtlasApp, harden build, fix compiler warnings
  • Extract CliArgs, CliConfig, ManualMode to dedicated classes
  • Replace fatJar with standard application distribution layout

Tests

  • Add missing unit tests and upgrade all test quality to professional standard
  • Add AnthropicClientTest to fix 0% JaCoCo coverage on AnthropicClient
  • Improve branch coverage for applyYamlAiConfig, processFile, processFileForPrepare, resolveTaxonomyInfo

Upgrade

  • Gradle 9.4.0