No project description provided
Project description
kraken-common
The kraken-common package is the shared utility namespace for the Kraken build system and
the Kraken wrapper CLI. It contains various generic utilities, as well as the tools for loading
the metadata of a Kraken project.
Aside from general utilities that are used by one, the other or both, this package also implements the shared logic for executing Kraken Python and BuildDSL build scripts and retrieving its metadata.
Script runners
The following types of Kraken script runners are currently available via the kraken.common package:
PythonScriptRunner: Matches akraken.pyor.kraken.pyfile and runs it as a pure Python script.BuildDslScriptRunner: Matches akraken.buildor.kraken.buildfile and runs it as abuilddslscript, with thebuildscript()function being available by default.
Buildscript metadata
A Kraken project contains at least one .kraken.py file (build script) and maybe a .kraken.lock
file (lock file). The build script at the root of a project may contain hints for the Kraken wrapper
CLI to be able to correctly bootstrap an environment that contains the Kraken build system.
| Python | BuildDSL |
|---|---|
from kraken.common import buildscript
buildscript(
requirements=["kraken-std ^0.4.16"],
)
|
buildscript {
requires "kraken-std ^0.4.16"
}
|
The way that this works is that the buildscript() function raises an exception that aborts the execution
of the build script before the rest of the script is executed, and the exception contains the metadata.
When the build script is executed by the Kraken build system instead, the function does nothing.
The API to capture the data passed to a call to the buildscript() function is as follows:
from kraken.common import BuildscriptMetadata
with BuildscriptMetadata.capture() as metadata_future:
...
metadata = metadata_future.result()
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file kraken_common-0.31.7.tar.gz.
File metadata
- Download URL: kraken_common-0.31.7.tar.gz
- Upload date:
- Size: 25.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.9.6 readme-renderer/37.3 requests/2.30.0 requests-toolbelt/1.0.0 urllib3/2.0.2 tqdm/4.65.0 importlib-metadata/6.6.0 keyring/23.13.1 rfc3986/2.0.0 colorama/0.4.6 CPython/3.10.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6e2c3acf02797533d1ff45af0214c14059fdf3bbd24ec2c725d61df8174bfc48
|
|
| MD5 |
76078b4d74f79a00693bc7bbef6537b2
|
|
| BLAKE2b-256 |
8fcd3d815db492b098a1a6bc62d49e66450ecbcde3767ddef7ba97355bdfccce
|
File details
Details for the file kraken_common-0.31.7-py3-none-any.whl.
File metadata
- Download URL: kraken_common-0.31.7-py3-none-any.whl
- Upload date:
- Size: 33.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.9.6 readme-renderer/37.3 requests/2.30.0 requests-toolbelt/1.0.0 urllib3/2.0.2 tqdm/4.65.0 importlib-metadata/6.6.0 keyring/23.13.1 rfc3986/2.0.0 colorama/0.4.6 CPython/3.10.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bc224d5886536a2996a6306f12f366114511cf10a2c8404dc693f57ddc2fb4a0
|
|
| MD5 |
97bd5e88fdb7894dc0c038ad38ecbf25
|
|
| BLAKE2b-256 |
bc33cd7c3336e15cc49c69fcf33fd0800a6d9dc99828c68dc9a50c23a6e67cda
|