mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-11-07 15:36:20 -05:00
gnu: Add python-pure-protobuf.
* gnu/packages/protobuf.scm (python-pure-protobuf): New variable. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
This commit is contained in:
parent
41a190b8c6
commit
6f1784fa5c
1 changed files with 56 additions and 0 deletions
|
@ -32,11 +32,14 @@ (define-module (gnu packages protobuf)
|
|||
#:use-module (guix build-system emacs)
|
||||
#:use-module (guix build-system ruby)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages libevent)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-check)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages ruby))
|
||||
|
||||
|
@ -227,6 +230,59 @@ (define-public python-protobuf
|
|||
mechanism for serializing structured data.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python-pure-protobuf
|
||||
(package
|
||||
(name "python-pure-protobuf")
|
||||
(version "2.0.0")
|
||||
(source
|
||||
(origin
|
||||
;; pypi is broken; has no tests
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/eigenein/protobuf")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0lgs99dpfyckz6spib419sl7jpdk2g54pcw0yg59gdcsd1f5zqgz"))))
|
||||
(build-system python-build-system)
|
||||
(native-inputs
|
||||
`(("python-flake8" ,python-flake8)
|
||||
("python-pytest" ,python-pytest)
|
||||
("python-pytest-cov" ,python-pytest-cov)
|
||||
("python-isort" ,python-isort)))
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'check 'setup-test-env
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(py3sitedir
|
||||
(string-append out "/lib/python"
|
||||
,(version-major+minor
|
||||
(package-version python))
|
||||
"/site-packages")))
|
||||
(setenv "PYTHONPATH"
|
||||
(string-append py3sitedir ":"
|
||||
(getenv "PYTHONPATH"))))
|
||||
#t))
|
||||
(replace 'check
|
||||
(lambda _
|
||||
(invoke "pytest" "--cov-report" "term-missing" "--cov"
|
||||
"pure_protobuf")
|
||||
(invoke "flake8" "pure_protobuf" "tests"
|
||||
"--ignore=F541")
|
||||
(invoke "isort" "-rc" "-c" "pure_protobuf" "tests")
|
||||
#t)))))
|
||||
(home-page "https://pypi.org/project/pure-protobuf/")
|
||||
(synopsis "Protobuf implementation using dataclasses")
|
||||
(description
|
||||
"@code{python-pure-protobuf} allows to take advantage of the standard
|
||||
dataclasses module to define message types. Protocol buffers are a
|
||||
language-neutral, platform-neutral extensible mechanism for serializing
|
||||
structured data.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python2-protobuf
|
||||
(package-with-python2 python-protobuf))
|
||||
|
||||
|
|
Loading…
Reference in a new issue