@mailwoman/neural-weights-fr-fr 7.6.0 → 7.7.0
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/package.json +2 -2
- package/scripts/link-dev-weights.ts +13 -5
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mailwoman/neural-weights-fr-fr",
|
|
3
|
-
"version": "7.
|
|
3
|
+
"version": "7.7.0",
|
|
4
4
|
"description": "Mailwoman neural-classifier weights for locale 'fr-fr'. Data-only overlay — shares the base model.onnx + tokenizer.model from @mailwoman/neural-weights-en-us (they are byte-identical); ships only the fr-specific data siblings. Loaded by @mailwoman/neural at runtime.",
|
|
5
5
|
"license": "AGPL-3.0-only OR LicenseRef-Commercial",
|
|
6
6
|
"repository": {
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
"access": "public"
|
|
28
28
|
},
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@mailwoman/neural-weights-en-us": "7.
|
|
30
|
+
"@mailwoman/neural-weights-en-us": "7.7.0"
|
|
31
31
|
},
|
|
32
32
|
"mailwoman": {
|
|
33
33
|
"baseWeights": "@mailwoman/neural-weights-en-us"
|
|
@@ -29,20 +29,28 @@
|
|
|
29
29
|
*/
|
|
30
30
|
|
|
31
31
|
import { spawnSync } from "node:child_process"
|
|
32
|
-
import { existsSync, lstatSync, symlinkSync, unlinkSync } from "node:fs"
|
|
32
|
+
import { existsSync, lstatSync, renameSync, symlinkSync, unlinkSync } from "node:fs"
|
|
33
33
|
import { resolve } from "node:path"
|
|
34
34
|
|
|
35
35
|
import { dataRootPath, repoRootPath } from "@mailwoman/core/utils"
|
|
36
36
|
|
|
37
37
|
const PKG_DIR = repoRootPath("neural-weights-fr-fr")
|
|
38
38
|
|
|
39
|
-
/**
|
|
39
|
+
/**
|
|
40
|
+
* Replicate `ln -sf SRC DEST` ATOMICALLY: symlink under a temp name, then rename over the destination. A plain
|
|
41
|
+
* unlink-then-symlink leaves a no-file window that concurrent vitest workers (weights.test.ts + every other suite
|
|
42
|
+
* resolving weights on the lab runners) can hit mid-suite — bit CI on 2026-07-24 (v1-parse-gate: "missing model files"
|
|
43
|
+
* while the materialize step had verifiably succeeded). rename(2) replaces the destination atomically.
|
|
44
|
+
*/
|
|
40
45
|
function linkForce(src: string, dest: string): void {
|
|
41
|
-
|
|
42
|
-
|
|
46
|
+
const tmp = `${dest}.tmp-link`
|
|
47
|
+
|
|
48
|
+
if (existsSync(tmp)) {
|
|
49
|
+
unlinkSync(tmp)
|
|
43
50
|
}
|
|
44
51
|
|
|
45
|
-
symlinkSync(src,
|
|
52
|
+
symlinkSync(src, tmp)
|
|
53
|
+
renameSync(tmp, dest)
|
|
46
54
|
}
|
|
47
55
|
|
|
48
56
|
/** Remove a leftover local file/symlink so the #1179 base-weights fallback engages. */
|