What's changed
appmap-setup: one source per tool, and stop when it cannot be installed
Phase 0 now lists the one place each AppMap tool comes from, and says the list is complete. (#10)
| Tool | Source |
|---|---|
| AppMap CLI | the appmap-js release manifest |
Java agent, appmap.jar |
appmap-java GitHub releases |
| Maven and Gradle plugins | resolved by the build tool; the releases pages give the version number |
| Ruby, Python, Node agents | RubyGems, PyPI, npm, through the project's package manager |
The CLI and the Java agent are installed to ~/.appmap, the same layout the IDE extensions use, so the Phase 0 check passes afterward. Each download is checked against its sha256. Before, the CLI was put "on PATH as appmap", and there was no supported way to get the Java agent jar without an IDE.
~/.appmap/bin/appmap -> ~/.appmap/lib/appmap/appmap-v<version>
~/.appmap/lib/java/appmap.jar -> ~/.appmap/lib/java/appmap-<version>.jar
When an install fails, the agent stops and tells the user which tool is missing, the exact command and error text, the likely cause, and what they can do about it. One retry is fine for an error that is clearly temporary. The skill lists what not to try: npm, Homebrew, or Docker for the CLI; installing or launching an IDE; other download URLs; copies found on disk; older versions; building from source; turning off checksum or TLS checks; or changing proxy, registry, or plugin repository settings.
appmap-record: install commands and the same stop rule
SKILL.mdgains an "If a tool is missing" section that points at the one source for each tool and at the stop rule in appmap-setup.languages/ruby.md,python.md, andnode.mdgive the install command for the project's package manager, and say the package must come from RubyGems, PyPI, or npm.languages/java.mdno longer says the agent jar is on Maven Central. It names the releases pages for the agent jar and both build plugins, and says where the Gradle version number comes from.
appmap-gold-traces and appmap-review: pointer to Phase 0
Both skills say that when the CLI or an agent is missing, follow appmap-setup Phase 0 rather than installing it some other way, and stop as Phase 0 describes if that fails.
Upgrading
Nothing to change in projects. The helper scripts are unchanged from v1.6.2.
Full changelog: v1.6.2...v1.7.0