Add python-apscheduler

  • Done
  • quality assurance status badge
Details
2 participants
  • paul
  • Sharlatan Hellseher
Owner
unassigned
Submitted by
paul
Severity
normal
P
(address . guix-patches@gnu.org)
38ceaa64-b7d4-257e-d207-d9d3be9ae107@autistici.org
Hello,


I'm sending a couple of patches adding python-apscheduler.


Thank you for you time and efforts,


giacomo
G
G
Giacomo Leidi wrote on 15 Jan 23:49 +0100
[PATCH 1/2] gnu: Add python-pytest-tornado5.
(address . 68491@debbugs.gnu.org)(name . Giacomo Leidi)(address . goodoldpaul@autistici.org)
20240115224938.29916-1-goodoldpaul@autistici.org
* gnu/packages/check.scm (python-pytest-tornado5): New variable.

Change-Id: I9843e91d750bf17128eb6f566b8dbb5cbc0d8278
---
gnu/packages/check.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (46 lines)
diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index b475aea8ae..49a5f42ca8 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -48,6 +48,7 @@
;;; Copyright © 2023 Reza Housseini <reza@housseini.me>
;;; Copyright © 2023 Hilton Chain <hako@ultrarare.space>
;;; Copyright © 2023 Troy Figiel <troy@troyfigiel.com>
+;;; Copyright © 2024 Giacomo Leidi <goodoldpaul@autistici.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -3573,6 +3574,29 @@ (define-public python-pytest-regressions
that can be used to verify that future runs produce the same data.")
(license license:expat)))
+(define-public python-pytest-tornado5
+ (package
+ (name "python-pytest-tornado5")
+ (version "2.0.0")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "pytest-tornado5" version))
+ (sha256
+ (base32
+ "0qb62jw2w0xr6y942yp0qxiy755bismjfpnxaxjjm05gy2pymr8d"))))
+ (build-system pyproject-build-system)
+ (arguments
+ ;; Tests require pytest < 6
+ (list #:tests? #f))
+ (propagated-inputs (list python-pytest python-tornado))
+ (home-page "https://github.com/vidartf/pytest-tornado")
+ (synopsis
+ "Fixtures and markers to simplify testing of Tornado applications")
+ (description
+ "This package provides a @code{py.test} plugin providing fixtures and markers to
+simplify testing of asynchronous tornado applications.")
+ (license license:asl2.0)))
+
(define-public guile-proba
(package
(name "guile-proba")

base-commit: 19db1551dc6f6180d2cda9084c2dec37bf4923c9
--
2.41.0
G
G
Giacomo Leidi wrote on 15 Jan 23:49 +0100
[PATCH 2/2] gnu: Add python-apscheduler.
(address . 68491@debbugs.gnu.org)(name . Giacomo Leidi)(address . goodoldpaul@autistici.org)
20240115224938.29916-2-goodoldpaul@autistici.org
* gnu/packages/python-xyz.scm (python-apscheduler): New variable.

Change-Id: Ib5964520a8d3c9c4711ba2ee4c5812241dc93423
---
gnu/packages/python-xyz.scm | 39 ++++++++++++++++++++++++++++++++++++-
1 file changed, 38 insertions(+), 1 deletion(-)

Toggle diff (59 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 1ca5d7f8fd..33be56ddb2 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -63,7 +63,7 @@
;;; Copyright © 2019, 2020 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2019, 2020, 2021, 2022, 2023 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2019 Jacob MacDonald <jaccarmac@gmail.com>
-;;; Copyright © 2019-2021, 2023 Giacomo Leidi <goodoldpaul@autistici.org>
+;;; Copyright © 2019-2021, 2023, 2024 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2019 Wiktor ?elazny <wzelazny@vurv.cz>
;;; Copyright © 2019, 2020, 2021, 2022 Tanguy Le Carrour <tanguy@bioneland.org>
;;; Copyright © 2019, 2021-2023 M?d?lin Ionel Patra?cu <madalinionel.patrascu@mdc-berlin.de>
@@ -27217,6 +27217,43 @@ (define-public python-crontab
access the system cron automatically and simply using a direct API.")
(license license:lgpl3+)))
+(define-public python-apscheduler
+ (package
+ (name "python-apscheduler")
+ (version "3.10.4")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "APScheduler" version))
+ (sha256
+ (base32
+ "0jpg9jyx95jafkq0hz6sx7r4l2z5gc599ivb9278kgnr4wdhgpz6"))))
+ (build-system pyproject-build-system)
+ (propagated-inputs (list python-pytz
+ python-six
+ python-tzlocal))
+ (native-inputs (list python-mock
+ python-twisted
+ python-gevent
+ python-setuptools-scm
+ python-sqlalchemy
+ python-setuptools
+ python-pyside-6
+ python-pytest
+ python-pytest-asyncio
+ python-pytest-cov
+ python-pytest-tornado5))
+ (home-page "https://github.com/agronholm/apscheduler")
+ (synopsis "Task scheduling library for Python")
+ (description "Advanced Python Scheduler (APScheduler) is a Python library
+that lets you schedule your Python code to be executed later, either just once
+or periodically.
+
+You can add new jobs or remove old ones on the fly as you please. If you store
+your jobs in a database, they will also survive scheduler restarts and maintain
+their state. When the scheduler is restarted, it will then run all the jobs it
+should have run while it was offline.")
+ (license license:expat)))
+
(define-public python-pylzma
(package
(name "python-pylzma")
--
2.41.0
S
S
Sharlatan Hellseher wrote on 10 Feb 10:50 +0100
Add python-apscheduler
(address . 68491@debbugs.gnu.org)(name . paul)(address . goodoldpaul@autistici.org)
87wmrcr6lj.fsf@gmail.com
Hi,

There is v4.0.0a4 in GitHub which was released <Nov 13, 2023> but not
available in PyPI. That version has las dated dependencies
(pytest-tornado is not maintained and abandoned).

List of dependencies based on [0]:

- install-require [/][%]
- [ ] python-anyio
- [ ] python-asyncpg
- [ ] python-attrs
- [ ] python-cbor2
- [ ] python-paho-mqtt
- [ ] python-pymongo
- [ ] python-redis
- [ ] python-sqlalchemy
- [ ] python-tenacity
- [ ] python-typing-extensions
- [ ] python-tzlocal
- test [/][%]
- [ ] python-aiosqlite
- [ ] python-anyio
- [ ] python-apscheduler
- [ ] python-asyncmy
- [ ] python-asyncpg
- [ ] python-coverage
- [ ] python-freezegun
- [ ] python-paho-mqtt
- [ ] python-psycopg
- [ ] python-pymongo
- [ ] python-pymysq
- [ ] python-pyside6
- [ ] python-pytest
- [ ] python-pytest-freezer
- [ ] python-pytest-lazy-fixture
- [ ] python-pytest-mock
- [ ] python-uwsgi



May you check if your patch would be easy to migrate to the new version please?


Thanks,
Oleg
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEmEeB3micIcJkGAhndtcnv/Ys0rUFAmXHRtgACgkQdtcnv/Ys
0rX6Pg/+OiFIi8MQy9AUlkZs3yUmlnS4Xwn2dNLDJ5Dpzscrhr/kENrNSv5zPeSq
ox6P7jFUUcqsENlZTwsTiEiX5EgMjHl4acFwFyjrNuEsIEdoQWsh85pWwokaaZtU
Xt9c7FdL5EUA7NUQyCGm9AotbLiX0lZRUh/3qYXdbdXaZIi5rhD+ARXPo7GMzWlv
WZqSIHlH8otlEsQN31MXQf2SRht/QzwLhTMF33onK8BmvMzrPymI6h7HDj/8ZYjp
f8k/bUIWi5WJZMghUr11HvO6+EA9zS6S1EpM8Bx+0RSfWwN4B8Z8hvm5kvA/T21g
KTfSu9Ff3ll9QN+PIH5Z4cgRMzT4vs0FAGg///rD0jboPJK0e4KG4P4ZEZbbsr/Y
+RVJOJZEXanrp2jwEI+Z1dRctvy5YPmRifZ8MQ9eU+ydnMMmm3kKXnYSbTqOtq4l
BO1WW+27Cgx69fNnDAfv4hPpjm2Twscp8lFOkScc3XVOc65oyg0D8Wkr1OteVZ4+
1clyxTNeaZCQAM5unqcJH5Oj5GwXwZ06c/JWOmq7A0XHWxB/0m6+/u0ndxabdXbA
yQ9Y4nzQIznIomK5D8UqnEr3/61k0M3j8/bzzVrTg/EfNPRyW1JleEP+iST6Jo5q
/MnHPiGehBADrcmtcBQYNoVgJWju4Du3ccco3BfkX4JkftFG4/Q=
=mjY6
-----END PGP SIGNATURE-----

P
e8075e85-bcd0-8806-f579-b943ea993343@autistici.org
Hi Oleg,

thank you for your comments.

On 2/10/24 10:50, Sharlatan Hellseher wrote:
Toggle quote (2 lines)
> May you check if your patch would be easy to migrate to the new version please?

I tried with the following:

(define-public python-apscheduler
  (package
    (name "python-apscheduler")
    (version "4.0.0a4")
    (source
     (origin
       (method git-fetch)
       (uri (git-reference
             (url "https://github.com/agronholm/apscheduler")
             (commit version)))
       (file-name (git-file-name name version))
       (sha256
        (base32 "0rpa584wbnycf0s960kdjsr5glg7vy4p9wd7ya1dhxgy3bq4acab"))))
    (build-system pyproject-build-system)
    (propagated-inputs (list python-anyio
                             python-attrs
                             python-tenacity
                             python-tzlocal
                             python-typing-extensions))
    (native-inputs (list ;; python-mock
                         ;; python-twisted
                         ;; python-gevent
                         python-setuptools-scm
                         ;; python-sqlalchemy
                         python-setuptools
                         python-pyside-6
                         python-pytest
                         ;; python-pytest-asyncio
                         ;; python-pytest-cov
                         ))
    (synopsis "Task scheduling library for Python")
    (description "Advanced Python Scheduler (APScheduler) is a Python
library
that lets you schedule your Python code to be executed later, either
just once
or periodically.

You can add new jobs or remove old ones on the fly as you please. If you
store
your jobs in a database, they will also survive scheduler restarts and
maintain
their state.  When the scheduler is restarted, it will then run all the
jobs it
should have run while it was offline.")
    (license license:expat)))

but it gave me the attached log. Then I looked at
wondering whether maybe the 4.0.0a4 release is too unstable to be
packaged yet. I didn't spend a lot of time over this so if you think
this is a blocking issue I can try further, otherwise I'd like to
proceed with the patch as it is and I'll take care of removing the
tornado dependency when we update to 4.0.*

What do you think?

Thank you for your time,

giacomo
S
S
Sharlatan Hellseher wrote on 18 Feb 13:26 +0100
Add python-apscheduler
(address . 68491-done@debbugs.gnu.org)
87wmr2klg9.fsf@gmail.com
Hi Paul,

I've checked other distributions for the version they used and you are
right 4.0.0a4 was not in used anywhere.

Pushed as c2f5d0f7d8..96895a65b4 to master.

--
Oleg
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEmEeB3micIcJkGAhndtcnv/Ys0rUFAmXR92YACgkQdtcnv/Ys
0rVTDhAAyGUDSKoquP2sE3X90p6MkUdHvwcBBkixxGN6kovm8Fz/yhkj3TLPu1Qr
16Cm9/TN59kEquOUzXf9woyTlxIt1IyIL6MbMSdt8dcZ8H2ObZUR4SXyeasA2BtD
p8eCax07SZUgZn/K8bgiWMevTTPp2J8Pmt4VNev0VO/oJfQXNwxie8GviWNI31yj
ScQ9/dm+OHEmTS11XcPGGPgjiJGIcMYpzFsp8XIalmZRzMbrzelKSkzL8d+L3mjK
wVGebv1pfdzuQO/MucZSKOotLeooWsxPfvv8XhkrJJkH5ePQvARMtf/yLs5+yCM6
UzJLN7KN2Cr7r4ZoLXVXJYjM/W9whfinznK6SPu6snkgLSS2ESKRHtFch39os0IT
h0NnpGhBD7YkgqO6lM9pSoOA0SQnNVXjv6aWIVfjw7uQxxrOw4IBlFvyWgPdxApt
ogmM2UvwqDwFrkme3V8xkDsWrnYMcqRhSVbm1TNTZfTvLgOFWoVPXLunlcTi2Br6
32xY/b0NN/xMxrPvli1PJmGCX2jVNcertwaMC6xyQ90OGstHo2+Inl45apDiKazk
kiRCXw+eHTMZ32k9sFcmmUiFVTab6RT5Gb0kGqPyHzMG0fGuhf35JJGEAlUPaoHL
zYtscBrmLAyeOxy421wZ3ca6kPuFxXSkw342F0IfpKOqEJYxRVE=
=Dj2K
-----END PGP SIGNATURE-----

Closed
?