Commit | Line | Data |
---|---|---|
233e7676 LC |
1 | ;;; GNU Guix --- Functional package management for GNU |
2 | ;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org> | |
33dc54b0 RW |
3 | ;;; Copyright © 2013, 2017 Ludovic Courtès <ludo@gnu.org> |
4 | ;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr> | |
5 | ;;; Copyright © 2015, 2016, 2017 Efraim Flashner <efraim@flashner.co.il> | |
6 | ;;; Copyright © 2015, 2017 Leo Famulari <leo@famulari.name> | |
7 | ;;; Copyright © 2015, 2017 Cyril Roelandt <tipecaml@gmail.com> | |
8 | ;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com> | |
9 | ;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com> | |
10 | ;;; Copyright © 2016 Danny Milosavljevic <dannym+a@scratchpost.org> | |
11 | ;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com> | |
12 | ;;; Copyright © 2016 Tobias Geerinckx-Rice <me@tobias.gr> | |
5d20e1ec | 13 | ;;; Copyright © 2017 Ben Woodcroft <donttrustben@gmail.com> |
33dc54b0 RW |
14 | ;;; Copyright © 2017 ng0 <ng0@infotropique.org> |
15 | ;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu> | |
b147f59f | 16 | ;;; |
233e7676 | 17 | ;;; This file is part of GNU Guix. |
b147f59f | 18 | ;;; |
233e7676 | 19 | ;;; GNU Guix is free software; you can redistribute it and/or modify it |
b147f59f NK |
20 | ;;; under the terms of the GNU General Public License as published by |
21 | ;;; the Free Software Foundation; either version 3 of the License, or (at | |
22 | ;;; your option) any later version. | |
23 | ;;; | |
233e7676 | 24 | ;;; GNU Guix is distributed in the hope that it will be useful, but |
b147f59f NK |
25 | ;;; WITHOUT ANY WARRANTY; without even the implied warranty of |
26 | ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
27 | ;;; GNU General Public License for more details. | |
28 | ;;; | |
29 | ;;; You should have received a copy of the GNU General Public License | |
233e7676 | 30 | ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. |
b147f59f | 31 | |
1ffa7090 | 32 | (define-module (gnu packages time) |
4a44e743 | 33 | #:use-module (guix licenses) |
b147f59f NK |
34 | #:use-module (guix packages) |
35 | #:use-module (guix download) | |
5d20e1ec BW |
36 | #:use-module (guix build-system gnu) |
37 | #:use-module (guix build-system python) | |
ac257f12 | 38 | #:use-module (gnu packages check) |
33dc54b0 | 39 | #:use-module (gnu packages compression) |
5d20e1ec | 40 | #:use-module (gnu packages python)) |
b147f59f NK |
41 | |
42 | (define-public time | |
43 | (package | |
44 | (name "time") | |
dd00e091 | 45 | (version "1.8") |
b147f59f NK |
46 | (source |
47 | (origin | |
48 | (method url-fetch) | |
49 | (uri (string-append "mirror://gnu/time/time-" | |
50 | version ".tar.gz")) | |
51 | (sha256 | |
52 | (base32 | |
dd00e091 | 53 | "06rfg8dn0q2r8pdq8i6brrs6rqrsgvkwbbl4kfx3a6lnal0m8bwa")))) |
b147f59f | 54 | (build-system gnu-build-system) |
6fd52309 | 55 | (home-page "https://www.gnu.org/software/time/") |
f50d2669 | 56 | (synopsis "Run a command, then display its resource usage") |
b147f59f | 57 | (description |
a22dc0c4 LC |
58 | "Time is a command that displays information about the resources that a |
59 | program uses. The display output of the program can be customized or saved | |
60 | to a file.") | |
c8b38f8e | 61 | (license gpl3+))) |
5d20e1ec BW |
62 | |
63 | (define-public python-pytzdata | |
64 | (package | |
65 | (name "python-pytzdata") | |
66 | (version "2017.2") | |
67 | (source | |
68 | (origin | |
69 | (method url-fetch) | |
70 | (uri (pypi-uri "pytzdata" version)) | |
71 | (sha256 | |
72 | (base32 | |
73 | "1c1az8spm2d3km6qhjy69y4dlj71p6984l48mizr83nh4f0ipld4")))) | |
74 | (build-system python-build-system) | |
75 | (native-inputs | |
76 | `(("python-pytest" ,python-pytest) | |
77 | ("python-nose" ,python-nose))) | |
78 | (home-page "https://github.com/sdispater/pytzdata") | |
79 | (synopsis "Timezone database for Python") | |
80 | (description | |
81 | "This library provides a timezone database for Python.") | |
82 | (license expat))) | |
83 | ||
84 | (define-public python2-tzdata | |
85 | (package-with-python2 python-pytzdata)) | |
89c3eaaa | 86 | |
33dc54b0 RW |
87 | (define-public python-pytz |
88 | (package | |
89 | (name "python-pytz") | |
90 | (version "2017.2") | |
91 | (source | |
92 | (origin | |
93 | (method url-fetch) | |
94 | (uri (pypi-uri "pytz" version ".zip")) | |
95 | (sha256 | |
96 | (base32 | |
97 | "12cmd3j46d2gcw08bspvp6s9icfcvx88zjz52n1bli9dyvl5dh7m")))) | |
98 | (build-system python-build-system) | |
99 | (native-inputs | |
100 | `(("unzip" ,unzip))) | |
101 | (home-page "http://pythonhosted.org/pytz") | |
102 | (synopsis "Python timezone library") | |
103 | (description "This library brings the Olson tz database into Python. It | |
104 | allows accurate and cross platform timezone calculations using Python 2.4 or | |
105 | higher. It also solves the issue of ambiguous times at the end of daylight | |
106 | saving time. Almost all of the Olson timezones are supported.") | |
107 | (license expat))) | |
108 | ||
109 | (define-public python2-pytz | |
110 | (package-with-python2 python-pytz)) | |
111 | ||
89c3eaaa BW |
112 | (define-public python-pendulum |
113 | (package | |
114 | (name "python-pendulum") | |
115 | (version "1.2.4") | |
116 | (source | |
117 | (origin | |
118 | (method url-fetch) | |
119 | (uri (pypi-uri "pendulum" version)) | |
120 | (sha256 | |
121 | (base32 | |
122 | "1fj36yxi2f4lzchzd8ny1qjl67dbypnk0gn8qwad2w78579m8m8z")))) | |
123 | (build-system python-build-system) | |
124 | (native-inputs | |
125 | `(("python-pytest" ,python-pytest) | |
126 | ("python-nose" ,python-nose))) | |
127 | (propagated-inputs | |
128 | `(("python-dateutil" ,python-dateutil) | |
129 | ("python-pytzdata" ,python-pytzdata) | |
130 | ("python-tzlocal" ,python-tzlocal))) | |
131 | (home-page "https://github.com/sdispater/pendulum") | |
132 | (synopsis "Alternate API for Python datetimes") | |
133 | (description "Pendulum is a drop-in replacement for the standard | |
134 | @{datetime} class, providing an alternative API. As it inherits from the | |
135 | standard @code{datetime} all @code{datetime} instances can be replaced by | |
136 | Pendulum instances.") | |
137 | (license expat))) | |
138 | ||
139 | (define-public python2-pendulum | |
140 | (package-with-python2 python-pendulum)) | |
33dc54b0 RW |
141 | |
142 | (define-public python-dateutil | |
143 | (package | |
144 | (name "python-dateutil") | |
145 | (version "2.6.0") | |
146 | (source | |
147 | (origin | |
148 | (method url-fetch) | |
149 | (uri (pypi-uri "python-dateutil" version)) | |
150 | (sha256 | |
151 | (base32 | |
152 | "1lhq0hxjc3cfha101q02ld5ijlpfyjn2w1yh7wvpiy367pgzi8k2")))) | |
153 | (build-system python-build-system) | |
154 | (propagated-inputs | |
155 | `(("python-six" ,python-six))) | |
156 | (home-page "https://dateutil.readthedocs.io/en/stable/") | |
157 | (synopsis "Extensions to the standard datetime module") | |
158 | (description | |
159 | "The dateutil module provides powerful extensions to the standard | |
160 | datetime module, available in Python 2.3+.") | |
161 | (license bsd-3))) | |
162 | ||
163 | (define-public python2-dateutil | |
164 | (package-with-python2 python-dateutil)) | |
165 | ||
166 | (define-public python-parsedatetime | |
167 | (package | |
168 | (name "python-parsedatetime") | |
169 | (version "2.4") | |
170 | (source | |
171 | (origin | |
172 | (method url-fetch) | |
173 | (uri (pypi-uri "parsedatetime" version)) | |
174 | (sha256 | |
175 | (base32 | |
176 | "0jxqkjks7z9dn222cqgvskp4wr6d92aglinxq7pd2w4mzdc7r09x")))) | |
177 | (build-system python-build-system) | |
178 | (native-inputs | |
179 | `(("python-nose" ,python-nose) | |
180 | ("python-pyicu" ,python-pyicu) | |
181 | ("python-pytest" ,python-pytest) | |
182 | ("python-pytest-runner" ,python-pytest-runner))) | |
183 | (propagated-inputs | |
184 | `(("python-future" ,python-future))) | |
185 | (home-page "https://github.com/bear/parsedatetime/") | |
186 | (synopsis "Parse human-readable date/time text") | |
187 | (description | |
188 | "Parse human-readable date/time text.") | |
189 | (license asl2.0))) | |
190 | ||
191 | (define-public python2-parsedatetime | |
192 | (package-with-python2 python-parsedatetime)) | |
193 | ||
194 | (define-public python-tzlocal | |
195 | (package | |
196 | (name "python-tzlocal") | |
197 | (version "1.2.2") | |
198 | (source | |
199 | (origin | |
200 | (method url-fetch) | |
201 | (uri (pypi-uri "tzlocal" version)) | |
202 | (sha256 | |
203 | (base32 | |
204 | "0paj7vlsb0np8b5sp4bv64wxv7qk2piyp7xg29pkhdjwsbls9fnb")))) | |
205 | (build-system python-build-system) | |
206 | (propagated-inputs | |
207 | `(("python-pytz" ,python-pytz))) | |
208 | (home-page "https://github.com/regebro/tzlocal") | |
209 | (synopsis "Local timezone information for Python") | |
210 | (description | |
211 | "Tzlocal returns a tzinfo object with the local timezone information. | |
212 | This module attempts to fix a glaring hole in pytz, that there is no way to | |
213 | get the local timezone information, unless you know the zoneinfo name, and | |
214 | under several distributions that's hard or impossible to figure out.") | |
215 | (license cc0))) | |
216 | ||
217 | (define-public python-isodate | |
218 | (package | |
219 | (name "python-isodate") | |
220 | (version "0.5.4") | |
221 | (source | |
222 | (origin | |
223 | (method url-fetch) | |
224 | (uri (pypi-uri "isodate" version)) | |
225 | (sha256 | |
226 | (base32 | |
227 | "0cafaiwixgpxwh9dsd28qb0dbzsj6xpxjdkyk30ns91ps10mq422")))) | |
228 | (build-system python-build-system) | |
229 | (home-page "http://cheeseshop.python.org/pypi/isodate") | |
230 | (synopsis "Python date parser and formatter") | |
231 | (description | |
232 | "Python-isodate is a python module for parsing and formatting | |
233 | ISO 8601 dates, time and duration.") | |
234 | (license bsd-3))) | |
235 | ||
236 | (define-public python2-isodate | |
237 | (package-with-python2 python-isodate)) | |
238 | ||
239 | (define-public python-iso8601 | |
240 | (package | |
241 | (name "python-iso8601") | |
242 | (version "0.1.11") | |
243 | (source | |
244 | (origin | |
245 | (method url-fetch) | |
246 | (uri (pypi-uri "iso8601" version)) | |
247 | (sha256 | |
248 | (base32 | |
249 | "0c7gh3lsdjds262h0v1sqc66l7hqgfwbakn96qrhdbl0i3vm5yz8")))) | |
250 | (build-system python-build-system) | |
251 | (native-inputs | |
252 | `(("python-pytest" ,python-pytest))) | |
253 | (home-page "https://bitbucket.org/micktwomey/pyiso8601") | |
254 | (synopsis "Module to parse ISO 8601 dates") | |
255 | (description | |
256 | "This module parses the most common forms of ISO 8601 date strings (e.g. | |
257 | @code{2007-01-14T20:34:22+00:00}) into @code{datetime} objects.") | |
258 | (license expat))) | |
259 | ||
260 | (define-public python2-iso8601 | |
261 | (package-with-python2 python-iso8601)) | |
262 | ||
263 | (define-public python-monotonic | |
264 | (package | |
265 | (name "python-monotonic") | |
266 | (version "0.3") | |
267 | (source | |
268 | (origin | |
269 | (method url-fetch) | |
270 | (uri (string-append | |
271 | "https://pypi.python.org/packages/source/m/monotonic/monotonic-" | |
272 | version | |
273 | ".tar.gz")) | |
274 | (sha256 | |
275 | (base32 | |
276 | "0yz0bcbwx8r2c01czzfpbrxddynxyk9k95jj8h6sgcb7xmfvl998")))) | |
277 | (build-system python-build-system) | |
278 | (home-page "https://github.com/atdt/monotonic") | |
279 | (synopsis "Implementation of time.monotonic() for Python 2 & < 3.3") | |
280 | (description | |
281 | "This module provides a @code{monotonic()} function which returns the | |
282 | value (in fractional seconds) of a clock which never goes backwards.") | |
283 | (license asl2.0))) | |
284 | ||
285 | (define-public python2-monotonic | |
286 | (package-with-python2 python-monotonic)) | |
287 | ||
288 | (define-public python-pyrfc3339 | |
289 | (package | |
290 | (name "python-pyrfc3339") | |
291 | (version "1.0") | |
292 | (source | |
293 | (origin | |
294 | (method url-fetch) | |
295 | (uri (pypi-uri "pyRFC3339" version)) | |
296 | (sha256 | |
297 | (base32 | |
298 | "0dgm4l9y8jiax5cp6yxjd2i27cq8h33sh81n1wfbmnmqb32cdywd")))) | |
299 | (build-system python-build-system) | |
300 | (propagated-inputs | |
301 | `(("python-pytz" ,python-pytz))) | |
302 | (native-inputs | |
303 | `(("python-nose" ,python-nose))) | |
304 | (home-page "https://github.com/kurtraschke/pyRFC3339") | |
305 | (synopsis "Python timestamp library") | |
306 | (description "Python library for generating and parsing RFC 3339-compliant | |
307 | timestamps.") | |
308 | (license expat))) | |
309 | ||
310 | (define-public python2-pyrfc3339 | |
311 | (package-with-python2 python-pyrfc3339)) | |
312 | ||
313 | (define-public python-arrow | |
314 | (package | |
315 | (name "python-arrow") | |
316 | (version "0.10.0") | |
317 | (source (origin | |
318 | (method url-fetch) | |
319 | (uri (pypi-uri "arrow" version)) | |
320 | (sha256 | |
321 | (base32 | |
322 | "08n7q2l69hlainds1byd4lxhwrq7zsw7s640zkqc3bs5jkq0cnc0")))) | |
323 | (build-system python-build-system) | |
324 | (native-inputs | |
325 | `(;; For testing | |
326 | ("python-chai" ,python-chai) | |
327 | ("python-simplejson" ,python-simplejson))) | |
328 | (propagated-inputs | |
329 | `(("python-dateutil" ,python-dateutil))) | |
330 | (home-page "https://github.com/crsmithdev/arrow/") | |
331 | (synopsis "Dates and times for Python") | |
332 | (description | |
333 | "Arrow is a Python library to creating, manipulating, formatting and | |
334 | converting dates, times, and timestamps. It implements and updates the | |
335 | datetime type.") | |
336 | (license asl2.0))) | |
337 | ||
338 | (define-public python2-arrow | |
339 | (package-with-python2 python-arrow)) | |
340 | ||
341 | (define-public python-aniso8601 | |
342 | (package | |
343 | (name "python-aniso8601") | |
344 | (version "1.3.0") | |
345 | (source | |
346 | (origin | |
347 | (method url-fetch) | |
348 | (uri (pypi-uri "aniso8601" version)) | |
349 | (sha256 | |
350 | (base32 | |
351 | "1waj54iv3n3lw1fapbz8a93yjgrybgpc86wif5baxdh1arpj9df3")))) | |
352 | (build-system python-build-system) | |
353 | (propagated-inputs | |
354 | `(("python-dateutil" ,python-dateutil))) | |
355 | (home-page "https://bitbucket.org/nielsenb/aniso8601") | |
356 | (synopsis "Python library for parsing ISO 8601 strings") | |
357 | (description | |
358 | "This package contains a library for parsing ISO 8601 datetime strings.") | |
359 | (license bsd-3))) | |
360 | ||
361 | (define-public python2-aniso8601 | |
362 | (package-with-python2 python-aniso8601)) |