Skip to main content

The ergonomic Ninja-based build system.

Project description


Bob the Builder
License MIT PRs Welcome PyPI Version

The ergonomic Ninja-based build system.

🏃 Getting Started  ·  ⌨️ CLI  ·  🎯 Goals  ·  🙏 Acknowledgements

Getting Started

uv tool install --upgrade bob-build --with bobstd

See the tour!

CLI

You can try these out in the tour as well.

# Build the project in the current directory (you should have a Bobfile).
bob build
# Clean the outputs of Bob.
bob clean
# Build with a specific config.
bob build -c DEBUG=n
# Build with a specific config in a separate build directory, so both consecutive builds are blazingly fast.
bob build -c DEBUG=y --builddir build-debug
# More options, including options passed to Ninja (after --).
bob build --clean -j 4 -- -v
# Create a compile_commands.json.
bob compdb -c DEBUG=n

Goals

Sorted by priority:

  • Writing Bobfiles, writing plugins and rules, and composing Bobfiles should all be easy and feel Pythonic.
  • Type safety should allow for a smooth editing experience and easy-to-debug errors.
  • Plugins should be close to the actual commands rather than lock you in to a specific paradigm.
  • Speed should be fast.

Acknowledgements

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

bob_build-0.1.4.tar.gz (18.5 kB view details)

Uploaded Source

Built Distribution

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

bob_build-0.1.4-py3-none-any.whl (27.4 kB view details)

Uploaded Python 3

File details

Details for the file bob_build-0.1.4.tar.gz.

File metadata

  • Download URL: bob_build-0.1.4.tar.gz
  • Upload date:
  • Size: 18.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.29 {"installer":{"name":"uv","version":"0.11.29","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 bob_build-0.1.4.tar.gz
Algorithm Hash digest
SHA256 8891e46c5d5d0978d19337033fda1b37fcc8bbb589daea4d8ac5cb451491ae25
MD5 12e154f257d79b140afa9801af7b2232
BLAKE2b-256 18217a02d6fa55d0cc8e7efb3bc60aabf20629150bc9e066e8eb3efdec2fe6ed

See more details on using hashes here.

File details

Details for the file bob_build-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: bob_build-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 27.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.29 {"installer":{"name":"uv","version":"0.11.29","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 bob_build-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 711b630c430fbd907dbe1bc7b666f7a8149f3c9979e8a2992f39ae7b8a17adc2
MD5 d9e48370203da27838cb53c76451190c
BLAKE2b-256 cafd307a072aaf50abe696a0d725393d2708e9d0aecd860dd86dc08657482db8

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