Skip to content

Releases: microsoft/apm

v0.8.12

19 Apr 20:19
0d2093d

Choose a tag to compare

What's Changed

🚀 New Features

🔧 Other Changes

  • chore: add @sergio-sisternes-epam as maintainer by @danielmeppiel in #623
  • feat: add apm info, apm outdated, and list_remote_refs by @sergio-sisternes-epam in #613
  • feat: proxy-aware marketplace indexes by @chkp-roniz in #617
  • fix: propagate headers through OpenCode MCP adapter by @alopezsanchez in #622
  • feat: support project-local .apm/ content during apm install by @sergio-sisternes-epam in #644
  • fix(runtime): pin codex setup to rust-v0.118.0 for security by @sergio-sisternes-epam in #663
  • fix: rewrite Windows backslash paths in hook commands by @danielmeppiel in #609
  • [fix] include dependency instructions in claude compile (#631) by @edenfunf in #642
  • Enable SSH timeout to fallback to HTTP. by @tillig in #653
  • fix: add encoding="utf-8" to prompt file open() calls in script_runner (Windows CP950) by @edenfunf in #607
  • Fix: apm marketplace add silently fails for private repos by @sergio-sisternes-epam in #701
  • fix(hooks): make apm install idempotent for hook entries by @srid in #709
  • [fix] suppress internal config keys from apm config get output (#564) by @edenfunf in #571
  • fix: use yaml.safe_dump for virtual package apm.yml generation by @edenfunf in #707
  • feat: add configurable temp directory to resolve Windows access denied errors by @sergio-sisternes-epam in #629
  • fix: enhance git remote validation by trying SSH URLs for generic hosts by @zzoubian in #584
  • fix(auth): provide ADO-specific authentication error message for dev.… by @coakenfold in #742
  • fix: strip skills prefix from bare skill plugin export by @zeel2104 in #738
  • fix: deploy root project .apm/ primitives without a sub-package stub by @edenfunf in #715
  • [fix] support codeload github archive urls for artifactory (#710) by @edenfunf in #712
  • Add 55 tests for deps/_utils.py and view.py coverage by @Copilot in #682
  • fix(deps): align _count_package_files to use .apm/context/ (singular) dir by @edenfunf in #748
  • test(marketplace): isolate test_auto_detect_through_proxy from real network by @danielmeppiel in #759
  • harden(plugin): enforce plugin-root containment for manifest paths by @danielmeppiel in #760
  • fix(install): clean up stale deployed files on rename/remove within a package (#666) by @Boubalou in #750
  • fix(install): harden stale-file cleanup with per-file content-hash provenance (#666 follow-up) by @danielmeppiel in #762
  • refactor(install): modularize install.py into engine package by @danielmeppiel in #764
  • test(integration): close install/uninstall/update CLI coverage gaps surfaced by #764 review by @danielmeppiel in #767
  • fix: create target dir for explicit --target claude; content hash fallback when .git absent by @Copilot in #763
  • fix: validate project name to reject path separators in apm init by @edenfunf in #724
  • fix: prevent duplicate Test Improver monthly activity issues by @sergio-sisternes-epam in #681
  • Add .editorconfig to standardize formatting across contributions by @Copilot in #671
  • fix: _parse_artifactory_base_url() ignores PROXY_REGISTRY_URL — lockfile reinstall fails (#614) by @chkp-roniz in #616
  • fix: route --target codex/opencode through AGENTS.md compiler (#766) by @edenfunf in #769
  • chore: prepare v0.8.12 release by @danielmeppiel in #774

New Contributors

Full Changelog: v0.8.11...v0.8.12

v0.8.11

06 Apr 22:39
81082e2

Choose a tag to compare

What's Changed

🔧 Other Changes

  • [fix] warn when two packages deploy a native skill with the same name by @edenfunf in #545
  • [fix] detect remote default branch instead of hardcoding main (#573) by @edenfunf in #574
  • refactor: unify integration dispatch, result types, and hook dedup by @danielmeppiel in #562
  • feat: Artifactory archive entry download for virtual file packages by @chkp-roniz in #525
  • Fix: compilation.exclude does not filter primitive discovery by @Copilot in #477
  • fix: respect GITHUB_HOST in marketplace add command by @edenfunf in #589
  • fix: use nested Join-Path for PowerShell 5.1 compatibility by @edenfunf in #593
  • fix: subprocess encoding failures on Windows non-UTF-8 consoles (CP950/CP936) by @edenfunf in #591
  • fix: use scope-resolved target dir for hook deployment by @sergio-sisternes-epam in #566
  • fix: enforce symlink containment in file discovery and resolution by @danielmeppiel in #596
  • [fix] script_runner: anchor runtime detection patterns to prevent false positives by @edenfunf in #563
  • fix: warn when instruction is missing required fields during apm compile by @alopezsanchez in #449
  • chore: prepare v0.8.11 release by @danielmeppiel in #598

New Contributors

Full Changelog: v0.8.10...v0.8.11

v0.8.10

03 Apr 08:53
4148963

Choose a tag to compare

What's Changed

🐛 Bug Fixes

  • fix: process windows hook key for script copying and path rewriting by @Copilot in #521

🔧 Other Changes

  • docs: add marketplace highlight and example to README by @danielmeppiel in #513
  • Add agent-guide: teach AI agents how to use APM by @cabird in #516
  • docs: add agentrc ecosystem section to README by @danielmeppiel in #509
  • Deploy instructions to .claude/rules/ for Claude Code by @Copilot in #527
  • [Test Improver] test: add unit tests for deps list, tree, and info subcommands by @danielmeppiel in #532
  • [Test Improver] test: add unit tests for mcp command (0% -> ~85%) by @danielmeppiel in #480
  • [Test Improver] test: expand unit tests for list command (42% -> 100%) by @danielmeppiel in #444
  • fix: scope-resolved target profiles + Claude Code instructions by @danielmeppiel in #542
  • fix: address post-merge review on #542 by @danielmeppiel in #547
  • fix: respect update_refs in download_callback and skip logic (#548) by @sergio-sisternes-epam in #550
  • fix: CLI consistency — missing targets, Unicode violations, undocumented flags by @Copilot in #543
  • chore: consolidate CHANGELOG entries to 1 line per PR by @danielmeppiel in #555
  • chore: bump version to 0.8.10 by @danielmeppiel in #560

New Contributors

Full Changelog: v0.8.9...v0.8.10

v0.8.9

31 Mar 14:12
c452717

Choose a tag to compare

What's Changed

🔧 Other Changes

Full Changelog: v0.8.8...v0.8.9

v0.8.8

31 Mar 13:23
6d8cb6f

Choose a tag to compare

What's Changed

🚀 New Features

  • feat: Marketplace integration -- read marketplace.json for plugin discovery + governance by @Copilot in #503
  • feat: add --global / -g flag for scoped package installation by @Copilot in #452
  • feat: Support Codex CLI as integration target by @Copilot in #504

🔧 Other Changes

  • feat: lockfile-driven reproducible installs for registry proxies by @chkp-roniz in #401
  • perf: apm deps update skip download when resolved SHA matches lockfile by @Copilot in #500
  • docs: fix orphan pages and update stale rulesets content by @danielmeppiel in #505
  • docs: add Marketplaces guide to sidebar navigation by @danielmeppiel in #507
  • chore: prepare v0.8.8 release by @danielmeppiel in #508
  • fix: CI test assertions for Rich line-wrapping and scope output by @danielmeppiel in #510

Full Changelog: v0.8.7...v0.8.8

v0.8.7

31 Mar 00:21
f252fe6

Choose a tag to compare

What's Changed

🔧 Other Changes

  • fix: apm deps update was a no-op -- delegate to install engine by @danielmeppiel in #493
  • fix: mitigate Windows Defender false positive on APM binary by @sergio-sisternes-epam in #490
  • DX: Improve auth error messages, sparse checkout token consistency, and error deduplication by @Copilot in #478
  • Data-driven integration dispatch: replace if-chain with target × primitive loop by @Copilot in #494
  • chore: bump to v0.8.7 by @danielmeppiel in #497

Full Changelog: v0.8.6...v0.8.7

v0.8.6

27 Mar 08:49
b56c537

Choose a tag to compare

What's Changed

🔧 Other Changes

  • fix: batch bug fixes -- installer fallback, target registry, lockfile idempotency by @danielmeppiel in #456
  • Fix Windows antivirus file-lock errors during apm install by @Copilot in #440
  • fix: allow spaces in ADO repository names when parsing URLs by @PremKumarML in #437
  • fix: gate .claude/commands/ deployment behind integrate_claude flag by @neop26 in #443
  • fix: reject path traversal in SSH URL parsing by @thakoreh in #458
  • fix: exclude bundled OpenSSL libs from Linux binary by @danielmeppiel in #466
  • fix: sort instruction discovery order for deterministic Build IDs across platforms by @Coolomina in #468
  • fix: share AuthResolver across install to prevent duplicate auth popups by @frblondin in #424
  • chore: bump to v0.8.6 by @danielmeppiel in #474

New Contributors

Full Changelog: v0.8.5...v0.8.6

v0.8.5

24 Mar 11:51
52e9b1b

Choose a tag to compare

What's Changed

📖 Documentation

🔧 Other Changes

  • [Test Improver] test: add unit tests for AgentsCompiler (65%→82% coverage) by @danielmeppiel in #221
  • [Test Improver] Add unit tests for commands/_helpers.py I/O and config helpers by @danielmeppiel in #333
  • [Test Improver] test: add unit tests for utils/console.py (58% → 90%) by @danielmeppiel in #351
  • [Test Improver] test: add unit tests for RuntimeManager and runtime CLI commands (20%→92%, 49%→90%) by @danielmeppiel in #380
  • [Test Improver] test: replace gc.collect+sleep teardown with shutil.rmtree(ignore_errors=True) by @danielmeppiel in #395
  • [Test Improver] test: add unit tests for constitution_block and ConstitutionInjector (53%→93%, 44%→95%) by @danielmeppiel in #402
  • Add Copilot encoding instructions banning non-ASCII/emoji characters by @Copilot in #282
  • [Test Improver] test: add unit tests for config command (22% → 100%) + fix missing functions by @danielmeppiel in #366
  • perf(ci): comprehensive pipeline optimization by @Copilot in #407
  • fix: CLI consistency improvements (target aliases, deps clean flags, verbose shorthand, help text) by @Copilot in #303
  • fix: Windows test failures in config command and agents compiler by @danielmeppiel in #410
  • fix: resolve both sides of relative_to() for Windows 8.3 path compat by @danielmeppiel in #411
  • fix: show auth diagnostics in --verbose for virtual package validation by @danielmeppiel in #414
  • fix: enforce ARTIFACTORY_ONLY for virtual package types by @chkp-roniz in #418
  • fix: remove WIP folder from tracking and strengthen gitignore by @danielmeppiel in #420
  • [Test Improver] test: add unit tests for prune command (14% -> 91%) by @danielmeppiel in #415
  • fix: cross-target path mapping for skills/agents in apm pack by @Copilot in #426
  • fix: Configure SSL certificates in PyInstaller binary via runtime hook by @Copilot in #429
  • feat(policy): Phase 1 — org-level policy engine for apm audit --ci by @danielmeppiel in #365
  • fix: centralize YAML I/O with UTF-8 encoding for cross-platform safety by @danielmeppiel in #433
  • fix: Systematic Windows path compatibility hardening by @Copilot in #422
  • fix: improve local path validation error messages by @danielmeppiel in #431
  • fix: recognize Windows drive-letter absolute paths as local paths in DependencyReference by @Copilot in #435
  • chore: bump to v0.8.5 by @danielmeppiel in #439

Full Changelog: v0.8.4...v0.8.5

v0.8.4

22 Mar 09:53
a69fc93

Choose a tag to compare

What's Changed

🚀 New Features

🔧 Other Changes

  • Remove unused files: copilot-banner.png, copilot-cli-screenshot.png, dummy by @Copilot in #391
  • docs: document ${input:...} variable support in MCP server headers and env by @Copilot in #349
  • chore: bump to v0.8.4 by @danielmeppiel in #404
  • fix(ci): replace curl-based uv install with astral-sh/setup-uv action by @danielmeppiel in #405

Full Changelog: v0.8.3...v0.8.4

v0.8.3

20 Mar 11:23

Choose a tag to compare

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

Full Changelog: v0.8.2...v0.8.3