chore: uv to replace poetry (#3900)

* uv sync works

* fist stab at Makefile

* uv treatment for langflow-base

* sqlmodel to 0.0.18

* add reinstall_backend to Makefile

* makefile - reinstall_backend fix and unit_test dependency

* fix dev dependencies

* fix dev dependencies

* fix dev dependencies

* lock

* Makefile

* [autofix.ci] apply automated fixes

* Update Makefile

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* delete update_dependencies

* fix lint

* Remove Poetry lock check from GitHub Actions workflow

* Switch to 'uv' for dependency management and caching in style-check workflow

* Update style-check workflow to use '--only-dev' flag for Ruff check

* Integrate 'uv' package setup and caching in GitHub Actions workflows

* Update version check in GitHub Actions to use 'uv tree' for langflow-base

* Remove redundant poetry environment setup in GitHub Actions workflow

* Add step to minimize uv cache in GitHub Actions workflow

* Update GitHub Actions workflow to use 'uv' for dependency management and caching

* Remove redundant script execution from build_langflow target in Makefile

* [autofix.ci] apply automated fixes

* Switch build system from Poetry to Hatchling and update dependencies

- Replace `poetry-core` with `hatchling` in build-system requirements
- Update `langflow-base` dependency to version `0.0.96`
- Add `tool.hatch.build.targets.wheel` configuration
- Adjust `tool.uv.sources` paths for `langflow-frontend` and `langflow-base`

* update lock

* Switch build system from Poetry to Hatchling in pyproject.toml

* Add langchain-unstructured dependency to pyproject.toml

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
This commit is contained in:
Sebastián Estévez 2024-09-25 16:40:30 -04:00 committed by GitHub
commit fbb097dc4c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
10 changed files with 14382 additions and 199 deletions

View file

@ -25,6 +25,9 @@ documentation = "https://docs.langflow.org"
[tool.poetry.scripts]
langflow-base = "langflow.__main__:main"
[tool.hatch.build.targets.wheel]
packages = ["langflow"]
[tool.poetry.dependencies]
python = ">=3.10,<3.13"
fastapi = "^0.111.0"
@ -149,5 +152,130 @@ line-length = 120
select = ["E4", "E7", "E9", "F", "I", "UP"]
[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"
requires = ["hatchling"]
build-backend = "hatchling.build"
[project]
name = "langflow-base"
version = "0.0.96"
description = "A Python package with a built-in web application"
requires-python = ">=3.10,<3.13"
license = "MIT"
keywords = ["nlp", "langchain", "openai", "gpt", "gui"]
readme = "README.md"
dependencies = [
"fastapi>=0.111.0",
"httpx",
"uvicorn>=0.30.0",
"gunicorn>=22.0.0",
"langchain~=0.2.0",
"langchain-core>=0.2.32",
"langchainhub~=0.1.15",
"sqlmodel==0.0.18",
"loguru>=0.7.1",
"rich>=13.7.0",
"langchain-experimental>=0.0.61",
"pydantic>=2.7.0",
"pydantic-settings>=2.2.0",
"websockets",
"typer>=0.12.0",
"cachetools>=5.3.1",
"platformdirs>=4.2.0",
"python-multipart>=0.0.7",
"orjson==3.10.0",
"alembic>=1.13.0",
"passlib>=1.7.4",
"bcrypt==4.0.1",
"pillow>=10.2.0",
"docstring-parser>=0.16",
"python-jose>=3.3.0",
"pandas==2.2.2",
"multiprocess>=0.70.14",
"duckdb>=1.0.0",
"python-docx>=1.1.0",
"jq>=1.7.0; sys_platform != 'win32'",
"pypdf>=4.2.0",
"nest-asyncio>=1.6.0",
"emoji>=2.12.0",
"cryptography>=42.0.5,<44.0.0",
"asyncer>=0.0.5",
"pyperclip>=1.8.2",
"uncurl>=0.0.11",
"sentry-sdk[fastapi,loguru]>=2.5.1",
"chardet>=5.2.0",
"firecrawl-py>=0.0.16",
"opentelemetry-api>=1.25.0",
"opentelemetry-sdk>=1.25.0",
"opentelemetry-exporter-prometheus>=0.46b0",
"opentelemetry-instrumentation-fastapi>=0.46b0",
"prometheus-client>=0.20.0",
"aiofiles>=24.1.0",
"setuptools>=70",
"nanoid>=2.0.0",
"filelock>=3.15.4",
"grandalf>=0.8.0",
"crewai>=0.36.0",
"spider-client>=0.0.27",
"diskcache>=5.6.3",
"clickhouse-connect==0.7.19"
]
# Optional dependencies for uv
[project.optional-dependencies]
deploy = [
"celery",
"redis",
"flower"
]
local = [
"llama-cpp-python",
"sentence-transformers",
"ctransformers"
]
all = [
"celery",
"redis",
"flower",
"llama-cpp-python",
"sentence-transformers",
"ctransformers"
]
# Development dependencies
dev = [
"types-redis>=4.6.0.5",
"ipykernel>=6.29.0",
"mypy>=1.11.0",
"ruff>=0.4.5",
"httpx",
"pytest>=8.2.0",
"types-requests>=2.32.0",
"requests>=2.32.0",
"pytest-cov>=5.0.0",
"pandas-stubs>=2.1.4.231227",
"types-pillow>=10.2.0.20240213",
"types-pyyaml>=6.0.12.8",
"types-python-jose>=3.3.4.8",
"types-passlib>=1.7.7.13",
"pytest-mock>=3.14.0",
"pytest-xdist>=3.6.0",
"types-pywin32>=306.0.0.4",
"types-google-cloud-ndb>=2.2.0.0",
"pytest-sugar>=1.0.0",
"respx>=0.21.1",
"pytest-instafail>=0.5.0",
"pytest-asyncio>=0.23.0",
"pytest-profiling>=1.7.0",
"pre-commit>=3.7.0",
"vulture>=2.11",
"dictdiffer>=0.9.0",
"pytest-split>=0.9.0",
"devtools>=0.12.2",
"pytest-flakefinder>=1.1.0",
"types-markdown>=3.7.0.20240822"
]
[project.scripts]
langflow-base = "langflow.__main__:main"

5699
src/backend/base/uv.lock generated Normal file

File diff suppressed because it is too large Load diff