pinokiod 7.5.31 → 7.5.32
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/kernel/bin/conda-pins.js +1 -1
- package/kernel/bin/conda.js +3 -1
- package/package.json +1 -1
- package/test/conda-bin.test.js +15 -3
package/kernel/bin/conda-pins.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
const semver = require('semver')
|
|
2
2
|
|
|
3
|
-
const CONDA_PIN_VERSION = "26.
|
|
3
|
+
const CONDA_PIN_VERSION = "26.5.2"
|
|
4
4
|
const PYTHON_PIN_VERSION = "3.10.20"
|
|
5
5
|
const PYTHON_INSTALL_SPEC = `python=${PYTHON_PIN_VERSION}`
|
|
6
6
|
const WINDOWS_PYTHON_SSL_FIX_SPEC = `${PYTHON_INSTALL_SPEC}=*_1_cpython`
|
package/kernel/bin/conda.js
CHANGED
|
@@ -205,7 +205,8 @@ report_errors: false`)
|
|
|
205
205
|
conda_versions[name] = version
|
|
206
206
|
conda_builds[name] = build
|
|
207
207
|
if (name === "conda") {
|
|
208
|
-
|
|
208
|
+
const coerced = semver.coerce(version)
|
|
209
|
+
conda_check.conda = coerced && semver.eq(coerced, CONDA_PIN_VERSION)
|
|
209
210
|
}
|
|
210
211
|
// check conda-libmamba-solver is up to date
|
|
211
212
|
// sometimes it just fails silently so need to check
|
|
@@ -308,6 +309,7 @@ report_errors: false`)
|
|
|
308
309
|
|
|
309
310
|
let condaPackages = [
|
|
310
311
|
this.kernel.platform === "win32" ? `"${WINDOWS_PYTHON_SSL_FIX_SPEC}"` : `"${PYTHON_INSTALL_SPEC}"`,
|
|
312
|
+
`"conda=${CONDA_PIN_VERSION}"`,
|
|
311
313
|
`"conda-libmamba-solver>=25.4.0"`,
|
|
312
314
|
]
|
|
313
315
|
|
package/package.json
CHANGED
package/test/conda-bin.test.js
CHANGED
|
@@ -7,6 +7,7 @@ const test = require('node:test')
|
|
|
7
7
|
|
|
8
8
|
const Conda = require('../kernel/bin/conda')
|
|
9
9
|
const {
|
|
10
|
+
CONDA_PIN_VERSION,
|
|
10
11
|
PYTHON_INSTALL_SPEC,
|
|
11
12
|
WINDOWS_PYTHON_SSL_FIX_SPEC,
|
|
12
13
|
isExpectedPythonPinned,
|
|
@@ -42,7 +43,7 @@ async function writeCondaMeta(root, name, version, build = 'py_0') {
|
|
|
42
43
|
}
|
|
43
44
|
|
|
44
45
|
async function writeHealthyCondaMeta(root, platform = 'win32') {
|
|
45
|
-
await writeCondaMeta(root, 'conda',
|
|
46
|
+
await writeCondaMeta(root, 'conda', CONDA_PIN_VERSION, 'py310')
|
|
46
47
|
await writeCondaMeta(root, 'conda-libmamba-solver', '25.4.0', 'pyhd3eb1b0_0')
|
|
47
48
|
await writeCondaMeta(root, 'python', '3.10.20', platform === 'win32' ? 'h4de0772_1_cpython' : 'cpython')
|
|
48
49
|
}
|
|
@@ -204,6 +205,7 @@ test('Conda init patches Windows OpenSSL hooks for legacy Miniconda roots', asyn
|
|
|
204
205
|
})
|
|
205
206
|
|
|
206
207
|
test('Conda pins Python 3.10.20 consistently across platforms', async () => {
|
|
208
|
+
assert.equal(CONDA_PIN_VERSION, '26.5.2')
|
|
207
209
|
assert.equal(PYTHON_INSTALL_SPEC, 'python=3.10.20')
|
|
208
210
|
assert.equal(WINDOWS_PYTHON_SSL_FIX_SPEC, 'python=3.10.20=*_1_cpython')
|
|
209
211
|
|
|
@@ -237,7 +239,7 @@ test('Conda install requests the Python 3.10.20 pin on macOS/Linux', async () =>
|
|
|
237
239
|
assert.ok(condaInstall)
|
|
238
240
|
assert.equal(
|
|
239
241
|
condaInstall.message[1],
|
|
240
|
-
'conda install -y --override-channels -c conda-forge "python=3.10.20" "conda-libmamba-solver>=25.4.0"'
|
|
242
|
+
'conda install -y --override-channels -c conda-forge "python=3.10.20" "conda=26.5.2" "conda-libmamba-solver>=25.4.0"'
|
|
241
243
|
)
|
|
242
244
|
})
|
|
243
245
|
|
|
@@ -265,7 +267,7 @@ test('Conda install keeps the Windows Python 3.10.20 SSL-fixed build pin', async
|
|
|
265
267
|
assert.ok(condaInstall)
|
|
266
268
|
assert.equal(
|
|
267
269
|
condaInstall.message[1],
|
|
268
|
-
'conda install -y --override-channels -c conda-forge "python=3.10.20=*_1_cpython" "conda-libmamba-solver>=25.4.0"'
|
|
270
|
+
'conda install -y --override-channels -c conda-forge "python=3.10.20=*_1_cpython" "conda=26.5.2" "conda-libmamba-solver>=25.4.0"'
|
|
269
271
|
)
|
|
270
272
|
})
|
|
271
273
|
|
|
@@ -339,6 +341,16 @@ test('Conda check accepts a runnable managed Windows conda executable', async ()
|
|
|
339
341
|
assert.equal(await createConda(createKernel(root, 'win32')).check(), true)
|
|
340
342
|
})
|
|
341
343
|
|
|
344
|
+
test('Conda check rejects runnable installs with the wrong Conda version', async () => {
|
|
345
|
+
const root = await fs.mkdtemp(path.join(os.tmpdir(), 'pinokio-conda-smoke-wrong-version-'))
|
|
346
|
+
await writeCondaMeta(root, 'conda', '26.3.2', 'py310')
|
|
347
|
+
await writeCondaMeta(root, 'conda-libmamba-solver', '25.4.0', 'pyhd3eb1b0_0')
|
|
348
|
+
await writeCondaMeta(root, 'python', '3.10.20', 'h4de0772_1_cpython')
|
|
349
|
+
await writeFakeManagedConda(root, 'win32')
|
|
350
|
+
|
|
351
|
+
assert.equal(await createConda(createKernel(root, 'win32')).check(), false)
|
|
352
|
+
})
|
|
353
|
+
|
|
342
354
|
test('Conda install keeps the old runtime when the replacement installer download fails', async () => {
|
|
343
355
|
const root = await fs.mkdtemp(path.join(os.tmpdir(), 'pinokio-conda-download-fails-'))
|
|
344
356
|
const miniconda = await createLegacyMiniconda(root)
|