Skip to content

Latest commit

 

History

History
215 lines (160 loc) · 4.64 KB

File metadata and controls

215 lines (160 loc) · 4.64 KB

Release Guide

Building the Extension

Prerequisites

  1. Node.js and npm installed
  2. Visual Studio Code or Cursor installed

Build Steps

  1. Install dependencies

    npm install
  2. Compile TypeScript

    npm run compile
  3. Package the extension

    npm install -g @vscode/vsce
    vsce package

    This creates a .vsix file (e.g., command-completion-0.0.1.vsix)

Installing Locally for Testing

Option 1: Install from VSIX (Recommended)

  1. Build the extension (see above)
  2. In VSCode/Cursor:
    • Open Command Palette (Cmd+Shift+P or Ctrl+Shift+P)
    • Type "Extensions: Install from VSIX"
    • Select the .vsix file you just built
  3. Reload the window
  4. Test the extension!

Option 2: Run in Development Mode

  1. Open this project in VSCode/Cursor
  2. Press F5 to launch Extension Development Host
  3. Test in the new window that opens

Testing Before Release

Test Checklist

  • Test with Java files

    • Generate Constructors works
    • Generate Getters/Setters works
    • Generate Tests works
    • Extract refactorings work
    • Lazy actions are filtered out (don't appear)
  • Test with TypeScript/JavaScript files

    • Refactorings work
    • Navigation commands work (Go to Definition, Find References, etc.)
  • Test with other languages (Python, Go, etc.)

    • Commands appear and work
  • Test edge cases

    • Multiple dots (.., ...) work
    • Commands appear after normal autocomplete
    • Dots are removed when command executes

Recommended Testing Period

Test the extension for 3-7 days with your daily workflow before publishing.

Publishing to VSCode Marketplace

Prerequisites

  1. Create a Microsoft account (if you don't have one)
  2. Create an Azure DevOps organization
  3. Get a Personal Access Token (PAT)
    • Go to https://dev.azure.com
    • User Settings → Personal Access Tokens
    • Create new token with Marketplace (Manage) scope

Publishing Steps

  1. Login to vsce

    vsce login <publisher-name>

    Enter your PAT when prompted

  2. Create publisher (first time only)

    vsce create-publisher <publisher-name>
  3. Update package.json Add your publisher name:

    {
      "publisher": "your-publisher-name",
      ...
    }
  4. Publish

    vsce publish

    Or publish a specific version:

    vsce publish minor  # 0.0.1 -> 0.1.0
    vsce publish patch  # 0.0.1 -> 0.0.2
    vsce publish major  # 0.0.1 -> 1.0.0

Publishing to Cursor

Cursor uses the same VSCode marketplace, so once published to VSCode, it will automatically be available in Cursor!

Version Management

Semantic Versioning

  • Major (1.0.0): Breaking changes
  • Minor (0.1.0): New features, backwards compatible
  • Patch (0.0.1): Bug fixes

Before Each Release

  1. Update version in package.json
  2. Update CHANGELOG.md with changes
  3. Test thoroughly
  4. Commit changes
  5. Create git tag: git tag v0.0.1
  6. Push tag: git push --tags
  7. Build and publish

Marketplace Listing

Required Information

  • Display Name: Command Completion
  • Description: Postfix completion for IDE commands - access quick fixes, refactorings, and navigation via dot notation
  • Categories: Other, Programming Languages
  • Tags: refactoring, navigation, productivity, postfix, code-actions
  • Icon: (Optional) Create a 128x128 PNG icon
  • Repository: Your GitHub repository URL
  • License: MIT

README for Marketplace

The marketplace will use your README.md, so make sure it's well-formatted with:

  • Clear description
  • Screenshots/GIFs
  • Usage examples
  • Feature list
  • Known limitations

Troubleshooting

"vsce: command not found"

Install vsce globally:

npm install -g @vscode/vsce

"Missing publisher name"

Add to package.json:

{
  "publisher": "your-publisher-name"
}

"Missing repository"

Add to package.json:

{
  "repository": {
    "type": "git",
    "url": "https://github.com/yourusername/vscommandcompletion.git"
  }
}

Post-Release

  1. Monitor issues on GitHub
  2. Respond to user feedback
  3. Plan next version based on feedback
  4. Keep dependencies updated

Quick Commands Reference

# Development
npm install          # Install dependencies
npm run compile      # Compile TypeScript
npm run watch        # Watch mode for development

# Building
vsce package         # Create .vsix file

# Publishing
vsce login           # Login to marketplace
vsce publish         # Publish new version
vsce publish minor   # Bump minor version and publish