bflatastic
7d68a74ffc
README: the app icon above the title
2026-10-22 17:57:40 +07:00
BFlat
8f02f52a44
Merge pull request #1478 from midasmatterhorn/fix/cff-endchar-width-polarity
...
pdf: endchar takes its width by operand parity like the stems and rmoveto
2026-10-16 19:05:24 +07:00
BFlat
d676de9ba4
Merge pull request #1565 from midasmatterhorn/fix/r4-smask-bpc-shift
...
pdf: a soft mask at an unsupported bit depth is ignored, not fatal
2026-10-16 19:05:12 +07:00
BFlat
b9fddd3204
Merge pull request #1640 from krinry/fix/1611-layer-styles-context-menu
...
#1611 : layer context menu has Layer Styles
2026-10-16 19:05:00 +07:00
bflatastic
9bdf05f34b
Merge main into #1478 ; keep both sides of crates/pdf/src/cff.rs
2026-10-16 19:04:43 +07:00
bflatastic
e37eec904d
Merge main into #1565 ; keep both sides of crates/pdf/src/tests_import.rs
2026-10-16 19:04:34 +07:00
bflatastic
82784f69ea
Merge main into #1640 ; keep both sides of docs/ui-parity.md
2026-10-16 19:04:25 +07:00
BFlat
901d54c55f
Merge pull request #1594 from rahal/fix/script-host-files
...
fix(web): scripts can open files in browser storage; stored footage isn't reported missing (#1593 )
2026-10-16 19:04:06 +07:00
BFlat
457b0e3c7a
Merge pull request #1647 from storytold/fix/script-access-windows-prefix
...
Scripts: the project-folder check compares Windows paths in one form
2026-10-16 19:03:55 +07:00
BFlat
5ab0420e67
Merge pull request #1394 from marcoarnulfo/fix/expression-completion-call-parens
...
Expressions: accepting a function completion inserts the call parentheses
2026-10-16 19:03:44 +07:00
BFlat
3e2793af49
Merge pull request #1318 from DWAA1660/fix/1250-mask-tangent-lengths
...
Masks: addVertex and setVertex fill in missing tangents of a loaded path (#1250 )
2026-10-16 19:03:32 +07:00
BFlat
3b58b117d1
Merge pull request #1470 from Ni-zav/fix/1361-offset-path-miter-lottie-s20261014T2309JKT
...
fix(lottie): serialize Offset Paths miter limits as animatable values
2026-10-16 19:03:21 +07:00
BFlat
16c6180d91
Merge pull request #1391 from sanyamsingh001/fix/cli-render-empty-r49
...
Honor --empty when rendering from the CLI
2026-10-16 19:03:09 +07:00
BFlat
67f3a0513c
Merge pull request #1313 from sanyamsingh001/fix/cli-input-preservation-r48
...
Preserve CLI template inputs when output is a hard link
2026-10-16 19:02:58 +07:00
BFlat
5219fa549b
Merge pull request #1321 from sanyamsingh001/fix/time-to-frames-duration-r48
...
Honor duration rounding in timeToFrames
2026-10-16 19:02:47 +07:00
BFlat
64f59c7dc7
Merge pull request #1285 from zitann2020/i18n/ja-effect-names
...
i18n(ja): the first rows of the Japanese effect catalog
2026-10-16 19:02:36 +07:00
BFlat
fa5eff7210
Merge pull request #1332 from Themolx/null-visibility-switch
...
Null layers: the Video switch hides them in the Composition viewer, as in After Effects
2026-10-16 19:02:24 +07:00
BFlat
1bf383a799
Merge pull request #1628 from marcoarnulfo/fix/speed-graph-fit-selection
...
fix(graph): speed graph Fit Selection frames the curve between the keys
2026-10-16 19:02:13 +07:00
BFlat
908c946fc1
Merge pull request #1538 from guillehr2/black-white-artifacts-1463
...
Effects: Black & White no longer turns faint colour noise in shadows into blocks
2026-10-16 19:02:00 +07:00
BFlat
88014aceb7
Merge pull request #1292 from vbasky/fix/1195-particle-mblur
...
CC Particle World: motion blur (#1195 )
2026-10-16 19:01:49 +07:00
BFlat
c6f6f9b373
Merge pull request #1511 from MatejKozlovsky/fallback-parallel
...
Export: render in parallel once the GPU stops for good
2026-10-16 19:01:38 +07:00
BFlat
5bb76bf50c
Merge pull request #1561 from AyberkA0/pen-shift-45
...
fix(viewer): Shift-click with the Pen draws a straight segment (#1544 )
2026-10-16 19:01:27 +07:00
BFlat
8e96fdd0fc
Merge pull request #1351 from DWAA1660/fix/1246-script-confirmed-flag
...
Scripts: a script can't confirm executing a file for itself (#1246 )
2026-10-16 19:01:15 +07:00
BFlat
e483a1c89c
Merge pull request #1512 from vangel76/gap-timeline-effect-label
...
#1509 : Timeline effect rows show the effect's colour label
2026-10-16 19:01:04 +07:00
BFlat
90e68eb6ab
Merge pull request #1524 from MatejKozlovsky/require-gpu-tests
...
GPU tests: say why the GPU didn't start, and fail with EFFECTCRAFT_REQUIRE_GPU=1 instead of skipping
2026-10-16 19:00:52 +07:00
BFlat
23f1def7bc
Merge pull request #1444 from wixar172/fix/stroke-miter-padding
...
Shapes: a stroke's buffer is padded by the miter limit only where it has miter joins
2026-10-16 19:00:41 +07:00
BFlat
7f46155bbd
Merge pull request #1634 from marcoarnulfo/fix/window-menu-closes-panel
...
Window menu: choosing a checked panel closes it, as in After Effects
2026-10-16 19:00:29 +07:00
BFlat
5c02fe902f
Merge pull request #1558 from AyberkA0/script-keys-closed-comp
...
fix(script): per-key methods act on keys outside the active comp (#1531 )
2026-10-16 19:00:16 +07:00
BFlat
ffab4627e4
Merge pull request #1372 from nanox333/fix/effect-drop-highlights-layer
...
Timeline: dragging an effect lights up the layer it will land on
2026-10-16 19:00:04 +07:00
BFlat
c3cb658be1
Merge pull request #1432 from marcoarnulfo/fix/render-queue-failed-exit
...
CLI: a failed render under run/exec exits 1, like render --queue
2026-10-16 18:59:52 +07:00
bflatastic and Claude Opus 5.5
a8bbcd3aa2
Scripts: the browser-storage test runs where /browser paths are absolute
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-16 18:56:18 +07:00
bflatastic and Claude Opus 5.5
4d8f88302d
Scripts: the project-folder check compares Windows paths in one form
...
normalize() canonicalizes whatever part of a path exists, which on Windows adds
the verbatim prefix to some paths and not others, so a file under a folder
that isn't on disk failed the project-folder check against an existing
project folder. The check failed closed (access refused); it now drops the
prefix from canonical drive paths so both sides compare.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-16 18:53:59 +07:00
bflatastic and Claude Opus 5.5
c0b505b41d
Masks: deleting vertices fills in missing tangents first, like add and set ( #1250 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-16 18:40:14 +07:00
bflatastic and Claude Opus 5.5
2cf08555a6
Lottie: rustfmt the Offset Paths test
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-16 18:39:25 +07:00
bflatastic and Claude Opus 5.5
1bcf1a9f61
Contributors: keep the people.toml entry that landed with #1608
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-16 18:39:16 +07:00
bflatastic and Claude Opus 5.5
0fbf4e887e
pdf: leave the atomic-write test to its own PR
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-16 18:39:10 +07:00
bflatastic and Claude Opus 5.5
3725c321a6
CLI: drop a debug print from the --empty render test
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-16 18:39:06 +07:00
bflatastic and Claude Opus 5.5
ced1857637
Templates: the hard-link check covers every Unix, not only Linux
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-16 18:39:03 +07:00
bflatastic and Claude Opus 5.5
cc138fcb90
Expressions: timeToFrames keeps whole durations whole under float error
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-16 18:38:56 +07:00
bflatastic and Claude Opus 5.5
da23c9a650
i18n(ja): the effect catalog test guards Japanese as a partly filled table
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-16 18:38:08 +07:00
BFlat
19d19a339e
Merge pull request #1482 from midasmatterhorn/fix/font-offset-overflow
...
pdf: checked_add for CFF Private DICT and Type 1 RD offsets from the file
2026-10-16 18:15:10 +07:00
BFlat
57ea7c7886
Merge pull request #1608 from marcoarnulfo/credits/marcoarnulfo
...
Contributors: add Marco Arnulfo
2026-10-16 18:14:59 +07:00
BFlat
de8f25b2eb
Merge pull request #1379 from DWAA1660/fix/1252-layer-cache-scene-deps
...
Layer cache: hash a selected layer's comp scene into its owner's key
2026-10-16 18:14:48 +07:00
bflatastic
3ec09f20d4
Merge remote-tracking branch 'origin/main' into pr-1482
...
# Conflicts:
# crates/pdf/src/cff.rs
2026-10-16 18:14:31 +07:00
bflatastic
2dcceeea90
Merge remote-tracking branch 'origin/main' into pr-1608
...
# Conflicts:
# contributors/people.toml
2026-10-16 18:14:23 +07:00
bflatastic
f85f34c089
Merge remote-tracking branch 'origin/main' into pr-1379
...
# Conflicts:
# crates/render/src/tests.rs
2026-10-16 18:14:14 +07:00
BFlat
853a1b65ec
Merge pull request #1454 from Hamza0101/fix/german-menu-terms
...
i18n (de): fix two labels that name the wrong thing, and settle six terms
2026-10-16 18:13:57 +07:00
BFlat
a3b62822be
Merge pull request #1331 from onlymoein/codex/fix-1303-benchmark-evidence
...
Reject corrupt benchmark results and incomplete regression evidence
2026-10-16 18:13:45 +07:00
BFlat
5bbd982c32
Merge pull request #1566 from midasmatterhorn/fix/r4-inline-len-overflow
...
pdf: an inline image with absurd dimensions falls back to the EI scan
2026-10-16 18:13:33 +07:00
BFlat
5ad71a24e6
Merge pull request #1294 from vbasky/fix/1068-loop-import
...
Engine: sequence Interpret Footage loop regression coverage (#1068 )
2026-10-16 18:13:22 +07:00
BFlat
c672542b73
Merge pull request #1367 from nanox333/fix/viewer-comp-settings-menu
...
Viewer: Composition Settings… in the composition's right-click menu
2026-10-16 18:13:11 +07:00
BFlat
ba384b89cd
Merge pull request #1295 from vbasky/fix/1059-demo-space
...
UI: regression test — Space previews the demo opened from the start screen (#1059 )
2026-10-16 18:12:59 +07:00
BFlat
9eec6ea705
Merge pull request #1344 from dotCooCoo/fix/find-missing-fonts-postscript-names
...
Find Missing Fonts: fonts found by their PostScript or full name are no longer listed
2026-10-16 18:12:47 +07:00
BFlat
13bcaee916
Merge pull request #1622 from dylanmtaylor/ci/shared-nix-workflow
...
ci: switch to shared nix workflow from craft-common-actions
2026-10-16 18:12:36 +07:00
BFlat
79bfc23c69
Merge pull request #1447 from midasmatterhorn/fix/glyph-name-char-boundary
...
pdf: don't slice glyph names at a non-char boundary in name_to_unicode
2026-10-16 18:12:24 +07:00
BFlat
eba2c7015e
Merge pull request #1455 from tydude001/rpm-soname-requires
...
packaging: RPM requires library sonames, so openSUSE can install it
2026-10-16 18:12:13 +07:00
BFlat
04a60d7747
Merge pull request #1311 from MarekSpodBiedry/issue-1263
...
Scripting: add the missing app.preferences.saveToDisk() so imported scripts like Duik get past startup (#1263 )
2026-10-16 18:12:02 +07:00
BFlat
470ac13463
Merge pull request #1312 from zitann2020/i18n/ja-proportional-grid
...
i18n(ja): four labels After Effects contradicts
2026-10-16 18:11:50 +07:00
BFlat
eea030b547
Merge pull request #1307 from zitann2020/i18n/ja-resolution-labels
...
i18n(ja): the resolution labels agree with the panel catalog and After Effects
2026-10-16 18:11:39 +07:00
BFlat
2265651b69
Merge pull request #1480 from IanHollow/codex/artcraft-effectcraft-metainfo-screenshot-bffb3039
...
Packaging: repair the AppStream screenshot reference
2026-10-16 18:11:27 +07:00
BFlat
1071e57dfd
Merge pull request #1520 from MatejKozlovsky/frame0-failfast
...
GPU: stop drawing a frame once the device has failed
2026-10-16 18:11:16 +07:00
BFlat
86239e0f0c
Merge pull request #1397 from onlymoein/patch-1
...
Update contributor key: moecr7 -> onlymoein
2026-10-16 18:11:04 +07:00
BFlat
49be0eb6cf
Merge pull request #1258 from pravdomil/claude/settings-sidebar-button-gap-c80466
...
Settings: the page list's rows touch, with no gap between them
2026-10-16 18:10:52 +07:00
BFlat
0953011664
Merge pull request #1549 from MatejKozlovsky/upload-cache-dead-entries
...
gpu: upload cache drops textures of freed buffers on every insert
2026-10-16 18:10:41 +07:00
BFlat
5db68bf34a
Merge pull request #1302 from vbasky/fix/1194-liquify-offset
...
Liquify: expose Distortion Mesh Offset in Effect Controls (#1194 )
2026-10-16 18:10:30 +07:00
BFlat
896710b4c9
Merge pull request #1477 from midasmatterhorn/fix/cff-seac-recursion-depth
...
pdf: bound CFF endchar seac recursion so a cyclic font can't overflow the stack
2026-10-16 18:10:19 +07:00
BFlat
eac13d1cf1
Merge pull request #948 from Themolx/solo-outside-active-range
...
Solo: exclude other layers even when the soloed layer is outside its time range
2026-10-16 18:10:06 +07:00
BFlat
da74ff378e
Merge pull request #1496 from midasmatterhorn/fix/issue-1476-color-picker-flash-close
...
ui-egui: a click that opens the colour picker no longer closes it in the same frame (#1476 )
2026-10-16 18:09:52 +07:00
BFlat
c133e09e37
Merge pull request #1371 from marcoarnulfo/fix/layer-property-shortcuts
...
Scripting: test that Layer.property() resolves AE's top-level shortcuts
2026-10-16 18:09:39 +07:00
BFlat
ab5c998c09
Merge pull request #1360 from Deeev201/fix/dmg-finderinfo
...
macOS DMG: hdiutil create -srcfolder, so the installed app passes codesign --strict
2026-10-16 18:09:27 +07:00
BFlat
a2c2a1078a
Merge pull request #1357 from iannitram/upstream-pr/cli-args-os
...
CLI: an argument that is not Unicode is a usage error, not a panic
2026-10-16 18:09:16 +07:00
BFlat
41037328a8
Merge pull request #1433 from Hamza0101/render-queue-bare-project-path
...
Render Queue: resolve a bare project filename against the working directory
2026-10-16 18:09:06 +07:00
BFlat
d6c80f9078
Merge pull request #1569 from midasmatterhorn/fix/r4-roi-crop-overflow
...
project: a hostile ROI cannot overflow the crop math
2026-10-16 18:08:55 +07:00
BFlat
d6a9ccfff7
Merge pull request #1435 from marcoarnulfo/fix/webm-metadata-frame-count
...
Import: item.metadata counts a WebM's last frame when its duration is not a whole millisecond
2026-10-16 18:08:44 +07:00
BFlat
cbdd12b27a
Merge pull request #1431 from marcoarnulfo/fix/aiff-import
...
Import: AIFF files import, including EffectCraft's own AIFF renders
2026-10-16 18:08:33 +07:00
BFlat
50fd8777bf
Merge pull request #1349 from nanox333/fix/1063-first-use-line
...
Undefined-name errors report the first use from the failing function
2026-10-16 18:08:20 +07:00
BFlat
74ed4dc423
Merge pull request #1383 from marcoarnulfo/fix/1381-generators-alpha
...
Effects: 4-Color Gradient keeps the layer's alpha with Blending Mode None (refs #1381 )
2026-10-16 18:08:08 +07:00
bflatastic and Claude Opus 5.5
604f2d0ea7
Wave Warp: the pinning test compares the middle row at matching coordinates ( #1181 )
...
The old check zipped the padded output with the unpadded source, so pixels never lined up and
it always passed.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-16 17:53:12 +07:00
bflatastic and Claude Opus 5.5
6f2f98b398
pdf: inline_len returns the checked product directly (clippy)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-16 17:48:08 +07:00
bflatastic and Claude Opus 5.5
f8b587503d
pdf: rustfmt the inline-image test
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-16 17:36:55 +07:00
bflatastic and Claude Opus 5.5
183fe652e4
pdf: an inline image just under usize::MAX bytes doesn't overflow its end offset
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-16 17:36:11 +07:00
bflatastic and Claude Opus 5.5
45eacf1b17
GPU: upload_buf keeps its own doc comment
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-16 17:33:50 +07:00
bflatastic and Claude Opus 5.5
fc38904b41
Liquify: saved projects show Distortion Mesh Offset too ( #1194 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-16 17:33:31 +07:00
BFlat
7c733f4cc9
Merge pull request #1639 from storytold/fix/relink-windows-paths
...
Footage: relinking a moved project keeps Windows separators and UNC shares
2026-10-16 17:13:59 +07:00
bflatastic and Claude Opus 5.5
86dff3ce78
Footage: relinking a moved project keeps Windows separators and UNC shares
...
project_dir rebuilt the folder with `/` and dropped a UNC share's leading
`\`, so a project opened from \server\share\Job looked for its moved
footage under the relative path server/share/Job and never found it. It now
keeps the path's own separator and its leading `/` or `\`.
The relink tests built mixed-separator paths (`…\Job/p.ecproj`) and so failed
on Windows; they now use native paths and check the separator is kept.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-16 17:13:40 +07:00
BFlat
592348b1d7
Merge pull request #1254 from vangel76/fix-1221-windows-test-paths
...
#1221 : two path-format test failures on Windows
2026-10-16 17:09:16 +07:00
BFlat
08788b8aa7
Merge pull request #1638 from storytold/docs/vector-retain-layer-sizes
...
Docs: PDF / Illustrator Composition - Retain Layer Sizes in the parity docs
2026-10-16 17:06:09 +07:00
bflatastic and Claude Opus 5.5
bafc7e620d
Docs: parity docs list Composition - Retain Layer Sizes for PDF / Illustrator ( #1536 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-16 17:05:49 +07:00
BFlat
1abaabfb8b
Merge pull request #1472 from arnav-hiwarkar/fix/1456-properties-reveal
...
fix(properties): reveal transform rows on double-click
2026-10-16 17:04:07 +07:00
bflatastic
23d56e7fea
Merge remote-tracking branch 'origin/main' into pr-1472
...
# Conflicts:
# contributors/people.toml
2026-10-16 17:03:52 +07:00
BFlat
49cffa64d7
Merge pull request #1214 from arnav-hiwarkar/perf/project-size-sort
...
perf(project): read file sizes once per sort
2026-10-16 17:03:41 +07:00
BFlat
8449853d0a
Merge pull request #1259 from arnav-hiwarkar/perf/media-browser-listing
...
perf(media-browser): reuse listings and cache filename sort keys
2026-10-16 17:03:29 +07:00
BFlat
f3148ee0b1
Merge pull request #1399 from arnav-hiwarkar/feat/media-browser-copy-source-path
...
feat(media-browser): add Copy Source Path
2026-10-16 17:03:16 +07:00
BFlat
7dc488b79d
Merge pull request #1222 from arnav-hiwarkar/perf/preset-panel-cache
...
perf(presets): reuse cached text and user preset data
2026-10-16 17:03:05 +07:00
BFlat
73d483812f
Merge pull request #1402 from arnav-hiwarkar/fix/presets-menu-automation-followup
...
fix(presets): identify copy folder action by label
2026-10-16 17:02:54 +07:00
BFlat
c044e7a872
Merge pull request #1543 from arnav-hiwarkar/fix/1536-ai-retain-layer-sizes
...
Import: Composition - Retain Layer Sizes for PDF / Illustrator files (#1536 )
2026-10-16 17:02:43 +07:00
BFlat
6616d451d2
Merge pull request #1584 from arnav-hiwarkar/fix/1552-keyframe-copy-selection
...
Copy only the selected keyframes across Position, Rotation and Scale (#1552 )
2026-10-16 17:02:32 +07:00
BFlat
88a9446ed9
Merge pull request #1412 from arnav-hiwarkar/fix/1120-echo-gpu-host
...
fix(render): preserve preceding effects in GPU Echo
2026-10-16 17:02:19 +07:00
bflatastic and Claude Opus 5.5
0e2f43b824
perf(project): keep the Size cell as After Effects shows it
...
Drop the byte-count tooltip, the "—" marker and their strings and UI test,
and the bench wrapper script: they are outside this PR's scope and After
Effects leaves the Size cell blank when the size is unknown. The size sort
and its tests are unchanged.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-16 16:42:34 +07:00
BFlat
4b58cd2eb7
Merge pull request #676 from storytold/claude/community-pr-review-lwtrlr
...
Issue fixes: drag render pile-up, CC Smear/Tiler past text bounds, relative footage paths, GIF playback test
2026-10-11 07:16:00 +07:00