Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Packaging several async python web libraries / databases connectors #76652

Merged
merged 13 commits into from Dec 30, 2019

Conversation

costrouc
Copy link
Member

Much work was done in this PR to ensure that fastapi,starlette,pydantic and all new packages have all tests enabled. Previously simple tests were performed (e.g. imports work). Also moved all new/refactored derivations to use github (in my opinion after submitting many many PRs to nixpkgs repositories are better than pypi) one but not all of the reasons is that authors typically exclude tests from the pypi release.

All packages have full test suite enabled. Thus going forward we should have great certainty that they are not broken. starlette was reverted from 0.12.13 -> 0.12.9 since it's only dependent package fastapi pins on this exact version (it is broken with newer versions). Hopefully we can remove this pin soon.

Motivation for this change

These are some great core async libraries to have available for web development.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.
Notify maintainers

cc @

@costrouc
Copy link
Member Author

costrouc commented Dec 29, 2019

I realize this is larger PR but as I was enabling the test suites of starlette/httpx/fastapi it required these dependencies.

@costrouc
Copy link
Member Author

I ran nix-review pr --package-regex=python37Packages 76652 to limit it to only python 3.7. For some reason the build gets stuck on uvloop tests (not related to this PR).

Result of nix-review pr 76652 1

13 package were built:
  • python37Packages.aiocontextvars
  • python37Packages.aiomysql
  • python37Packages.aiosqlite
  • python37Packages.aiounittest
  • python37Packages.databases
  • python37Packages.fastapi
  • python37Packages.hstspreload
  • python37Packages.httpx
  • python37Packages.orm
  • python37Packages.pydantic
  • python37Packages.python-multipart
  • python37Packages.starlette
  • python37Packages.typesystem

@costrouc
Copy link
Member Author

Running nix-review pr --package-regex=python27Packages 76652

Result of nix-review pr 76652 1

1 package were built:
  • python27Packages.python-multipart

@wd15
Copy link
Contributor

wd15 commented Dec 30, 2019

nix-review passes for me with same --package-regex options.

@FRidh FRidh merged commit 5a3cbd0 into NixOS:master Dec 30, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants