github storytold/effectcraft v0.17.0
EffectCraft v0.17.0

2 hours ago

What's Changed

  • svg: bound raster surfaces and handle duplicate gradient stops by @dylanmtaylor in #2190
  • ui: bound queued synthetic input gestures by @dylanmtaylor in #2197
  • text: bound layout and variable font metadata by @dylanmtaylor in #2193
  • pdf: bound image sample and mask allocations by @dylanmtaylor in #2191
  • roto: bound frozen matte decoding and serialization by @dylanmtaylor in #2194
  • expr: bound rewrite expansion and preserve assignment targets by @dylanmtaylor in #2195
  • fix: validate the CLI path in the AE ease checker (SonarCloud jssecurity:S8705) by @dylanmtaylor in #2214
  • fix: put the NOSONAR marker on the spawnSync line (SonarCloud follow-up) by @dylanmtaylor in #2215
  • fix: document the AE checker's operator-supplied CLI path (SonarCloud) by @dylanmtaylor in #2217
  • fix: suppress the stat check's taint finding (SonarCloud) by @dylanmtaylor in #2218
  • segment: bound checkpoint tensors and pickle work by @dylanmtaylor in #2192
  • xtask: use unique temporary directories for bench tests by @dylanmtaylor in #2196
  • packaging: use [[ tests, named locals and explicit returns (SonarCloud S7688/S7679/S7682) by @dylanmtaylor in https://github.com//pull/2187
  • Use chrono instead of hand-rolled UTC conversion by @dylanmtaylor in #2023
  • CI: dev-profile gate, one test binary per crate, nextest, line tables only by @aiongg in #2235
  • Packaging: pin the signing client and appimagetool, and check their hashes by @aiongg in #1976
  • Footage, Lottie and models: resolve stored paths with craft-docpath's resolve_absolute by @aiongg in #1975
  • GPU tests: pass on Mesa lavapipe (boundary flips, skip the Reshape case that crashes it); cargo fmt by @aiongg in #2239
  • CI: shared gate workflow; FreeBSD nightly and on release by @aiongg in #2204
  • security: move the release workflow's write permission to the job level (SonarCloud githubactions:S8233) by @dylanmtaylor in #2241
  • Translations: missing strings show in English and are listed by a report, not failed by tests by @aiongg in #2244
  • ci(sonar): stop cancelling main-branch runs so coverage is published by @dylanmtaylor in #2249
  • Integration batch 1: 18 contributor PRs (CJK fonts, timeline, preview caches, interface languages) by @aiongg in #2257
  • Preview: keep rendering past the cached frames after a loop or restart by @ded-achtung in #1920
  • Layer: replace a layer's source with Alt-drag and Ctrl+Alt+/ (#991) by @ki2pixel in #1929
  • Layer: Reveal Layer Source in Project from the context menus (#1809) by @ki2pixel in #1931
  • Timeline: the disk-cache bar checks only the visible frames by @arnav-hiwarkar in #2048
  • engine: split layers above the original by default (#2083) by @gmrmad1 in #2114
  • ui: Spacebar hand pans timeline rows vertically (#2083) by @gmrmad1 in #2116
  • ui: the interface prefers the platform's UI faces, rendered text keeps the print ones by @FeiLiuEM in #1322
  • Preview: replaced browser media gets a new disk-cache key (#1253) by @vbasky in #1699
  • Text: draw Faux Bold and synthetic bold (#1676) by @HEOJUNFO in #1837
  • i18n: tab titles, workspaces and Project/Timeline column headers reach the catalogs; web language follows ?lang= and the browser by @devius in #1842
  • i18n: Georgian (ka) interface language by @devius in #1843
  • Timeline: layer switches, labels and modes act on the whole selection (#1849) by @ki2pixel in #1850
  • Text Range Selector: Start, End and Offset show as counts with Units = Index (#1814) by @SBaksa in #1865
  • fix(text): isolate CJK fallback language and cache entries by @TimotheusG in #1907
  • #1812: stills at reduced resolution are resampled once, and their layers cached by @ded-achtung in #1917
  • #1812: workers that render a layer at once share the cached buffer by @ded-achtung in #1928
  • Fix incomplete system font coverage in the Chinese interface by @yuraizmailov in #1973
  • Preview: a zoom or resolution change evicts the other sizes' frames first by @arnav-hiwarkar in #2046
  • Translations report: count repeated menu entries once; list panel strings no catalog has yet by @aiongg in #2252
  • Integration batch 2: 18 contributor PRs (SVG, engine, colour effects, effects, settings, tests) by @aiongg in #2259
  • Color effects and keys render as in After Effects (Tint, Tritone, Black & White, Exposure, Levels, Brightness & Contrast, Curves, Luma Key, Extract, 4-Color Gradient, Fill) by @vangel76 in #1872
  • Resolve SVG font-size percentages against the parent font size by @Silvertree2010 in #1901
  • engine: a keyframe on the out point no longer warns (#2084) by @gmrmad1 in #2106
  • svg: share CSS declaration blocks and cap <style> work (#2140) by @Barzabel in #2159
  • i18n(ja): AE says 縦横比, not アスペクト比 by @zitann2020 in #2166
  • Project Settings: Frame Count, Start at 0 or Start at 1 by @marcoarnulfo in #2185
  • #2094 (adv): crisp cast shadows so diffusion only softens by @ChristopherLinnett in #2211
  • Composition Settings: Resolution menu with the frame size and memory at that resolution by @marcoarnulfo in #2223
  • UI: native press-and-browse menus, with edge auto-scroll by @elZanco in #1653
  • Tests: serialise disk-cache-opening tests with the roto tests by @iannitram in #1833
  • Cryptomatte: pick the ID under a point into the Selection (effect.pickCryptomatte) by @MatejKozlovsky in #1841
  • Make Fractal Noise evolution progress linearly by @Silvertree2010 in #1846
  • xtask bench: run on Windows (scenario commands from an args file, os error 206) by @ded-achtung in #1906
  • test(render): make automatic backend checks independent of timing by @TimotheusG in #1915
  • Motion Tile's Output size works on adjustment layers (#1727) by @ded-achtung in #2003
  • 3D: add a New 3D Primitive dialog to Layer > New by @tylerjenningsw in #2050
  • engine: resolve effect match-name paths in prop_ref (#2064) by @gmrmad1 in #2108
  • Regression tests for #354, #382, #979 and #1497 by @skylartaylor in #2182
  • Integration batch 3: 19 contributor PRs (interface, engine, effects, GPU, PDF and EPS import) by @aiongg in #2260
  • effects: CC Radial Fast Blur grows its buffer so streaks pass the layer edge (#2095) by @mercuryVM in #2206
  • Cryptomatte: skip the ID colours unless Colors shows them, key the layer in place, and cache each rank's last ID colour by @MatejKozlovsky in #1604
  • Shift Channels: After Effects' Take … From menu order, so 10 is Full Off (#1797) by @Anubhav-Rai in #1810
  • Hold position between identical auto-Bézier spatial keys by @Silvertree2010 in #1847
  • EPS: Illustrator EPS files draw their artwork (#955) by @JWesCampbell in #1909
  • #1926: an edit no longer stamps every image-sequence frame for the disk cache by @ded-achtung in #1946
  • script: comp.width and comp.height resize the frame without moving the layers (#1942) by @Anubhav-Rai in #1958
  • Make Gaussian Blur and Fast Box Blur continuous at small values (#1939) by @MarekSpodBiedry in #1968
  • Fix #1708: calibrate CC Blobbylize from the AE oracle by @ki2pixel in #2027
  • Fractal Noise: resolve the Blending Mode once per layer, not per pixel by @arnav-hiwarkar in #2040
  • Save: check the file's values without reparsing it in release builds by @arnav-hiwarkar in #2041
  • GPU: devices favour memory use, so Purge and Close give video memory back by @arnav-hiwarkar in #2045
  • Light Settings: expose and preserve Environment lights by @tylerjenningsw in #2049
  • Timeline: pick layer-valued properties from a layer drop-down (#2093) by @ChristopherLinnett in #2155
  • Fix u32 overflows in PDF CID width tables and CMap ranges (#2147) by @MarekSpodBiedry in #2163
  • engine: deleting a layer clears the references to it (#2153) by @Anubhav-Rai in #2177
  • Reject malformed thumbnail text without crashing (#2135) by @Maokus in #2178
  • Reload a numbered still as its own file (#2074) by @HEOJUNFO in #2184
  • fix(ui): expose Duplicate in the Project panel context menu (#2207) by @Zaxaerith in #2221
  • Integration batch 4: 15 contributor PRs (interface, scripting, hardening, docs) by @aiongg in #2264
  • Reject non-hex characters such as '+' in Rgba::from_hex by @Silvertree2010 in #1945
  • CLI: preserve template composition names when rendering by @tylerjenningsw in #1948
  • Keep rgb_to_hsv and rgb_to_hsl hue within 0..1 by @Silvertree2010 in #1997
  • docs: escape the backtick in the twirlSelected shortcut (#2025) by @gmrmad1 in #2033
  • Return None from Mat4::inverse for non-finite input by @Silvertree2010 in #2156
  • Settings: fit translated page names in the sidebar (#2034) by @Maokus in #2171
  • End an open text edit when Deselect All runs (#2096) by @ChristopherLinnett in #2228
  • Timeline: focus newly added expressions after Alt-click (refs #1072) by @tylerjenningsw in #1327
  • Timeline: a shape group's inner Contents draws no row, as After Effects elides it by @elZanco in #1761
  • Fix scheduled ScriptUI tasks in host sessions by @dorfee in #1867
  • Reject non-finite numbers in CSS colour parsing by @Silvertree2010 in #1881
  • fix(script): interrupt blocked socket writes on close by @TimotheusG in #1891
  • Viewer: keep hidden AV layers' controls visible (#1769) by @ki2pixel in #1933
  • Settings: list the languages alphabetically by their own name by @nikolainyegaard in #2016
  • ui: scrub hot text from the slider range (#2097) by @gmrmad1 in #2110
  • PDF: repin the shared reader to craft-libs 9f75d3dc (xref, object-stream, graphics-state and JBIG2 input bounds) by @aiongg in #2265
  • Preview: an edit keeps the cached frames outside the layers it changes (#1641) by @arnav-hiwarkar in #1643

New Contributors

Full Changelog: v0.16.0...v0.17.0

Don't miss a new effectcraft release

NewReleases is sending notifications on new releases.