Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at 19.09 51 lines 1.1 kB view raw
1{ lib 2, buildPythonPackage 3, fetchPypi 4, ujson 5, email_validator 6, typing-extensions 7, python 8, isPy3k 9}: 10 11buildPythonPackage rec { 12 pname = "pydantic"; 13 version = "0.31"; 14 disabled = !isPy3k; 15 16 src = fetchPypi { 17 inherit pname version; 18 sha256 = "0x9xc5hpyrlf05dc4bx9f7v51fahxcahkvh0ij8ibay15nwli53d"; 19 }; 20 21 propagatedBuildInputs = [ 22 ujson 23 email_validator 24 typing-extensions 25 ]; 26 27 checkPhase = '' 28 ${python.interpreter} -c """ 29from datetime import datetime 30from typing import List 31from pydantic import BaseModel 32 33class User(BaseModel): 34 id: int 35 name = 'John Doe' 36 signup_ts: datetime = None 37 friends: List[int] = [] 38 39external_data = {'id': '123', 'signup_ts': '2017-06-01 12:22', 'friends': [1, '2', b'3']} 40user = User(**external_data) 41assert user.id is "123" 42""" 43 ''; 44 45 meta = with lib; { 46 homepage = "https://github.com/samuelcolvin/pydantic"; 47 description = "Data validation and settings management using Python type hinting"; 48 license = licenses.mit; 49 maintainers = with maintainers; [ wd15 ]; 50 }; 51}