sparckles / Robyn

Robyn is a Super Fast Async Python Web Framework with a Rust runtime.
https://robyn.tech/
BSD 2-Clause "Simplified" License
4.45k stars 229 forks source link

pyproject.toml and poetry.lock out of sync #1012

Closed dave42w closed 2 weeks ago

dave42w commented 2 weeks ago

Bug Description

I'm using uv to run Robyn and the tests. It has uncovered version differences between dependencies in the main pyproject.toml section and the poetry sections and with poetry.lock

To use the following with uv we need pyproject.toml updating:

dependencies = [
  'watchdog == 4.0.1',
  'multiprocess == 0.70.14',
  'nestd == 0.3.1',
  'inquirerpy == 0.3.4',
  'rustimport == 1.3.4',
  'orjson == 3.9.15',
# conditional
  "uvloop~=0.19.0; sys_platform != 'win32' and platform_python_implementation == 'CPython' and platform_machine != 'armv7l'"
  ]

to

dependencies = [
  'watchdog == 4.0.1',
  'multiprocess == 0.70.14',
  'nestd == 0.3.1',
  'inquirerpy == 0.3.4',
  'rustimport == 1.5.0',
  'orjson == 3.9.15',
  # conditional
  "uvloop~=0.19.0; sys_platform != 'win32' and platform_python_implementation == 'CPython' and platform_machine != 'armv7l'",
  "pre-commit==2.21.0",
  "poetry==1.7.1",
  "maturin==0.14.12",
  "websocket-client==1.5.0",
  "ruff==0.1.3",
  "requests==2.28.2",
  "pip>=24.3.1",
  "patchelf>=0.17.2.1",
  "jinja2==3.0.1",
  "pytest==8.3.3",
  "pytest-codspeed==1.2.2",
]

This resolves the inconsistencies and compiles with python 3.12.7 and rust 1.82

Note that upgrading pytest to 8.3.3 prevents hundreds of warnings like this

.venv/lib/python3.12/site-packages/_pytest/assertion/rewrite.py:921: 15 warnings
  /home/dave/Code/Robyn/.venv/lib/python3.12/site-packages/_pytest/assertion/rewrite.py:921: DeprecationWarning: ast.Str is deprecated and will be removed in Python 3.14; use ast.Constant instead
    template = ast.BinOp(assertmsg, ast.Add(), ast.Str(explanation))

Your operating system

Linux

Your Python version (python --version)

3.12

Your Robyn version

main branch

Additional Info

This highlights that many robyn dependencies are very out of date. Please can we fix these as part of moving to support Python 3.13

sansyrox commented 2 weeks ago

Hey @dave42w 👋

Thank for raising this issue. This could be fixed quickly.