Skip to main content

A Python package for simulating gravitational wave signals

Project description

gwmock-signal

Python CI pre-commit.ci status Documentation Status codecov PyPI Version Python Versions License Security: bandit DOI SPEC 0 — Minimum Supported Dependencies

A Python package for simulating gravitational wave signals.

Installation

We recommend using uv to manage virtual environments for installing gwmock-signal.

If you don't have uv installed, you can install it with pip. See the project pages for more details:

  • Install via pip: pip install --upgrade pip && pip install uv
  • Project pages: uv on PyPI | uv on GitHub
  • Full documentation and usage guide: uv docs

Requirements

  • Python 3.12-3.13 (We adopt the SPEC 0 policy for the Python support version)
  • We do not support Python 3.14 because lalsuite does not have a wheel for Python 3.14 yet (#825)
  • Operating System: Linux, or macOS

Note: The package is built and tested against Python 3.12-3.13. When creating a virtual environment with uv, specify the Python version to ensure compatibility: uv venv --python 3.12 (replace 3.12 with your preferred version in the 3.12-3.14 range). This avoids potential issues with unsupported Python versions.

Install from PyPI

The recommended way to install gwmock-signal is from PyPI:

# Create a virtual environment (recommended with uv)
uv venv --python 3.12
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
uv pip install gwmock-signal

Optional Dependencies

For development or specific features:

# Development dependencies (testing, linting, etc.)
uv pip install gwmock-signal[dev]

# Documentation dependencies
uv pip install gwmock-signal[docs]

Install from Source

For the latest development version:

git clone git@github.com:Leuven-Gravity-Institute/gwmock-signal.git
cd gwmock-signal
# Create a virtual environment (recommended with uv)
uv venv --python 3.12
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
uv sync

Development Installation

To set up for development:

git clone git@github.com:Leuven-Gravity-Institute/gwmock-signal.git
cd gwmock-signal

# Create a virtual environment (recommended with uv)
uv venv --python 3.12
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
uv sync --extra dev

# Install the commitlint dependencies
npm ci

# Install pre-commit hooks
uv run pre-commit install
uv run pre-commit install --hook-type commit-msg

Verify Installation

Check that gwmock-signal is installed correctly:

gwmock-signal --help
python -c "import gwmock_signal; print(gwmock_signal.__version__)"

Documentation

  • Site: gwmock-signal documentation
  • User guide: overview and Examples (use-case walkthroughs); API details stay in API
  • API reference: signatures, types, and exceptions (mkdocstrings)

Build locally: uv sync --extra docs && uv run zensical serve (or zensical build for static output in site/).

Contributing

Contributions are welcome!

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests
  5. Submit a pull request

Release Schedule

Releases follow a fixed schedule: every Tuesday at 00:00 UTC, unless an emergent bugfix is required. This ensures predictable updates while allowing flexibility for critical issues. Users can view upcoming changes in the draft release on the GitHub Releases page.

Testing

Run the test suite:

uv run pytest

License

This project is licensed under the BSD 3-Clause License - see the LICENSE file for details.

Support

For questions or issues, please open an issue on GitHub or contact the maintainers.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gwmock_signal-0.3.0.tar.gz (168.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gwmock_signal-0.3.0-py3-none-any.whl (33.7 kB view details)

Uploaded Python 3

File details

Details for the file gwmock_signal-0.3.0.tar.gz.

File metadata

  • Download URL: gwmock_signal-0.3.0.tar.gz
  • Upload date:
  • Size: 168.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for gwmock_signal-0.3.0.tar.gz
Algorithm Hash digest
SHA256 db8e0ec4de54c6666d58e8a2ece48ffc7c3ea239f5c711734fdebd90651a7a20
MD5 608fb0beebfceb3c4466c9d34c807163
BLAKE2b-256 17d7078610820235b07f871719b85d54460212a06450e05da6a1d0764beb128c

See more details on using hashes here.

File details

Details for the file gwmock_signal-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: gwmock_signal-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 33.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for gwmock_signal-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 47666d00ea2b1718f23787e7e189ee1c4df5eb53a0b4e5c7a0dd559ce058f9b3
MD5 9e740a9cd30532b02d81f85cc73c50f2
BLAKE2b-256 ceda7244685b000bb7aacfb1b211ec8712b0758c1998be60c49be40b6c665ea6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page