@platforma-open/milaboratories.3d-structure-prediction.software 1.0.4 → 1.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.turbo/turbo-build.log +327 -325
- package/CHANGELOG.md +16 -0
- package/dist/artifacts/py-archive/archive.json +1 -1
- package/dist/artifacts/py-docker/docker_x64.json +1 -1
- package/dist/tengo/software/immunebuilder-predict.sw.json +1 -1
- package/package.json +1 -1
- package/pkg-platforma-open-milaboratories.3d-structure-prediction.software-py-archive-1.0.5.tgz +0 -0
- package/src_python/pdb_writer.py +6 -7
- package/src_python/run_immunebuilder.py +9 -15
- package/pkg-platforma-open-milaboratories.3d-structure-prediction.software-py-archive-1.0.4.tgz +0 -0
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
WARN Issue while reading "/home/runner/work/3d-structure-prediction/3d-structure-prediction/.npmrc". Failed to replace env in config: ${NPMJS_TOKEN}
|
|
2
2
|
|
|
3
|
-
> @platforma-open/milaboratories.3d-structure-prediction.software@1.0.
|
|
3
|
+
> @platforma-open/milaboratories.3d-structure-prediction.software@1.0.5 build /home/runner/work/3d-structure-prediction/3d-structure-prediction/software
|
|
4
4
|
> pl-pkg build
|
|
5
5
|
|
|
6
6
|
[32minfo[39m: Building docker images...
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
|
|
10
10
|
#1 [internal] load build definition from Dockerfile
|
|
11
11
|
#1 transferring dockerfile: 3.16kB done
|
|
12
|
-
#1 DONE 0.
|
|
12
|
+
#1 DONE 0.0s
|
|
13
13
|
|
|
14
14
|
#2 resolve image config for docker-image://docker.io/docker/dockerfile:1
|
|
15
15
|
#2 ...
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
#3 DONE 0.0s
|
|
19
19
|
|
|
20
20
|
#2 resolve image config for docker-image://docker.io/docker/dockerfile:1
|
|
21
|
-
#2 DONE 0.
|
|
21
|
+
#2 DONE 0.9s
|
|
22
22
|
|
|
23
23
|
#4 docker-image://docker.io/docker/dockerfile:1@sha256:2780b5c3bab67f1f76c781860de469442999ed1a0d7992a5efdf2cffc0e3d769
|
|
24
24
|
#4 resolve docker.io/docker/dockerfile:1@sha256:2780b5c3bab67f1f76c781860de469442999ed1a0d7992a5efdf2cffc0e3d769 done
|
|
@@ -26,340 +26,342 @@
|
|
|
26
26
|
#4 sha256:369c4e6584693f8e13d7a27755a6b10201798e229cdfad5eae04ea5f15a76412 1.13kB / 1.13kB done
|
|
27
27
|
#4 sha256:14cdce40ae0e938cf7d2d7fe6aa3dec2beb66aa066d6a54356c64fd8af6323c2 1.33kB / 1.33kB done
|
|
28
28
|
#4 sha256:bcb5d2ab7af67a669c932851c8bb8a26895dda6258900edfd7429d57bfd3592f 0B / 14.11MB 0.1s
|
|
29
|
-
#4 sha256:bcb5d2ab7af67a669c932851c8bb8a26895dda6258900edfd7429d57bfd3592f
|
|
30
|
-
#4 sha256:bcb5d2ab7af67a669c932851c8bb8a26895dda6258900edfd7429d57bfd3592f 14.11MB / 14.11MB 0.3s done
|
|
29
|
+
#4 sha256:bcb5d2ab7af67a669c932851c8bb8a26895dda6258900edfd7429d57bfd3592f 14.11MB / 14.11MB 0.1s done
|
|
31
30
|
#4 extracting sha256:bcb5d2ab7af67a669c932851c8bb8a26895dda6258900edfd7429d57bfd3592f 0.1s
|
|
32
|
-
#4 extracting sha256:bcb5d2ab7af67a669c932851c8bb8a26895dda6258900edfd7429d57bfd3592f 0.
|
|
33
|
-
#4 DONE 0.
|
|
31
|
+
#4 extracting sha256:bcb5d2ab7af67a669c932851c8bb8a26895dda6258900edfd7429d57bfd3592f 0.2s done
|
|
32
|
+
#4 DONE 0.3s
|
|
34
33
|
|
|
35
|
-
#5 [
|
|
36
|
-
#5
|
|
34
|
+
#5 [internal] load metadata for docker.io/mambaorg/micromamba:1.5.10
|
|
35
|
+
#5 ...
|
|
37
36
|
|
|
38
|
-
#6 [
|
|
39
|
-
#6 DONE 0.
|
|
37
|
+
#6 [auth] mambaorg/micromamba:pull token for registry-1.docker.io
|
|
38
|
+
#6 DONE 0.0s
|
|
39
|
+
|
|
40
|
+
#5 [internal] load metadata for docker.io/mambaorg/micromamba:1.5.10
|
|
41
|
+
#5 DONE 1.0s
|
|
40
42
|
|
|
41
43
|
#7 [internal] load .dockerignore
|
|
42
44
|
#7 transferring context: 2B done
|
|
43
45
|
#7 DONE 0.0s
|
|
44
46
|
|
|
45
47
|
#8 [internal] load build context
|
|
46
|
-
#8 transferring context: 36.
|
|
48
|
+
#8 transferring context: 36.22kB done
|
|
47
49
|
#8 DONE 0.0s
|
|
48
50
|
|
|
49
51
|
#9 [1/7] FROM docker.io/mambaorg/micromamba:1.5.10@sha256:e3797091302382ea841498bc93a7b0a50f7c1448333d5e946d2d1608d0c5f43d
|
|
50
52
|
#9 resolve docker.io/mambaorg/micromamba:1.5.10@sha256:e3797091302382ea841498bc93a7b0a50f7c1448333d5e946d2d1608d0c5f43d done
|
|
53
|
+
#9 sha256:008e06cd8432eb558faa4738a092f30b38dd8db3137a5dd3fca57374a790825b 2.56kB / 2.56kB done
|
|
51
54
|
#9 sha256:c5ef7ca066aec9ae6b5a07ceca914beded0754d74f2006b33ee80cb661688f74 6.28kB / 6.28kB done
|
|
52
|
-
#9 sha256:0d56d98386a9a231fee4dcf145a261d9d12da39f1c5a5d3bbe09a1aa727febf8 0B / 122.68kB 0.1s
|
|
53
55
|
#9 sha256:a2318d6c47ec9cac5acc500c47c79602bcf953cec711a18bc898911a0984365b 0B / 29.13MB 0.1s
|
|
54
56
|
#9 sha256:e3797091302382ea841498bc93a7b0a50f7c1448333d5e946d2d1608d0c5f43d 2.36kB / 2.36kB done
|
|
55
|
-
#9 sha256:
|
|
57
|
+
#9 sha256:0d56d98386a9a231fee4dcf145a261d9d12da39f1c5a5d3bbe09a1aa727febf8 0B / 122.68kB 0.1s
|
|
56
58
|
#9 sha256:30fe8036db79bfbab0cdf8d102dcfd22ee410944fed17b23851977246235b880 0B / 6.20MB 0.1s
|
|
59
|
+
#9 sha256:a2318d6c47ec9cac5acc500c47c79602bcf953cec711a18bc898911a0984365b 7.34MB / 29.13MB 0.3s
|
|
57
60
|
#9 sha256:0d56d98386a9a231fee4dcf145a261d9d12da39f1c5a5d3bbe09a1aa727febf8 122.68kB / 122.68kB 0.2s done
|
|
58
|
-
#9 sha256:
|
|
59
|
-
#9 sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1
|
|
60
|
-
#9 sha256:
|
|
61
|
-
#9 sha256:
|
|
62
|
-
#9 sha256:
|
|
63
|
-
#9 sha256:
|
|
64
|
-
#9 sha256:51b5951dad11c47781e0b67c512ab7f1b148983b42cb5b8cbfb3ea6e8d28a602
|
|
65
|
-
#9
|
|
66
|
-
#9 sha256:
|
|
67
|
-
#9 sha256:30fe8036db79bfbab0cdf8d102dcfd22ee410944fed17b23851977246235b880 6.20MB / 6.20MB 0.4s done
|
|
61
|
+
#9 sha256:30fe8036db79bfbab0cdf8d102dcfd22ee410944fed17b23851977246235b880 6.20MB / 6.20MB 0.3s done
|
|
62
|
+
#9 sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 32B / 32B 0.3s done
|
|
63
|
+
#9 sha256:1b19c15ef8e221c4e8f2f5233ce6dcb27342ecf18997a0576cf301345df0b2ed 0B / 521B 0.3s
|
|
64
|
+
#9 sha256:a2318d6c47ec9cac5acc500c47c79602bcf953cec711a18bc898911a0984365b 16.78MB / 29.13MB 0.4s
|
|
65
|
+
#9 sha256:1b19c15ef8e221c4e8f2f5233ce6dcb27342ecf18997a0576cf301345df0b2ed 521B / 521B 0.4s done
|
|
66
|
+
#9 sha256:9a782d6d1eace15aadfa1d16eb83ad2abdea075c6c9e200247950571a3719e10 0B / 3.77kB 0.4s
|
|
67
|
+
#9 sha256:51b5951dad11c47781e0b67c512ab7f1b148983b42cb5b8cbfb3ea6e8d28a602 282B / 282B 0.4s
|
|
68
|
+
#9 sha256:a2318d6c47ec9cac5acc500c47c79602bcf953cec711a18bc898911a0984365b 29.13MB / 29.13MB 0.5s done
|
|
69
|
+
#9 sha256:9a782d6d1eace15aadfa1d16eb83ad2abdea075c6c9e200247950571a3719e10 3.77kB / 3.77kB 0.5s done
|
|
68
70
|
#9 sha256:51b5951dad11c47781e0b67c512ab7f1b148983b42cb5b8cbfb3ea6e8d28a602 282B / 282B 0.4s done
|
|
69
|
-
#9 sha256:
|
|
70
|
-
#9 sha256:
|
|
71
|
-
#9 sha256:
|
|
72
|
-
#9 sha256:
|
|
73
|
-
#9 sha256:8b456163e45ffc9e8274e77e02d1a5a166f27e760db7314ea9ee89f5578090d6 215B / 215B 0.
|
|
74
|
-
#9 sha256:c1d339bd3cdc8184904ef6ed4e4685a7551020e738a57e9b8c27edead08b3461 645B / 645B 0.
|
|
75
|
-
#9 sha256:e9e8562f12ed796758a0790bfccb45f2463190f4ba8696dac09a9f22b20e37e3 683B / 683B 0.
|
|
76
|
-
#9 sha256:db3fc724910ed98f15e8511e8024faf769a34901595e617bd4c7ebd8b8b8fd29
|
|
77
|
-
#9 sha256:
|
|
78
|
-
#9 extracting sha256:a2318d6c47ec9cac5acc500c47c79602bcf953cec711a18bc898911a0984365b 1.1s done
|
|
71
|
+
#9 extracting sha256:a2318d6c47ec9cac5acc500c47c79602bcf953cec711a18bc898911a0984365b 0.1s
|
|
72
|
+
#9 sha256:8b456163e45ffc9e8274e77e02d1a5a166f27e760db7314ea9ee89f5578090d6 0B / 215B 0.5s
|
|
73
|
+
#9 sha256:c1d339bd3cdc8184904ef6ed4e4685a7551020e738a57e9b8c27edead08b3461 0B / 645B 0.5s
|
|
74
|
+
#9 sha256:e9e8562f12ed796758a0790bfccb45f2463190f4ba8696dac09a9f22b20e37e3 0B / 683B 0.5s
|
|
75
|
+
#9 sha256:8b456163e45ffc9e8274e77e02d1a5a166f27e760db7314ea9ee89f5578090d6 215B / 215B 0.5s done
|
|
76
|
+
#9 sha256:c1d339bd3cdc8184904ef6ed4e4685a7551020e738a57e9b8c27edead08b3461 645B / 645B 0.7s done
|
|
77
|
+
#9 sha256:e9e8562f12ed796758a0790bfccb45f2463190f4ba8696dac09a9f22b20e37e3 683B / 683B 0.6s done
|
|
78
|
+
#9 sha256:db3fc724910ed98f15e8511e8024faf769a34901595e617bd4c7ebd8b8b8fd29 345B / 345B 0.6s done
|
|
79
|
+
#9 extracting sha256:a2318d6c47ec9cac5acc500c47c79602bcf953cec711a18bc898911a0984365b 1.4s done
|
|
79
80
|
#9 extracting sha256:0d56d98386a9a231fee4dcf145a261d9d12da39f1c5a5d3bbe09a1aa727febf8 done
|
|
80
81
|
#9 extracting sha256:30fe8036db79bfbab0cdf8d102dcfd22ee410944fed17b23851977246235b880
|
|
81
82
|
#9 extracting sha256:30fe8036db79bfbab0cdf8d102dcfd22ee410944fed17b23851977246235b880 0.1s done
|
|
83
|
+
#9 extracting sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1
|
|
82
84
|
#9 extracting sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 done
|
|
83
|
-
#9 extracting sha256:1b19c15ef8e221c4e8f2f5233ce6dcb27342ecf18997a0576cf301345df0b2ed
|
|
84
85
|
#9 extracting sha256:1b19c15ef8e221c4e8f2f5233ce6dcb27342ecf18997a0576cf301345df0b2ed done
|
|
85
86
|
#9 extracting sha256:51b5951dad11c47781e0b67c512ab7f1b148983b42cb5b8cbfb3ea6e8d28a602 done
|
|
86
87
|
#9 extracting sha256:9a782d6d1eace15aadfa1d16eb83ad2abdea075c6c9e200247950571a3719e10 done
|
|
87
88
|
#9 extracting sha256:8b456163e45ffc9e8274e77e02d1a5a166f27e760db7314ea9ee89f5578090d6 done
|
|
88
89
|
#9 extracting sha256:e9e8562f12ed796758a0790bfccb45f2463190f4ba8696dac09a9f22b20e37e3 done
|
|
89
90
|
#9 extracting sha256:c1d339bd3cdc8184904ef6ed4e4685a7551020e738a57e9b8c27edead08b3461 done
|
|
91
|
+
#9 extracting sha256:db3fc724910ed98f15e8511e8024faf769a34901595e617bd4c7ebd8b8b8fd29
|
|
90
92
|
#9 extracting sha256:db3fc724910ed98f15e8511e8024faf769a34901595e617bd4c7ebd8b8b8fd29 done
|
|
91
|
-
#9 DONE
|
|
93
|
+
#9 DONE 2.3s
|
|
92
94
|
|
|
93
95
|
#10 [2/7] RUN micromamba install -y -n base -c bioconda -c conda-forge python=3.12.10 anarci hmmer biopython=1.85 openmm=8.3.1 pdbfixer=1.12.0 numpy=2.4.3 scipy=1.17.1 && micromamba clean --all --yes
|
|
94
|
-
#10
|
|
95
|
-
#10
|
|
96
|
-
#10
|
|
97
|
-
#10
|
|
98
|
-
#10
|
|
99
|
-
#10
|
|
100
|
-
#10
|
|
101
|
-
#10
|
|
102
|
-
#10
|
|
103
|
-
#10
|
|
104
|
-
#10
|
|
105
|
-
#10
|
|
106
|
-
#10
|
|
107
|
-
#10
|
|
108
|
-
#10
|
|
109
|
-
#10
|
|
110
|
-
#10
|
|
111
|
-
#10
|
|
112
|
-
#10
|
|
113
|
-
#10
|
|
114
|
-
#10
|
|
115
|
-
#10
|
|
116
|
-
#10
|
|
117
|
-
#10
|
|
118
|
-
#10
|
|
119
|
-
#10
|
|
120
|
-
#10
|
|
121
|
-
#10
|
|
122
|
-
#10
|
|
123
|
-
#10
|
|
124
|
-
#10
|
|
125
|
-
#10
|
|
126
|
-
#10
|
|
127
|
-
#10
|
|
128
|
-
#10
|
|
129
|
-
#10
|
|
130
|
-
#10
|
|
131
|
-
#10
|
|
132
|
-
#10
|
|
133
|
-
#10
|
|
134
|
-
#10
|
|
135
|
-
#10
|
|
136
|
-
#10
|
|
137
|
-
#10
|
|
138
|
-
#10
|
|
139
|
-
#10
|
|
140
|
-
#10
|
|
141
|
-
#10
|
|
142
|
-
#10
|
|
143
|
-
#10
|
|
144
|
-
#10
|
|
145
|
-
#10
|
|
146
|
-
#10
|
|
147
|
-
#10
|
|
148
|
-
#10
|
|
149
|
-
#10
|
|
150
|
-
#10
|
|
151
|
-
#10
|
|
152
|
-
#10
|
|
153
|
-
#10
|
|
154
|
-
#10
|
|
155
|
-
#10
|
|
156
|
-
#10
|
|
157
|
-
#10
|
|
158
|
-
#10
|
|
159
|
-
#10
|
|
160
|
-
#10
|
|
161
|
-
#10
|
|
162
|
-
#10
|
|
163
|
-
#10
|
|
164
|
-
#10
|
|
165
|
-
#10
|
|
166
|
-
#10
|
|
167
|
-
#10
|
|
168
|
-
#10
|
|
169
|
-
#10
|
|
170
|
-
#10
|
|
171
|
-
#10
|
|
172
|
-
#10
|
|
173
|
-
#10
|
|
174
|
-
#10
|
|
175
|
-
#10
|
|
176
|
-
#10
|
|
177
|
-
#10
|
|
178
|
-
#10
|
|
179
|
-
#10
|
|
180
|
-
#10
|
|
181
|
-
#10
|
|
182
|
-
#10
|
|
183
|
-
#10
|
|
184
|
-
#10
|
|
185
|
-
#10
|
|
186
|
-
#10
|
|
187
|
-
#10
|
|
188
|
-
#10
|
|
189
|
-
#10
|
|
190
|
-
#10
|
|
191
|
-
#10
|
|
192
|
-
#10
|
|
193
|
-
#10
|
|
194
|
-
#10
|
|
195
|
-
#10
|
|
196
|
-
#10
|
|
197
|
-
#10
|
|
198
|
-
#10
|
|
199
|
-
#10
|
|
200
|
-
#10
|
|
201
|
-
#10
|
|
202
|
-
#10
|
|
203
|
-
#10
|
|
204
|
-
#10
|
|
205
|
-
#10
|
|
206
|
-
#10
|
|
207
|
-
#10
|
|
208
|
-
#10
|
|
209
|
-
#10
|
|
210
|
-
#10
|
|
211
|
-
#10
|
|
212
|
-
#10
|
|
213
|
-
#10
|
|
214
|
-
#10
|
|
215
|
-
#10
|
|
216
|
-
#10
|
|
217
|
-
#10
|
|
218
|
-
#10
|
|
219
|
-
#10
|
|
220
|
-
#10
|
|
221
|
-
#10
|
|
222
|
-
#10
|
|
223
|
-
#10
|
|
224
|
-
#10
|
|
225
|
-
#10
|
|
226
|
-
#10
|
|
227
|
-
#10
|
|
228
|
-
#10
|
|
229
|
-
#10
|
|
230
|
-
#10
|
|
231
|
-
#10
|
|
232
|
-
#10
|
|
233
|
-
#10
|
|
234
|
-
#10
|
|
235
|
-
#10
|
|
236
|
-
#10
|
|
237
|
-
#10
|
|
238
|
-
#10
|
|
239
|
-
#10
|
|
240
|
-
#10
|
|
241
|
-
#10
|
|
242
|
-
#10
|
|
243
|
-
#10
|
|
244
|
-
#10
|
|
245
|
-
#10
|
|
246
|
-
#10
|
|
247
|
-
#10
|
|
248
|
-
#10
|
|
249
|
-
#10
|
|
250
|
-
#10
|
|
251
|
-
#10
|
|
252
|
-
#10
|
|
253
|
-
#10
|
|
254
|
-
#10
|
|
255
|
-
#10
|
|
256
|
-
#10
|
|
257
|
-
#10
|
|
258
|
-
#10
|
|
259
|
-
#10
|
|
260
|
-
#10
|
|
261
|
-
#10
|
|
262
|
-
#10
|
|
263
|
-
#10
|
|
264
|
-
#10
|
|
265
|
-
#10
|
|
266
|
-
#10
|
|
267
|
-
#10
|
|
268
|
-
#10
|
|
269
|
-
#10
|
|
270
|
-
#10
|
|
271
|
-
#10
|
|
272
|
-
#10
|
|
273
|
-
#10
|
|
274
|
-
#10
|
|
275
|
-
#10
|
|
276
|
-
#10
|
|
277
|
-
#10
|
|
278
|
-
#10
|
|
279
|
-
#10
|
|
280
|
-
#10
|
|
281
|
-
#10
|
|
282
|
-
#10 DONE
|
|
96
|
+
#10 19.93
|
|
97
|
+
#10 19.93 Transaction
|
|
98
|
+
#10 19.93
|
|
99
|
+
#10 19.93 Prefix: /opt/conda
|
|
100
|
+
#10 19.93
|
|
101
|
+
#10 19.93 Updating specs:
|
|
102
|
+
#10 19.93
|
|
103
|
+
#10 19.93 - python=3.12.10
|
|
104
|
+
#10 19.93 - anarci
|
|
105
|
+
#10 19.93 - hmmer
|
|
106
|
+
#10 19.93 - biopython=1.85
|
|
107
|
+
#10 19.93 - openmm=8.3.1
|
|
108
|
+
#10 19.93 - pdbfixer=1.12.0
|
|
109
|
+
#10 19.93 - numpy=2.4.3
|
|
110
|
+
#10 19.93 - scipy=1.17.1
|
|
111
|
+
#10 19.93
|
|
112
|
+
#10 19.93
|
|
113
|
+
#10 19.94 Package Version Build Channel Size
|
|
114
|
+
#10 19.94 ───────────────────────────────────────────────────────────────────────────────
|
|
115
|
+
#10 19.94 Install:
|
|
116
|
+
#10 19.94 ───────────────────────────────────────────────────────────────────────────────
|
|
117
|
+
#10 19.94
|
|
118
|
+
#10 19.94 + python_abi 3.12 8_cp312 conda-forge 7kB
|
|
119
|
+
#10 19.94 + tzdata 2025c hc9c84f9_1 conda-forge 119kB
|
|
120
|
+
#10 19.94 + ca-certificates 2026.4.22 hbd8a1cb_0 conda-forge 131kB
|
|
121
|
+
#10 19.94 + cuda-version 12.9 h4f385c5_3 conda-forge 22kB
|
|
122
|
+
#10 19.94 + libzlib 1.3.2 h25fd6f3_2 conda-forge 64kB
|
|
123
|
+
#10 19.94 + libgomp 15.2.0 he0feb66_19 conda-forge 604kB
|
|
124
|
+
#10 19.94 + mpi 1.0 openmpi conda-forge 4kB
|
|
125
|
+
#10 19.94 + zlib 1.3.2 h25fd6f3_2 conda-forge 96kB
|
|
126
|
+
#10 19.94 + zstd 1.5.7 hb78ec9c_6 conda-forge 601kB
|
|
127
|
+
#10 19.94 + _openmp_mutex 4.5 20_gnu conda-forge 29kB
|
|
128
|
+
#10 19.94 + ld_impl_linux-64 2.45.1 default_hbd61a6d_102 conda-forge 728kB
|
|
129
|
+
#10 19.94 + libgcc 15.2.0 he0feb66_19 conda-forge 1MB
|
|
130
|
+
#10 19.94 + tk 8.6.13 noxft_h366c992_103 conda-forge 3MB
|
|
131
|
+
#10 19.94 + libsqlite 3.53.1 h0c1763c_0 conda-forge 955kB
|
|
132
|
+
#10 19.94 + openssl 3.6.2 h35e630c_0 conda-forge 3MB
|
|
133
|
+
#10 19.94 + ncurses 6.6 hdb14827_0 conda-forge 919kB
|
|
134
|
+
#10 19.94 + libuuid 2.42 h5347b49_0 conda-forge 40kB
|
|
135
|
+
#10 19.94 + libnsl 2.0.1 hb9d3cd8_1 conda-forge 34kB
|
|
136
|
+
#10 19.94 + liblzma 5.8.3 hb03c661_0 conda-forge 113kB
|
|
137
|
+
#10 19.94 + libffi 3.4.6 h2dba641_1 conda-forge 57kB
|
|
138
|
+
#10 19.94 + libexpat 2.8.0 hecca717_0 conda-forge 77kB
|
|
139
|
+
#10 19.94 + bzip2 1.0.8 hda65f42_9 conda-forge 260kB
|
|
140
|
+
#10 19.94 + libstdcxx 15.2.0 h934c35e_19 conda-forge 6MB
|
|
141
|
+
#10 19.94 + libgcc-ng 15.2.0 h69a702a_19 conda-forge 28kB
|
|
142
|
+
#10 19.94 + libgfortran5 15.2.0 h68bc16d_19 conda-forge 2MB
|
|
143
|
+
#10 19.94 + readline 8.3 h853b02a_0 conda-forge 345kB
|
|
144
|
+
#10 19.94 + opencl-headers 2025.06.13 hecca717_0 conda-forge 56kB
|
|
145
|
+
#10 19.94 + libstdcxx-ng 15.2.0 hdf11a46_19 conda-forge 28kB
|
|
146
|
+
#10 19.94 + libcufft 11.4.1.4 hecca717_1 conda-forge 162MB
|
|
147
|
+
#10 19.94 + cuda-nvrtc 12.9.86 hecca717_1 conda-forge 67MB
|
|
148
|
+
#10 19.94 + libxcrypt 4.4.36 hd590300_1 conda-forge 100kB
|
|
149
|
+
#10 19.94 + libgfortran 15.2.0 h69a702a_19 conda-forge 28kB
|
|
150
|
+
#10 19.94 + ocl-icd 2.3.3 hb9d3cd8_0 conda-forge 107kB
|
|
151
|
+
#10 19.94 + python 3.12.10 h9e4cc4f_0_cpython conda-forge 31MB
|
|
152
|
+
#10 19.94 + libgfortran-ng 15.2.0 h69a702a_19 conda-forge 28kB
|
|
153
|
+
#10 19.94 + libopenblas 0.3.33 pthreads_h94d23a6_0 conda-forge 6MB
|
|
154
|
+
#10 19.94 + ocl-icd-system 1.0.0 1 conda-forge 4kB
|
|
155
|
+
#10 19.94 + openmpi 4.1.6 hc5af2df_101 conda-forge 4MB
|
|
156
|
+
#10 19.94 + libblas 3.11.0 7_h4a7cf45_openblas conda-forge 19kB
|
|
157
|
+
#10 19.94 + libcblas 3.11.0 7_h0358290_openblas conda-forge 19kB
|
|
158
|
+
#10 19.94 + liblapack 3.11.0 7_h47877c9_openblas conda-forge 19kB
|
|
159
|
+
#10 19.94 + gsl 2.7 he838d99_0 conda-forge 3MB
|
|
160
|
+
#10 19.94 + packaging 26.2 pyhc364b38_0 conda-forge 92kB
|
|
161
|
+
#10 19.94 + setuptools 82.0.1 pyh332efcf_0 conda-forge 640kB
|
|
162
|
+
#10 19.94 + wheel 0.47.0 pyhd8ed1ab_0 conda-forge 33kB
|
|
163
|
+
#10 19.94 + pip 26.1.1 pyh8b19718_0 conda-forge 1MB
|
|
164
|
+
#10 19.94 + legacy-cgi 2.6.4 pyhcf101f3_0 conda-forge 20kB
|
|
165
|
+
#10 19.94 + hmmer 3.4 hb6cb901_4 bioconda 12MB
|
|
166
|
+
#10 19.94 + numpy 2.4.3 py312h33ff503_0 conda-forge 9MB
|
|
167
|
+
#10 19.94 + biopython 1.85 py312h4c3975b_2 conda-forge 3MB
|
|
168
|
+
#10 19.94 + scipy 1.17.1 py312h54fa4ab_0 conda-forge 17MB
|
|
169
|
+
#10 19.94 + openmm 8.3.1 py312h50c43f0_0 conda-forge 13MB
|
|
170
|
+
#10 19.94 + anarci 2024.05.21 pyhdfd78af_0 bioconda 1MB
|
|
171
|
+
#10 19.94 + pdbfixer 1.12 pyhd8ed1ab_1 conda-forge 546kB
|
|
172
|
+
#10 19.94
|
|
173
|
+
#10 19.94 Summary:
|
|
174
|
+
#10 19.94
|
|
175
|
+
#10 19.94 Install: 54 packages
|
|
176
|
+
#10 19.94
|
|
177
|
+
#10 19.94 Total download: 353MB
|
|
178
|
+
#10 19.94
|
|
179
|
+
#10 19.94 ───────────────────────────────────────────────────────────────────────────────
|
|
180
|
+
#10 19.94
|
|
181
|
+
#10 19.94
|
|
182
|
+
#10 19.94
|
|
183
|
+
#10 19.94 Transaction starting
|
|
184
|
+
#10 25.31
|
|
185
|
+
#10 25.45
|
|
186
|
+
#10 25.45 For Linux 64, Open MPI is built with CUDA awareness but this support is disabled by default.
|
|
187
|
+
#10 25.45 To enable it, please set the environment variable OMPI_MCA_opal_cuda_support=true before
|
|
188
|
+
#10 25.45 launching your MPI processes. Equivalently, you can set the MCA parameter in the command line:
|
|
189
|
+
#10 25.45 mpiexec --mca opal_cuda_support 1 ...
|
|
190
|
+
#10 25.45
|
|
191
|
+
#10 25.45 In addition, the UCX support is also built but disabled by default.
|
|
192
|
+
#10 25.45 To enable it, first install UCX (conda install -c conda-forge ucx). Then, set the environment
|
|
193
|
+
#10 25.45 variables OMPI_MCA_pml="ucx" OMPI_MCA_osc="ucx" before launching your MPI processes.
|
|
194
|
+
#10 25.45 Equivalently, you can set the MCA parameters in the command line:
|
|
195
|
+
#10 25.45 mpiexec --mca pml ucx --mca osc ucx ...
|
|
196
|
+
#10 25.45 Note that you might also need to set UCX_MEMTYPE_CACHE=n for CUDA awareness via UCX.
|
|
197
|
+
#10 25.45 Please consult UCX's documentation for detail.
|
|
198
|
+
#10 25.45
|
|
199
|
+
#10 25.45
|
|
200
|
+
#10 26.52
|
|
201
|
+
#10 26.52 Transaction finished
|
|
202
|
+
#10 26.52
|
|
203
|
+
#10 26.52 To activate this environment, use:
|
|
204
|
+
#10 26.52
|
|
205
|
+
#10 26.52 micromamba activate base
|
|
206
|
+
#10 26.52
|
|
207
|
+
#10 26.52 Or to execute a single command in this environment, use:
|
|
208
|
+
#10 26.52
|
|
209
|
+
#10 26.52 micromamba run -n base mycommand
|
|
210
|
+
#10 26.52
|
|
211
|
+
#10 26.56 Collect information..
|
|
212
|
+
#10 26.56 Cleaning index cache..
|
|
213
|
+
#10 26.61 Cleaning lock files..
|
|
214
|
+
#10 26.61 Package file Size
|
|
215
|
+
#10 26.61 ───────────────────────────────────────────────────────────────
|
|
216
|
+
#10 26.61 /opt/conda/pkgs
|
|
217
|
+
#10 26.61 ───────────────────────────────────────────────────────────────
|
|
218
|
+
#10 26.61
|
|
219
|
+
#10 26.61 _openmp_mutex-4.5-20_gnu.conda 29kB
|
|
220
|
+
#10 26.61 anarci-2024.05.21-pyhdfd78af_0.tar.bz2 1MB
|
|
221
|
+
#10 26.61 biopython-1.85-py312h4c3975b_2.conda 3MB
|
|
222
|
+
#10 26.61 bzip2-1.0.8-hda65f42_9.conda 260kB
|
|
223
|
+
#10 26.61 ca-certificates-2026.4.22-hbd8a1cb_0.conda 131kB
|
|
224
|
+
#10 26.61 cuda-nvrtc-12.9.86-hecca717_1.conda 67MB
|
|
225
|
+
#10 26.61 cuda-version-12.9-h4f385c5_3.conda 22kB
|
|
226
|
+
#10 26.61 gsl-2.7-he838d99_0.tar.bz2 3MB
|
|
227
|
+
#10 26.61 hmmer-3.4-hb6cb901_4.tar.bz2 12MB
|
|
228
|
+
#10 26.61 ld_impl_linux-64-2.45.1-default_hbd61a6d_102.conda 728kB
|
|
229
|
+
#10 26.61 legacy-cgi-2.6.4-pyhcf101f3_0.conda 20kB
|
|
230
|
+
#10 26.61 libblas-3.11.0-7_h4a7cf45_openblas.conda 19kB
|
|
231
|
+
#10 26.61 libcblas-3.11.0-7_h0358290_openblas.conda 19kB
|
|
232
|
+
#10 26.61 libcufft-11.4.1.4-hecca717_1.conda 162MB
|
|
233
|
+
#10 26.61 libexpat-2.8.0-hecca717_0.conda 77kB
|
|
234
|
+
#10 26.61 libffi-3.4.6-h2dba641_1.conda 57kB
|
|
235
|
+
#10 26.61 libgcc-15.2.0-he0feb66_19.conda 1MB
|
|
236
|
+
#10 26.61 libgcc-ng-15.2.0-h69a702a_19.conda 28kB
|
|
237
|
+
#10 26.61 libgfortran-15.2.0-h69a702a_19.conda 28kB
|
|
238
|
+
#10 26.61 libgfortran-ng-15.2.0-h69a702a_19.conda 28kB
|
|
239
|
+
#10 26.61 libgfortran5-15.2.0-h68bc16d_19.conda 2MB
|
|
240
|
+
#10 26.61 libgomp-15.2.0-he0feb66_19.conda 604kB
|
|
241
|
+
#10 26.61 liblapack-3.11.0-7_h47877c9_openblas.conda 19kB
|
|
242
|
+
#10 26.61 liblzma-5.8.3-hb03c661_0.conda 113kB
|
|
243
|
+
#10 26.61 libnsl-2.0.1-hb9d3cd8_1.conda 34kB
|
|
244
|
+
#10 26.61 libopenblas-0.3.33-pthreads_h94d23a6_0.conda 6MB
|
|
245
|
+
#10 26.61 libsqlite-3.53.1-h0c1763c_0.conda 955kB
|
|
246
|
+
#10 26.61 libstdcxx-15.2.0-h934c35e_19.conda 6MB
|
|
247
|
+
#10 26.61 libstdcxx-ng-15.2.0-hdf11a46_19.conda 28kB
|
|
248
|
+
#10 26.61 libuuid-2.42-h5347b49_0.conda 40kB
|
|
249
|
+
#10 26.61 libxcrypt-4.4.36-hd590300_1.conda 100kB
|
|
250
|
+
#10 26.61 libzlib-1.3.2-h25fd6f3_2.conda 64kB
|
|
251
|
+
#10 26.61 mpi-1.0-openmpi.tar.bz2 4kB
|
|
252
|
+
#10 26.61 ncurses-6.6-hdb14827_0.conda 919kB
|
|
253
|
+
#10 26.61 numpy-2.4.3-py312h33ff503_0.conda 9MB
|
|
254
|
+
#10 26.61 ocl-icd-2.3.3-hb9d3cd8_0.conda 107kB
|
|
255
|
+
#10 26.61 ocl-icd-system-1.0.0-1.tar.bz2 4kB
|
|
256
|
+
#10 26.61 opencl-headers-2025.06.13-hecca717_0.conda 56kB
|
|
257
|
+
#10 26.61 openmm-8.3.1-py312h50c43f0_0.conda 13MB
|
|
258
|
+
#10 26.61 openmpi-4.1.6-hc5af2df_101.conda 4MB
|
|
259
|
+
#10 26.61 openssl-3.6.2-h35e630c_0.conda 3MB
|
|
260
|
+
#10 26.61 packaging-26.2-pyhc364b38_0.conda 92kB
|
|
261
|
+
#10 26.61 pdbfixer-1.12-pyhd8ed1ab_1.conda 546kB
|
|
262
|
+
#10 26.61 pip-26.1.1-pyh8b19718_0.conda 1MB
|
|
263
|
+
#10 26.61 python-3.12.10-h9e4cc4f_0_cpython.conda 31MB
|
|
264
|
+
#10 26.61 python_abi-3.12-8_cp312.conda 7kB
|
|
265
|
+
#10 26.61 readline-8.3-h853b02a_0.conda 345kB
|
|
266
|
+
#10 26.61 scipy-1.17.1-py312h54fa4ab_0.conda 17MB
|
|
267
|
+
#10 26.61 setuptools-82.0.1-pyh332efcf_0.conda 640kB
|
|
268
|
+
#10 26.61 tk-8.6.13-noxft_h366c992_103.conda 3MB
|
|
269
|
+
#10 26.61 tzdata-2025c-hc9c84f9_1.conda 119kB
|
|
270
|
+
#10 26.61 wheel-0.47.0-pyhd8ed1ab_0.conda 33kB
|
|
271
|
+
#10 26.61 zlib-1.3.2-h25fd6f3_2.conda 96kB
|
|
272
|
+
#10 26.61 zstd-1.5.7-hb78ec9c_6.conda 601kB
|
|
273
|
+
#10 26.61
|
|
274
|
+
#10 26.61 /root/.mamba/pkgs
|
|
275
|
+
#10 26.61 ───────────────────────────────────────────────────────────────
|
|
276
|
+
#10 26.61
|
|
277
|
+
#10 26.61
|
|
278
|
+
#10 26.61
|
|
279
|
+
#10 26.61 ───────────────────────────────────────────────────────────────
|
|
280
|
+
#10 26.61
|
|
281
|
+
#10 26.61 Total size: 353MB
|
|
282
|
+
#10 26.61 Cleaning tarballs..
|
|
283
|
+
#10 26.66 Cleaning packages..
|
|
284
|
+
#10 DONE 29.3s
|
|
283
285
|
|
|
284
286
|
#11 [3/7] COPY requirements.txt /tmp/requirements.txt
|
|
285
287
|
#11 DONE 0.0s
|
|
286
288
|
|
|
287
289
|
#12 [4/7] RUN pip install --no-cache-dir --extra-index-url https://download.pytorch.org/whl/cpu -r /tmp/requirements.txt
|
|
288
|
-
#12 0.
|
|
289
|
-
#12
|
|
290
|
-
#12
|
|
291
|
-
#12 1.
|
|
292
|
-
#12 1.
|
|
293
|
-
#12 1.
|
|
294
|
-
#12 1.
|
|
295
|
-
#12 1.
|
|
296
|
-
#12 1.
|
|
297
|
-
#12 1.
|
|
298
|
-
#12 1.
|
|
299
|
-
#12 1.
|
|
300
|
-
#12 1.
|
|
301
|
-
#12 1.
|
|
302
|
-
#12 1.
|
|
303
|
-
#12 1.
|
|
304
|
-
#12
|
|
305
|
-
#12
|
|
306
|
-
#12
|
|
307
|
-
#12 2.
|
|
308
|
-
#12 2.
|
|
309
|
-
#12 2.
|
|
310
|
-
#12 2.
|
|
311
|
-
#12 2.
|
|
312
|
-
#12 2.
|
|
313
|
-
#12 2.
|
|
314
|
-
#12 2.
|
|
315
|
-
#12 2.
|
|
316
|
-
#12 2.
|
|
317
|
-
#12 2.
|
|
318
|
-
#12 2.
|
|
319
|
-
#12 3.
|
|
320
|
-
#12 3.
|
|
321
|
-
#12 3.
|
|
322
|
-
#12 3.
|
|
323
|
-
#12 3.
|
|
324
|
-
#12 3.
|
|
325
|
-
#12 3.
|
|
326
|
-
#12 3.
|
|
327
|
-
#12 3.
|
|
328
|
-
#12 3.
|
|
329
|
-
#12 4.
|
|
330
|
-
#12 4.
|
|
331
|
-
#12 4.
|
|
332
|
-
#12 4.
|
|
333
|
-
#12 4.
|
|
334
|
-
#12 4.
|
|
335
|
-
#12 4.
|
|
336
|
-
#12 4.
|
|
337
|
-
#12 4.
|
|
338
|
-
#12 4.
|
|
339
|
-
#12 4.
|
|
340
|
-
#12 4.
|
|
341
|
-
#12 4.
|
|
342
|
-
#12 4.
|
|
343
|
-
#12 4.
|
|
344
|
-
#12 4.
|
|
345
|
-
#12 4.
|
|
346
|
-
#12 4.
|
|
347
|
-
#12 4.
|
|
348
|
-
#12
|
|
349
|
-
#12
|
|
350
|
-
#12
|
|
351
|
-
#12 DONE 21.
|
|
290
|
+
#12 0.575 Looking in indexes: https://pypi.org/simple, https://download.pytorch.org/whl/cpu
|
|
291
|
+
#12 0.931 Collecting ImmuneBuilder==1.2 (from -r /tmp/requirements.txt (line 1))
|
|
292
|
+
#12 0.954 Downloading ImmuneBuilder-1.2-py3-none-any.whl.metadata (7.7 kB)
|
|
293
|
+
#12 1.303 Collecting torch==2.7.0 (from -r /tmp/requirements.txt (line 2))
|
|
294
|
+
#12 1.359 Downloading torch-2.7.0%2Bcpu-cp312-cp312-manylinux_2_28_x86_64.whl.metadata (27 kB)
|
|
295
|
+
#12 1.362 Requirement already satisfied: biopython==1.85 in /opt/conda/lib/python3.12/site-packages (from -r /tmp/requirements.txt (line 3)) (1.85)
|
|
296
|
+
#12 1.363 Requirement already satisfied: openmm==8.3.1 in /opt/conda/lib/python3.12/site-packages (from -r /tmp/requirements.txt (line 4)) (8.3.1)
|
|
297
|
+
#12 1.363 Requirement already satisfied: pdbfixer==1.12.0 in /opt/conda/lib/python3.12/site-packages (from -r /tmp/requirements.txt (line 5)) (1.12.0)
|
|
298
|
+
#12 1.364 Requirement already satisfied: numpy in /opt/conda/lib/python3.12/site-packages (from ImmuneBuilder==1.2->-r /tmp/requirements.txt (line 1)) (2.4.3)
|
|
299
|
+
#12 1.365 Requirement already satisfied: scipy>=1.6 in /opt/conda/lib/python3.12/site-packages (from ImmuneBuilder==1.2->-r /tmp/requirements.txt (line 1)) (1.17.1)
|
|
300
|
+
#12 1.441 Collecting einops>=0.3 (from ImmuneBuilder==1.2->-r /tmp/requirements.txt (line 1))
|
|
301
|
+
#12 1.445 Downloading einops-0.8.2-py3-none-any.whl.metadata (13 kB)
|
|
302
|
+
#12 1.677 Collecting requests (from ImmuneBuilder==1.2->-r /tmp/requirements.txt (line 1))
|
|
303
|
+
#12 1.680 Downloading requests-2.34.0-py3-none-any.whl.metadata (4.8 kB)
|
|
304
|
+
#12 1.972 Collecting filelock (from torch==2.7.0->-r /tmp/requirements.txt (line 2))
|
|
305
|
+
#12 1.974 Downloading filelock-3.29.0-py3-none-any.whl.metadata (2.0 kB)
|
|
306
|
+
#12 2.070 Collecting typing-extensions>=4.10.0 (from torch==2.7.0->-r /tmp/requirements.txt (line 2))
|
|
307
|
+
#12 2.074 Downloading typing_extensions-4.15.0-py3-none-any.whl.metadata (3.3 kB)
|
|
308
|
+
#12 2.077 Requirement already satisfied: setuptools in /opt/conda/lib/python3.12/site-packages (from torch==2.7.0->-r /tmp/requirements.txt (line 2)) (82.0.1)
|
|
309
|
+
#12 2.238 Collecting sympy>=1.13.3 (from torch==2.7.0->-r /tmp/requirements.txt (line 2))
|
|
310
|
+
#12 2.241 Downloading sympy-1.14.0-py3-none-any.whl.metadata (12 kB)
|
|
311
|
+
#12 2.354 Collecting networkx (from torch==2.7.0->-r /tmp/requirements.txt (line 2))
|
|
312
|
+
#12 2.356 Downloading networkx-3.6.1-py3-none-any.whl.metadata (6.8 kB)
|
|
313
|
+
#12 2.462 Collecting jinja2 (from torch==2.7.0->-r /tmp/requirements.txt (line 2))
|
|
314
|
+
#12 2.467 Downloading jinja2-3.1.6-py3-none-any.whl.metadata (2.9 kB)
|
|
315
|
+
#12 2.636 Collecting fsspec (from torch==2.7.0->-r /tmp/requirements.txt (line 2))
|
|
316
|
+
#12 2.639 Downloading fsspec-2026.4.0-py3-none-any.whl.metadata (10 kB)
|
|
317
|
+
#12 2.758 Collecting mpmath<1.4,>=1.1.0 (from sympy>=1.13.3->torch==2.7.0->-r /tmp/requirements.txt (line 2))
|
|
318
|
+
#12 2.760 Downloading mpmath-1.3.0-py3-none-any.whl.metadata (8.6 kB)
|
|
319
|
+
#12 2.956 Collecting MarkupSafe>=2.0 (from jinja2->torch==2.7.0->-r /tmp/requirements.txt (line 2))
|
|
320
|
+
#12 2.960 Downloading markupsafe-3.0.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (2.7 kB)
|
|
321
|
+
#12 3.117 Collecting charset_normalizer<4,>=2 (from requests->ImmuneBuilder==1.2->-r /tmp/requirements.txt (line 1))
|
|
322
|
+
#12 3.119 Downloading charset_normalizer-3.4.7-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (40 kB)
|
|
323
|
+
#12 3.220 Collecting idna<4,>=2.5 (from requests->ImmuneBuilder==1.2->-r /tmp/requirements.txt (line 1))
|
|
324
|
+
#12 3.222 Downloading idna-3.14-py3-none-any.whl.metadata (8.0 kB)
|
|
325
|
+
#12 3.325 Collecting urllib3<3,>=1.26 (from requests->ImmuneBuilder==1.2->-r /tmp/requirements.txt (line 1))
|
|
326
|
+
#12 3.327 Downloading urllib3-2.7.0-py3-none-any.whl.metadata (6.9 kB)
|
|
327
|
+
#12 3.424 Collecting certifi>=2023.5.7 (from requests->ImmuneBuilder==1.2->-r /tmp/requirements.txt (line 1))
|
|
328
|
+
#12 3.426 Downloading certifi-2026.4.22-py3-none-any.whl.metadata (2.5 kB)
|
|
329
|
+
#12 3.497 Downloading ImmuneBuilder-1.2-py3-none-any.whl (32 kB)
|
|
330
|
+
#12 3.509 Downloading torch-2.7.0%2Bcpu-cp312-cp312-manylinux_2_28_x86_64.whl (175.8 MB)
|
|
331
|
+
#12 4.006 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 175.8/175.8 MB 358.9 MB/s 0:00:00
|
|
332
|
+
#12 4.009 Downloading einops-0.8.2-py3-none-any.whl (65 kB)
|
|
333
|
+
#12 4.014 Downloading sympy-1.14.0-py3-none-any.whl (6.3 MB)
|
|
334
|
+
#12 4.030 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 6.3/6.3 MB 470.5 MB/s 0:00:00
|
|
335
|
+
#12 4.035 Downloading mpmath-1.3.0-py3-none-any.whl (536 kB)
|
|
336
|
+
#12 4.037 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 536.2/536.2 kB 787.2 MB/s 0:00:00
|
|
337
|
+
#12 4.041 Downloading typing_extensions-4.15.0-py3-none-any.whl (44 kB)
|
|
338
|
+
#12 4.043 Downloading filelock-3.29.0-py3-none-any.whl (39 kB)
|
|
339
|
+
#12 4.046 Downloading fsspec-2026.4.0-py3-none-any.whl (203 kB)
|
|
340
|
+
#12 4.050 Downloading jinja2-3.1.6-py3-none-any.whl (134 kB)
|
|
341
|
+
#12 4.053 Downloading markupsafe-3.0.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (22 kB)
|
|
342
|
+
#12 4.056 Downloading networkx-3.6.1-py3-none-any.whl (2.1 MB)
|
|
343
|
+
#12 4.063 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.1/2.1 MB 461.0 MB/s 0:00:00
|
|
344
|
+
#12 4.066 Downloading requests-2.34.0-py3-none-any.whl (73 kB)
|
|
345
|
+
#12 4.069 Downloading charset_normalizer-3.4.7-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (216 kB)
|
|
346
|
+
#12 4.072 Downloading idna-3.14-py3-none-any.whl (72 kB)
|
|
347
|
+
#12 4.074 Downloading urllib3-2.7.0-py3-none-any.whl (131 kB)
|
|
348
|
+
#12 4.077 Downloading certifi-2026.4.22-py3-none-any.whl (135 kB)
|
|
349
|
+
#12 4.389 Installing collected packages: mpmath, urllib3, typing-extensions, sympy, networkx, MarkupSafe, idna, fsspec, filelock, einops, charset_normalizer, certifi, requests, jinja2, torch, ImmuneBuilder
|
|
350
|
+
#12 19.52
|
|
351
|
+
#12 19.53 Successfully installed ImmuneBuilder-1.2 MarkupSafe-3.0.3 certifi-2026.4.22 charset_normalizer-3.4.7 einops-0.8.2 filelock-3.29.0 fsspec-2026.4.0 idna-3.14 jinja2-3.1.6 mpmath-1.3.0 networkx-3.6.1 requests-2.34.0 sympy-1.14.0 torch-2.7.0+cpu typing-extensions-4.15.0 urllib3-2.7.0
|
|
352
|
+
#12 19.53 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager, possibly rendering your system unusable. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv. Use the --root-user-action option if you know what you are doing and want to suppress this warning.
|
|
353
|
+
#12 DONE 21.1s
|
|
352
354
|
|
|
353
355
|
#13 [5/7] RUN python -c "from ImmuneBuilder import ABodyBuilder2, NanoBodyBuilder2; ABodyBuilder2(); NanoBodyBuilder2()" && chmod -R a+rX /opt/conda/lib/python3.12/site-packages/ImmuneBuilder/trained_model
|
|
354
|
-
#13 1.
|
|
355
|
-
#13
|
|
356
|
-
#13
|
|
357
|
-
#13
|
|
358
|
-
#13
|
|
359
|
-
#13
|
|
360
|
-
#13
|
|
361
|
-
#13
|
|
362
|
-
#13 DONE
|
|
356
|
+
#13 1.741 Downloading weights for antibody_model_1...
|
|
357
|
+
#13 12.95 Downloading weights for antibody_model_2...
|
|
358
|
+
#13 29.78 Downloading weights for antibody_model_3...
|
|
359
|
+
#13 54.06 Downloading weights for antibody_model_4...
|
|
360
|
+
#13 67.82 Downloading weights for nanobody_model_1...
|
|
361
|
+
#13 152.5 Downloading weights for nanobody_model_2...
|
|
362
|
+
#13 169.8 Downloading weights for nanobody_model_3...
|
|
363
|
+
#13 470.3 Downloading weights for nanobody_model_4...
|
|
364
|
+
#13 DONE 491.9s
|
|
363
365
|
|
|
364
366
|
#14 [6/7] WORKDIR /app
|
|
365
367
|
#14 DONE 0.0s
|
|
@@ -369,29 +371,29 @@
|
|
|
369
371
|
|
|
370
372
|
#16 exporting to image
|
|
371
373
|
#16 exporting layers
|
|
372
|
-
#16 exporting layers
|
|
373
|
-
#16 writing image sha256:
|
|
374
|
-
#16 naming to containers.pl-open.science/milaboratories/pl-containers:local-image.
|
|
375
|
-
#16 DONE
|
|
374
|
+
#16 exporting layers 7.1s done
|
|
375
|
+
#16 writing image sha256:7dca6668fe43b6f6c7c51cba07313f53f493aad839e1b10c668044ab5ff8019e done
|
|
376
|
+
#16 naming to containers.pl-open.science/milaboratories/pl-containers:local-image.642e9e110544 done
|
|
377
|
+
#16 DONE 7.1s
|
|
376
378
|
[32minfo[39m: Docker image is built:
|
|
377
|
-
tag: 'containers.pl-open.science/milaboratories/pl-containers:platforma-open.milaboratories.3d-structure-prediction.software.py-docker.
|
|
379
|
+
tag: 'containers.pl-open.science/milaboratories/pl-containers:platforma-open.milaboratories.3d-structure-prediction.software.py-docker.7dca6668fe43'
|
|
378
380
|
location file: '/home/runner/work/3d-structure-prediction/3d-structure-prediction/software/dist/artifacts/py-docker/docker_x64.json'
|
|
379
381
|
[32minfo[39m: Building package archives...
|
|
380
382
|
[32minfo[39m: Building software package 'py-archive' for platform 'linux-x64'...
|
|
381
383
|
[32minfo[39m: software archive is built:
|
|
382
|
-
archive: '/home/runner/work/3d-structure-prediction/3d-structure-prediction/software/pkg-platforma-open-milaboratories.3d-structure-prediction.software-py-archive-1.0.
|
|
384
|
+
archive: '/home/runner/work/3d-structure-prediction/3d-structure-prediction/software/pkg-platforma-open-milaboratories.3d-structure-prediction.software-py-archive-1.0.5.tgz'
|
|
383
385
|
location file: '/home/runner/work/3d-structure-prediction/3d-structure-prediction/software/dist/artifacts/py-archive/archive.json'
|
|
384
386
|
[32minfo[39m: Rendering entrypoint descriptors...
|
|
385
387
|
[32minfo[39m: Writing entrypoint descriptor to '/home/runner/work/3d-structure-prediction/3d-structure-prediction/software/dist/tengo/software/immunebuilder-predict.sw.json'
|
|
386
388
|
[32minfo[39m: Publishing docker images...
|
|
387
|
-
[32minfo[39m: Publishing docker image 'containers.pl-open.science/milaboratories/pl-containers:platforma-open.milaboratories.3d-structure-prediction.software.py-docker.
|
|
389
|
+
[32minfo[39m: Publishing docker image 'containers.pl-open.science/milaboratories/pl-containers:platforma-open.milaboratories.3d-structure-prediction.software.py-docker.7dca6668fe43' using alternative tag 'quay.io/milaboratories/pl-containers:platforma-open.milaboratories.3d-structure-prediction.software.py-docker.7dca6668fe43'
|
|
388
390
|
The push refers to repository [quay.io/milaboratories/pl-containers]
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
391
|
+
1d8bceb8fbfe: Preparing
|
|
392
|
+
06948691c35f: Preparing
|
|
393
|
+
5883446e31bd: Preparing
|
|
394
|
+
83eef4ba5f2f: Preparing
|
|
395
|
+
227169a6ac10: Preparing
|
|
396
|
+
2c940d4e6f50: Preparing
|
|
395
397
|
cc176b242a57: Preparing
|
|
396
398
|
0f6514ac2db1: Preparing
|
|
397
399
|
271be3d5c5cf: Preparing
|
|
@@ -404,23 +406,23 @@ f8663d674596: Preparing
|
|
|
404
406
|
c018a1aad765: Preparing
|
|
405
407
|
438ed031efcc: Preparing
|
|
406
408
|
8e2ab394fabf: Preparing
|
|
409
|
+
2c940d4e6f50: Waiting
|
|
410
|
+
cc176b242a57: Waiting
|
|
411
|
+
0f6514ac2db1: Waiting
|
|
412
|
+
271be3d5c5cf: Waiting
|
|
413
|
+
f9926f359887: Waiting
|
|
407
414
|
5f70bf18a086: Waiting
|
|
408
415
|
e3b1db6d44c6: Waiting
|
|
409
416
|
a818d59f8c76: Waiting
|
|
410
|
-
5b434b4ddcbc: Waiting
|
|
411
417
|
f8663d674596: Waiting
|
|
412
418
|
c018a1aad765: Waiting
|
|
413
|
-
cc176b242a57: Waiting
|
|
414
|
-
438ed031efcc: Waiting
|
|
415
|
-
0f6514ac2db1: Waiting
|
|
416
419
|
8e2ab394fabf: Waiting
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
7ea7fc8a1ce8: Pushed
|
|
422
|
-
cc176b242a57: Layer already exists
|
|
420
|
+
438ed031efcc: Waiting
|
|
421
|
+
06948691c35f: Pushed
|
|
422
|
+
1d8bceb8fbfe: Pushed
|
|
423
|
+
227169a6ac10: Pushed
|
|
423
424
|
0f6514ac2db1: Layer already exists
|
|
425
|
+
cc176b242a57: Layer already exists
|
|
424
426
|
271be3d5c5cf: Layer already exists
|
|
425
427
|
f9926f359887: Layer already exists
|
|
426
428
|
5f70bf18a086: Layer already exists
|
|
@@ -430,7 +432,7 @@ f8663d674596: Layer already exists
|
|
|
430
432
|
c018a1aad765: Layer already exists
|
|
431
433
|
438ed031efcc: Layer already exists
|
|
432
434
|
8e2ab394fabf: Layer already exists
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
platforma-open.milaboratories.3d-structure-prediction.software.py-docker.
|
|
435
|
+
83eef4ba5f2f: Pushed
|
|
436
|
+
2c940d4e6f50: Pushed
|
|
437
|
+
5883446e31bd: Pushed
|
|
438
|
+
platforma-open.milaboratories.3d-structure-prediction.software.py-docker.7dca6668fe43: digest: sha256:4f2d5b7ba3a999e4d5fecccbc7f5e4aea1fb632f780b61ae50275645a1c63280 size: 4073
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
# @platforma-open/milaboratories.3d-structure-prediction.software
|
|
2
2
|
|
|
3
|
+
## 1.0.5
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 4438d9d: Clarify NanoBodyBuilder2 usage in the settings panel: relabel the light chain dropdown as optional with a tooltip, and expand the mode-info alert to note that NanoBodyBuilder2 is camelid-VHH-trained, so for conventional heavy-only inputs (e.g. human bulk IGH-only) the produced structure has VHH-biased framework geometry.
|
|
8
|
+
|
|
9
|
+
Drop the user-facing CPU and memory inputs (per-batch resources are fixed). Each prediction batch now requests 4 CPU cores and 4 GiB of memory.
|
|
10
|
+
|
|
11
|
+
Stop writing a wall-clock `prediction-date` REMARK into emitted PDBs. The timestamp made every PDB byte-different on every run, breaking the platforma backend's content-addressed caching — downstream nodes that consumed merged PDB ResourceMaps hit `CIDConflictError`. The other provenance REMARKs (immunebuilder version, torch seed, block version, numbering scheme) plus the seeded ensemble fully determine the prediction.
|
|
12
|
+
|
|
13
|
+
Make the saved Python wrapper log byte-stable for identical inputs: drop the per-line UTC timestamp prefix and remove every wall-clock duration printed by `_log` (`predictor ready in Xs`, `predicted in Xs`, `elapsed=Xs`). The exec template saves stdout via `saveStdoutStream()` into the regular file output set, so its content hash flows into the resource CID; timestamped logs would re-introduce the same `CIDConflictError` failure mode as the PDB date.
|
|
14
|
+
|
|
15
|
+
Set `stepCache: 30 * times.minute` on the `processColumn` call so per-batch outputs stay reachable for the dedup/recovery path across project re-renders, matching the convention used by mixcr-clonotyping and miltenyi-tcr-bcr-clonotyping.
|
|
16
|
+
|
|
17
|
+
Add the species selector (spec R44): `human | mouse | camelid | rat | rabbit | other`, default `human`. Species is included in the block subtitle (R56) alongside the engine. The mode-info banner now splits into two cases: when the species is `camelid` and the light chain is unset we treat it as a true VHH input (informational); for any other species combined with heavy-only input we surface a warning that NanoBodyBuilder2's framework geometry is biased away from conventional VH. A separate warning fires for ABodyBuilder2 runs on species outside the training distribution (anything other than human or mouse). Species is held in `BlockData` only — the workflow does not consume it yet, so switching species does not invalidate cached predictions. Upstream clonotyping blocks do not propagate species through PColumn specs today, so the selector is user-supplied; once upstream wires `pl7.app/species` onto the clonotype-axis domain, this block can pre-fill the default.
|
|
18
|
+
|
|
3
19
|
## 1.0.4
|
|
4
20
|
|
|
5
21
|
### Patch Changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"type":"python","platform":"linux-x64","registryURL":"https://bin.pl-open.science/","registryName":"platforma-open","remoteArtifactLocation":"software/platforma-open/milaboratories.3d-structure-prediction.software/py-archive/1.0.
|
|
1
|
+
{"type":"python","platform":"linux-x64","registryURL":"https://bin.pl-open.science/","registryName":"platforma-open","remoteArtifactLocation":"software/platforma-open/milaboratories.3d-structure-prediction.software/py-archive/1.0.5.tgz","uploadPath":"software/platforma-open/milaboratories.3d-structure-prediction.software/py-archive/1.0.5.tgz"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"type":"docker","platform":"linux-x64","remoteArtifactLocation":"containers.pl-open.science/milaboratories/pl-containers:platforma-open.milaboratories.3d-structure-prediction.software.py-docker.
|
|
1
|
+
{"type":"docker","platform":"linux-x64","remoteArtifactLocation":"containers.pl-open.science/milaboratories/pl-containers:platforma-open.milaboratories.3d-structure-prediction.software.py-docker.7dca6668fe43","entrypoint":["/usr/local/bin/_entrypoint.sh"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@platforma-open/milaboratories.3d-structure-prediction.software:immunebuilder-predict","docker":{"tag":"containers.pl-open.science/milaboratories/pl-containers:platforma-open.milaboratories.3d-structure-prediction.software.py-docker.
|
|
1
|
+
{"name":"@platforma-open/milaboratories.3d-structure-prediction.software:immunebuilder-predict","docker":{"tag":"containers.pl-open.science/milaboratories/pl-containers:platforma-open.milaboratories.3d-structure-prediction.software.py-docker.7dca6668fe43","entrypoint":["/usr/local/bin/_entrypoint.sh"],"cmd":["python","/app/run_immunebuilder.py"],"pkg":"/app"},"binary":{"type":"python","registry":"platforma-open","package":"software/platforma-open/milaboratories.3d-structure-prediction.software/py-archive/1.0.5.tgz","cmd":["python","{pkg}/run_immunebuilder.py"],"envVars":[],"runEnv":{"name":"@platforma-open/milaboratories.runenv-python-3:3.12.10-atls","type":"python","registry":"platforma-open","package":"software/platforma-open/milaboratories.runenv-python-3.12.10-atls/main/1.2.7-{os}-{arch}.tgz","python-version":"3.12.10","envVars":[],"binDir":"bin"},"toolset":"pip","dependencies":{"requirements":"requirements.txt"}}}
|
package/package.json
CHANGED
package/pkg-platforma-open-milaboratories.3d-structure-prediction.software-py-archive-1.0.5.tgz
ADDED
|
Binary file
|
package/src_python/pdb_writer.py
CHANGED
|
@@ -3,9 +3,14 @@
|
|
|
3
3
|
ImmuneBuilder writes a standard PDB. Per spec R26/R28/R29 we need to:
|
|
4
4
|
- Clamp per-atom B-factor to [0.00, 99.99] to fit PDB `%6.2f` precision.
|
|
5
5
|
- Inject a TITLE line identifying the predictor.
|
|
6
|
-
- Inject REMARK 99 PROVENANCE block (version, seed, block version
|
|
6
|
+
- Inject REMARK 99 PROVENANCE block (version, seed, block version).
|
|
7
7
|
- Inject REMARK 99 CDR* records with IMGT CDR ranges.
|
|
8
8
|
|
|
9
|
+
PDB content must be byte-stable for identical inputs so the platforma
|
|
10
|
+
backend can cache and reuse downstream results — a wall-clock prediction
|
|
11
|
+
timestamp would break every run's CID, so we omit it. The seed + version
|
|
12
|
+
fields plus the input sequences are sufficient to reproduce the prediction.
|
|
13
|
+
|
|
9
14
|
The cleanest approach is: let ImmuneBuilder write a temp PDB, then post-
|
|
10
15
|
process the lines — injecting REMARKs after TITLE and clamping B-factors on
|
|
11
16
|
ATOM/HETATM lines in one pass.
|
|
@@ -13,7 +18,6 @@ ATOM/HETATM lines in one pass.
|
|
|
13
18
|
|
|
14
19
|
from __future__ import annotations
|
|
15
20
|
|
|
16
|
-
from datetime import datetime, timezone
|
|
17
21
|
from pathlib import Path
|
|
18
22
|
|
|
19
23
|
from numbering import IMGT_CDR_RANGES, cdr_ranges_in_pdb_notation
|
|
@@ -22,10 +26,6 @@ B_FACTOR_MIN = 0.00
|
|
|
22
26
|
B_FACTOR_MAX = 99.99
|
|
23
27
|
|
|
24
28
|
|
|
25
|
-
def _iso_now() -> str:
|
|
26
|
-
return datetime.now(timezone.utc).strftime("%Y-%m-%dT%H:%M:%SZ")
|
|
27
|
-
|
|
28
|
-
|
|
29
29
|
def _clamp_b_factor(line: str) -> tuple[str, bool]:
|
|
30
30
|
"""Clamp B-factor column on ATOM/HETATM lines. Returns (new_line, clamped)."""
|
|
31
31
|
if not (line.startswith("ATOM") or line.startswith("HETATM")):
|
|
@@ -67,7 +67,6 @@ def _provenance_remark_lines(
|
|
|
67
67
|
f"REMARK 99 PROVENANCE immunebuilder-version={immunebuilder_version}",
|
|
68
68
|
f"REMARK 99 PROVENANCE torch-seed={torch_seed}",
|
|
69
69
|
f"REMARK 99 PROVENANCE block-version={block_version}",
|
|
70
|
-
f"REMARK 99 PROVENANCE prediction-date={_iso_now()}",
|
|
71
70
|
f"REMARK 99 PROVENANCE numbering-scheme={numbering_scheme}",
|
|
72
71
|
]
|
|
73
72
|
|
|
@@ -51,22 +51,21 @@ import hashlib
|
|
|
51
51
|
import json
|
|
52
52
|
import os
|
|
53
53
|
import sys
|
|
54
|
-
import time
|
|
55
54
|
import traceback
|
|
56
55
|
from dataclasses import asdict, dataclass, field
|
|
57
|
-
from datetime import datetime, timezone
|
|
58
56
|
from pathlib import Path
|
|
59
57
|
|
|
60
58
|
|
|
61
59
|
def _log(message: str) -> None:
|
|
62
60
|
"""Line-buffered log entry to stderr.
|
|
63
61
|
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
62
|
+
The exec template saves the stdout stream as a regular file output, so
|
|
63
|
+
the saved-file blob's content hash flows into the resource CID. Wall
|
|
64
|
+
clock timestamps and elapsed-time durations would make the saved log
|
|
65
|
+
byte-different on every run and break the platforma backend's
|
|
66
|
+
content-addressed caching. Keep log lines fully determined by inputs.
|
|
67
67
|
"""
|
|
68
|
-
|
|
69
|
-
print(f"[{ts}] {message}", file=sys.stderr, flush=True)
|
|
68
|
+
print(message, file=sys.stderr, flush=True)
|
|
70
69
|
|
|
71
70
|
from numbering import cdrh3_length as imgt_cdrh3_length
|
|
72
71
|
from numbering import extract_numbered_residues, vhh_hallmarks_present
|
|
@@ -407,9 +406,8 @@ def process_batch(
|
|
|
407
406
|
_set_seed(seed)
|
|
408
407
|
if rows:
|
|
409
408
|
_log(f"loading {mode} ensemble (4 models)")
|
|
410
|
-
predictor_t0 = time.time()
|
|
411
409
|
predictor = _load_predictor(mode)
|
|
412
|
-
_log(
|
|
410
|
+
_log("predictor ready")
|
|
413
411
|
else:
|
|
414
412
|
predictor = None
|
|
415
413
|
|
|
@@ -422,7 +420,6 @@ def process_batch(
|
|
|
422
420
|
fail_count = 0
|
|
423
421
|
success_count = 0
|
|
424
422
|
cache_hits = 0
|
|
425
|
-
run_t0 = time.time()
|
|
426
423
|
|
|
427
424
|
for row_idx, row in enumerate(rows):
|
|
428
425
|
key = row.get(key_col, "")
|
|
@@ -455,12 +452,10 @@ def process_batch(
|
|
|
455
452
|
antibody = prediction_cache.get(cache_key)
|
|
456
453
|
if antibody is None:
|
|
457
454
|
try:
|
|
458
|
-
pred_t0 = time.time()
|
|
459
455
|
antibody = _predict_one(predictor, mode, sanitized.vh, sanitized.vl)
|
|
460
|
-
pred_dt = time.time() - pred_t0
|
|
461
456
|
prediction_cache[cache_key] = antibody
|
|
462
457
|
if (row_idx + 1) % log_every == 0 or row_idx == 0:
|
|
463
|
-
_log(f"{prefix} predicted
|
|
458
|
+
_log(f"{prefix} predicted")
|
|
464
459
|
except Exception as exc: # noqa: BLE001
|
|
465
460
|
fail_count += 1
|
|
466
461
|
_log(f"{prefix} FAIL ImmuneBuilder {type(exc).__name__}: {exc}")
|
|
@@ -563,11 +558,10 @@ def process_batch(
|
|
|
563
558
|
with open(summary_json, "w") as f:
|
|
564
559
|
json.dump(summary, f)
|
|
565
560
|
|
|
566
|
-
elapsed = time.time() - run_t0 if rows else 0.0
|
|
567
561
|
_log(
|
|
568
562
|
f"done total={summary['totalRows']} succeeded={summary['succeeded']} "
|
|
569
563
|
f"failed={summary['failed']} confident={summary['confidentCount']} "
|
|
570
|
-
f"cache_hits={cache_hits}
|
|
564
|
+
f"cache_hits={cache_hits}"
|
|
571
565
|
)
|
|
572
566
|
if summary["byFailureReason"]:
|
|
573
567
|
for reason, n_fail in sorted(
|