Releases: microsoft/apm
Releases · microsoft/apm
v0.8.3
What's Changed
🔧 Other Changes
- feat: improve VS Code runtime detection with .vscode/ directory fallback by @sergio-sisternes-epam in #359
- Align CLI docs with current
compile,audit, and planned drift behavior by @Copilot in #373 - fix: Refactor command and model modules for readability and maintainability (#231) by @sergio-sisternes-epam in #232
- fix(security): preserve leading BOM in strip_dangerous by @dadavidtseng in #372
- Use aka.ms/apm-unix and aka.ms/apm-windows short URLs for install scripts by @Copilot in #384
- feat: Plugin coexistence —
apm pack --format plugin,apm init --plugin, devDependencies by @danielmeppiel in #379 - docs: refresh README highlights with plugin authoring and hyperlinks by @danielmeppiel in #385
- fix: preserve DependencyReference through download pipeline (#382) by @sergio-sisternes-epam in #383
- chore: release v0.8.3 by @danielmeppiel in #386
New Contributors
- @dadavidtseng made their first contribution in #372
Full Changelog: v0.8.2...v0.8.3
v0.8.2
What's Changed
🐛 Bug Fixes
- fix: harden dependency path validation by @danielmeppiel in #364
🔧 Other Changes
- fix: credential fill returns garbage token in tokenless CI (gh-aw regression) by @danielmeppiel in #356
- chore: prepare v0.8.2 release by @danielmeppiel in #357
- fix: gh-aw compat test uses correct apm install syntax by @danielmeppiel in #360
- fix: add required name field to ghaw compat test apm.yml by @danielmeppiel in #362
- fix: ghaw compat test apm.yml uses correct manifest format by @danielmeppiel in #363
- Add JFrog Artifactory VCS repository support by @chkp-roniz in #354
- perf(ci): consolidate macOS into single-request jobs, gate ARM to releases only by @danielmeppiel in #368
New Contributors
- @chkp-roniz made their first contribution in #354
Full Changelog: v0.8.1...v0.8.2
v0.8.1
What's Changed
🔧 Other Changes
- fix: close auth asymmetry between folder and file downloads by @danielmeppiel in #332
- feat: audit hardening — unpack scanning, SARIF/JSON/Markdown output by @danielmeppiel in #330
- fix: preserve GHE custom domain host in lockfile download refs by @Copilot in #338
- fix: MCP registry validation resilience for transient network errors by @danielmeppiel in #337
- feat: improve version pinning guidance and CLI visibility by @danielmeppiel in #340
- fix: move pinning hint to diagnostics section by @danielmeppiel in #347
- feat: support ${input:...} variable resolution for self-defined MCP servers by @sergio-sisternes-epam in #344
- chore: prepare v0.8.1 release by @danielmeppiel in #348
Full Changelog: v0.8.0...v0.8.1
v0.8.0
What's Changed
📖 Documentation
- [docs] Update docs landing page to include Cursor and OpenCode by @danielmeppiel in #310
🔧 Other Changes
- feat: native Cursor IDE integration by @danielmeppiel in #301
- docs: update all doc pages to reflect full Cursor native support by @danielmeppiel in #304
- feat: add native OpenCode integration by @danielmeppiel in #306
- docs: add OpenCode to README by @danielmeppiel in #308
- docs: add private packages guide and enhance authentication page by @Copilot in #314
- feat: add content security scanning and
apm auditcommand by @danielmeppiel in #313 - feat: detect Unicode variation selectors in content scanner (Glassworm vector) by @danielmeppiel in #321
- chore: release v0.8.0 by @danielmeppiel in #323
Full Changelog: v0.7.9...v0.8.0
v0.7.9
What's Changed
🔧 Other Changes
- feat: add phase 1 Windows native support by @sergio-sisternes-epam in #227
- [DOCS] Add Windows as first-class install option across docs site by @Copilot in #278
- fix: restore CWD before TemporaryDirectory cleanup on Windows by @sergio-sisternes-epam in #281
- feat: rename apm.lock to apm.lock.yaml for IDE syntax highlighting by @Copilot in #280
- fix: resolve UnboundLocalError in
apm prunecrashing all prune operations by @Copilot in #283 - feat: support local filesystem path dependencies by @Copilot in #270
- chore: release v0.7.9 by @danielmeppiel in #286
- docs: clarify that .github/ deployed files should be committed by @danielmeppiel in #290
- fix: improve sub-skill overwrite UX with content skip and collision protection by @danielmeppiel in #289
- fix(test): handle Windows file locking in integration test teardown by @danielmeppiel in #294
- fix(test): address PR #294 review — targeted teardown and stdout.close in finally by @danielmeppiel in #295
- fix(test): Windows Unicode encoding in integration tests by @danielmeppiel in #296
- fix(test): set PYTHONUTF8=1 for Windows integration tests by @danielmeppiel in #297
- fix(test): handle Windows temp directory cleanup in integration tests by @danielmeppiel in #298
- fix: use _rmtree for Windows-safe directory cleanup in downloader by @danielmeppiel in #299
- fix: release validation exits silently due to sourced set -e by @danielmeppiel in #300
Full Changelog: v0.7.8...v0.7.9
v0.7.8
What's Changed
🔧 Other Changes
- Refactor cli.py and apm_package.py into focused modules (#172) by @sergio-sisternes-epam in #224
- fix: resolve WinError 32 during sparse-checkout fallback on Windows by @JanDeDobbeleer in #235
- docs: migrate to Astro Starlight documentation site by @danielmeppiel in #243
- docs: revamp README as storefront for docs site by @danielmeppiel in #251
- docs: add lead maintainer attribution to README by @danielmeppiel in #256
- docs: narrative redesign for accuracy and cohesion by @danielmeppiel in #258
- docs: remove duplicated content from CLI reference page by @danielmeppiel in #261
- Add detailed file-level logging to unpack command by @Copilot in #252
- Fix CLI consistency: docs alignment, emoji removal, show_default by @Copilot in #266
- feat: add DiagnosticCollector for structured install diagnostics by @danielmeppiel in #267
- feat: diff-aware install — manifest as source of truth across all primitives by @Copilot in #260
- [Test Improver] test: primitives models 78% → 100% coverage (Skill, conflict detection) by @danielmeppiel in #240
- test: address PR review feedback on primitives discovery/parser tests by @Copilot in #268
- [Test Improver] test: add coverage tests for primitives discovery and parser by @danielmeppiel in #254
- chore: bump minimum Python to 3.10 and upgrades Black to 26.3.1 by @danielmeppiel in #269
- chore: update Unreleased changelog with PRs merged since v0.7.7 by @danielmeppiel in #271
- chore: release v0.7.8 by @danielmeppiel in #272
New Contributors
- @JanDeDobbeleer made their first contribution in #235
Full Changelog: v0.7.7...v0.7.8
v0.7.7
What's Changed
🔧 Other Changes
- feat: add 'copilot' as primary target name (alias for vscode) by @danielmeppiel in #228
- chore: update version to 0.7.7 and document changes in changelog by @danielmeppiel in #229
Full Changelog: v0.7.6...v0.7.7
v0.7.6
What's Changed
🔧 Other Changes
- fix: plugin agents not deployed due to directory nesting bug by @danielmeppiel in #214
- refactor: extract MCPIntegrator from cli.py by @danielmeppiel in #215
- fix: address unresolved review comments on apm pack/unpack by @Copilot in #219
- fix: skip already-configured self-defined MCP servers on install by @sergio-sisternes-epam in #191
- Plugin MCP Server installation support by @Copilot in #217
- feat: add
apm packandapm unpackcommands by @danielmeppiel in #218 - chore: changelog and version bump for v0.7.6 by @danielmeppiel in #220
Full Changelog: v0.7.5...v0.7.6
v0.7.5
What's Changed
🚀 New Features
- feat: MCP dependency config overlays, transitive trust flag, and bug fixes by @sergio-sisternes-epam in #166
- Implement plugin management system and CLI commands by @SebastienDegodez in #83
🐛 Bug Fixes
- fix: handle multiple brace groups in applyTo glob patterns by @sergio-sisternes-epam in #155
- perf: exclude apm_modules from compilation scanning and cache Set[Path] by @sergio-sisternes-epam in #157
- fix: replace substring matching with path-component matching in exclusions by @sergio-sisternes-epam in #159
📖 Documentation
- docs: fix CLI reference drift from consistency reports #140 and #152 by @danielmeppiel in #160
- [docs] Update documentation for features from 2026-03-07 by @danielmeppiel in #195
🔧 Other Changes
- chore: upgrade GitHub Agentic Workflows to v0.52.1 by @danielmeppiel in #141
- fix: use CREATE_PR_PAT for agentic workflows in Microsoft org by @danielmeppiel in #144
- feat: support transitive MCP dependency propagation by @sergio-sisternes-epam in #123
- docs: fix CLI reference drift from consistency reports #140 and #152 by @Copilot in #161
- refactor: unified deployed_files manifest for safe integration lifecycle by @danielmeppiel in #163
- feat: add InstructionIntegrator for
apm install(#112) by @danielmeppiel in #162 - feat: Generic git URL support (GitLab, Bitbucket, any host) by @Copilot in #150
- perf: Performance optimization for deep dependency trees (#171) by @sergio-sisternes-epam in #173
- fix: resolve set() shadowing and sparse checkout ref issues by @Jah-yee in #184
- feat: display build commit SHA in CLI version output by @sergio-sisternes-epam in #176
- fix: handle commit SHA refs in subdirectory package clones by @sergio-sisternes-epam in #178
- fix: infer registry_name when MCP registry API returns empty values by @sergio-sisternes-epam in #181
- docs: add apm.yml manifest schema reference for integrators by @danielmeppiel in #186
- docs: replace CHANGELOG link with roadmap discussion in index.md by @Copilot in #196
- fix:
--updateflag now bypasses lockfile SHA to fetch latest content by @sergio-sisternes-epam in #192 - fix: CLI consistency — align help text with docs by @Copilot in #188
- fix: clean stale MCP servers on install/update/uninstall and prevent .claude folder creation by @sergio-sisternes-epam in #201
- fix: harden plugin security, validation, tests, and docs (follow-up to #83) by @danielmeppiel in #208
- Fix CLI consistency: remove emojis from help strings, fix
apm configinvocation, update descriptions by @Copilot in #212 - chore: add unreleased changelog entries for PRs since v0.7.4 by @danielmeppiel in #213
New Contributors
- @Jah-yee made their first contribution in #184
- @SebastienDegodez made their first contribution in #83
Full Changelog: v0.7.4...v0.7.5
v0.7.4
What's Changed
🚀 New Features
- feat: Promote sub-skills inside packages to top-level .github/skills/ entries by @sergio-sisternes-epam in #102
- feat: Deploy agents to .claude/agents/ during install by @Copilot in #95
- feat: Support Hooks as an Agent Primitive by @Copilot in #97
🐛 Bug Fixes
- Fix/workflow permissions by @danielmeppiel in #87
- fix: support spaces in Azure DevOps project names by @ryanfk in #92
- fix: virtual subdirectory deps marked as orphaned, skipping instruction processing by @sergio-sisternes-epam in #100
- fix: CI integration test corrections by @danielmeppiel in #109
- fix: skill integration bugs, transitive dep cleanup, and skill_integrator simplification by @danielmeppiel in #107
- Fix transitive dependency handling in compile and orphan detection by @Copilot in #111
📖 Documentation
- Finalize full transfer to Microsoft OSS organization by @danielmeppiel in #105
- documentation: Update README.md: missing version in the apm.yml example by @foutoucour in #108
- chore: governance cleanup - templates, triage labels, changelog, roadmap by @danielmeppiel in #118
🔧 Other Changes
- ci: auto-approve integration tests for internal PRs by @danielmeppiel in #98
- ci: slim PR pipelines to Linux-only for fast feedback by @danielmeppiel in #103
- fix(ci): prevent skip-propagation in integration test pipeline by @danielmeppiel in #106
- chore: add CODEOWNERS by @danielmeppiel in #115
- feat: Add GitHub Agentic Workflows for docs, testing, and CLI consistency by @danielmeppiel in #104
- chore: governance cleanup - templates, triage labels, changelog, roadmap by @Copilot in #129
- fix: improve multi-host error guidance when GITHUB_HOST is set by @danielmeppiel in #130
- chore: recompile agentic workflow lock files with gh-aw v0.50.6 by @danielmeppiel in #119
- release: v0.7.4 by @danielmeppiel in #139
New Contributors
- @ryanfk made their first contribution in #92
- @sergio-sisternes-epam made their first contribution in #100
- @foutoucour made their first contribution in #108
Full Changelog: v0.7.3...v0.7.4