Compare commits

..

No commits in common. "da19e35f83f7c3f5bc827d2e82fb2b232a695b62" and "6b53ede822ab937bc03f7299db8691358952e8d1" have entirely different histories.

3 changed files with 43 additions and 352 deletions

84
flake.lock generated
View file

@ -30,11 +30,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1708962818, "lastModified": 1707530346,
"narHash": "sha256-oN4D8YBbwxz/YHyV1i+y+ujUKAmhIeSqGBWFIWyQnGw=", "narHash": "sha256-LGvGeDwQtVQ4Pfa7JJKESAUg3n7Dy9d4kVCZf69kDRY=",
"owner": "catppuccin", "owner": "catppuccin",
"repo": "vscode", "repo": "vscode",
"rev": "49632377cb02b45bc47c929bbc2874de54dbbda2", "rev": "a5c28e9319556c696e184a2f2f49813288063ed6",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -123,11 +123,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1708988456, "lastModified": 1708294481,
"narHash": "sha256-RCz7Xe64tN2zgWk+MVHkzg224znwqknJ1RnB7rVqUWw=", "narHash": "sha256-DZtxmeb4OR7iCaKUUuq05ADV2rX8WReZEF7Tq//W0+Y=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "1d085ea4444d26aa52297758b333b449b2aa6fca", "rev": "a54e05bc12d88ff2df941d0dc1183cb5235fa438",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -165,11 +165,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1709142038, "lastModified": 1708148641,
"narHash": "sha256-ZjP808isgLwuiqxSU1CYFyafm5GF80aYw1CXJbnVsgs=", "narHash": "sha256-UliMMpx84PPA+0mcyBj2yuKNawOX7L4u/wO8j9QGHVk=",
"owner": "Jovian-Experiments", "owner": "Jovian-Experiments",
"repo": "Jovian-NixOS", "repo": "Jovian-NixOS",
"rev": "b83751a057acbb5f989193773841217ddc93d1f8", "rev": "f318a856ff3177fdea6044d6c77dd49992330a31",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -180,11 +180,11 @@
}, },
"nix-flatpak": { "nix-flatpak": {
"locked": { "locked": {
"lastModified": 1708781964, "lastModified": 1708268179,
"narHash": "sha256-qbEZgB1mNuMADLmM64EtcRjDHXR3UFL4xVmoanv9wZU=", "narHash": "sha256-NNVuhf84AeDTxadfSGnFqPHR0ED+QyM2gmu+Wyz6PrY=",
"owner": "gmodena", "owner": "gmodena",
"repo": "nix-flatpak", "repo": "nix-flatpak",
"rev": "09d07c73b4d9771f527a168e0b1b6d8a1f39de28", "rev": "a243cb0522f6240c194b873dde68e25370b06034",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -202,11 +202,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1709045095, "lastModified": 1708267826,
"narHash": "sha256-6PeSdkt9Ey2k6yrRBpTFgS3RxTjyhRHZlR8hhy38xfQ=", "narHash": "sha256-sv5L5iFnXa5wFxMXAEdW7Fcd6dFtAcvDETbKaS7JWZw=",
"owner": "fufexan", "owner": "fufexan",
"repo": "nix-gaming", "repo": "nix-gaming",
"rev": "75625623631c294604b48035db5d95fe8ff08ef3", "rev": "f961c5727fd812c2f0db1425d09ad55b35652587",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -239,11 +239,11 @@
}, },
"nix-impermanence": { "nix-impermanence": {
"locked": { "locked": {
"lastModified": 1708968331, "lastModified": 1706639736,
"narHash": "sha256-VUXLaPusCBvwM3zhGbRIJVeYluh2uWuqtj4WirQ1L9Y=", "narHash": "sha256-CaG4j9+UwBDfinxxvJMo6yOonSmSo0ZgnbD7aj2Put0=",
"owner": "nix-community", "owner": "nix-community",
"repo": "impermanence", "repo": "impermanence",
"rev": "a33ef102a02ce77d3e39c25197664b7a636f9c30", "rev": "cd13c2917eaa68e4c49fea0ff9cada45440d7045",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -259,11 +259,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1708830466, "lastModified": 1708225687,
"narHash": "sha256-nGKe3Y1/jkLR2eh1aRSVBtKadMBNv8kOnB52UXqRy6A=", "narHash": "sha256-NJBDfvknI26beOFmjO2coeJMTTUCCtw2Iu+rvJ1Zb9k=",
"owner": "Mic92", "owner": "Mic92",
"repo": "nix-index-database", "repo": "nix-index-database",
"rev": "f070c7eeec3bde8c8c8baa9c02b6d3d5e114d73b", "rev": "17352eb241a8d158c4ac523b19d8d2a6c8efe127",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -279,11 +279,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1708830466, "lastModified": 1708225687,
"narHash": "sha256-nGKe3Y1/jkLR2eh1aRSVBtKadMBNv8kOnB52UXqRy6A=", "narHash": "sha256-NJBDfvknI26beOFmjO2coeJMTTUCCtw2Iu+rvJ1Zb9k=",
"owner": "Mic92", "owner": "Mic92",
"repo": "nix-index-database", "repo": "nix-index-database",
"rev": "f070c7eeec3bde8c8c8baa9c02b6d3d5e114d73b", "rev": "17352eb241a8d158c4ac523b19d8d2a6c8efe127",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -294,11 +294,11 @@
}, },
"nixos-hardware": { "nixos-hardware": {
"locked": { "locked": {
"lastModified": 1709110790, "lastModified": 1708091350,
"narHash": "sha256-qUk0G9vWX90beOKB1EtLFdeImXAujNi5SP5zTyIEATc=", "narHash": "sha256-o28BJYi68qqvHipT7V2jkWxDiMS1LF9nxUsou+eFUPQ=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"rev": "01467901ec51dd92774040f2b3dff4f21f4e1c45", "rev": "106d3fec43bcea19cb2e061ca02531d54b542ce3",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -328,11 +328,11 @@
}, },
"nixpkgs-raw": { "nixpkgs-raw": {
"locked": { "locked": {
"lastModified": 1708979614, "lastModified": 1708161998,
"narHash": "sha256-FWLWmYojIg6TeqxSnHkKpHu5SGnFP5um1uUjH+wRV6g=", "narHash": "sha256-6KnemmUorCvlcAvGziFosAVkrlWZGIc6UNT9GUYr0jQ=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "b7ee09cf5614b02d289cd86fcfa6f24d4e078c2a", "rev": "84d981bae8b5e783b3b548de505b22880559515f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -343,11 +343,11 @@
}, },
"nixpkgs-unstable-raw": { "nixpkgs-unstable-raw": {
"locked": { "locked": {
"lastModified": 1708984720, "lastModified": 1708118438,
"narHash": "sha256-gJctErLbXx4QZBBbGp78PxtOOzsDaQ+yw1ylNQBuSUY=", "narHash": "sha256-kk9/0nuVgA220FcqH/D2xaN6uGyHp/zoxPNUmPCMmEE=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "13aff9b34cc32e59d35c62ac9356e4a41198a538", "rev": "5863c27340ba4de8f83e7e3c023b9599c3cb3c80",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -358,11 +358,11 @@
}, },
"nur": { "nur": {
"locked": { "locked": {
"lastModified": 1709144707, "lastModified": 1708329376,
"narHash": "sha256-RvJU+wWBs05ET56LSK8gXIC6vXZuKl9HewCezS1Ta2Q=", "narHash": "sha256-E5LJjNT6dMD2r6m93CdOccQmW3+YT7Pr2lHMMmr5pXs=",
"owner": "nix-community", "owner": "nix-community",
"repo": "NUR", "repo": "NUR",
"rev": "a6e5afae495cf1dd3dcd1d89c672885fc5eb2688", "rev": "e17ac139d5903c021aff79b52d659bf90145cbb2",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -381,11 +381,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1708970090, "lastModified": 1707590627,
"narHash": "sha256-z/8pJRiLfYqGQvIJj3xGqobygNkVSSGN6115pAEDNU4=", "narHash": "sha256-LJ/lFEupLSi7xtUps234hhMk7ZdVLRoYeU7KiCFaoGw=",
"owner": "pjones", "owner": "pjones",
"repo": "plasma-manager", "repo": "plasma-manager",
"rev": "74fa336c22adf822c6ef13b21bfff18fbef66e9c", "rev": "4e56cfeb95081a43cb49487d0996dc936d6201e5",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -470,11 +470,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1709082883, "lastModified": 1708305444,
"narHash": "sha256-KIt4XTDspnUze/QUU8mqiHea3opOv9hXl91N2L8bAB0=", "narHash": "sha256-hCDR72rsHC3z2YvDywRgXLiPK8emn+jtl5fdoH30aeY=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nix-vscode-extensions", "repo": "nix-vscode-extensions",
"rev": "de410fd3d5915c9ac8ba5a3bd1464ba623933656", "rev": "35e0cabb16c66709d6c91eda8067d740492172d5",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -84,7 +84,7 @@
name = "patched-nixpkgs-unstable"; name = "patched-nixpkgs-unstable";
src = nixpkgs-unstable-raw; src = nixpkgs-unstable-raw;
patches = [ patches = [
./nixpkgs-patches/288913.patch
]; ];
}; };
nixpkgs-patched = nixpkgs-raw.legacyPackages.x86_64-linux.applyPatches { nixpkgs-patched = nixpkgs-raw.legacyPackages.x86_64-linux.applyPatches {

View file

@ -1,309 +0,0 @@
From e62dac66f96a8b02b612d58438e1d11324083794 Mon Sep 17 00:00:00 2001
From: annalee <150648636+a-n-n-a-l-e-e@users.noreply.github.com>
Date: Wed, 14 Feb 2024 03:31:15 +0000
Subject: [PATCH 1/3] duckdb,python311Packages.duckdb: 0.9.2 -> 0.10.0
---
pkgs/development/libraries/duckdb/default.nix | 42 +++++++++++-----
.../libraries/duckdb/version.patch | 2 +-
.../python-modules/duckdb/default.nix | 48 ++++++++++++-------
.../python-modules/duckdb/setup.patch | 30 ------------
4 files changed, 62 insertions(+), 60 deletions(-)
delete mode 100644 pkgs/development/python-modules/duckdb/setup.patch
diff --git a/pkgs/development/libraries/duckdb/default.nix b/pkgs/development/libraries/duckdb/default.nix
index 801ad7979aee91..e6645480d2b24a 100644
--- a/pkgs/development/libraries/duckdb/default.nix
+++ b/pkgs/development/libraries/duckdb/default.nix
@@ -1,10 +1,13 @@
{ lib
, stdenv
, fetchFromGitHub
+, fetchpatch
+, substituteAll
, cmake
, ninja
, openssl
, openjdk11
+, python3
, unixODBC
, withJdbc ? false
, withOdbc ? false
@@ -15,22 +18,31 @@ let
in
stdenv.mkDerivation rec {
pname = "duckdb";
- version = "0.9.2";
+ version = "0.10.0";
src = fetchFromGitHub {
owner = pname;
repo = pname;
- rev = "v${version}";
- hash = "sha256-QFK8mEMcqQwALFNvAdD8yWixwMYHSbeo6xqx86PvejU=";
+ rev = "refs/tags/v${version}";
+ hash = "sha256-qGUq0iYTaLNHKqbXNLRmvqHMqunvIlP991IKb4qdSt4=";
};
- patches = [ ./version.patch ];
-
- postPatch = ''
- substituteInPlace CMakeLists.txt --subst-var-by DUCKDB_VERSION "v${version}"
- '';
+ patches = [
+ # remove calls to git and set DUCKDB_VERSION to version
+ (substituteAll {
+ src = ./version.patch;
+ version = "v${version}";
+ })
+ # add missing file needed for httpfs compile
+ # remove on next update
+ (fetchpatch {
+ name = "missing-httpfs-file.patch";
+ url = "https://github.com/duckdb/duckdb/commit/3d7aa3ed46ecf5f18122559e385b75f1f5e9aba8.patch";
+ hash = "sha256-Q4IHCpMpxn86OquUZdEF7P0nHEPOcWS0TQijTkvBYbQ=";
+ })
+ ];
- nativeBuildInputs = [ cmake ninja ];
+ nativeBuildInputs = [ cmake ninja python3 ];
buildInputs = [ openssl ]
++ lib.optionals withJdbc [ openjdk11 ]
++ lib.optionals withOdbc [ unixODBC ];
@@ -54,7 +66,7 @@ stdenv.mkDerivation rec {
installCheckPhase =
let
- excludes = map (pattern: "exclude:'${pattern}'") [
+ excludes = map (pattern: "exclude:'${pattern}'") ([
"[s3]"
"Test closing database during long running query"
"Test using a remote optimizer pass in case thats important to someone"
@@ -91,16 +103,22 @@ stdenv.mkDerivation rec {
"[!hide]"
# this test apparently never terminates
"test/sql/copy/csv/auto/test_csv_auto.test"
+ # test expects installed file timestamp to be > 2024
+ "test/sql/table_function/read_text_and_blob.test"
+ # can re-enable next update (broken for 0.10.0)
+ "test/sql/secrets/create_secret_non_writable_persistent_dir.test"
+ # https://github.com/duckdb/duckdb/issues/10722
+ "test/sql/types/nested/list/list_aggregate_dict.test"
] ++ lib.optionals stdenv.isAarch64 [
"test/sql/aggregate/aggregates/test_kurtosis.test"
"test/sql/aggregate/aggregates/test_skewness.test"
"test/sql/function/list/aggregates/skewness.test"
- ];
+ ]);
in
''
runHook preInstallCheck
- $PWD/test/unittest ${lib.concatStringsSep " " excludes}
+ ./test/unittest ${toString excludes}
runHook postInstallCheck
'';
diff --git a/pkgs/development/libraries/duckdb/version.patch b/pkgs/development/libraries/duckdb/version.patch
index f40785b430797b..122ad4295d41e9 100644
--- a/pkgs/development/libraries/duckdb/version.patch
+++ b/pkgs/development/libraries/duckdb/version.patch
@@ -52,7 +52,7 @@ index 2b49e11288..0a4a69b9a0 100644
- set(DUCKDB_DEV_ITERATION 0)
- set(DUCKDB_VERSION "v${DUCKDB_MAJOR_VERSION}.${DUCKDB_MINOR_VERSION}.${DUCKDB_PATCH_VERSION}-dev${DUCKDB_DEV_ITERATION}")
-endif()
-+set(DUCKDB_VERSION "@DUCKDB_VERSION@")
++set(DUCKDB_VERSION "@version@")
message(STATUS "git hash ${GIT_COMMIT_HASH}, version ${DUCKDB_VERSION}")
diff --git a/pkgs/development/python-modules/duckdb/default.nix b/pkgs/development/python-modules/duckdb/default.nix
index a7cd1aa36dd45f..fd197f9305d63d 100644
--- a/pkgs/development/python-modules/duckdb/default.nix
+++ b/pkgs/development/python-modules/duckdb/default.nix
@@ -1,4 +1,5 @@
{ lib
+, stdenv
, buildPythonPackage
, duckdb
, fsspec
@@ -13,25 +14,24 @@
}:
buildPythonPackage rec {
- inherit (duckdb) pname version src;
- format = "setuptools";
-
- # 1. let nix control build cores
- # 2. default to extension autoload & autoinstall disabled
- # 3. unconstrain setuptools_scm version
- patches = (duckdb.patches or []) ++ [ ./setup.patch ];
+ inherit (duckdb) patches pname src version;
+ pyproject = true;
postPatch = (duckdb.postPatch or "") + ''
# we can't use sourceRoot otherwise patches don't apply, because the patches apply to the C++ library
cd tools/pythonpkg
- substituteInPlace setup.py --subst-var NIX_BUILD_CORES
-
- # avoid dependency on mypy
- rm tests/stubs/test_stubs.py
+ # 1. let nix control build cores
+ # 2. default to extension autoload & autoinstall disabled
+ substituteInPlace setup.py \
+ --replace-fail "ParallelCompile()" 'ParallelCompile("NIX_BUILD_CORES")' \
+ --replace-fail "define_macros.extend([('DUCKDB_EXTENSION_AUTOLOAD_DEFAULT', '1'), ('DUCKDB_EXTENSION_AUTOINSTALL_DEFAULT', '1')])" ""
'';
- BUILD_HTTPFS = 1;
+ env = {
+ BUILD_HTTPFS = 1;
+ DUCKDB_BUILD_UNITY = 1;
+ };
nativeBuildInputs = [
pybind11
@@ -52,21 +52,35 @@ buildPythonPackage rec {
pytestCheckHook
];
+ # test flags from .github/workflows/Python.yml
+ pytestFlagsArray = [
+ "--verbose"
+ ] ++ lib.optionals stdenv.isDarwin [
+ "tests/fast"
+ ];
+
+ disabledTestPaths = [
+ # avoid dependency on mypy
+ "tests/stubs/test_stubs.py"
+ ];
+
disabledTests = [
# tries to make http request
"test_install_non_existent_extension"
- # test is racy and interrupt can be delivered before or after target point
+
+ # https://github.com/duckdb/duckdb/issues/10702
+ # tests are racy and interrupt can be delivered before or after target point
+ # causing a later test to fail with a spurious KeyboardInterrupt
"test_connection_interrupt"
+ "test_query_interruption"
];
+ # remove duckdb dir to prevent import confusion by pytest
preCheck = ''
export HOME="$(mktemp -d)"
+ rm -rf duckdb
'';
- setupPyBuildFlags = [
- "--inplace"
- ];
-
pythonImportsCheck = [
"duckdb"
];
diff --git a/pkgs/development/python-modules/duckdb/setup.patch b/pkgs/development/python-modules/duckdb/setup.patch
deleted file mode 100644
index 8c8f790a66a1d1..00000000000000
--- a/pkgs/development/python-modules/duckdb/setup.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-diff --git a/tools/pythonpkg/setup.py b/tools/pythonpkg/setup.py
-index 30f1e1ccdd..6784169fcb 100644
---- a/tools/pythonpkg/setup.py
-+++ b/tools/pythonpkg/setup.py
-@@ -96,7 +96,7 @@ def parallel_cpp_compile(
- return
- self._compile(obj, src, ext, cc_args, extra_postargs, pp_opts)
-
-- list(multiprocessing.pool.ThreadPool(multiprocessing.cpu_count()).imap(_single_compile, objects))
-+ list(multiprocessing.pool.ThreadPool(@NIX_BUILD_CORES@).imap(_single_compile, objects))
- return objects
-
-
-@@ -163,7 +163,6 @@ if 'BUILD_HTTPFS' in os.environ:
- for ext in extensions:
- toolchain_args.extend(['-DDUCKDB_EXTENSION_{}_LINKED'.format(ext.upper())])
-
--toolchain_args.extend(['-DDUCKDB_EXTENSION_AUTOLOAD_DEFAULT=1', '-DDUCKDB_EXTENSION_AUTOINSTALL_DEFAULT=1'])
-
-
- class get_pybind_include(object):
-@@ -348,7 +347,7 @@ setup(
- packages=packages,
- include_package_data=True,
- python_requires='>=3.7.0',
-- setup_requires=setup_requires + ["setuptools_scm<7.0.0", 'pybind11>=2.6.0'],
-+ setup_requires=setup_requires + ["setuptools_scm", 'pybind11>=2.6.0'],
- use_scm_version=setuptools_scm_conf,
- tests_require=['google-cloud-storage', 'mypy', 'pytest'],
- classifiers=[
From e72db5d1718ab74321efde3b05039e202677afae Mon Sep 17 00:00:00 2001
From: annalee <150648636+a-n-n-a-l-e-e@users.noreply.github.com>
Date: Wed, 14 Feb 2024 23:04:47 +0000
Subject: [PATCH 2/3] python311Packages.duckdb-engine: 0.9.2 -> 0.11.1
---
pkgs/development/python-modules/duckdb-engine/default.nix | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/pkgs/development/python-modules/duckdb-engine/default.nix b/pkgs/development/python-modules/duckdb-engine/default.nix
index ab82edb0893b7b..efdc1d10ace37c 100644
--- a/pkgs/development/python-modules/duckdb-engine/default.nix
+++ b/pkgs/development/python-modules/duckdb-engine/default.nix
@@ -14,8 +14,8 @@
buildPythonPackage rec {
pname = "duckdb-engine";
- version = "0.9.2";
- format = "pyproject";
+ version = "0.11.1";
+ pyproject = true;
disabled = pythonOlder "3.7";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
repo = "duckdb_engine";
owner = "Mause";
rev = "refs/tags/v${version}";
- hash = "sha256-T02nGF+YlughRQPinb0I3NC6xsarh4+qRhG8YfhTvhI=";
+ hash = "sha256-GMtQtcKEn2mdryl1KMYnYYeGpdbowP3o4dStwuL8AcU=";
};
patches = [ ./remote_data.patch ];
From fc7168d8d918b9a8fd11f0c27685b31d9a571f26 Mon Sep 17 00:00:00 2001
From: annalee <150648636+a-n-n-a-l-e-e@users.noreply.github.com>
Date: Wed, 14 Feb 2024 23:14:49 +0000
Subject: [PATCH 3/3] python311Packages.sqlglot: 20.9.0 -> 21.1.1
---
pkgs/development/python-modules/sqlglot/default.nix | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/pkgs/development/python-modules/sqlglot/default.nix b/pkgs/development/python-modules/sqlglot/default.nix
index f02a32d0f64f86..7eb9ee70eca91b 100644
--- a/pkgs/development/python-modules/sqlglot/default.nix
+++ b/pkgs/development/python-modules/sqlglot/default.nix
@@ -11,7 +11,7 @@
buildPythonPackage rec {
pname = "sqlglot";
- version = "20.9.0";
+ version = "21.1.1";
pyproject = true;
disabled = pythonOlder "3.8";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
repo = "sqlglot";
owner = "tobymao";
rev = "refs/tags/v${version}";
- hash = "sha256-4czhmAJUDRj0x8dCmIXg5BQ1Uvie5vx+UtWdSSY5mnM=";
+ hash = "sha256-xMKDkhotVBkLzn+f9RMGCPfWTF4Rz9a193nSJv5z+iA=";
};
nativeBuildInputs = [