fpy

(★ 12)

Fpy: an advanced sequencing language for F-Prime

File Explorer

  • .gitignore
  • .gitmodules
  • .pre-commit-config.yaml
  • CLAUDE.md
  • CMakeLists.txt
  • fpy_logo.png
  • LICENSE
  • pyproject.toml
  • README.md
  • SEQ_ARGS.md
  • settings.ini
  • setup.py
  • SPEC.md
  • uv.lock
  • VERSIONING.md

# Use via CDN

jsDelivr

jsDelivr serves any public GitHub repository as a CDN with zero setup. Pick a version and a file to get a ready-to-paste link and snippet.

Command Glossary

Commands referenced in this DOCs, explained below.

🔍

cargo build

View Details ▼

Compile a local package and all of its dependencies.

cargo {{[b|build]}}

Build the package or packages defined by the `Cargo.toml` manifest file in the local path:

cargo {{[b|build]}} {{[-r|--release]}}

Build artifacts in release mode, with optimizations:

cargo {{[b|build]}} --locked

Require that `Cargo.lock` is up to date:

🔍

elif

View Details ▼

This shell keyword is used in combination with `if` and `else` to define a code branch.

tldr if

View documentation for `if` command:

🔍

git clone

View Details ▼

Clone an existing repository.

git clone {{remote_repository_location}} {{path/to/directory}}

Clone an existing repository into a new directory (the default directory is the repository name):

git clone --recursive {{remote_repository_location}}

Clone an existing repository and its submodules:

git clone {{[-n|--no-checkout]}} {{remote_repository_location}}

Clone only the `.git` directory of an existing repository:

🔍

git commit

View Details ▼

Commit files to the repository.

git commit

Open an editor to write a message and commit staged files to the repository:

git commit {{[-m|--message]}} "{{message}}"

Commit staged files to the repository with the specified message:

git commit {{[-F|--file]}} {{path/to/commit_message_file}}

Commit staged files with a message read from a file:

🔍

git submodule

View Details ▼

Inspect, update, and manage submodules.

git submodule

View existing submodules and the checked-out commit for each one:

git submodule update --init --recursive

Install a repository's submodules (listed in `.gitmodules`):

git submodule add {{repository_url}}

Add a Git repository as a submodule of the current one:

🔍

pip install

View Details ▼

Install Python packages.

pip install {{package1 package2 ...}}

Install one or more packages:

pip install {{package1 package2 ...}} {{[-U|--upgrade]}}

Upgrade all specified packages to the latest version, installing any that are not already present:

pip install {{package}}=={{version}}

Install a specific version of a package:

🔍

pytest

View Details ▼

Run Python tests.

pytest {{path/to/test_file1.py path/to/test_file2.py ...}}

Run tests from specific files:

pytest -k {{expression}}

Run tests with names matching a specific [k]eyword expression:

pytest {{[-x|--exitfirst]}}

Exit as soon as a test fails or encounters an error:

🔍

rustup update

View Details ▼

Update Rust toolchains and `rustup` itself (if not installed using a package manager).

rustup update

Update all installed toolchains and `rustup`:

rustup update {{toolchain}}

Install or update a specific toolchain (see `rustup help toolchain` for more information):

🔍

timeout

View Details ▼

Run a command with a time limit.

timeout 3s sleep 10

Run `sleep 10` and terminate it after 3 seconds:

timeout {{[-s|--signal]}} {{INT|HUP|KILL|...}} {{5s}} {{sleep 10}}

Send a signal to the command after the time limit expires (`TERM` by default, `kill -l` to list all signals):

timeout {{[-v|--verbose]}} {{0.5s|1m|1h|1d|...}} {{command}}

Send verbose output to `stderr` showing signal sent upon timeout:

🔍

uv run

View Details ▼

Run a command or script in the project environment.

uv run {{path/to/script.py}}

Run a Python script:

uv run {{[-m|--module]}} {{module_name}}

Run a Python module:

uv run {{[-w|--with]}} {{package}} {{command}}

Run a command with additional packages installed temporarily:

🔍

uv sync

View Details ▼

Update the project's environment to match the lockfile.

uv sync

Sync the project environment with the lockfile:

uv sync --all-extras

Sync and include all optional dependencies:

uv sync --extra {{extra_name}}

Sync with specific optional dependencies:

// repository documentation