The 1.0.0 bump took a bogus tag. Graphify-Labs/graphify carries a v1.0.0 branch from 2026-04-05 that sits 2126 commits behind v0.9.77, still ships pyproject name graphifyy 0.1.10, and never reached PyPI, where 0.9.77 is the latest release. nix-update picked it because it is the highest semver tag available. It also does not build here. Its pyproject hard-requires graspologic, which pulls python-future, and nixpkgs disables that for Python >= 3.13 (this flake is on 3.14). Lowering the interpreter is no way out either: python312 fails further down the chain on falcon and hyppo. 0.9.x ships a networkx Louvain fallback for a missing Leiden backend; 1.0.0 imports graspologic.partition.leiden unconditionally, so it is worse code even if it did build. Dependency corrections for the pinned source: - datasketch dropped: upstream vendored MinHash into graphify/_minhash.py, which also retires the pybloomfilter3 dontCheckPythonMetadata workaround in default.nix - numpy added: graphify/_minhash.py imports it directly Verified with nix build .#graphify (pythonImportsCheck passes) and graphify --version reporting 0.9.77. Refs nix-overlay-olq
This commit is contained in:
@@ -2,18 +2,4 @@
|
|||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
# nixpkgs' pybloomfilter3 0.7.3 (a datasketch dependency) ships sdist metadata
|
pkgs.callPackage ./package.nix { }
|
||||||
# that still says 0.7.2, which makes pythonMetadataCheckPhase fail even though
|
|
||||||
# the build succeeds. Skip only that check.
|
|
||||||
let
|
|
||||||
python = pkgs.python3.override {
|
|
||||||
packageOverrides = self: super: {
|
|
||||||
pybloomfilter3 = super.pybloomfilter3.overridePythonAttrs (_: {
|
|
||||||
dontCheckPythonMetadata = true;
|
|
||||||
});
|
|
||||||
};
|
|
||||||
};
|
|
||||||
in
|
|
||||||
python.pkgs.callPackage ./package.nix {
|
|
||||||
python3Packages = python.pkgs;
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -6,14 +6,18 @@
|
|||||||
|
|
||||||
python3Packages.buildPythonApplication rec {
|
python3Packages.buildPythonApplication rec {
|
||||||
pname = "graphify";
|
pname = "graphify";
|
||||||
version = "1.0.0";
|
version = "0.9.77";
|
||||||
pyproject = true;
|
pyproject = true;
|
||||||
|
|
||||||
|
# Do not bump to the v1.0.0 tag: it is a stale branch 2126 commits behind
|
||||||
|
# v0.9.77 (tagged 2026-04-05, pyproject still says graphifyy 0.1.10) and was
|
||||||
|
# never published to PyPI, where 0.9.77 is the latest release. nix-update
|
||||||
|
# picks v1.0.0 as the highest tag, so check PyPI before taking its result.
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Graphify-Labs";
|
owner = "Graphify-Labs";
|
||||||
repo = "graphify";
|
repo = "graphify";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-YPiQChaoX64XBFORI5CmKe/LX0ECu1cYZWElGD7X2eA=";
|
hash = "sha256-CvJ6GoV1nSzFGfLQbzKSHDUNOuOPQZaYOf/idcSHkPw=";
|
||||||
};
|
};
|
||||||
|
|
||||||
build-system = with python3Packages; [
|
build-system = with python3Packages; [
|
||||||
@@ -24,7 +28,7 @@ python3Packages.buildPythonApplication rec {
|
|||||||
# Missing grammars will be downloaded by tree-sitter at runtime on demand.
|
# Missing grammars will be downloaded by tree-sitter at runtime on demand.
|
||||||
dependencies = with python3Packages; [
|
dependencies = with python3Packages; [
|
||||||
networkx
|
networkx
|
||||||
datasketch
|
numpy
|
||||||
rapidfuzz
|
rapidfuzz
|
||||||
tree-sitter
|
tree-sitter
|
||||||
tree-sitter-python
|
tree-sitter-python
|
||||||
|
|||||||
Reference in New Issue
Block a user