This commit is contained in:
Yohann Boniface
2026-09-25 02:57:13 +00:00
committed by GitHub
5 changed files with 2 additions and 225 deletions

View File

@@ -1,161 +0,0 @@
{
lib,
stdenv,
python3,
fetchFromGitHub,
# tests
addBinToPathHook,
gitMinimal,
versionCheckHook,
writableTmpDirAsHomeHook,
}:
let
python = python3.override {
self = python;
packageOverrides = self: super: {
pydantic = super.pydantic_1;
# python-on-whales is the only aiohttp dependency that is incompatible with pydantic_1
# Override aiohttp to remove this dependency
aiohttp = super.aiohttp.overridePythonAttrs (old: {
# Remove python-on-whales from nativeCheckInputs
nativeCheckInputs = lib.filter (p: (p.pname or "") != "python-on-whales") old.nativeCheckInputs;
disabledTestPaths = [
# Requires python-on-whales
"tests/autobahn/test_autobahn.py"
]
++ (old.disabledTestPaths or [ ]);
});
databricks-sdk = super.databricks-sdk.overridePythonAttrs (old: {
# Tests require langchain-openai which is incompatible with pydantic_1
doCheck = false;
});
versioningit = super.versioningit.overridePythonAttrs (old: {
# Tests fail with pydantic_1
# AttributeError: type object 'CaseDetails' has no attribute 'model_validate_...
doCheck = false;
});
};
};
in
python.pkgs.buildPythonApplication rec {
pname = "dbx";
version = "0.8.19";
pyproject = true;
src = fetchFromGitHub {
owner = "databrickslabs";
repo = "dbx";
tag = "v${version}";
hash = "sha256-DNVJcCDHyWCorTxNN6RR6TWNF2MrysXT44UbwegROTU=";
};
postPatch = ''
# Probably a typo
substituteInPlace src/dbx/custom.py \
--replace-fail "_make_rich_rext" "_make_rich_text"
# dbx pins an old version of typer.
# In newer versions of typer, `callback` does not accept the 'name' argument anymore.
substituteInPlace src/dbx/cli.py \
--replace-fail 'name="dbx",' ""
# Fixes: TypeError: 'NoneType' object is not iterable
substituteInPlace src/dbx/utils/common.py \
--replace-fail \
'[t.split("=") for t in multiple_argument]' \
'[t.split("=") for t in multiple_argument] if multiple_argument else []'
'';
pythonRelaxDeps = [
"cryptography"
"databricks-cli"
"pydantic"
"rich"
"tenacity"
"typer"
];
pythonRemoveDeps = [ "mlflow-skinny" ];
build-system = with python.pkgs; [
hatch-vcs
hatchling
];
dependencies = with python.pkgs; [
aiohttp
click
cookiecutter
cryptography
databricks-cli
jinja2
mlflow
pathspec
pydantic
pyyaml
requests
retry
rich
setuptools
tenacity
typer
watchdog
];
optional-dependencies = with python.pkgs; {
aws = [ boto3 ];
azure = [
azure-storage-blob
azure-identity
];
gcp = [ google-cloud-storage ];
};
nativeCheckInputs = [
addBinToPathHook
gitMinimal
versionCheckHook
writableTmpDirAsHomeHook
]
++ (with python.pkgs; [
pytest-asyncio
pytest-mock
pytest-timeout
pytest-xdist
pytestCheckHook
]);
disabledTests = [
# Fails because of dbfs CLI wrong call
"test_dbfs_unknown_user"
"test_dbfs_no_root"
# Requires pylint, prospector, pydocstyle
"test_python_basic_sanity_check"
# FileNotFoundError: [Errno 2] No such file or directory: '/build/tmph3veuluv...
"test_load_file"
"test_storage_serde"
];
disabledTestPaths = lib.optionals stdenv.hostPlatform.isDarwin [
# ERROR fsevents:fsevents.py:310 Unhandled exception in FSEventsEmitter
# SystemError: Cannot start fsevents stream. Use a kqueue or polling observer instead.
"tests/unit/sync/test_event_handler.py"
];
pythonImportsCheck = [ "dbx" ];
meta = {
description = "CLI tool for advanced Databricks jobs management";
homepage = "https://github.com/databrickslabs/dbx";
changelog = "https://github.com/databrickslabs/dbx/blob/v${version}/CHANGELOG.md";
license = lib.licenses.databricks-dbx;
maintainers = [ ];
};
}

View File

@@ -1,62 +0,0 @@
{
lib,
buildPythonPackage,
click,
configparser,
decorator,
fetchFromGitHub,
mock,
oauthlib,
pyjwt,
pytestCheckHook,
requests,
requests-mock,
six,
tabulate,
}:
buildPythonPackage rec {
pname = "databricks-cli";
version = "0.18.0";
format = "setuptools";
src = fetchFromGitHub {
owner = "databricks";
repo = "databricks-cli";
tag = version;
hash = "sha256-dH95C2AY/B6F9BROr6rh+gVtKqxsg1gyEU5MzCd5aqs=";
};
propagatedBuildInputs = [
click
configparser
oauthlib
pyjwt
requests
requests-mock
six
tabulate
];
nativeCheckInputs = [
decorator
mock
pytestCheckHook
];
disabledTestPaths = [
# Disabled due to option parsing which we don't have
"integration/dbfs/test_integration.py"
"integration/workspace/test_integration.py"
];
pythonImportsCheck = [ "databricks_cli" ];
meta = {
description = "Command line interface for Databricks";
homepage = "https://github.com/databricks/databricks-cli";
changelog = "https://github.com/databricks/databricks-cli/releases/tag/${version}";
license = lib.licenses.asl20;
maintainers = [ ];
};
}

View File

@@ -682,6 +682,7 @@ mapAliases {
dbus-sharp-2_0 = throw "'dbus-sharp-2_0' has been removed as it was unmaintained and had no dependents"; # Added 2025-08-25
dbus-sharp-glib-1_0 = throw "'dbus-sharp-glib-1_0' has been removed as it was unmaintained and had no dependents"; # Added 2025-08-25
dbus-sharp-glib-2_0 = throw "'dbus-sharp-glib-2_0' has been removed as it was unmaintained and had no dependents"; # Added 2025-08-25
dbx = throw "'dbx' has been removed. Use 'databricks-cli' instead."; # Added 2026-09-04
dclib = throw "'dclib' has been removed as it is unmaintained for 16 years and broken"; # Added 2025-05-25
deadpixi-sam = throw "'deadpixi-sam' has been renamed to/replaced by 'deadpixi-sam-unstable'"; # Converted to throw 2025-10-27
deco = throw "'deco' has been removed as it is unused"; # Added 2025-12-18

View File

@@ -177,6 +177,7 @@ mapAliases {
cx_oracle = throw "'cx_oracle' has been renamed to/replaced by 'cx-oracle'"; # Converted to throw 2025-10-29
dalle-mini = throw "'dalle-mini' has been removed due to lack of upstream maintenance"; # added 2026-02-26
dask-yarn = throw "'dask-yarn' has been removed due to lack of upstream maintenance"; # added 2026-07-06
databricks-cli = throw "'databricks-cli' has been removed from the Python package set. Use 'pkgs.databricks-cli' instead."; # Added 2026-09-04
dataclasses-serialization = throw "'dataclasses-serialization' has been removed due to lack of upstream maintenance."; # added 2026-07-14
datashape = throw "'datashape' has been removed as it was unmaintained upstream"; # Added 2026-03-22
datatable = throw "'datatable' has been removed due to lack of upstream maintenance"; # added 2026-02-02

View File

@@ -4068,8 +4068,6 @@ self: super: with self; {
databases = callPackage ../development/python-modules/databases { };
databricks-cli = callPackage ../development/python-modules/databricks-cli { };
databricks-connect = callPackage ../development/python-modules/databricks-connect { };
databricks-sdk = callPackage ../development/python-modules/databricks-sdk { };