Skip to content

Add multi-version support without git branches#1

Open
critesjosh wants to merge 1 commit intomainfrom
feature/multi-version-support
Open

Add multi-version support without git branches#1
critesjosh wants to merge 1 commit intomainfrom
feature/multi-version-support

Conversation

@critesjosh
Copy link
Copy Markdown
Owner

Summary

  • Refactors versioning to work with marketplace installs by embedding all version-specific content in a single plugin
  • Adds auto-detection of Aztec version from user's Nargo.toml
  • Defaults to devnet syntax (current documented patterns)
  • No longer requires git branches to switch versions

Changes

New Files

  • versions/versions.json - Version definitions and tag patterns
  • versions/devnet/syntax.md - Complete devnet syntax reference
  • versions/testnet/syntax.md - Testnet syntax reference
  • versions/mainnet/syntax.md - Mainnet placeholder (future)
  • commands/detect-version.md - Slash command to detect project version

Modified Files

  • setup.sh - Replaced git-branch switching with config-based approach
  • CLAUDE.md - Added version detection instructions
  • plugin.json - Bumped to v2.0.0, added version config
  • README.md - Updated versioning documentation
  • NETWORK.md - Complete rewrite for new approach
  • .gitignore - Changed network.json to .aztec-version

How It Works

  1. Auto-detection: Plugin parses Nargo.toml for aztec-packages-v* tags
  2. Pattern matching: Maps tags to devnet/testnet/mainnet
  3. Config file: Stores version choice in .aztec-version
  4. Default: Uses devnet if no version detected

Test plan

  • Install plugin fresh, verify devnet syntax used by default
  • Create project with Nargo.toml containing devnet tag, verify detection
  • Run ./setup.sh testnet, verify version changes
  • Run /aztec:detect-version, verify output
  • Delete .git folder from plugin, verify it still works

🤖 Generated with Claude Code

This refactors versioning to work with marketplace installs by embedding
all version-specific content in a single plugin installation.

Changes:
- Add versions/ directory with syntax references for devnet/testnet/mainnet
- Add versions.json with version patterns for auto-detection
- Replace git-branch setup.sh with config-based version selector
- Add /aztec:detect-version command to scan Nargo.toml
- Update CLAUDE.md with version detection instructions
- Update README.md and NETWORK.md documentation
- Bump plugin version to 2.0.0

The plugin now:
- Auto-detects version from Nargo.toml tag patterns
- Defaults to devnet if no version specified
- Works without requiring git (marketplace compatible)
- Stores version choice in .aztec-version config file

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
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.

1 participant