Unverified Commit 91139709 authored by Gaétan Lepage's avatar Gaétan Lepage Committed by GitHub
Browse files

python3Packages.langchain*: fix automatic updates (#390196)

parents a172348e 1d514510
Loading
Loading
Loading
Loading
+9 −4
Original line number Diff line number Diff line
@@ -2,6 +2,7 @@
  lib,
  buildPythonPackage,
  fetchFromGitHub,
  nix-update-script,

  # build-system
  poetry-core,
@@ -52,6 +53,9 @@ buildPythonPackage rec {
  pythonRelaxDeps = [
    # Boto @ 1.35 has outstripped the version requirement
    "boto3"
    # Each component release requests the exact latest core.
    # That prevents us from updating individul components.
    "langchain-core"
  ];

  nativeCheckInputs = [
@@ -64,10 +68,11 @@ buildPythonPackage rec {

  pythonImportsCheck = [ "langchain_aws" ];

  passthru = {
    inherit (langchain-core) updateScript;
    # updates the wrong fetcher rev attribute
    skipBulkUpdate = true;
  passthru.updateScript = nix-update-script {
    extraArgs = [
      "--version-regex"
      "^langchain-aws==([0-9.]+)$"
    ];
  };

  meta = {
+12 −4
Original line number Diff line number Diff line
@@ -2,6 +2,7 @@
  lib,
  buildPythonPackage,
  fetchFromGitHub,
  nix-update-script,

  # build-system
  poetry-core,
@@ -41,6 +42,12 @@ buildPythonPackage rec {

  build-system = [ poetry-core ];

  pythonRelaxDeps = [
    # Each component release requests the exact latest core.
    # That prevents us from updating individul components.
    "langchain-core"
  ];

  dependencies = [
    azure-identity
    langchain-core
@@ -65,10 +72,11 @@ buildPythonPackage rec {

  pythonImportsCheck = [ "langchain_azure_dynamic_sessions" ];

  passthru = {
    inherit (langchain-core) updateScript;
    # updates the wrong fetcher rev attribute
    skipBulkUpdate = true;
  passthru.updateScript = nix-update-script {
    extraArgs = [
      "--version-regex"
      "^langchain-azure-dynamic-sessions==([0-9.]+)$"
    ];
  };

  meta = {
+12 −5
Original line number Diff line number Diff line
@@ -2,6 +2,7 @@
  lib,
  buildPythonPackage,
  fetchFromGitHub,
  nix-update-script,
  chromadb,
  langchain-core,
  langchain-tests,
@@ -29,7 +30,12 @@ buildPythonPackage rec {

  build-system = [ pdm-backend ];

  pythonRelaxDeps = [ "numpy" ];
  pythonRelaxDeps = [
    # Each component release requests the exact latest core.
    # That prevents us from updating individul components.
    "langchain-core"
    "numpy"
  ];

  dependencies = [
    chromadb
@@ -50,10 +56,11 @@ buildPythonPackage rec {
    "test_chroma_update_document"
  ];

  passthru = {
    inherit (langchain-core) updateScript;
    # updates the wrong fetcher rev attribute
    skipBulkUpdate = true;
  passthru.updateScript = nix-update-script {
    extraArgs = [
      "--version-regex"
      "^langchain-chroma==([0-9.]+)$"
    ];
  };

  meta = {
+12 −7
Original line number Diff line number Diff line
@@ -2,6 +2,7 @@
  lib,
  buildPythonPackage,
  fetchFromGitHub,
  nix-update-script,

  # build-system
  pdm-backend,
@@ -56,7 +57,10 @@ buildPythonPackage rec {
  ];

  pythonRelaxDeps = [
    "langchain" # Can fail during updates where building sees the old langchain
    # Each component release requests the exact latest langchain and -core.
    # That prevents us from updating individul components.
    "langchain"
    "langchain-core"
    "numpy"
    "pydantic-settings"
    "tenacity"
@@ -98,12 +102,6 @@ buildPythonPackage rec {

  pytestFlagsArray = [ "tests/unit_tests" ];

  passthru = {
    inherit (langchain-core) updateScript;
    # updates the wrong fetcher rev attribute
    skipBulkUpdate = true;
  };

  __darwinAllowLocalNetworking = true;

  disabledTests = [
@@ -124,6 +122,13 @@ buildPythonPackage rec {
    "test_group_dependencies"
  ];

  passthru.updateScript = nix-update-script {
    extraArgs = [
      "--version-regex"
      "^langchain-community==(.*)"
    ];
  };

  meta = {
    changelog = "https://github.com/langchain-ai/langchain/releases/tag/langchain-community==${version}";
    description = "Community contributed LangChain integrations";
+8 −23
Original line number Diff line number Diff line
@@ -30,7 +30,7 @@
  syrupy,

  # passthru
  writeScript,
  nix-update-script,
}:

buildPythonPackage rec {
@@ -94,28 +94,13 @@ buildPythonPackage rec {
    tests.pytest = langchain-core.overridePythonAttrs (_: {
      doCheck = true;
    });
    # Updates to core tend to drive updates in everything else
    updateScript = writeScript "update.sh" ''
      #!/usr/bin/env nix-shell
      #!nix-shell -i bash -p nix-update

      set -u -o pipefail +e
      # Common core
      nix-update --commit --version-regex 'langchain-core==(.*)' python3Packages.langchain-core
      nix-update --commit --version-regex 'langchain-text-splitters==(.*)' python3Packages.langchain-text-splitters
      nix-update --commit --version-regex 'langchain==(.*)' python3Packages.langchain
      nix-update --commit --version-regex 'langchain-community==(.*)' python3Packages.langchain-community

      # Extensions
      nix-update --commit --version-regex 'langchain-aws==(.*)' python3Packages.langchain-aws
      nix-update --commit --version-regex 'langchain-azure-dynamic-sessions==(.*)' python3Packages.langchain-azure-dynamic-sessions
      nix-update --commit --version-regex 'langchain-chroma==(.*)' python3Packages.langchain-chroma
      nix-update --commit --version-regex 'langchain-huggingface==(.*)' python3Packages.langchain-huggingface
      nix-update --commit --version-regex 'langchain-mongodb==(.*)' python3Packages.langchain-mongodb
      nix-update --commit --version-regex 'langchain-openai==(.*)' python3Packages.langchain-openai
    '';
    # updates the wrong fetcher rev attribute
    skipBulkUpdate = true;

    updateScript = nix-update-script {
      extraArgs = [
        "--version-regex"
        "^langchain-core==([0-9.]+)$"
      ];
    };
  };

  disabledTests =
Loading