OpenParable
Skip to content
← Back to skills

Release Process

DevOps & Security
release-process

Release Process is an Agent Skill for devops & security published in the fossasia/visdom repository on GitHub: a SKILL.md instruction file an AI agent can load to do this task.

Version bumping, release workflow, and PyPI publishing process for Visdom

View on GitHub ↗
QUICK START

How to use this skill

Bring this guide into your coding agent with a prompt tailored to the tool you use.

  1. Open your project in Codex.
  2. Copy and paste the prompt below.
  3. Review files and risks before approving any action.
Prompt to paste
Inspect the Agent Skill at https://github.com/fossasia/visdom/blob/HEAD/.agents/skills/release-process/SKILL.md and all supporting files. Report provenance, permissions, scripts, dependencies, and security risks. Propose an exact installation into .agents/skills/release-process, but wait for my approval before writing files or running scripts.

Copying this prompt does not install or run the skill. Review third-party files before use.

Skill: Release Process

When to Use

Use this skill when preparing a new release or updating the version.

Core Workflow

  1. Update version in py/visdom/VERSION following Semantic Versioning.

  2. Ensure all CI checks pass:

    • npm run lint (JavaScript)
    • black py (Python)
    • pre-commit run --all-files
    • Cypress tests pass
  3. Submit PR to master with version change.

  4. On merge to master, automated workflows handle:

    • update-js-build-files.yml: Compiles main.js if js/** changed
    • pypi.yml: Creates GitHub release (v<VERSION>) and publishes to PyPI

Version Details

  • Version stored as single-line plaintext in py/visdom/VERSION
  • setup.py reads this file at build time
  • build.py uses version to track CDN dependency freshness
  • PyPI build uses python setup.py sdist

Guardrails

  • Follow Semantic Versioning strictly
  • Never manually commit compiled JS files — let the CI workflow handle it
  • Ensure demo.py runs cleanly before releasing
  • Do not push directly to master

Documentation

  • Skill reference
  • py/visdom/VERSION
  • setup.py
  • .github/workflows/pypi.yml
  • .github/workflows/update-js-build-files.yml
  • AGENTS.md
  • CONTRIBUTING.md

Assets

  • See assets/README.md and store templates/resources in assets/.

Tests

  • Follow the default flow in references/TESTS.md.