dbx-tools-core
Dependency-free Python configuration and identity helpers shared by dbx-tools packages.
Install from PyPI:
pip install dbx-tools-core
To install the current main branch directly from the repository instead:
pip install "dbx-tools-core @ git+https://github.com/reggie-db/dbx-tools.git@main#subdirectory=packages/py/core"
Key features
config.text()resolves scoped keys from the process environment, then the nearest project.envfile, then validated Databricks bundle JSON..env.<NODE_ENV>wins over.env, withproduction/prodanddevelopment/devtreated as aliases.- Bundle validation stays lazy: the Databricks CLI runs only after environment and dotenv lookup miss, and current-working-directory results are cached.
- Deployed Databricks Apps skip local files and bundle validation because the platform has already populated real environment variables.
- String, boolean, positive-number, positive-integer, and list helpers use the
same loose configuration coercions as
@dbx-tools/core. - Stable-key, FNV hash, and identifier functions preserve deterministic Node and Python identity contracts.
Quick start
from dbx_tools.core import config
host = config.text("HOST", {"prefix": "SMTP"})
port = config.positive_int(None, "PORT", 587, {"prefix": "SMTP"})
The default key order for HOST with prefix SMTP is
DBX_TOOLS_SMTP_HOST, SMTP_HOST, then HOST. Pass config.ENV_ONLY when a
caller must read the exact process environment without local file fallbacks.
Modules
config— layered environment, dotenv, and Databricks bundle configuration;hash.fnv_hash()— the single-string subset of TypeScriptfnvHashWithOptions, including UTF-16 code-unit hashing and base-32 output;object.to_stable_key()— strict structured identity canonicalization;string.to_identifier()— readable identifier tokenization, with the same hyphen default as TypeScript and an explicit delimiter override for consumers such as the underscore-delimited Postgres bus channel.
The identity functions exist so Python packages do not copy the TypeScript
algorithms locally and silently drift. Their shared behavior is tested from
packages/test/polyglot/fixtures/core/fixture.json. The config loader has
Python filesystem/subprocess parity tests alongside the package.
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 dbx_tools_core-0.6.85.tar.gz.
File metadata
- Download URL: dbx_tools_core-0.6.85.tar.gz
- Upload date:
- Size: 8.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e718e0be37aa9dd36893b7ad2161b3c26b7f7387a4563e4c3ff573b0703e2bf6
|
|
| MD5 |
7f3dae443530f8629199d208a4edf5df
|
|
| BLAKE2b-256 |
999c15c3424b2ff657e3b7fe3b4ec61b8d729b061bf75f8b355912dc487dfe59
|
Provenance
The following attestation bundles were made for dbx_tools_core-0.6.85.tar.gz:
Publisher:
python-release.yml on reggie-db/dbx-tools
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
dbx_tools_core-0.6.85.tar.gz -
Subject digest:
e718e0be37aa9dd36893b7ad2161b3c26b7f7387a4563e4c3ff573b0703e2bf6 - Sigstore transparency entry: 2341397819
- Sigstore integration time:
-
Permalink:
reggie-db/dbx-tools@ca10727ab405d1246f934fa198869c8c292b0917 -
Branch / Tag:
refs/tags/v0.6.85 - Owner: https://github.com/reggie-db
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-release.yml@ca10727ab405d1246f934fa198869c8c292b0917 -
Trigger Event:
push
-
Statement type:
File details
Details for the file dbx_tools_core-0.6.85-py3-none-any.whl.
File metadata
- Download URL: dbx_tools_core-0.6.85-py3-none-any.whl
- Upload date:
- Size: 9.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
faa695847232cda28372be532080a7d2f9db8a26072f2708e31323e71378043e
|
|
| MD5 |
e8203e6969e0d602b2dd772dc5c753f9
|
|
| BLAKE2b-256 |
91796303ef22e3e65e7edb3fd3eb08a6b957e6786ced3c889c17386d057040e8
|
Provenance
The following attestation bundles were made for dbx_tools_core-0.6.85-py3-none-any.whl:
Publisher:
python-release.yml on reggie-db/dbx-tools
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
dbx_tools_core-0.6.85-py3-none-any.whl -
Subject digest:
faa695847232cda28372be532080a7d2f9db8a26072f2708e31323e71378043e - Sigstore transparency entry: 2341397827
- Sigstore integration time:
-
Permalink:
reggie-db/dbx-tools@ca10727ab405d1246f934fa198869c8c292b0917 -
Branch / Tag:
refs/tags/v0.6.85 - Owner: https://github.com/reggie-db
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-release.yml@ca10727ab405d1246f934fa198869c8c292b0917 -
Trigger Event:
push
-
Statement type: