##// END OF EJS Templates
pyoxidizer: produce working Python 3 Windows installers (issue6366)...
Gregory Szorc -
r46277:57b5452a default
parent child Browse files
Show More
@@ -75,7 +75,7 b' sudo -H -u hg -g hg ./rustup-init -y'
75 sudo -H -u hg -g hg /home/hg/.cargo/bin/rustup install 1.31.1 1.46.0
75 sudo -H -u hg -g hg /home/hg/.cargo/bin/rustup install 1.31.1 1.46.0
76 sudo -H -u hg -g hg /home/hg/.cargo/bin/rustup component add clippy
76 sudo -H -u hg -g hg /home/hg/.cargo/bin/rustup component add clippy
77
77
78 sudo -H -u hg -g hg /home/hg/.cargo/bin/cargo install --version 0.7.0 pyoxidizer
78 sudo -H -u hg -g hg /home/hg/.cargo/bin/cargo install --git https://github.com/indygreg/PyOxidizer.git --rev 4697fb25918dfad6dc73288daeea501063963a08 pyoxidizer
79 '''
79 '''
80
80
81
81
@@ -130,7 +130,7 b' function Install-Rust($prefix) {'
130 Invoke-Process "${prefix}\cargo\bin\rustup.exe" "component add clippy"
130 Invoke-Process "${prefix}\cargo\bin\rustup.exe" "component add clippy"
131
131
132 # Install PyOxidizer for packaging.
132 # Install PyOxidizer for packaging.
133 Invoke-Process "${prefix}\cargo\bin\cargo.exe" "install --version 0.7.0 pyoxidizer"
133 Invoke-Process "${prefix}\cargo\bin\cargo.exe" "install --git https://github.com/indygreg/PyOxidizer.git --rev 4697fb25918dfad6dc73288daeea501063963a08 pyoxidizer"
134 }
134 }
135
135
136 function Install-Dependencies($prefix) {
136 function Install-Dependencies($prefix) {
@@ -42,10 +42,10 b' STAGING_RULES_WINDOWS = ['
42 ]
42 ]
43
43
44 STAGING_RULES_APP = [
44 STAGING_RULES_APP = [
45 ('mercurial/helptext/**/*.txt', 'helptext/'),
45 ('lib/mercurial/helptext/**/*.txt', 'helptext/'),
46 ('mercurial/defaultrc/*.rc', 'defaultrc/'),
46 ('lib/mercurial/defaultrc/*.rc', 'defaultrc/'),
47 ('mercurial/locale/**/*', 'locale/'),
47 ('lib/mercurial/locale/**/*', 'locale/'),
48 ('mercurial/templates/**/*', 'templates/'),
48 ('lib/mercurial/templates/**/*', 'templates/'),
49 ]
49 ]
50
50
51 STAGING_EXCLUDES_WINDOWS = [
51 STAGING_EXCLUDES_WINDOWS = [
@@ -109,11 +109,9 b' def run_pyoxidizer('
109 # Now assemble all the files from PyOxidizer into the staging directory.
109 # Now assemble all the files from PyOxidizer into the staging directory.
110 shutil.copytree(build_dir, out_dir)
110 shutil.copytree(build_dir, out_dir)
111
111
112 # Move some of those files around.
112 # Move some of those files around. We can get rid of this once Mercurial
113 # is taught to use the importlib APIs for reading resources.
113 process_install_rules(STAGING_RULES_APP, build_dir, out_dir)
114 process_install_rules(STAGING_RULES_APP, build_dir, out_dir)
114 # Nuke the mercurial/* directory, as we copied resources
115 # to an appropriate location just above.
116 shutil.rmtree(out_dir / "mercurial")
117
115
118 # We also need to run setup.py build_doc to produce html files,
116 # We also need to run setup.py build_doc to produce html files,
119 # as they aren't built as part of ``pip install``.
117 # as they aren't built as part of ``pip install``.
@@ -2,7 +2,7 b''
2 # It is not intended for manual editing.
2 # It is not intended for manual editing.
3 [[package]]
3 [[package]]
4 name = "aho-corasick"
4 name = "aho-corasick"
5 version = "0.7.10"
5 version = "0.7.13"
6 source = "registry+https://github.com/rust-lang/crates.io-index"
6 source = "registry+https://github.com/rust-lang/crates.io-index"
7 dependencies = [
7 dependencies = [
8 "memchr 2.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
8 "memchr 2.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -10,12 +10,25 b' dependencies = ['
10
10
11 [[package]]
11 [[package]]
12 name = "anyhow"
12 name = "anyhow"
13 version = "1.0.28"
13 version = "1.0.32"
14 source = "registry+https://github.com/rust-lang/crates.io-index"
14 source = "registry+https://github.com/rust-lang/crates.io-index"
15
15
16 [[package]]
16 [[package]]
17 name = "autocfg"
17 name = "autocfg"
18 version = "1.0.0"
18 version = "1.0.1"
19 source = "registry+https://github.com/rust-lang/crates.io-index"
20
21 [[package]]
22 name = "base64"
23 version = "0.10.1"
24 source = "registry+https://github.com/rust-lang/crates.io-index"
25 dependencies = [
26 "byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
27 ]
28
29 [[package]]
30 name = "base64"
31 version = "0.12.3"
19 source = "registry+https://github.com/rust-lang/crates.io-index"
32 source = "registry+https://github.com/rust-lang/crates.io-index"
20
33
21 [[package]]
34 [[package]]
@@ -25,7 +38,7 b' source = "registry+https://github.com/ru'
25
38
26 [[package]]
39 [[package]]
27 name = "cc"
40 name = "cc"
28 version = "1.0.50"
41 version = "1.0.60"
29 source = "registry+https://github.com/rust-lang/crates.io-index"
42 source = "registry+https://github.com/rust-lang/crates.io-index"
30
43
31 [[package]]
44 [[package]]
@@ -34,28 +47,55 b' version = "0.1.10"'
34 source = "registry+https://github.com/rust-lang/crates.io-index"
47 source = "registry+https://github.com/rust-lang/crates.io-index"
35
48
36 [[package]]
49 [[package]]
50 name = "charset"
51 version = "0.1.2"
52 source = "registry+https://github.com/rust-lang/crates.io-index"
53 dependencies = [
54 "base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
55 "encoding_rs 0.8.24 (registry+https://github.com/rust-lang/crates.io-index)",
56 ]
57
58 [[package]]
37 name = "cpython"
59 name = "cpython"
38 version = "0.4.1"
60 version = "0.5.0"
39 source = "git+https://github.com/dgrunwald/rust-cpython?rev=387e87d9deb6b678508888239f9f87dc36973d3f#387e87d9deb6b678508888239f9f87dc36973d3f"
61 source = "git+https://github.com/dgrunwald/rust-cpython.git?rev=4283acd94f4e794fe03679efc7a6c18bc50938a8#4283acd94f4e794fe03679efc7a6c18bc50938a8"
40 dependencies = [
62 dependencies = [
41 "libc 0.2.68 (registry+https://github.com/rust-lang/crates.io-index)",
63 "libc 0.2.78 (registry+https://github.com/rust-lang/crates.io-index)",
42 "num-traits 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
64 "num-traits 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)",
43 "paste 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
65 "paste 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
44 "python3-sys 0.4.1 (git+https://github.com/dgrunwald/rust-cpython?rev=387e87d9deb6b678508888239f9f87dc36973d3f)",
66 "python3-sys 0.5.0 (git+https://github.com/dgrunwald/rust-cpython.git?rev=4283acd94f4e794fe03679efc7a6c18bc50938a8)",
67 ]
68
69 [[package]]
70 name = "either"
71 version = "1.6.1"
72 source = "registry+https://github.com/rust-lang/crates.io-index"
73
74 [[package]]
75 name = "encoding_rs"
76 version = "0.8.24"
77 source = "registry+https://github.com/rust-lang/crates.io-index"
78 dependencies = [
79 "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
45 ]
80 ]
46
81
47 [[package]]
82 [[package]]
48 name = "fs_extra"
83 name = "fs_extra"
49 version = "1.1.0"
84 version = "1.2.0"
85 source = "registry+https://github.com/rust-lang/crates.io-index"
86
87 [[package]]
88 name = "fuchsia-cprng"
89 version = "0.1.1"
50 source = "registry+https://github.com/rust-lang/crates.io-index"
90 source = "registry+https://github.com/rust-lang/crates.io-index"
51
91
52 [[package]]
92 [[package]]
53 name = "getrandom"
93 name = "getrandom"
54 version = "0.1.14"
94 version = "0.1.15"
55 source = "registry+https://github.com/rust-lang/crates.io-index"
95 source = "registry+https://github.com/rust-lang/crates.io-index"
56 dependencies = [
96 dependencies = [
57 "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
97 "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
58 "libc 0.2.68 (registry+https://github.com/rust-lang/crates.io-index)",
98 "libc 0.2.78 (registry+https://github.com/rust-lang/crates.io-index)",
59 "wasi 0.9.0+wasi-snapshot-preview1 (registry+https://github.com/rust-lang/crates.io-index)",
99 "wasi 0.9.0+wasi-snapshot-preview1 (registry+https://github.com/rust-lang/crates.io-index)",
60 ]
100 ]
61
101
@@ -64,7 +104,15 b' name = "hgcli"'
64 version = "0.1.0"
104 version = "0.1.0"
65 dependencies = [
105 dependencies = [
66 "jemallocator-global 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
106 "jemallocator-global 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
67 "pyembed 0.7.0-pre (git+https://github.com/indygreg/PyOxidizer.git?rev=c772a1379c3026314eda1c8ea244b86c0658951d)",
107 "pyembed 0.8.0-pre (git+https://github.com/indygreg/PyOxidizer.git?rev=4697fb25918dfad6dc73288daeea501063963a08)",
108 ]
109
110 [[package]]
111 name = "itertools"
112 version = "0.9.0"
113 source = "registry+https://github.com/rust-lang/crates.io-index"
114 dependencies = [
115 "either 1.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
68 ]
116 ]
69
117
70 [[package]]
118 [[package]]
@@ -72,9 +120,9 b' name = "jemalloc-sys"'
72 version = "0.3.2"
120 version = "0.3.2"
73 source = "registry+https://github.com/rust-lang/crates.io-index"
121 source = "registry+https://github.com/rust-lang/crates.io-index"
74 dependencies = [
122 dependencies = [
75 "cc 1.0.50 (registry+https://github.com/rust-lang/crates.io-index)",
123 "cc 1.0.60 (registry+https://github.com/rust-lang/crates.io-index)",
76 "fs_extra 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
124 "fs_extra 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
77 "libc 0.2.68 (registry+https://github.com/rust-lang/crates.io-index)",
125 "libc 0.2.78 (registry+https://github.com/rust-lang/crates.io-index)",
78 ]
126 ]
79
127
80 [[package]]
128 [[package]]
@@ -83,7 +131,7 b' version = "0.3.2"'
83 source = "registry+https://github.com/rust-lang/crates.io-index"
131 source = "registry+https://github.com/rust-lang/crates.io-index"
84 dependencies = [
132 dependencies = [
85 "jemalloc-sys 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
133 "jemalloc-sys 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
86 "libc 0.2.68 (registry+https://github.com/rust-lang/crates.io-index)",
134 "libc 0.2.78 (registry+https://github.com/rust-lang/crates.io-index)",
87 ]
135 ]
88
136
89 [[package]]
137 [[package]]
@@ -102,110 +150,147 b' source = "registry+https://github.com/ru'
102
150
103 [[package]]
151 [[package]]
104 name = "libc"
152 name = "libc"
105 version = "0.2.68"
153 version = "0.2.78"
106 source = "registry+https://github.com/rust-lang/crates.io-index"
154 source = "registry+https://github.com/rust-lang/crates.io-index"
107
155
108 [[package]]
156 [[package]]
157 name = "mailparse"
158 version = "0.13.0"
159 source = "registry+https://github.com/rust-lang/crates.io-index"
160 dependencies = [
161 "base64 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)",
162 "charset 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
163 "quoted_printable 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
164 ]
165
166 [[package]]
109 name = "memchr"
167 name = "memchr"
110 version = "2.3.3"
168 version = "2.3.3"
111 source = "registry+https://github.com/rust-lang/crates.io-index"
169 source = "registry+https://github.com/rust-lang/crates.io-index"
112
170
113 [[package]]
171 [[package]]
172 name = "memmap"
173 version = "0.7.0"
174 source = "registry+https://github.com/rust-lang/crates.io-index"
175 dependencies = [
176 "libc 0.2.78 (registry+https://github.com/rust-lang/crates.io-index)",
177 "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
178 ]
179
180 [[package]]
114 name = "memory-module-sys"
181 name = "memory-module-sys"
115 version = "0.3.0"
182 version = "0.3.0"
116 source = "registry+https://github.com/rust-lang/crates.io-index"
183 source = "registry+https://github.com/rust-lang/crates.io-index"
117 dependencies = [
184 dependencies = [
118 "cc 1.0.50 (registry+https://github.com/rust-lang/crates.io-index)",
185 "cc 1.0.60 (registry+https://github.com/rust-lang/crates.io-index)",
119 "libc 0.2.68 (registry+https://github.com/rust-lang/crates.io-index)",
186 "libc 0.2.78 (registry+https://github.com/rust-lang/crates.io-index)",
120 "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
187 "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
121 ]
188 ]
122
189
123 [[package]]
190 [[package]]
124 name = "num-traits"
191 name = "num-traits"
125 version = "0.2.11"
192 version = "0.2.12"
126 source = "registry+https://github.com/rust-lang/crates.io-index"
193 source = "registry+https://github.com/rust-lang/crates.io-index"
127 dependencies = [
194 dependencies = [
128 "autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
195 "autocfg 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
129 ]
196 ]
130
197
131 [[package]]
198 [[package]]
132 name = "paste"
199 name = "paste"
133 version = "0.1.9"
200 version = "0.1.18"
134 source = "registry+https://github.com/rust-lang/crates.io-index"
201 source = "registry+https://github.com/rust-lang/crates.io-index"
135 dependencies = [
202 dependencies = [
136 "paste-impl 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
203 "paste-impl 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
137 "proc-macro-hack 0.5.15 (registry+https://github.com/rust-lang/crates.io-index)",
204 "proc-macro-hack 0.5.18 (registry+https://github.com/rust-lang/crates.io-index)",
138 ]
205 ]
139
206
140 [[package]]
207 [[package]]
141 name = "paste-impl"
208 name = "paste-impl"
142 version = "0.1.9"
209 version = "0.1.18"
143 source = "registry+https://github.com/rust-lang/crates.io-index"
210 source = "registry+https://github.com/rust-lang/crates.io-index"
144 dependencies = [
211 dependencies = [
145 "proc-macro-hack 0.5.15 (registry+https://github.com/rust-lang/crates.io-index)",
212 "proc-macro-hack 0.5.18 (registry+https://github.com/rust-lang/crates.io-index)",
146 "proc-macro2 1.0.10 (registry+https://github.com/rust-lang/crates.io-index)",
147 "quote 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
148 "syn 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)",
149 ]
213 ]
150
214
151 [[package]]
215 [[package]]
152 name = "ppv-lite86"
216 name = "ppv-lite86"
153 version = "0.2.6"
217 version = "0.2.9"
154 source = "registry+https://github.com/rust-lang/crates.io-index"
218 source = "registry+https://github.com/rust-lang/crates.io-index"
155
219
156 [[package]]
220 [[package]]
157 name = "proc-macro-hack"
221 name = "proc-macro-hack"
158 version = "0.5.15"
222 version = "0.5.18"
159 source = "registry+https://github.com/rust-lang/crates.io-index"
223 source = "registry+https://github.com/rust-lang/crates.io-index"
160
224
161 [[package]]
225 [[package]]
162 name = "proc-macro2"
163 version = "1.0.10"
164 source = "registry+https://github.com/rust-lang/crates.io-index"
165 dependencies = [
166 "unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
167 ]
168
169 [[package]]
170 name = "pyembed"
226 name = "pyembed"
171 version = "0.7.0-pre"
227 version = "0.8.0-pre"
172 source = "git+https://github.com/indygreg/PyOxidizer.git?rev=c772a1379c3026314eda1c8ea244b86c0658951d#c772a1379c3026314eda1c8ea244b86c0658951d"
228 source = "git+https://github.com/indygreg/PyOxidizer.git?rev=4697fb25918dfad6dc73288daeea501063963a08#4697fb25918dfad6dc73288daeea501063963a08"
173 dependencies = [
229 dependencies = [
174 "cpython 0.4.1 (git+https://github.com/dgrunwald/rust-cpython?rev=387e87d9deb6b678508888239f9f87dc36973d3f)",
230 "anyhow 1.0.32 (registry+https://github.com/rust-lang/crates.io-index)",
231 "cpython 0.5.0 (git+https://github.com/dgrunwald/rust-cpython.git?rev=4283acd94f4e794fe03679efc7a6c18bc50938a8)",
175 "jemalloc-sys 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
232 "jemalloc-sys 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
176 "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
233 "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
177 "libc 0.2.68 (registry+https://github.com/rust-lang/crates.io-index)",
234 "libc 0.2.78 (registry+https://github.com/rust-lang/crates.io-index)",
235 "memmap 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
178 "memory-module-sys 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
236 "memory-module-sys 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
179 "python-packed-resources 0.1.0-pre (git+https://github.com/indygreg/PyOxidizer.git?rev=c772a1379c3026314eda1c8ea244b86c0658951d)",
237 "python-packaging 0.1.0-pre (git+https://github.com/indygreg/PyOxidizer.git?rev=4697fb25918dfad6dc73288daeea501063963a08)",
180 "python3-sys 0.4.1 (git+https://github.com/dgrunwald/rust-cpython?rev=387e87d9deb6b678508888239f9f87dc36973d3f)",
238 "python-packed-resources 0.2.0-pre (git+https://github.com/indygreg/PyOxidizer.git?rev=4697fb25918dfad6dc73288daeea501063963a08)",
239 "python3-sys 0.5.0 (git+https://github.com/dgrunwald/rust-cpython.git?rev=4283acd94f4e794fe03679efc7a6c18bc50938a8)",
181 "uuid 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
240 "uuid 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
182 "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
241 "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
242 ]
243
244 [[package]]
245 name = "python-packaging"
246 version = "0.1.0-pre"
247 source = "git+https://github.com/indygreg/PyOxidizer.git?rev=4697fb25918dfad6dc73288daeea501063963a08#4697fb25918dfad6dc73288daeea501063963a08"
248 dependencies = [
249 "anyhow 1.0.32 (registry+https://github.com/rust-lang/crates.io-index)",
250 "byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
251 "encoding_rs 0.8.24 (registry+https://github.com/rust-lang/crates.io-index)",
252 "itertools 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
253 "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
254 "mailparse 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)",
255 "python-packed-resources 0.2.0-pre (git+https://github.com/indygreg/PyOxidizer.git?rev=4697fb25918dfad6dc73288daeea501063963a08)",
256 "regex 1.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
257 "tempdir 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
258 "walkdir 2.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
183 ]
259 ]
184
260
185 [[package]]
261 [[package]]
186 name = "python-packed-resources"
262 name = "python-packed-resources"
187 version = "0.1.0-pre"
263 version = "0.2.0-pre"
188 source = "git+https://github.com/indygreg/PyOxidizer.git?rev=c772a1379c3026314eda1c8ea244b86c0658951d#c772a1379c3026314eda1c8ea244b86c0658951d"
264 source = "git+https://github.com/indygreg/PyOxidizer.git?rev=4697fb25918dfad6dc73288daeea501063963a08#4697fb25918dfad6dc73288daeea501063963a08"
189 dependencies = [
265 dependencies = [
190 "anyhow 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)",
266 "anyhow 1.0.32 (registry+https://github.com/rust-lang/crates.io-index)",
191 "byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
267 "byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
192 ]
268 ]
193
269
194 [[package]]
270 [[package]]
195 name = "python3-sys"
271 name = "python3-sys"
196 version = "0.4.1"
272 version = "0.5.0"
197 source = "git+https://github.com/dgrunwald/rust-cpython?rev=387e87d9deb6b678508888239f9f87dc36973d3f#387e87d9deb6b678508888239f9f87dc36973d3f"
273 source = "git+https://github.com/dgrunwald/rust-cpython.git?rev=4283acd94f4e794fe03679efc7a6c18bc50938a8#4283acd94f4e794fe03679efc7a6c18bc50938a8"
198 dependencies = [
274 dependencies = [
199 "libc 0.2.68 (registry+https://github.com/rust-lang/crates.io-index)",
275 "libc 0.2.78 (registry+https://github.com/rust-lang/crates.io-index)",
200 "regex 1.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
276 "regex 1.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
201 ]
277 ]
202
278
203 [[package]]
279 [[package]]
204 name = "quote"
280 name = "quoted_printable"
205 version = "1.0.3"
281 version = "0.4.2"
282 source = "registry+https://github.com/rust-lang/crates.io-index"
283
284 [[package]]
285 name = "rand"
286 version = "0.4.6"
206 source = "registry+https://github.com/rust-lang/crates.io-index"
287 source = "registry+https://github.com/rust-lang/crates.io-index"
207 dependencies = [
288 dependencies = [
208 "proc-macro2 1.0.10 (registry+https://github.com/rust-lang/crates.io-index)",
289 "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
290 "libc 0.2.78 (registry+https://github.com/rust-lang/crates.io-index)",
291 "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
292 "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
293 "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
209 ]
294 ]
210
295
211 [[package]]
296 [[package]]
@@ -213,8 +298,8 b' name = "rand"'
213 version = "0.7.3"
298 version = "0.7.3"
214 source = "registry+https://github.com/rust-lang/crates.io-index"
299 source = "registry+https://github.com/rust-lang/crates.io-index"
215 dependencies = [
300 dependencies = [
216 "getrandom 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)",
301 "getrandom 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
217 "libc 0.2.68 (registry+https://github.com/rust-lang/crates.io-index)",
302 "libc 0.2.78 (registry+https://github.com/rust-lang/crates.io-index)",
218 "rand_chacha 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
303 "rand_chacha 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
219 "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
304 "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
220 "rand_hc 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
305 "rand_hc 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -225,16 +310,29 b' name = "rand_chacha"'
225 version = "0.2.2"
310 version = "0.2.2"
226 source = "registry+https://github.com/rust-lang/crates.io-index"
311 source = "registry+https://github.com/rust-lang/crates.io-index"
227 dependencies = [
312 dependencies = [
228 "ppv-lite86 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
313 "ppv-lite86 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)",
229 "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
314 "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
230 ]
315 ]
231
316
232 [[package]]
317 [[package]]
233 name = "rand_core"
318 name = "rand_core"
319 version = "0.3.1"
320 source = "registry+https://github.com/rust-lang/crates.io-index"
321 dependencies = [
322 "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
323 ]
324
325 [[package]]
326 name = "rand_core"
327 version = "0.4.2"
328 source = "registry+https://github.com/rust-lang/crates.io-index"
329
330 [[package]]
331 name = "rand_core"
234 version = "0.5.1"
332 version = "0.5.1"
235 source = "registry+https://github.com/rust-lang/crates.io-index"
333 source = "registry+https://github.com/rust-lang/crates.io-index"
236 dependencies = [
334 dependencies = [
237 "getrandom 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)",
335 "getrandom 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
238 ]
336 ]
239
337
240 [[package]]
338 [[package]]
@@ -246,29 +344,52 b' dependencies = ['
246 ]
344 ]
247
345
248 [[package]]
346 [[package]]
249 name = "regex"
347 name = "rdrand"
250 version = "1.3.6"
348 version = "0.4.0"
251 source = "registry+https://github.com/rust-lang/crates.io-index"
349 source = "registry+https://github.com/rust-lang/crates.io-index"
252 dependencies = [
350 dependencies = [
253 "aho-corasick 0.7.10 (registry+https://github.com/rust-lang/crates.io-index)",
351 "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
352 ]
353
354 [[package]]
355 name = "regex"
356 version = "1.3.9"
357 source = "registry+https://github.com/rust-lang/crates.io-index"
358 dependencies = [
359 "aho-corasick 0.7.13 (registry+https://github.com/rust-lang/crates.io-index)",
254 "memchr 2.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
360 "memchr 2.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
255 "regex-syntax 0.6.17 (registry+https://github.com/rust-lang/crates.io-index)",
361 "regex-syntax 0.6.18 (registry+https://github.com/rust-lang/crates.io-index)",
256 "thread_local 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
362 "thread_local 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
257 ]
363 ]
258
364
259 [[package]]
365 [[package]]
260 name = "regex-syntax"
366 name = "regex-syntax"
261 version = "0.6.17"
367 version = "0.6.18"
262 source = "registry+https://github.com/rust-lang/crates.io-index"
368 source = "registry+https://github.com/rust-lang/crates.io-index"
263
369
264 [[package]]
370 [[package]]
265 name = "syn"
371 name = "remove_dir_all"
266 version = "1.0.17"
372 version = "0.5.3"
267 source = "registry+https://github.com/rust-lang/crates.io-index"
373 source = "registry+https://github.com/rust-lang/crates.io-index"
268 dependencies = [
374 dependencies = [
269 "proc-macro2 1.0.10 (registry+https://github.com/rust-lang/crates.io-index)",
375 "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
270 "quote 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
376 ]
271 "unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
377
378 [[package]]
379 name = "same-file"
380 version = "1.0.6"
381 source = "registry+https://github.com/rust-lang/crates.io-index"
382 dependencies = [
383 "winapi-util 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
384 ]
385
386 [[package]]
387 name = "tempdir"
388 version = "0.3.7"
389 source = "registry+https://github.com/rust-lang/crates.io-index"
390 dependencies = [
391 "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
392 "remove_dir_all 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
272 ]
393 ]
273
394
274 [[package]]
395 [[package]]
@@ -280,11 +401,6 b' dependencies = ['
280 ]
401 ]
281
402
282 [[package]]
403 [[package]]
283 name = "unicode-xid"
284 version = "0.2.0"
285 source = "registry+https://github.com/rust-lang/crates.io-index"
286
287 [[package]]
288 name = "uuid"
404 name = "uuid"
289 version = "0.8.1"
405 version = "0.8.1"
290 source = "registry+https://github.com/rust-lang/crates.io-index"
406 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -293,13 +409,23 b' dependencies = ['
293 ]
409 ]
294
410
295 [[package]]
411 [[package]]
412 name = "walkdir"
413 version = "2.3.1"
414 source = "registry+https://github.com/rust-lang/crates.io-index"
415 dependencies = [
416 "same-file 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
417 "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
418 "winapi-util 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
419 ]
420
421 [[package]]
296 name = "wasi"
422 name = "wasi"
297 version = "0.9.0+wasi-snapshot-preview1"
423 version = "0.9.0+wasi-snapshot-preview1"
298 source = "registry+https://github.com/rust-lang/crates.io-index"
424 source = "registry+https://github.com/rust-lang/crates.io-index"
299
425
300 [[package]]
426 [[package]]
301 name = "winapi"
427 name = "winapi"
302 version = "0.3.8"
428 version = "0.3.9"
303 source = "registry+https://github.com/rust-lang/crates.io-index"
429 source = "registry+https://github.com/rust-lang/crates.io-index"
304 dependencies = [
430 dependencies = [
305 "winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
431 "winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -312,48 +438,72 b' version = "0.4.0"'
312 source = "registry+https://github.com/rust-lang/crates.io-index"
438 source = "registry+https://github.com/rust-lang/crates.io-index"
313
439
314 [[package]]
440 [[package]]
441 name = "winapi-util"
442 version = "0.1.5"
443 source = "registry+https://github.com/rust-lang/crates.io-index"
444 dependencies = [
445 "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
446 ]
447
448 [[package]]
315 name = "winapi-x86_64-pc-windows-gnu"
449 name = "winapi-x86_64-pc-windows-gnu"
316 version = "0.4.0"
450 version = "0.4.0"
317 source = "registry+https://github.com/rust-lang/crates.io-index"
451 source = "registry+https://github.com/rust-lang/crates.io-index"
318
452
319 [metadata]
453 [metadata]
320 "checksum aho-corasick 0.7.10 (registry+https://github.com/rust-lang/crates.io-index)" = "8716408b8bc624ed7f65d223ddb9ac2d044c0547b6fa4b0d554f3a9540496ada"
454 "checksum aho-corasick 0.7.13 (registry+https://github.com/rust-lang/crates.io-index)" = "043164d8ba5c4c3035fec9bbee8647c0261d788f3474306f93bb65901cae0e86"
321 "checksum anyhow 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)" = "d9a60d744a80c30fcb657dfe2c1b22bcb3e814c1a1e3674f32bf5820b570fbff"
455 "checksum anyhow 1.0.32 (registry+https://github.com/rust-lang/crates.io-index)" = "6b602bfe940d21c130f3895acd65221e8a61270debe89d628b9cb4e3ccb8569b"
322 "checksum autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f8aac770f1885fd7e387acedd76065302551364496e46b3dd00860b2f8359b9d"
456 "checksum autocfg 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
457 "checksum base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e"
458 "checksum base64 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3441f0f7b02788e948e47f457ca01f1d7e6d92c693bc132c22b087d3141c03ff"
323 "checksum byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "08c48aae112d48ed9f069b33538ea9e3e90aa263cfa3d1c24309612b1f7472de"
459 "checksum byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "08c48aae112d48ed9f069b33538ea9e3e90aa263cfa3d1c24309612b1f7472de"
324 "checksum cc 1.0.50 (registry+https://github.com/rust-lang/crates.io-index)" = "95e28fa049fda1c330bcf9d723be7663a899c4679724b34c81e9f5a326aab8cd"
460 "checksum cc 1.0.60 (registry+https://github.com/rust-lang/crates.io-index)" = "ef611cc68ff783f18535d77ddd080185275713d852c4f5cbb6122c462a7a825c"
325 "checksum cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
461 "checksum cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
326 "checksum cpython 0.4.1 (git+https://github.com/dgrunwald/rust-cpython?rev=387e87d9deb6b678508888239f9f87dc36973d3f)" = "<none>"
462 "checksum charset 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4f426e64df1c3de26cbf44593c6ffff5dbfd43bbf9de0d075058558126b3fc73"
327 "checksum fs_extra 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5f2a4a2034423744d2cc7ca2068453168dcdb82c438419e639a26bd87839c674"
463 "checksum cpython 0.5.0 (git+https://github.com/dgrunwald/rust-cpython.git?rev=4283acd94f4e794fe03679efc7a6c18bc50938a8)" = "<none>"
328 "checksum getrandom 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "7abc8dd8451921606d809ba32e95b6111925cd2906060d2dcc29c070220503eb"
464 "checksum either 1.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457"
465 "checksum encoding_rs 0.8.24 (registry+https://github.com/rust-lang/crates.io-index)" = "a51b8cf747471cb9499b6d59e59b0444f4c90eba8968c4e44874e92b5b64ace2"
466 "checksum fs_extra 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2022715d62ab30faffd124d40b76f4134a550a87792276512b18d63272333394"
467 "checksum fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
468 "checksum getrandom 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)" = "fc587bc0ec293155d5bfa6b9891ec18a1e330c234f896ea47fbada4cadbe47e6"
469 "checksum itertools 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "284f18f85651fe11e8a991b2adb42cb078325c996ed026d994719efcfca1d54b"
329 "checksum jemalloc-sys 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "0d3b9f3f5c9b31aa0f5ed3260385ac205db665baa41d49bb8338008ae94ede45"
470 "checksum jemalloc-sys 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "0d3b9f3f5c9b31aa0f5ed3260385ac205db665baa41d49bb8338008ae94ede45"
330 "checksum jemallocator 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "43ae63fcfc45e99ab3d1b29a46782ad679e98436c3169d15a167a1108a724b69"
471 "checksum jemallocator 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "43ae63fcfc45e99ab3d1b29a46782ad679e98436c3169d15a167a1108a724b69"
331 "checksum jemallocator-global 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "991b61de8365c8b5707cf6cabbff98cfd6eaca9b851948b883efea408c7f581e"
472 "checksum jemallocator-global 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "991b61de8365c8b5707cf6cabbff98cfd6eaca9b851948b883efea408c7f581e"
332 "checksum lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
473 "checksum lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
333 "checksum libc 0.2.68 (registry+https://github.com/rust-lang/crates.io-index)" = "dea0c0405123bba743ee3f91f49b1c7cfb684eef0da0a50110f758ccf24cdff0"
474 "checksum libc 0.2.78 (registry+https://github.com/rust-lang/crates.io-index)" = "aa7087f49d294270db4e1928fc110c976cd4b9e5a16348e0a1df09afa99e6c98"
475 "checksum mailparse 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)" = "479b94621ea0fe875638d27f4a0b68213174b63e1ff9355d0948a04f71a5055a"
334 "checksum memchr 2.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3728d817d99e5ac407411fa471ff9800a778d88a24685968b36824eaf4bee400"
476 "checksum memchr 2.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3728d817d99e5ac407411fa471ff9800a778d88a24685968b36824eaf4bee400"
477 "checksum memmap 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6585fd95e7bb50d6cc31e20d4cf9afb4e2ba16c5846fc76793f11218da9c475b"
335 "checksum memory-module-sys 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3bbdce2925c681860b08875119254fb5543dbf6337c56ff93afebeed9c686da3"
478 "checksum memory-module-sys 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3bbdce2925c681860b08875119254fb5543dbf6337c56ff93afebeed9c686da3"
336 "checksum num-traits 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "c62be47e61d1842b9170f0fdeec8eba98e60e90e5446449a0545e5152acd7096"
479 "checksum num-traits 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)" = "ac267bcc07f48ee5f8935ab0d24f316fb722d7a1292e2913f0cc196b29ffd611"
337 "checksum paste 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "092d791bf7847f70bbd49085489fba25fc2c193571752bff9e36e74e72403932"
480 "checksum paste 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)" = "45ca20c77d80be666aef2b45486da86238fabe33e38306bd3118fe4af33fa880"
338 "checksum paste-impl 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "406c23fb4c45cc6f68a9bbabb8ec7bd6f8cfcbd17e9e8f72c2460282f8325729"
481 "checksum paste-impl 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)" = "d95a7db200b97ef370c8e6de0088252f7e0dfff7d047a28528e47456c0fc98b6"
339 "checksum ppv-lite86 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "74490b50b9fbe561ac330df47c08f3f33073d2d00c150f719147d7c54522fa1b"
482 "checksum ppv-lite86 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)" = "c36fa947111f5c62a733b652544dd0016a43ce89619538a8ef92724a6f501a20"
340 "checksum proc-macro-hack 0.5.15 (registry+https://github.com/rust-lang/crates.io-index)" = "0d659fe7c6d27f25e9d80a1a094c223f5246f6a6596453e09d7229bf42750b63"
483 "checksum proc-macro-hack 0.5.18 (registry+https://github.com/rust-lang/crates.io-index)" = "99c605b9a0adc77b7211c6b1f722dcb613d68d66859a44f3d485a6da332b0598"
341 "checksum proc-macro2 1.0.10 (registry+https://github.com/rust-lang/crates.io-index)" = "df246d292ff63439fea9bc8c0a270bed0e390d5ebd4db4ba15aba81111b5abe3"
484 "checksum pyembed 0.8.0-pre (git+https://github.com/indygreg/PyOxidizer.git?rev=4697fb25918dfad6dc73288daeea501063963a08)" = "<none>"
342 "checksum pyembed 0.7.0-pre (git+https://github.com/indygreg/PyOxidizer.git?rev=c772a1379c3026314eda1c8ea244b86c0658951d)" = "<none>"
485 "checksum python-packaging 0.1.0-pre (git+https://github.com/indygreg/PyOxidizer.git?rev=4697fb25918dfad6dc73288daeea501063963a08)" = "<none>"
343 "checksum python-packed-resources 0.1.0-pre (git+https://github.com/indygreg/PyOxidizer.git?rev=c772a1379c3026314eda1c8ea244b86c0658951d)" = "<none>"
486 "checksum python-packed-resources 0.2.0-pre (git+https://github.com/indygreg/PyOxidizer.git?rev=4697fb25918dfad6dc73288daeea501063963a08)" = "<none>"
344 "checksum python3-sys 0.4.1 (git+https://github.com/dgrunwald/rust-cpython?rev=387e87d9deb6b678508888239f9f87dc36973d3f)" = "<none>"
487 "checksum python3-sys 0.5.0 (git+https://github.com/dgrunwald/rust-cpython.git?rev=4283acd94f4e794fe03679efc7a6c18bc50938a8)" = "<none>"
345 "checksum quote 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2bdc6c187c65bca4260c9011c9e3132efe4909da44726bad24cf7572ae338d7f"
488 "checksum quoted_printable 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "47b080c5db639b292ac79cbd34be0cfc5d36694768d8341109634d90b86930e2"
489 "checksum rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293"
346 "checksum rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
490 "checksum rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
347 "checksum rand_chacha 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
491 "checksum rand_chacha 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
492 "checksum rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
493 "checksum rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc"
348 "checksum rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
494 "checksum rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
349 "checksum rand_hc 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
495 "checksum rand_hc 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
350 "checksum regex 1.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "7f6946991529684867e47d86474e3a6d0c0ab9b82d5821e314b1ede31fa3a4b3"
496 "checksum rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
351 "checksum regex-syntax 0.6.17 (registry+https://github.com/rust-lang/crates.io-index)" = "7fe5bd57d1d7414c6b5ed48563a2c855d995ff777729dcd91c369ec7fea395ae"
497 "checksum regex 1.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "9c3780fcf44b193bc4d09f36d2a3c87b251da4a046c87795a0d35f4f927ad8e6"
352 "checksum syn 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)" = "0df0eb663f387145cab623dea85b09c2c5b4b0aef44e945d928e682fce71bb03"
498 "checksum regex-syntax 0.6.18 (registry+https://github.com/rust-lang/crates.io-index)" = "26412eb97c6b088a6997e05f69403a802a92d520de2f8e63c2b65f9e0f47c4e8"
499 "checksum remove_dir_all 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7"
500 "checksum same-file 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
501 "checksum tempdir 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "15f2b5fb00ccdf689e0149d1b1b3c03fead81c2b37735d812fa8bddbbf41b6d8"
353 "checksum thread_local 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d40c6d1b69745a6ec6fb1ca717914848da4b44ae29d9b3080cbee91d72a69b14"
502 "checksum thread_local 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d40c6d1b69745a6ec6fb1ca717914848da4b44ae29d9b3080cbee91d72a69b14"
354 "checksum unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "826e7639553986605ec5979c7dd957c7895e93eabed50ab2ffa7f6128a75097c"
355 "checksum uuid 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9fde2f6a4bea1d6e007c4ad38c6839fa71cbb63b6dbf5b595aa38dc9b1093c11"
503 "checksum uuid 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9fde2f6a4bea1d6e007c4ad38c6839fa71cbb63b6dbf5b595aa38dc9b1093c11"
504 "checksum walkdir 2.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "777182bc735b6424e1a57516d35ed72cb8019d85c8c9bf536dccb3445c1a2f7d"
356 "checksum wasi 0.9.0+wasi-snapshot-preview1 (registry+https://github.com/rust-lang/crates.io-index)" = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
505 "checksum wasi 0.9.0+wasi-snapshot-preview1 (registry+https://github.com/rust-lang/crates.io-index)" = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
357 "checksum winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "8093091eeb260906a183e6ae1abdba2ef5ef2257a21801128899c3fc699229c6"
506 "checksum winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
358 "checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
507 "checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
508 "checksum winapi-util 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
359 "checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
509 "checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
@@ -13,7 +13,11 b' path = "src/main.rs"'
13
13
14 [dependencies]
14 [dependencies]
15 jemallocator-global = { version = "0.3", optional = true }
15 jemallocator-global = { version = "0.3", optional = true }
16 pyembed = { git = "https://github.com/indygreg/PyOxidizer.git", rev = "c772a1379c3026314eda1c8ea244b86c0658951d", default-features=false }
16
17 [dependencies.pyembed]
18 git = "https://github.com/indygreg/PyOxidizer.git"
19 rev = "4697fb25918dfad6dc73288daeea501063963a08"
20 default-features = false
17
21
18 [features]
22 [features]
19 default = ["build-mode-pyoxidizer-exe"]
23 default = ["build-mode-pyoxidizer-exe"]
@@ -1,5 +1,7 b''
1 ROOT = CWD + "/../.."
1 ROOT = CWD + "/../.."
2
2
3 IS_WINDOWS = "windows" in BUILD_TARGET_TRIPLE
4
3 # Code to run in Python interpreter.
5 # Code to run in Python interpreter.
4 RUN_CODE = "import hgdemandimport; hgdemandimport.enable(); from mercurial import dispatch; dispatch.run()"
6 RUN_CODE = "import hgdemandimport; hgdemandimport.enable(); from mercurial import dispatch; dispatch.run()"
5
7
@@ -11,8 +13,35 b' def make_distribution():'
11 def make_distribution_windows():
13 def make_distribution_windows():
12 return default_python_distribution(flavor = "standalone_dynamic")
14 return default_python_distribution(flavor = "standalone_dynamic")
13
15
16 def resource_callback(policy, resource):
17 # We use a custom resource routing policy to influence where things are loaded
18 # from.
19 #
20 # For Python modules and resources, we load from memory if they are in
21 # the standard library and from the filesystem if not. This is because
22 # parts of Mercurial and some 3rd party packages aren't yet compatible
23 # with memory loading.
24 #
25 # For Python extension modules, we load from the filesystem because
26 # this yields greatest compatibility.
27 if type(resource) in ("PythonModuleSource", "PythonPackageResource", "PythonPackageDistributionResource"):
28 if resource.is_stdlib:
29 resource.add_location = "in-memory"
30 else:
31 resource.add_location = "filesystem-relative:lib"
32
33 elif type(resource) == "PythonExtensionModule":
34 resource.add_location = "filesystem-relative:lib"
35
14 def make_exe(dist):
36 def make_exe(dist):
15 """Builds a Rust-wrapped Mercurial binary."""
37 """Builds a Rust-wrapped Mercurial binary."""
38 packaging_policy = dist.make_python_packaging_policy()
39 # Extension may depend on any Python functionality. Include all
40 # extensions.
41 packaging_policy.extension_module_filter = "all"
42 packaging_policy.resources_policy = "prefer-in-memory-fallback-filesystem-relative:lib"
43 packaging_policy.register_resource_callback(resource_callback)
44
16 config = PythonInterpreterConfig(
45 config = PythonInterpreterConfig(
17 raw_allocator = "system",
46 raw_allocator = "system",
18 run_eval = RUN_CODE,
47 run_eval = RUN_CODE,
@@ -25,37 +54,17 b' def make_exe(dist):'
25
54
26 exe = dist.to_python_executable(
55 exe = dist.to_python_executable(
27 name = "hg",
56 name = "hg",
28 resources_policy = "prefer-in-memory-fallback-filesystem-relative:lib",
57 packaging_policy = packaging_policy,
29 config = config,
58 config = config,
30 # Extension may depend on any Python functionality. Include all
31 # extensions.
32 extension_module_filter = "all",
33 )
59 )
34
60
35 # Add Mercurial to resources.
61 # Add Mercurial to resources.
36 for resource in dist.pip_install(["--verbose", ROOT]):
62 exe.add_python_resources(exe.pip_install(["--verbose", ROOT]))
37 # This is a bit wonky and worth explaining.
38 #
39 # Various parts of Mercurial don't yet support loading package
40 # resources via the ResourceReader interface. Or, not having
41 # file-based resources would be too inconvenient for users.
42 #
43 # So, for package resources, we package them both in the
44 # filesystem as well as in memory. If both are defined,
45 # PyOxidizer will prefer the in-memory location. So even
46 # if the filesystem file isn't packaged in the location
47 # specified here, we should never encounter an errors as the
48 # resource will always be available in memory.
49 if type(resource) == "PythonPackageResource":
50 exe.add_filesystem_relative_python_resource(".", resource)
51 exe.add_in_memory_python_resource(resource)
52 else:
53 exe.add_python_resource(resource)
54
63
55 # On Windows, we install extra packages for convenience.
64 # On Windows, we install extra packages for convenience.
56 if "windows" in BUILD_TARGET_TRIPLE:
65 if IS_WINDOWS:
57 exe.add_python_resources(
66 exe.add_python_resources(
58 dist.pip_install(["-r", ROOT + "/contrib/packaging/requirements_win32.txt"]),
67 exe.pip_install(["-r", ROOT + "/contrib/packaging/requirements_win32.txt"]),
59 )
68 )
60
69
61 return exe
70 return exe
@@ -95,4 +104,5 b' resolve_targets()'
95 # Everything below this is typically managed by PyOxidizer and doesn't need
104 # Everything below this is typically managed by PyOxidizer and doesn't need
96 # to be updated by people.
105 # to be updated by people.
97
106
98 PYOXIDIZER_VERSION = "0.7.0"
107 PYOXIDIZER_VERSION = "0.8.0-pre"
108 PYOXIDIZER_COMMIT = "4697fb25918dfad6dc73288daeea501063963a08"
General Comments 0
You need to be logged in to leave comments. Login now