summaryrefslogtreecommitdiff
path: root/gnu/packages/python-xyz.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/python-xyz.scm')
-rw-r--r--gnu/packages/python-xyz.scm297
1 files changed, 290 insertions, 7 deletions
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index ce3fd660a8..35147ebfa7 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -2671,6 +2671,292 @@ and several other projects.")
(define-public python2-guzzle-sphinx-theme
(package-with-python2 python-guzzle-sphinx-theme))
+(define-public python-bumpversion
+ (package
+ (name "python-bumpversion")
+ (version "0.5.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "bumpversion" version))
+ (sha256
+ (base32
+ "0zn7694yfipxg35ikkfh7kvgl2fissha3dnqad2c5bvsvmrwhi37"))))
+ (build-system python-build-system)
+ (home-page "https://github.com/peritus/bumpversion")
+ (synopsis "Tool to bump software version")
+ (description "This tool provides a command-line interface (CLI) to bump a
+software version simply.")
+ (license license:expat)))
+
+(define-public python-deprecated
+ (package
+ (name "python-deprecated")
+ (version "1.2.5")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/tantale/deprecated.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "14909glxxwwc4b9qpz2b9jdriwzi5n65ichw85xqppap5f79wcwz"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (invoke "pytest"))))))
+ (propagated-inputs
+ `(("python-wrapt" ,python-wrapt)))
+ (native-inputs
+ `(("python-bumpversion" ,python-bumpversion)
+ ("python-pytest" ,python-pytest)
+ ("python-pytest-cov" ,python-pytest-cov)
+ ("python-sphinx" ,python-sphinx)
+ ("python-tox" ,python-tox)))
+ (home-page "https://github.com/tantale/deprecated")
+ (synopsis "Python decorator to deprecate classes, functions or methods")
+ (description "The @code{deprecated} decorator provides a convenient way to deprecate
+to deprecate classes, functions or methods.")
+ (license license:expat)))
+
+(define-public python-pygithub
+ (package
+ (name "python-pygithub")
+ (version "1.43.7")
+ (source
+ ;; We fetch from the Git repo because there are no tests in the PyPI
+ ;; archive.
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/PyGithub/PyGithub.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0ww92zz0ja9w6rw83vphmn8rwmcn6abg16j4q7zxjc0rrg2cfj9i"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases (modify-phases %standard-phases
+ ;; Some tests rely on the network.
+ (add-after 'unpack 'disable-failing-tests
+ (lambda _
+ (substitute* "tests/Issue142.py"
+ (("testDecodeJson") "disabled_testDecodeJson"))
+ #t))
+ (add-before 'check 'prepare-for-tests
+ (lambda _
+ (for-each (lambda (f)
+ (chmod f #o666))
+ (find-files "./tests"))
+ (system* "python" "-m" "lib2to3" "-w" "-n" "tests")
+ (setenv "PYTHONPATH"
+ (string-append "./tests:" (getenv "PYTHONPATH")))
+ #t)))))
+ (propagated-inputs
+ `(("python-deprecated" ,python-deprecated)
+ ("python-pyjwt" ,python-pyjwt)
+ ("python-requests" ,python-requests)))
+ (native-inputs `(("python-httpretty" ,python-httpretty)))
+ (home-page "https://pygithub.readthedocs.io/en/latest/")
+ (synopsis "Python library for the GitHub API")
+ (description "This library allows managing GitHub resources such as
+repositories, user profiles, and organizations in your Python applications,
+using version 3 of the GitHub application programming interface (API).")
+ (license license:lgpl3+)))
+
+(define-public python-rellu
+ (package
+ (name "python-rellu")
+ (version "0.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "rellu" version))
+ (sha256
+ (base32
+ "1w0arpj1sm7vh29nrbnca4pnp8sx42l07r17inwqcjjf9bhng66x"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-invoke" ,python-invoke)
+ ("python-pygithub" ,python-pygithub)))
+ (home-page "https://github.com/robotframework/rellu")
+ (synopsis "Utilities to create PyPI releases")
+ (description "This collection of utilities contains tooling and templates
+to assist in creating releases on GitHub and publishing them on PyPI. It is
+designed to be used by Robot Framework and tools and libraries in its
+ecosystem, but can naturally be used also by other projects.")
+ (license license:asl2.0)))
+
+(define-public python-robotframework
+ (package
+ (name "python-robotframework")
+ (version "3.1.1")
+ ;; There are no tests in the PyPI archive.
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/robotframework/robotframework.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1aaiamc9l35m5sf7xl2qc5q9308v7sz3p1qgzcslsjxzddphyn4v"))
+ (patches (search-patches
+ "python-robotframework-honor-source-date-epoch.patch"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases (modify-phases %standard-phases
+ (add-before 'build 'build-and-install-doc
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((doc-output (assoc-ref outputs "doc"))
+ (doc (string-append doc-output "/share/"
+ ,name "-" ,version "/")))
+ (invoke "invoke" "library-docs" "all")
+ (mkdir-p doc)
+ (copy-recursively "doc/libraries"
+ (string-append doc "/libraries"))
+ #t)))
+ (replace 'check
+ (lambda _
+ (invoke "python" "utest/run.py"))))))
+ (native-inputs
+ `(("python-invoke" ,python-invoke)
+ ("python-rellu" ,python-rellu)
+ ("python:tk" ,python "tk"))) ;used when building the HTML doc
+ (outputs '("out" "doc"))
+ (home-page "https://robotframework.org")
+ (synopsis "Generic automation framework")
+ (description "Robot Framework is a generic automation framework for
+acceptance testing, acceptance test driven development (ATDD), and robotic
+process automation (RPA).")
+ (license license:asl2.0)))
+
+(define-public python-robotframework-lint
+ ;; There is no properly tagged release; the commit below seems to correspond
+ ;; to the 0.9 stable release available from PyPI. The tests are not
+ ;; included in the PyPI archive, so we fetch the sources from the upstream
+ ;; Git repo.
+ (let ((commit "e851879bab1f63e4e53b34a4dc8a67ed95102830")
+ (revision "1"))
+ (package
+ (name "python-robotframework-lint")
+ (version (git-version "0.9.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/boakley/robotframework-lint.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1p6fknqg5sb9qz5857ji4a877657vgfjm5v3zn45994parx6ml1m"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (invoke "python" "-m" "robot" "-A"
+ "tests/conf/default.args" "tests"))))))
+ (propagated-inputs
+ `(("python-robotframework" ,python-robotframework)))
+ (home-page "https://github.com/boakley/robotframework-lint/")
+ (synopsis "Static analysis tool (linter) for Robot Framework")
+ (description "This package provides the @code{rflint} command-line
+utility, a static analysis tool (linter) for Robot Framework source files.")
+ (license license:asl2.0))))
+
+(define-public python-robotframework-sshlibrary
+ (package
+ (name "python-robotframework-sshlibrary")
+ (version "3.3.0")
+ ;; There are no tests in the PyPI archive.
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/robotframework/SSHLibrary.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1mk6dz2jqqndbx4yji09012q6rmadnqdywi7czvj62b0s07dr3r2"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'build-and-install-doc
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((doc-output (assoc-ref outputs "doc"))
+ (doc (string-append doc-output "/share/"
+ ,name "-" ,version "/")))
+ (invoke "chmod" "-R" "+w" "docs")
+ (invoke "invoke" "kw-docs" "project-docs")
+ (mkdir-p doc)
+ (for-each delete-file (find-files "docs" "\\.rst"))
+ (copy-recursively "docs" doc)
+ #t)))
+ (replace 'check
+ (lambda _
+ ;; Some tests require an SSH server; we remove them.
+ (delete-file "utest/test_client_api.py")
+ (delete-file "utest/test_scp.py")
+ (invoke "python" "utest/run.py"))))))
+ (propagated-inputs
+ `(("python-robotframework" ,python-robotframework)
+ ("python-paramiko" ,python-paramiko)
+ ("python-scp" ,python-scp)))
+ (native-inputs
+ `(("openssh" ,openssh)
+ ("which" ,which)
+ ;; To generate the documentation
+ ("python-docutils" ,python-docutils)
+ ("python-invoke" ,python-invoke)
+ ("python-pygments" ,python-pygments)
+ ("python-rellu" ,python-rellu)))
+ (outputs '("out" "doc"))
+ (home-page "https://github.com/robotframework/SSHLibrary")
+ (synopsis "Robot Framework library for SSH and SFTP")
+ (description "SSHLibrary is a Robot Framework library providing support
+for SSH and SFTP. It has the following main usages:
+@itemize @bullet
+@item Executing commands on the remote machine, either blocking or non-blocking.
+@item Writing and reading in an interactive shell.
+@item Transferring files and directories over SFTP.
+@item Ensuring that files and directories exist on the remote machine.
+@end itemize")
+ (license license:asl2.0)))
+
+(define-public python-scp
+ (package
+ (name "python-scp")
+ (version "0.13.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "scp" version))
+ (sha256
+ (base32
+ "1crlpw9lnn58fs1c1rmh7s7s9y5gkgpgjsqlvg9qa51kq1knx7gg"))))
+ (build-system python-build-system)
+ (arguments
+ '(#:tests? #f)) ;tests require an SSH server
+ (propagated-inputs
+ `(("python-paramiko" ,python-paramiko)))
+ (home-page "https://github.com/jbardin/scp.py")
+ (synopsis "SCP protocol module for Python and Paramiko")
+ (description "The scp module extends the Paramiko library to send and
+receive files via the SCP1 protocol, as implemented by the OpenSSH
+@command{scp} program.")
+ (license license:gpl2+)))
+
(define-public python-rst.linker
(package
(name "python-rst.linker")
@@ -2977,14 +3263,14 @@ and is very extensible.")
(define-public python-cython
(package
(name "python-cython")
- (version "0.29.5")
+ (version "0.29.6")
(source
(origin
(method url-fetch)
(uri (pypi-uri "Cython" version))
(sha256
(base32
- "1wfb68g115gmf3mv23w0hh972b0ll85gpb92ci28x6h997br0llx"))))
+ "1bp7cn0pp5qy63k9hbp4ka34fm01kvysh478phpkhr68npqk6pbc"))))
(build-system python-build-system)
;; we need the full python package and not just the python-wrapper
;; because we need libpython3.3m.so
@@ -3016,9 +3302,6 @@ and is very extensible.")
(replace 'check
(lambda _
- ;; The "with_outer_raising" test fails with Python 3.7. See
- ;; https://github.com/cython/cython/issues/2454
- (delete-file "tests/run/generators_py.py")
(invoke "python" "runtests.py" "-vv"))))))
(home-page "http://cython.org/")
(synopsis "C extensions for Python")
@@ -3422,13 +3705,13 @@ library, libgit2 implements Git plumbing.")
(define-public python-pyparsing
(package
(name "python-pyparsing")
- (version "2.2.1")
+ (version "2.3.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pyparsing" version))
(sha256
- (base32 "06dgd0iilvf8m0ssmfpcbh8l6jf0zkp8adbb84llksg17crfx4zl"))))
+ (base32 "0yk6xl885b91dmlhlsap7x78hk2rdr879fln9anbq6k4ca42djb6"))))
(build-system python-build-system)
(outputs '("out" "doc"))
(arguments