Unverified Commit 70e145ec authored by Robert Schütz's avatar Robert Schütz Committed by GitHub
Browse files

python312Packages.blis: 0.7.11 -> 1.0.0 (#333221)

parents d7a10805 d3f0837c
Loading
Loading
Loading
Loading
+25 −14
Original line number Diff line number Diff line
@@ -3,33 +3,41 @@
  buildPythonPackage,
  fetchFromGitHub,
  setuptools,
  cython_0,
  cython,
  hypothesis,
  numpy,
  pytestCheckHook,
  pythonOlder,
  blis,
  numpy_2,
  gitUpdater,
}:

buildPythonPackage rec {
  pname = "blis";
  version = "0.7.11";
  version = "1.0.0";
  pyproject = true;

  disabled = pythonOlder "3.7";
  disabled = pythonOlder "3.9";

  src = fetchFromGitHub {
    owner = "explosion";
    repo = "cython-blis";
    rev = "refs/tags/v${version}";
    hash = "sha256-p8pzGZc5OiiGTvXULDgzsBC3jIhovTKUq3RtPnQ/+to=";
    rev = "refs/tags/release-v${version}";
    hash = "sha256-XS6h2c+8BJ9pAvIX8340C4vRZEBRmEZc6/6tH7ooqNU=";
  };

  postPatch = ''
    # The commit pinning numpy to version 2 doesn't have any functional changes:
    # https://github.com/explosion/cython-blis/pull/108
    # BLIS should thus work with numpy and numpy_2.
    substituteInPlace pyproject.toml setup.py \
      --replace-fail "numpy>=2.0.0,<3.0.0" numpy

    # See https://github.com/numpy/numpy/issues/21079
    # has no functional difference as the name is only used in log output
    substituteInPlace blis/benchmark.py \
      --replace 'numpy.__config__.blas_ilp64_opt_info["libraries"]' '["dummy"]'
      --replace-fail 'numpy.__config__.blas_ilp64_opt_info["libraries"]' '["dummy"]'
  '';

  preCheck = ''
@@ -37,12 +45,13 @@ buildPythonPackage rec {
    rm -rf ./blis
  '';

  nativeBuildInputs = [
  build-system = [
    setuptools
    cython_0
    cython
    numpy
  ];

  propagatedBuildInputs = [ numpy ];
  dependencies = [ numpy ];

  nativeCheckInputs = [
    hypothesis
@@ -52,16 +61,18 @@ buildPythonPackage rec {
  pythonImportsCheck = [ "blis" ];

  passthru = {
    # Do not update to BLIS 0.9.x until the following issue is resolved:
    # https://github.com/explosion/thinc/issues/771#issuecomment-1255825935
    skipBulkUpdate = true;
    tests = {
      numpy_2 = blis.overridePythonAttrs (old: {
        numpy = numpy_2;
      });
    };
    updateScript = gitUpdater {
      rev-prefix = "v";
      ignoredVersions = "0\.9\..*";
      rev-prefix = "release-v";
    };
  };

  meta = with lib; {
    changelog = "https://github.com/explosion/cython-blis/releases/tag/release-v${version}";
    description = "BLAS-like linear algebra library";
    homepage = "https://github.com/explosion/cython-blis";
    license = licenses.bsd3;
+16 −18
Original line number Diff line number Diff line
@@ -10,13 +10,11 @@
  fetchPypi,
  hypothesis,
  jinja2,
  jsonschema,
  langcodes,
  mock,
  murmurhash,
  numpy,
  packaging,
  pathy,
  preshed,
  pydantic,
  pytestCheckHook,
@@ -29,7 +27,6 @@
  thinc,
  tqdm,
  typer,
  typing-extensions,
  wasabi,
  weasel,
  writeScript,
@@ -40,36 +37,39 @@

buildPythonPackage rec {
  pname = "spacy";
  version = "3.7.5";
  version = "3.7.6";
  pyproject = true;

  disabled = pythonOlder "3.7";

  src = fetchPypi {
    inherit pname version;
    hash = "sha256-pkjGy/Ksx6Vaae6ef6TyK99pqoKKWHobxc//CM88LdM=";
    hash = "sha256-9AZcCqxcSLv7L/4ZHVXMszv7AFN2r71MzW1ek0FRTjQ=";
  };

  pythonRelaxDeps = [
    "smart-open"
    "typer"
  ];
  postPatch = ''
    # thinc version 8.3.0 had no functional changes
    # also see https://github.com/explosion/spaCy/issues/13607
    substituteInPlace pyproject.toml setup.cfg \
      --replace-fail "thinc>=8.2.2,<8.3.0" "thinc>=8.2.2,<8.4.0"
  '';

  nativeBuildInputs = [
  build-system = [
    cymem
    cython_0
    murmurhash
    numpy
    thinc
  ];

  propagatedBuildInputs = [
    blis
  dependencies = [
    catalogue
    cymem
    jinja2
    jsonschema
    langcodes
    murmurhash
    numpy
    packaging
    pathy
    preshed
    pydantic
    requests
@@ -82,7 +82,7 @@ buildPythonPackage rec {
    typer
    wasabi
    weasel
  ] ++ lib.optionals (pythonOlder "3.8") [ typing-extensions ];
  ];

  nativeCheckInputs = [
    pytestCheckHook
@@ -90,8 +90,6 @@ buildPythonPackage rec {
    mock
  ];

  doCheck = true;

  # Fixes ModuleNotFoundError when running tests on Cythonized code. See #255262
  preCheck = ''
    cd $out
@@ -132,7 +130,7 @@ buildPythonPackage rec {
    description = "Industrial-strength Natural Language Processing (NLP)";
    mainProgram = "spacy";
    homepage = "https://github.com/explosion/spaCy";
    changelog = "https://github.com/explosion/spaCy/releases/tag/v${version}";
    changelog = "https://github.com/explosion/spaCy/releases/tag/release-v${version}";
    license = licenses.mit;
    maintainers = [ ];
  };
+25 −21
Original line number Diff line number Diff line
@@ -16,7 +16,6 @@
  mock,
  murmurhash,
  numpy,
  plac,
  preshed,
  pydantic,
  pytestCheckHook,
@@ -24,51 +23,59 @@
  pythonOlder,
  setuptools,
  srsly,
  tqdm,
  typing-extensions,
  wasabi,
}:

buildPythonPackage rec {
  pname = "thinc";
  version = "8.2.3";
  format = "setuptools";
  version = "8.3.0";
  pyproject = true;

  disabled = pythonOlder "3.7";

  src = fetchPypi {
    inherit pname version;
    hash = "sha256-9a/FIikSqAvai9zslYNiorpTjXAn3I22FUhF0oWdynY=";
    hash = "sha256-6zvtVPXADsmt2qogjFHM+gWUg9cxQM1RWqMzc3Fcblk=";
  };

  postPatch = ''
    # As per https://github.com/explosion/thinc/releases/tag/release-v8.3.0 no
    # code changes were required for NumPy 2.0. Thus Thinc should be compatible
    # with NumPy 1.0 and 2.0.
    substituteInPlace pyproject.toml setup.cfg \
      --replace-fail "numpy>=2.0.0,<2.1.0" numpy
    substituteInPlace setup.cfg \
      --replace "preshed>=3.0.2,<3.1.0" "preshed"
      --replace-fail "numpy>=2.0.1,<2.1.0" numpy
  '';

  nativeBuildInputs = [ setuptools ];
  build-system = [
    blis
    cymem
    cython_0
    murmurhash
    numpy
    preshed
    setuptools
  ];

  buildInputs =
    [ cython_0 ]
    ++ lib.optionals stdenv.isDarwin [
  buildInputs = lib.optionals stdenv.isDarwin [
    Accelerate
    CoreFoundation
    CoreGraphics
    CoreVideo
  ];

  propagatedBuildInputs = [
  dependencies = [
    blis
    catalogue
    confection
    cymem
    murmurhash
    numpy
    plac
    preshed
    pydantic
    srsly
    tqdm
    wasabi
  ] ++ lib.optionals (pythonOlder "3.8") [ typing-extensions ];

@@ -78,10 +85,7 @@ buildPythonPackage rec {
    pytestCheckHook
  ];

  # Add native extensions.
  preCheck = ''
    export PYTHONPATH=$out/${python.sitePackages}:$PYTHONPATH

    # avoid local paths, relative imports wont resolve correctly
    mv thinc/tests tests
    rm -r thinc