@gentbajko/slopify 3.25.7 → 3.25.8
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.
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
# Slopify 3.25.8
|
|
2
|
+
|
|
3
|
+
Released 17 October 2026.
|
|
4
|
+
|
|
5
|
+
- **Older projects' shorts follow a changed narration.** On a project made before Slopify kept track of each short's render, saving it again after levelling or softening the narration kept the old shorts as if they were current. Their renders now read out of date and are made again on this computer, with nothing paid.
|
|
@@ -216,8 +216,8 @@ function planEdit(base, edit, prepared, inspected, keeping) {
|
|
|
216
216
|
const fingerprints = Object.fromEntries(desired.map((row) => [row.key, row.fingerprint]));
|
|
217
217
|
const outputs = proposedManifest.outputs.map((row) => {
|
|
218
218
|
const next = desired.find((value) => value.key === row.workKey);
|
|
219
|
-
const
|
|
220
|
-
|
|
219
|
+
const before = old.find((value) => value.key === row.workKey)?.fingerprint;
|
|
220
|
+
const unchanged = next !== undefined && before === next.fingerprint && !staleRender(base, row, before);
|
|
221
221
|
const state = next === undefined
|
|
222
222
|
? row.state
|
|
223
223
|
: prepared.outputs.includes(row) || (unchanged && row.state === "ready")
|
|
@@ -248,6 +248,15 @@ function planEdit(base, edit, prepared, inspected, keeping) {
|
|
|
248
248
|
shortMoves: [...moves.entries()],
|
|
249
249
|
};
|
|
250
250
|
}
|
|
251
|
+
// A render a version from an older Slopify never recorded, made for another recipe than the
|
|
252
|
+
// one the version asks for: its narration was changed (levelled or softened) since, and saving
|
|
253
|
+
// the version again must not take the old file for the new render. Only renders: they are made
|
|
254
|
+
// on this computer and nothing paid is made from them.
|
|
255
|
+
function staleRender(base, row, before) {
|
|
256
|
+
return ((row.workKey === "export:video" || /^shorts:\d+:render$/.test(row.workKey)) &&
|
|
257
|
+
base.revision.fingerprints[row.workKey] === undefined &&
|
|
258
|
+
row.fingerprint !== before);
|
|
259
|
+
}
|
|
251
260
|
function normalizeImages(content) {
|
|
252
261
|
return {
|
|
253
262
|
...content,
|