Bug 257369 - [NEW PORT] www/py-fastapi-users: Ready-to-use and customizable users management for FastAPI
Summary: [NEW PORT] www/py-fastapi-users: Ready-to-use and customizable users manageme...
Status: Open
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: freebsd-ports-bugs (Nobody)
URL:
Keywords: feature
Depends on: 254038 257370
Blocks: 257868
  Show dependency treegraph
 
Reported: 2021-07-24 00:21 UTC by Goran Mekić
Modified: 2021-08-24 13:11 UTC (History)
3 users (show)

See Also:
meka: maintainer-feedback+


Attachments
fastapi-users.diff (3.70 KB, patch)
2021-07-24 00:21 UTC, Goran Mekić
no flags Details | Diff
fastapi-users.diff (3.75 KB, patch)
2021-07-26 09:15 UTC, Goran Mekić
no flags Details | Diff
fastapi-users.diff (3.82 KB, patch)
2021-07-26 10:44 UTC, Goran Mekić
no flags Details | Diff
fastapi-users.diff (4.52 KB, patch)
2021-07-26 11:01 UTC, Goran Mekić
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Goran Mekić 2021-07-24 00:21:25 UTC
Created attachment 226646 [details]
fastapi-users.diff

QA:

  * portlint: OK (looks fine.)
  * testport: OK (poudriere: 13.0, amd64 tested)
Comment 1 Kubilay Kocak freebsd_committer freebsd_triage 2021-07-24 02:04:47 UTC
Great job Goran. Review items:

All *_DEPENDS need to match upstream version specs [1], in this case including the max versions, unless they are patched (patched deps must be tested/confirmed to work with test suites)

Painful, but necessary. Please encourage upstreams to distribute (sdist) dependencies of the form >=, so they can develop against, test and fix issues with later versions as early as possible (ideally before users do and are impacted)

requires = [
    "fastapi >=0.65.2,<0.67.0",
    "passlib[bcrypt] ==1.7.4",
    "email-validator >=1.1.0,<1.2",
    "pyjwt ==2.1.0",
    "python-multipart ==0.0.5",
    "makefun >=1.9.2,<1.12",
    "typing-extensions >=3.7.4.3; python_version < '3.8'",
    "Deprecated >=1.2.10,<2.0.0"
]

[tool.flit.metadata.requires-extra]
sqlalchemy = [
    "sqlalchemy >=1.3.13,<1.4",
    "databases >=0.3.0,<0.5",
]
mongodb = [
    "motor >=2.2.0,<3.0.0",
]
tortoise-orm = [
    "tortoise-orm >=0.16.0,<0.18.0"
]
ormar = [
    "ormar >=0.9.5,<0.11.0"
]
oauth = [
    "httpx-oauth >=0.3,<0.4"
]

[1] https://wiki.freebsd.org/Python/PortsPolicy#Dependencies
Comment 2 Goran Mekić 2021-07-24 02:12:20 UTC
How do I specify min and max? I tried with this:
${PYTHON_PKGNAMEPREFIX}makefun>=1.11.2,<1.12:devel/py-makefun@${PY_FLAVOR}

No luck.
Comment 3 Kubilay Kocak freebsd_committer freebsd_triage 2021-07-26 06:53:41 UTC
(In reply to Goran Mekić from comment #2)

As far as I know both >x,<y and x<y 'work', but there 'may' (still?) be caveats with the first (comma) one, even though its the better syntax.

What symptoms do you see with the former?
Comment 4 Goran Mekić 2021-07-26 09:15:08 UTC
Created attachment 226710 [details]
fastapi-users.diff

It works now. No idea what was wrong but I probably made some typo (or I should blame LSD in the water pipes :o). Anyway, here's the revised patch.
Comment 5 Goran Mekić 2021-07-26 10:44:34 UTC
Created attachment 226713 [details]
fastapi-users.diff

Added transient dependency and figured out what was wrong with min,max versions. Max can only have <max, not <=max.
Comment 6 Goran Mekić 2021-07-26 11:01:02 UTC
Created attachment 226715 [details]
fastapi-users.diff

Added optional and transitional dependencies.
Comment 7 Kubilay Kocak freebsd_committer freebsd_triage 2021-07-28 02:21:36 UTC
Python doesn't need to block / be assignee on new ports
Comment 8 Kubilay Kocak freebsd_committer freebsd_triage 2021-07-28 02:22:01 UTC
Not sure why i merge-quarterly'd (?) this