Skip to main content

Conan recipe user interface

Project description

cruiz

Conan recipe user interface

Written by Mark Final.

main action workflow

Documentation

See the documentation at Read The Docs.

Prerequisites

  • Intel x86_64 platforms:
    • Windows 10+
    • Linux (CentOS 7.5+/Ubuntu 18+)
    • macOS (11.0+)
  • Apple Silicon platforms:
    • macOS (11.0+)
  • Python 3.8-3.11
  • Conan 1.x (from 1.17.1 onwards) and 2.x (from 2.0.7 onwards)

All other Python dependencies are installed when the package is installed.

In order to use the dependency graph visualisation, an additional installation of GraphViz is required from https://graphviz.org/download/. Assign the installed location to the preferences.

Conan versions

Cruiz does not depend directly on the Conan package in its UI. Instead, it uses child processes to run Conan APIs, which are dependent on the Conan version installed.

Cruiz does not support multiple Conan versions simultaneously in the same process. Instead, the UI dynamically changes by detecting the Conan version installed at startup. You will therefore see a slightly different UI depending on which Conan you have. Note the Conan version detected is shown on the status bar in the bottom right corner of the UI.

Getting started

If you have cloned this repository, you will need:

  1. A Python 3 environment. Make a virtual env if necessary. python3 -m venv <folder to be the env>

    • Activate the virtual env with either:
      • source <folder to be the env>/bin/activate (Linux/macOSX)
      • <folder to be the env>\Scripts\activate.bat (Windows cmd)
      • source <folder to be the env>\Scripts\activate (Windows bash)
  2. Ensure latest pip and wheel are being used. python -m pip install -U pip wheel

  3. Install cruiz and its dependencies

    • From your local clone:
      • pip install -r requirements.txt
      • pip install --no-build-isolation -e .
  4. Run from any directory

    • From your Python environment shell, cruiz or python -m cruiz

Step 3 will need to be re-run when the Python dependencies, or the resource files used, change.

Linting

Install linting dependencies with pip install -r requirements_dev.txt.

cruiz uses tox to automate linting. Use tox -e lint.

flake8 is used for lint checks, specifically using black as the formatter.

mypy is used for static type checking and validating type annotations.

Python 3.10+ is highly recommended to run the linting steps.

Making Python packages

python setup.py sdist for a source distribution.

pip wheel --no-deps . for a wheel.

Acknowledgements

Many thanks to Foundry and its developers for support, inspiration, and testing in making cruiz.

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

cruiz-1.4.0a4.tar.gz (310.4 kB view details)

Uploaded Source

Built Distribution

cruiz-1.4.0a4-py3-none-any.whl (472.1 kB view details)

Uploaded Python 3

File details

Details for the file cruiz-1.4.0a4.tar.gz.

File metadata

  • Download URL: cruiz-1.4.0a4.tar.gz
  • Upload date:
  • Size: 310.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for cruiz-1.4.0a4.tar.gz
Algorithm Hash digest
SHA256 14772f894a838c3274d6c5e216a77e1d1fb0cf43ec910d62268b2409dfa879fa
MD5 059b37ffbbb732732af7a4af7e0a7a93
BLAKE2b-256 b0a3f0390e764b4fea2119c5edb98187c64f26e76d38dd4ed592f78715a46423

See more details on using hashes here.

File details

Details for the file cruiz-1.4.0a4-py3-none-any.whl.

File metadata

  • Download URL: cruiz-1.4.0a4-py3-none-any.whl
  • Upload date:
  • Size: 472.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for cruiz-1.4.0a4-py3-none-any.whl
Algorithm Hash digest
SHA256 2cf967b3661c5cd6ebcfef99e8f082a60b9e217e13cf37ab54062bad1992b8b8
MD5 3261e727d3690ad94023d0e6e739678d
BLAKE2b-256 56de3113cc519851556b6ae6eb30243e1c52795fc386d52a0a6c1fc7f6f5ce0c

See more details on using hashes here.

Supported by

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