diff options
author | Alyssa Ross <hi@alyssa.is> | 2019-08-14 00:20:49 +0000 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2019-08-14 00:23:16 +0000 |
commit | 4999a38db7c5de0ea9f514a12ecd4133cce647f3 (patch) | |
tree | bbb659ab07fda4c9b98053499b7e3f046ac6d5dc /nixpkgs/pkgs/development/python-modules/pydantic/default.nix | |
parent | f9abd30e11337cf07034f2cc8ad1691aa4a69386 (diff) | |
parent | 8746c77a383f5c76153c7a181f3616d273acfa2a (diff) | |
download | nixlib-4999a38db7c5de0ea9f514a12ecd4133cce647f3.tar nixlib-4999a38db7c5de0ea9f514a12ecd4133cce647f3.tar.gz nixlib-4999a38db7c5de0ea9f514a12ecd4133cce647f3.tar.bz2 nixlib-4999a38db7c5de0ea9f514a12ecd4133cce647f3.tar.lz nixlib-4999a38db7c5de0ea9f514a12ecd4133cce647f3.tar.xz nixlib-4999a38db7c5de0ea9f514a12ecd4133cce647f3.tar.zst nixlib-4999a38db7c5de0ea9f514a12ecd4133cce647f3.zip |
Merge commit '8746c77a383f5c76153c7a181f3616d273acfa2a'
Diffstat (limited to 'nixpkgs/pkgs/development/python-modules/pydantic/default.nix')
-rw-r--r-- | nixpkgs/pkgs/development/python-modules/pydantic/default.nix | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/python-modules/pydantic/default.nix b/nixpkgs/pkgs/development/python-modules/pydantic/default.nix new file mode 100644 index 000000000000..9b713827199b --- /dev/null +++ b/nixpkgs/pkgs/development/python-modules/pydantic/default.nix @@ -0,0 +1,51 @@ +{ lib +, buildPythonPackage +, fetchPypi +, ujson +, email_validator +, typing-extensions +, python +, isPy3k +}: + +buildPythonPackage rec { + pname = "pydantic"; + version = "0.31"; + disabled = !isPy3k; + + src = fetchPypi { + inherit pname version; + sha256 = "0x9xc5hpyrlf05dc4bx9f7v51fahxcahkvh0ij8ibay15nwli53d"; + }; + + propagatedBuildInputs = [ + ujson + email_validator + typing-extensions + ]; + + checkPhase = '' + ${python.interpreter} -c """ +from datetime import datetime +from typing import List +from pydantic import BaseModel + +class User(BaseModel): + id: int + name = 'John Doe' + signup_ts: datetime = None + friends: List[int] = [] + +external_data = {'id': '123', 'signup_ts': '2017-06-01 12:22', 'friends': [1, '2', b'3']} +user = User(**external_data) +assert user.id is "123" +""" + ''; + + meta = with lib; { + homepage = "https://github.com/samuelcolvin/pydantic"; + description = "Data validation and settings management using Python type hinting"; + license = licenses.mit; + maintainers = with maintainers; [ wd15 ]; + }; +} |