Skip to content

Latest commit

 

History

History
2165 lines (923 loc) · 64.3 KB

CHANGELOG.md

File metadata and controls

2165 lines (923 loc) · 64.3 KB

Changelog

All notable changes to this project will be documented in this file. See standard-version for commit guidelines.

9.0.0 (2023-08-23)

⚠ BREAKING CHANGES

  • BIG REWRITE, see PR #95
  • Drop support for Node 12

Features

  • add option to skip statistics generation, for improved performance (3d1582b)
  • BIG REWRITE (43b54da), closes #95
  • Drop support for Node 12 (91d7e5b)
  • export applyKeyframeContent() function (a288a9e)

Bug Fixes

  • add option.dontThrowOnError (f364536)
  • better explanation of what is wrong in reference strings & add unit test "validateReferenceString" (f3028ce)
  • improve performance in updateNextEvents (956aa63)
  • make the timeline-object.content property generic (a13df02)
  • refactor: split functionality into separate functions. (0782b14)
  • remove statistics unresolvedCount, rename and add a few other properties (ab430ae)
  • rename validateIdString to validateReferenceString (2180e78)
  • support generic content in functions (ae6ee49)

8.3.1 (2022-11-01)

Bug Fixes

  • instances capped to zero duration get stuck in state (#91) (ec4ecd4)

8.3.0 (2022-10-05)

Features

  • add validateIdString() function, used to ensure that id, classes and layers doesn't contain any invalid characters (ecd0ae7)

Bug Fixes

  • validate ids, classes and layer string, to avoid possible crashes when resolving the timeline (e7b9114)

8.2.8 (2022-06-13)

Bug Fixes

  • bug which caused unit test "too many start events" to fail (7412021)
  • change all ".end || Infinity" to ".end ?? Infinity" to take into account that .end might be 0 (which means that it ends at 0, not Infinity) (218b7c5)
  • don't set resolvedStates.state prematurely, instead do that after having walked through all object-instances (bd1f20e)
  • sort times before verifying (296752e)

8.2.7 (2022-03-30)

8.2.6 (2022-03-30)

Bug Fixes

  • bug which caused unit test "too many start events" to fail (7412021)
  • change all ".end || Infinity" to ".end ?? Infinity" to take into account that .end might be 0 (which means that it ends at 0, not Infinity) (218b7c5)

8.2.5 (2022-01-26)

8.2.4 (2022-01-26)

Bug Fixes

  • don't set resolvedStates.state prematurely, instead do that after having walked through all object-instances (bd1f20e)

8.2.3 (2022-01-04)

Bug Fixes

  • replace some _.each with for of loops, to conform with convention (9716f86)

8.2.2 (2021-10-22)

Bug Fixes

  • cap children inside of their parents (7de10d7)
  • remove onlyForTime in resolveStates, as it causes issues in some situations (adbe2e6)
  • remove redundant zero-length instances of children (2323d88)
  • when a parent is affected, also do a check of the children (cf05ede)

8.2.1 (2021-04-26)

Bug Fixes

  • bug when using the cache, and only changing the content of a timeline-object (#78) (c5ac319)

8.2.0 (2021-02-04)

Features

  • introduce new property: "seamless" (8bd91e5)
  • use @sofie-automation/code-standard-preset (6f22c15)

Bug Fixes

  • bug fix for when having multiple enable-expressions (5f4ebf6)
  • bug fix: merge instances better for when using .seamless property. (a183f82)
  • refine tests (35d6199)

8.1.2 (2020-10-15)

Bug Fixes

  • rewrite capInstances(), to fix issues with instances being split across multiple parent instances (cdb5599)
  • rewrite of resolveStates() to handle keyframes inside split objects (f412a9a)

8.1.1 (2020-09-11)

Bug Fixes

  • in child objects; when end is a constant, it should refer to parent (independently of what start is set to be) (af66705)

8.1.0 (2020-08-14)

Features

  • support for zero-length and negative instances (0b340db)
  • support for zero-length and negative instances (bc03699)

8.0.0 (2020-06-27)

⚠ BREAKING CHANGES

  • drop node 8 support

Features

  • drop node 8 support (98f42ca)
  • ci: prerelease flow & optional audit skip [skip ci] (a7a4c20)
  • add check in resolveAllStates, optimizing when no changes are detected at all. (6d02009)
  • be able to provide enable.instances directly in the timeline. (0bd3149)
  • partial resolve of timeline (eab68aa)

Bug Fixes

  • don't hash content, it takes too much time (ac35795)
  • optimize cleanInstances for most common situations (8b9e0b5)
  • performance: cache result of interpretExpression (ea572cb)
  • performance: move applyParendInstances (bb1e952)
  • performance: refactor _.uniq + _.reduce + _.compact (d6d7eb5)
  • performance: replace _.each for for-loops where it's most used (5d1df6a)
  • performance: use typeof instead of _.isObject (14bf545)
  • reworked instances to instead use arrays directly on the .enable property (ccc8452)

7.3.1 (2019-12-02)

Bug Fixes

7.3.0 (2019-11-01)

Features

  • update ci to run for node 8,10,12 (7a182c6)

Bug Fixes

  • be able to reference other objects in own class or layer (3996a80)
  • disregard event instances with 0 duration (678bd19)
  • keyframe class from chained group (6164a6e)
  • simplify expressions to allow for using arithmetics inside of parent groups (91a5a64)

7.2.4 (2019-09-03)

Bug Fixes

  • keyframe class from chained group (7f5c95d)

7.2.3 (2019-08-13)

Bug Fixes

  • bug fix: reference duration (de7b86c)

7.2.2 (2019-08-09)

Bug Fixes

  • Handle keyframes that begin or end outside of their parents (1eb1f50)
  • lookupExpression should return [], not null, when a reference yields zero results (0d6586d)
  • make child in group-behaviour constistent... (95af8c3)
  • while: 1 and while: '1' should return same result (7ca9452)

7.2.1 (2019-07-30)

Bug Fixes

  • update dependencies, removed unused "marked" dependency (2098912)

7.2.0 (2019-07-16)

Bug Fixes

  • typo (f8901b3)
  • update dependencies, due to security issues upstream (28aa657)

Features

  • add typings for originalStart & originalEnd (1f7af78)
  • support for having negative start times in groups (9a61048)
  • support for originalStart & originalEnd in instances (52b2a9b)

7.1.2 (2019-05-21)

Bug Fixes

  • some expressions failing to be converted to objects (6921801)

7.1.1 (2019-05-21)

Bug Fixes

  • make instance ids unique (3376662)
  • missing type in getState (4f86b1b)

7.1.0 (2019-05-18)

Bug Fixes

  • carefully merging of caps of instances (4e0dd91)
  • issue with non-unique instance ids (f594aa4)

Features

  • implement resolveStates (76a4ec6)
  • Implement support for negations ("!") together with parentheses (efe79a6)

7.0.2 (2019-04-07)

7.0.1 (2019-04-07)

Bug Fixes

  • reset ids on start of resolving (b65585a)

7.0.0 (2019-04-06)

Bug Fixes

  • minor bugs in expressions (bcfe44f)
  • tests and ts3 lint issues (01a537e)
  • use ts 3 and update deps (0731cba)

Features

  • add reference breadcrumbs, continued work on capping-in-parent etc.. (af4380d)
  • continued implementation (296729c)
  • continued implementation, all (non-deprecated) tests are now ok (3f90008)
  • continued implementation, validation, (f95b4ce)
  • implement cap-in-parent, refactoring, rename trigger => enable (ce656a9)
  • implement classes (6d1b2e0)
  • implement getState & getNextEvents (c04a269)
  • implement getState, groups & repeating trigger (f1753e1)
  • implement keyframes (80513ea)
  • mixed expressions, initial implementation. Complete rehaul (WIP) (923b2e2)

6.0.3 (2018-11-07)

Bug Fixes

  • Create TimelineTrigger interface for trigger property (a497393)

6.0.2 (2018-10-30)

Bug Fixes

  • Allow string llayer ids in logical triggers (cedd170)

6.0.1 (2018-09-13)

5.0.6 (2018-09-13)

Bug Fixes

  • TimelineObject duration can be a string (edf3ae3)

5.0.5 (2018-09-13)

Bug Fixes

  • cap startTime within parent group (4e913ba)
  • changed duration interpretation to support Infinite duration properly (489fc4e)
  • duration can be undefined (bc278d6)

5.0.4 (2018-09-04)

Bug Fixes

5.0.3 (2018-09-04)

Bug Fixes

  • when possible, save outerDuration of group before resolving it's children (f0785a2)

5.0.2 (2018-08-29)

Bug Fixes

  • bug when capping endTime several parents up (25e600d)

5.0.1 (2018-08-17)

Bug Fixes

5.0.0 (2018-08-17)

Features

  • Major refactoring, switched out the iterative resolving for a nice recursive one (13cbace)

BREAKING CHANGES

  • removed circular, iterative resolving. Might cause unexpected issues

4.0.2 (2018-08-05)

Bug Fixes

  • added referenceObjectIds, to use as trace in error messages & to determine which object is dependant of which (e50ec99)
  • inefficient iteration led to terrible performance in situations with many relative objects. Rehauled the whole resolve iteration loop (3a2b847)

4.0.1 (2018-08-03)

Bug Fixes

  • quick patch for when resolved property missing (66f1adf)

4.0.0 (2018-07-30)

Bug Fixes

  • bugfix for passing test "relative durations object order" (31a886f)
  • refactored the tests, making them all run with the data reversed as well (e823243)
  • refactoring: object resolving iteration loop, so the same function is used inside groups as well as on root (36fbb58)
  • test incompatible with reversed data (8fceadc)

Features

  • Add test to check order of objects in the source data has no affect on relative duration resolving (2551789)
  • added ability to reference objects between groups (80bbb4a)
  • added test for cross-dependencies between children (775051c)

BREAKING CHANGES

  • when referring to an object within a group, now you get the absolute time, not the local time within that group

3.0.0 (2018-07-27)

Bug Fixes

  • bugfix for passing test "relative durations object order" (31a886f)
  • refactored the tests, making them all run with the data reversed as well (e823243)
  • refactoring: object resolving iteration loop, so the same function is used inside groups as well as on root (36fbb58)
  • test incompatible with reversed data (8fceadc)

Features

  • Add test to check order of objects in the source data has no affect on relative duration resolving (2551789)
  • added ability to reference objects between groups (80bbb4a)
  • added test for cross-dependencies between children (775051c)

BREAKING CHANGES

  • when referring to an object within a group, now you get the absolute time, not the local time within that group

2.2.0 (2018-07-05)

Features

  • implemented support for dynamic durations (2b5c943)

2.1.0 (2018-07-02)

Bug Fixes

  • fix for failing test "keyframe in a grouped object" (f80ed3d)
  • fix for failing test test: "test group with duration and infinite child" (79d2b0e)
  • updated test (2207624)

Features

  • Add test for duration set only on group, not child (d22d1ec)

2.0.3 (2018-06-15)

2.0.2 (2018-06-14)

2.0.1 (2018-06-09)

2.0.0 (2018-06-09)

  • Empty commit, to trigger breaking version bump (9b2426e)

BREAKING CHANGES

  • some logic might have changed during the past months

1.0.317 (2018-06-06)

Bug Fixes

  • set skip ci to prevent looping on release (0589e6f)

1.0.316 (2018-06-06)

1.0.315 (2018-06-06)

1.0.314 (2018-06-06)

1.0.313 (2018-06-06)

1.0.312 (2018-06-06)

1.0.311 (2018-06-06)

1.0.310 (2018-06-06)

1.0.309 (2018-06-06)

1.0.308 (2018-06-06)

1.0.307 (2018-06-06)

1.0.306 (2018-06-06)

1.0.305 (2018-06-06)

1.0.304 (2018-06-06)

1.0.303 (2018-06-06)

1.0.302 (2018-06-06)

1.0.301 (2018-06-06)

1.0.300 (2018-06-06)

1.0.299 (2018-06-06)

1.0.298 (2018-06-06)

1.0.297 (2018-06-06)

1.0.296 (2018-06-06)

1.0.295 (2018-06-06)

1.0.294 (2018-06-06)

1.0.293 (2018-06-06)

1.0.292 (2018-06-06)

1.0.291 (2018-06-06)

1.0.290 (2018-06-06)

1.0.289 (2018-06-06)

1.0.288 (2018-06-06)

1.0.287 (2018-06-06)

1.0.286 (2018-06-06)

1.0.285 (2018-06-06)

1.0.284 (2018-06-06)

1.0.283 (2018-06-06)

1.0.282 (2018-06-06)

1.0.281 (2018-06-06)

1.0.280 (2018-06-06)

1.0.279 (2018-06-06)

1.0.278 (2018-06-06)

1.0.277 (2018-06-06)

1.0.276 (2018-06-06)

1.0.275 (2018-06-06)

1.0.274 (2018-06-06)

1.0.273 (2018-06-06)

1.0.272 (2018-06-06)

1.0.271 (2018-06-06)

1.0.270 (2018-06-06)

1.0.269 (2018-06-06)

1.0.268 (2018-06-06)

1.0.267 (2018-06-06)

1.0.266 (2018-06-06)

1.0.265 (2018-06-06)

1.0.264 (2018-06-06)

1.0.263 (2018-06-06)

1.0.262 (2018-06-06)

1.0.261 (2018-06-06)

1.0.260 (2018-06-06)

1.0.259 (2018-06-06)

1.0.258 (2018-06-06)

1.0.257 (2018-06-06)

1.0.256 (2018-06-06)

1.0.255 (2018-06-06)

1.0.254 (2018-06-06)

1.0.253 (2018-06-06)

1.0.252 (2018-06-06)

1.0.251 (2018-06-06)

1.0.250 (2018-06-06)

1.0.249 (2018-06-06)

1.0.248 (2018-06-06)

1.0.247 (2018-06-06)

1.0.246 (2018-06-06)

1.0.245 (2018-06-06)

1.0.244 (2018-06-06)

1.0.243 (2018-06-06)

1.0.242 (2018-06-06)

1.0.241 (2018-06-06)

1.0.240 (2018-06-06)

1.0.239 (2018-06-06)

1.0.238 (2018-06-06)

1.0.237 (2018-06-06)

1.0.236 (2018-06-06)

1.0.235 (2018-06-06)

1.0.234 (2018-06-06)

1.0.233 (2018-06-06)

1.0.232 (2018-06-06)

1.0.231 (2018-06-06)

1.0.230 (2018-06-06)

1.0.229 (2018-06-06)

1.0.228 (2018-06-06)

1.0.227 (2018-06-06)

1.0.226 (2018-06-06)

1.0.225 (2018-06-06)

1.0.224 (2018-06-06)

1.0.223 (2018-06-06)

1.0.222 (2018-06-06)

1.0.221 (2018-06-06)

1.0.220 (2018-06-06)

1.0.219 (2018-06-06)

1.0.218 (2018-06-06)

1.0.217 (2018-06-06)

1.0.216 (2018-06-06)

1.0.215 (2018-06-06)

1.0.214 (2018-06-06)

1.0.213 (2018-06-06)

1.0.212 (2018-06-06)

1.0.211 (2018-06-06)

1.0.210 (2018-06-06)

1.0.209 (2018-06-06)

1.0.208 (2018-06-06)

1.0.207 (2018-06-06)

1.0.206 (2018-06-06)

1.0.205 (2018-06-06)

1.0.204 (2018-06-06)

1.0.203 (2018-06-06)

1.0.202 (2018-06-06)

1.0.201 (2018-06-06)

1.0.200 (2018-06-06)

1.0.199 (2018-06-06)

1.0.198 (2018-06-06)

1.0.197 (2018-06-06)

1.0.196 (2018-06-06)

1.0.195 (2018-06-06)

1.0.194 (2018-06-06)

1.0.193 (2018-06-06)

1.0.192 (2018-06-06)

1.0.191 (2018-06-06)

1.0.190 (2018-06-06)

1.0.189 (2018-06-06)

1.0.188 (2018-06-06)

1.0.187 (2018-06-06)

1.0.186 (2018-06-06)

1.0.185 (2018-06-06)

1.0.184 (2018-06-06)

1.0.183 (2018-06-06)

1.0.182 (2018-06-06)

1.0.181 (2018-06-06)

1.0.180 (2018-06-06)

1.0.179 (2018-06-06)

1.0.178 (2018-06-06)

1.0.177 (2018-06-06)

1.0.176 (2018-06-06)

1.0.175 (2018-06-06)

1.0.174 (2018-06-06)

1.0.173 (2018-06-06)

1.0.172 (2018-06-06)

1.0.171 (2018-06-06)

1.0.170 (2018-06-06)

1.0.169 (2018-06-06)

1.0.168 (2018-06-06)

1.0.167 (2018-06-06)

1.0.166 (2018-06-06)

1.0.165 (2018-06-06)

1.0.164 (2018-06-06)

1.0.163 (2018-06-05)

1.0.162 (2018-06-05)

1.0.161 (2018-06-05)

1.0.160 (2018-06-05)

1.0.159 (2018-06-05)

1.0.158 (2018-06-05)

1.0.157 (2018-06-05)

1.0.156 (2018-06-05)

1.0.155 (2018-06-05)

1.0.154 (2018-06-05)

1.0.153 (2018-06-05)

1.0.152 (2018-06-05)

1.0.151 (2018-06-05)

1.0.150 (2018-06-05)

1.0.149 (2018-06-05)

1.0.148 (2018-06-05)

1.0.147 (2018-06-05)

1.0.146 (2018-06-05)

1.0.145 (2018-06-05)

1.0.144 (2018-06-05)

1.0.143 (2018-06-05)

1.0.142 (2018-06-05)

1.0.141 (2018-06-05)

1.0.140 (2018-06-05)

1.0.139 (2018-06-05)

1.0.138 (2018-06-05)

1.0.137 (2018-06-05)

1.0.136 (2018-06-05)

1.0.135 (2018-06-05)

1.0.134 (2018-06-05)

1.0.133 (2018-06-05)

1.0.132 (2018-06-05)

1.0.131 (2018-06-05)

1.0.130 (2018-06-05)

1.0.129 (2018-06-05)

1.0.128 (2018-06-05)

1.0.127 (2018-06-05)

1.0.126 (2018-06-05)

1.0.125 (2018-06-05)

1.0.124 (2018-06-05)

1.0.123 (2018-06-05)

1.0.122 (2018-06-05)

1.0.121 (2018-06-05)

1.0.120 (2018-06-05)

1.0.119 (2018-06-05)

1.0.118 (2018-06-05)

1.0.117 (2018-06-05)

1.0.116 (2018-06-05)

1.0.115 (2018-06-05)

1.0.114 (2018-06-05)

1.0.113 (2018-06-05)

1.0.112 (2018-06-05)

1.0.111 (2018-06-05)

1.0.110 (2018-06-05)

1.0.109 (2018-06-05)

1.0.108 (2018-06-05)

1.0.107 (2018-06-05)

1.0.106 (2018-06-05)

1.0.105 (2018-06-05)

1.0.104 (2018-06-05)

1.0.103 (2018-06-05)

1.0.102 (2018-06-05)

1.0.101 (2018-06-05)

1.0.100 (2018-06-05)

1.0.99 (2018-06-05)

1.0.98 (2018-06-05)

1.0.97 (2018-06-05)

1.0.96 (2018-06-05)

1.0.95 (2018-06-05)

1.0.94 (2018-06-05)

1.0.93 (2018-06-05)

1.0.92 (2018-06-05)

1.0.91 (2018-06-05)

1.0.90 (2018-06-05)

1.0.89 (2018-06-05)

1.0.88 (2018-06-05)

1.0.87 (2018-06-05)

1.0.86 (2018-06-05)

1.0.85 (2018-06-05)

1.0.84 (2018-06-05)

1.0.83 (2018-06-05)

1.0.82 (2018-06-05)

1.0.81 (2018-06-05)

1.0.80 (2018-06-05)

1.0.79 (2018-06-05)

1.0.78 (2018-06-05)

1.0.77 (2018-06-05)

1.0.76 (2018-06-05)

1.0.75 (2018-06-05)

1.0.74 (2018-06-05)

1.0.73 (2018-06-05)

1.0.72 (2018-06-05)

1.0.71 (2018-06-05)

1.0.70 (2018-06-05)

1.0.69 (2018-06-05)

1.0.68 (2018-06-05)

1.0.67 (2018-06-05)

1.0.66 (2018-06-05)

1.0.65 (2018-06-05)

1.0.64 (2018-06-05)

1.0.63 (2018-06-05)

1.0.62 (2018-06-05)

1.0.61 (2018-06-05)

1.0.60 (2018-06-05)

1.0.59 (2018-06-05)

1.0.58 (2018-06-05)

1.0.57 (2018-06-05)

1.0.56 (2018-06-05)

1.0.55 (2018-06-05)

1.0.54 (2018-06-05)

1.0.53 (2018-06-05)

1.0.52 (2018-06-05)

1.0.51 (2018-06-05)

1.0.50 (2018-06-05)

1.0.49 (2018-06-05)

1.0.48 (2018-06-05)

1.0.47 (2018-06-05)

1.0.46 (2018-06-05)

1.0.45 (2018-06-05)

1.0.44 (2018-06-05)

1.0.43 (2018-06-05)

1.0.42 (2018-06-05)

1.0.41 (2018-06-05)

1.0.40 (2018-06-05)

1.0.39 (2018-06-05)

1.0.38 (2018-06-05)

1.0.37 (2018-06-05)

1.0.36 (2018-06-05)

1.0.35 (2018-06-05)

1.0.34 (2018-06-05)

1.0.33 (2018-06-05)

1.0.32 (2018-06-05)

1.0.31 (2018-06-05)

1.0.30 (2018-06-05)

1.0.29 (2018-06-05)

1.0.28 (2018-06-05)

1.0.27 (2018-06-05)

1.0.26 (2018-06-05)

1.0.25 (2018-06-05)

1.0.24 (2018-06-05)

1.0.23 (2018-06-05)

1.0.22 (2018-06-05)

1.0.21 (2018-06-05)

1.0.20 (2018-06-05)

1.0.19 (2018-06-05)

1.0.18 (2018-06-05)

1.0.17 (2018-06-05)

1.0.16 (2018-06-05)

1.0.15 (2018-06-05)

1.0.14 (2018-06-05)

1.0.13 (2018-06-05)

1.0.12 (2018-06-05)

1.0.11 (2018-06-05)

1.0.10 (2018-06-05)

1.0.9 (2018-06-05)

1.0.8 (2018-06-05)

1.0.7 (2018-06-05)

1.0.6 (2018-06-05)

1.0.5 (2018-06-05)

1.0.4 (2018-06-05)

1.0.3 (2018-06-05)

1.0.2 (2018-06-05)

1.0.1 (2018-06-05)

1.0.0 (2018-06-05)

Bug Fixes

  • add basic circleci config (0ce739b)
  • add circleCI badge (4b508ff)
  • add ssh fingerprint (35cf4e0)
  • adding --detectOpenHandles to tests (7d5b056)
  • seemingly a syntax error (d32fbf8)
  • set correct company name (205dbd7)
  • unify across libs (eeebfcb)
  • update configs (1ac3bd9)
  • update ignores (a70866e)
  • update to circleCI enabled package.json (3a9389e)
  • update typescript with better types and more (6607bad)

Features

  • add .github foler (5d793b9)
  • Implemented into typescript (70b6760)
  • linted the whole codebase to comply with tslint, added support for repeating groups within repeating groups, added a bunch of tests (4189cc1)

BREAKING CHANGES

  • New API, exports are done differently