Skip to main content

CubeToolkit

CubeToolkit is a CLI toolkit to help with the development of [CubicWeb](https://www.cubicweb.org/)’s cubes. The idea is to put mostly all tools and scripts in the same place.

Installation

pip install –user cubetoolkit

Available tools

generate-pyramid-ini

This tool generates the needed pyramid.ini file for instances using secure random generated secrets.

Usage:

# this will print the generated file on the standard output cubetoolkit generate-pyramid-ini

# this will put the file in the instance folder if not present cubetoolkit generate-pyramid-ini –instance instanceName # or cubetoolkit generate-pyramid-ini -i instanceName

# this will in addition overwrite an existing pyramid.ini file cubetoolkit generate-pyramid-ini –instance instanceName -f

autoupgradedependencies

This tool is meant to upgrades the dependencies of a CubicWeb cube by parsing its __pkginfo__.py and trying to upgrade each of its dependencies one by one and running tests in the middle.

The algorithm is the following one:

  • find __pkginfo__.py either in the root of the project or in cubicweb_{project_name}

  • parse it, extract the values of __depends__

  • merge those informations with pypi’s one

  • only keep the packages that can be upgraded

  • for all upgradables cubes:
    • try to upgrade to the latest version

    • check if the cube has changed to a new-style cube

    • if so update the imports

    • run tests (a command provided by the user)
      • if the tests successed, commit

      • else, redo the previous step but next upgradable version by next upgradable version until you find the first buggy one, in the case the previous one is the good one, commit it

  • redo the same operations for dependencies that aren’t cube without the upgrade part

  • display of summary of what has been done and which upgrades failed and point to their tests logs

  • exit

Usage:

In the folder where the .hg is in a classic cube.

cubetoolkit autoupgradedependencies “test command”

Examples:

cubetoolkit autoupgradedependencies “tox -e py27 –recreate” cubetoolkit autoupgradedependencies “py.test tests”

generate-doc

This tool will generate a base documentation for a cube using sphinx-apidoc to expose the module content in the doc.

Only works for new-style cube.

Usage:

# in the same directory that the cubicweb_$cube directory cubetoolkit generate-doc

to-newstyle-cube

This tool by nsukami will do /most/ of the work to migrate a cube in the oldstyle format to the new one.

Usage:

cubetoolkit to-newstyle-cube /path/to/cube

Metadata

Release files for cubetoolkit 0.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cubetoolkit 0.3.1
File Size Uploaded Provenance Actions
cubetoolkit-0.3.1.tar.gz 9.9 kB Without provenance Details for cubetoolkit-0.3.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for cubetoolkit 0.3.1
File Interpreter ABI Platform Actions
cubetoolkit-0.3.1-py2-none-any.whl Python 2 none any Details for cubetoolkit-0.3.1-py2-none-any.whl

Total release size: 19.5 kB

Release files / cubetoolkit-0.3.1.tar.gz

Download URL cubetoolkit-0.3.1.tar.gz
Size 9.9 kB
Tags Source
SHA-256 checksum
How to use checksums
e5032d3186ee620581b77204f93c29543a67e93c9d57842c86993f5a9d17795a
BLAKE2b-256 checksum
How to use checksums
412891cbc72643f96e1c4017068b391f49c7040c84792a438387594d8a881549
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via Python-urllib/2.7

Release files / cubetoolkit-0.3.1-py2-none-any.whl

Download URL cubetoolkit-0.3.1-py2-none-any.whl
Size 9.6 kB
Tags Python 2
SHA-256 checksum
How to use checksums
d4f218dfdd3b1d9b039a5ced07c3ffeb08f24f0fa45a92a5795a8d2c1b9b1f58
BLAKE2b-256 checksum
How to use checksums
86b0fece9ca478b1cbc02a7d8286988b1e8b631560361100b461ed8a8d9a60be
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via Python-urllib/2.7

Security for cubetoolkit 0.3.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page