File: reproducible_documentation.patch

package info (click to toggle)
basemap 1.4.1-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 213,608 kB
  • sloc: python: 11,874; sh: 45; makefile: 45
file content (80 lines) | stat: -rw-r--r-- 3,279 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
From: Juan Picca <jumapico@gmail.com>
Date: Wed, 13 Mar 2024 11:24:26 +0100
Subject: Make documentation reproducible

Bug-Debian: https://bugs.debian.org/790235
Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?att=1;bug=790235;filename=0001-make-images-reproducible.patch;msg=35
Last-Update: 2025-01-30
Forwarded: https://github.com/matplotlib/basemap/pull/641
---
 packages/basemap/doc/make.py                                  | 2 +-
 packages/basemap/doc/source/users/figures/plotdaynight.py     | 7 +++++--
 packages/basemap/doc/source/users/figures/plothighsandlows.py | 8 ++++++--
 3 files changed, 12 insertions(+), 5 deletions(-)

diff --git a/packages/basemap/doc/make.py b/packages/basemap/doc/make.py
index acf1723..36e8156 100755
--- a/packages/basemap/doc/make.py
+++ b/packages/basemap/doc/make.py
@@ -7,7 +7,7 @@ import shutil
 import sys
 
 def html():
-    os.system('sphinx-build -b html -d build/doctrees . build/html')
+    os.system('LC_ALL=C.UTF-8 sphinx-build -b html -c source/ -d build/doctrees . build/html')
 
 def latex():
     if sys.platform != 'win32':
diff --git a/packages/basemap/doc/source/users/figures/plotdaynight.py b/packages/basemap/doc/source/users/figures/plotdaynight.py
index ac1f7bc..1cd20b9 100644
--- a/packages/basemap/doc/source/users/figures/plotdaynight.py
+++ b/packages/basemap/doc/source/users/figures/plotdaynight.py
@@ -1,7 +1,9 @@
+import os
+import time
+import datetime
 import numpy as np
 from mpl_toolkits.basemap import Basemap
 import matplotlib.pyplot as plt
-from datetime import datetime
 # miller projection 
 map = Basemap(projection='mill',lon_0=180)
 # plot coastlines, draw label meridians and parallels.
@@ -13,7 +15,8 @@ map.drawmapboundary(fill_color='aqua')
 map.fillcontinents(color='coral',lake_color='aqua')
 # shade the night areas, with alpha transparency so the 
 # map shows through. Use current time in UTC.
-date = datetime.utcnow()
+date = datetime.datetime.utcfromtimestamp(
+        int(os.environ.get('SOURCE_DATE_EPOCH', time.time())))
 CS=map.nightshade(date)
 plt.title('Day/Night Map for %s (UTC)' % date.strftime("%d %b %Y %H:%M:%S"))
 plt.show()
diff --git a/packages/basemap/doc/source/users/figures/plothighsandlows.py b/packages/basemap/doc/source/users/figures/plothighsandlows.py
index 3a7c3f9..444f6d9 100644
--- a/packages/basemap/doc/source/users/figures/plothighsandlows.py
+++ b/packages/basemap/doc/source/users/figures/plothighsandlows.py
@@ -2,9 +2,11 @@
 plot H's and L's on a sea-level pressure map
 (uses scipy.ndimage.filters and netcdf4-python)
 """
+import os
+import time
+import datetime
 import numpy as np
 import matplotlib.pyplot as plt
-from datetime import datetime
 from mpl_toolkits.basemap import Basemap, addcyclic
 from scipy.ndimage.filters import minimum_filter, maximum_filter
 from netCDF4 import Dataset
@@ -20,7 +22,9 @@ def extrema(mat,mode='wrap',window=10):
     return np.nonzero(mat == mn), np.nonzero(mat == mx)
 
 # plot 00 UTC today.
-date = datetime.now().strftime('%Y%m%d')+'00'
+date = datetime.datetime.utcfromtimestamp(
+        int(os.environ.get('SOURCE_DATE_EPOCH', time.time())))
+date = date.strftime('%Y%m%d')+'00'
 
 # open OpenDAP dataset.
 data=Dataset("https://nomads.ncep.noaa.gov/dods/gfs_0p50/gfs%s/gfs_0p50_%sz"%\