Change Log
All notable changes to this project will be documented in this file.
See Conventional Commits for commit guidelines.
2.0.0-beta.24 (2025-04-27)
Features:
- template-compiler: add support for multiple .class values (#2146) (3b7513a)
- dom: ability to toggle $au and $aurelia (#2130) (7e1057b)
Bug Fixes:
- ref-binding: update value when key expression changes (#2108) (9636d86)
Refactorings:
- *: remove controller host (#2128) (402c746)
2.0.0-beta.23 (2025-01-26)
Features:
- *: ported noView and inlineView decorators (#2094) (bdd1284)
- *: ported noView and inlineView decorators (bdd1284)
- tooling: type-checking for templates - Phase1 (#2066) (ebc1d0c)
Bug Fixes:
- au-slot: slotchange callback does not rely on deco (#2105) (4cbef73)
- rendering: render surrogate bindings before content bindings (#2104) (5df4a6c)
- computed-observer: ensure notifying changes (#2103) (b87cc11)
- repeat: change to key-based scope caching in keyed mode (#2088) (c24eaaa)
- repeat: fix scope reuse issue with keyless unordered duplicate objects (8f2999e)
Refactorings:
- repeat: cleanup scopeMap stuff (8f2999e)
- repeat: still need to use caching for assignment (8f2999e)
- repeat: force scope caching in keyed mode (8f2999e)
2.0.0-beta.22 (2024-09-30)
Features:
- runtime-html: reuse host and hostController (#2043) (0fe216e)
- bindable: support aggregated callback (#2033) (7cdf3f0)
Bug Fixes:
- watch: initialise only once (#2056) (7ae2cfa)
- ast: correct null/undefined handling (#2055) (b96d7c4)
- repeat: set contextual properties for sort ops (9834c40)
- radio: handle repeated start/stop correctly (#2031) (430b8f0)
Performance Improvements:
Refactorings:
- ast: separate & allow binding behavior and value converter evaluation to be optional (#2058) (7d7e21b)
- repeat: get key from oldViews (9834c40)
- repeat: overhaul scope / key caching (9834c40)
- repeat: bust key cache (9834c40)
- repeat: fix newKey thing (9834c40)
- repeat: inefficient but working thing (9834c40)
- repeat: fix update issue (9834c40)
- repeat: more bugfixing / cleanup (9834c40)
- repeat: cleanup unnecessary stuff (9834c40)
- parser: no longer provide default to exp parser interface (#2024) (b55cbcd)
2.0.0-beta.21 (2024-08-08)
Features:
- ast: Increment/decrement assign (#2004) (4cfc0a3)
Bug Fixes:
- *: bindable definitions (#2010) (d81b471)
- *: bindable defnitions (d81b471)
Refactorings:
- task-queue: remove 'reusable' param (#2008) (54f43e8)
- task-queue: remove 'reusable' param (54f43e8)
2.0.0-beta.20 (2024-07-07)
Bug Fixes:
- metadata: own metadata (#1992) (bb1fe26)
Refactorings:
- tooling: bindable inheritance (bb1fe26)
2.0.0-beta.19 (2024-06-12)
Features:
- event: support common event modifier on all events (#1994) (631d1e8)
- dialog: ability to animate using animator instead of lifecycles (#1986) (a2477e5)
Bug Fixes:
- dialog: prevent default actionless form submit (631d1e8)
- css-modules: alter bindings instead of class registration (#1989) (85917a9)
Refactorings:
- projection: use $all instead of * to include all node types (#1987) (337cb34)
2.0.0-beta.18 (2024-05-23)
Bug Fixes:
- di: use official metadata instead of weakmap (#1977) (9aeeffa)
- dev: turbo package input + ts dev script (253e92a)
Refactorings:
- collection: define map & set overrides on the instance instead of prototype (#1975) (253e92a)
- runtime: reoganise utils import (253e92a)
- dom-queue: merge dom read and write queues (#1970) (3a63cde)
- *: resolve previous PR comments (#1968) (f8ed38d)
2.0.0-beta.17 (2024-05-11)
Features:
- template: support spread syntax with spread command and ... (#1965) (ccae63b)
- repeat: allow custom repeatable value (#1962) (c47df91)
- convention: rewrite runtime-html decorators (#1960) (eaf2cd7)
Bug Fixes:
- compiler: fix order when spreading custom attribute into element bindable, improve doc, add tests (ccae63b)
- (state: auto infer binding expression when empty (ccae63b)
- au-slot: separate parent scope selection from host scope selection (#1961) (ff605fb)
Refactorings:
- kernel: mark side effect free (#1964) (22c8f71)
2.0.0-beta.16 (2024-05-03)
Bug Fixes:
- au-slot: ensure passthrough slot get the right host value (#1959) (f266ddd)
Refactorings:
- rendering: correctly handle compilation cache (#1955) (c11491b)
- *: extract template compiler into own package (#1954) (ad7ae1e)
- compiler: simplify definition creation (#1950) (bb0fcab)
- *: cleanup deco code (#1947) (ca22bc8)
- observers: use static blocks, group related code (ca22bc8)
- *: move scope to runtime html (#1945) (bca0290)
2.0.0-beta.15 (2024-04-17)
Features:
- resources: support static
$au
property for definition (#1939) (877a385)
Bug Fixes:
- *: residual decorator work (#1942) (7e8c12f)
Refactorings:
- bindings: move binding infra to runtime html (#1944) (1c7608a)
- expression-parser: move exp parser to its own package (#1943) (6e7dcad)
- *: migration to TC39 decorators + metadata simplification (#1932) (22f90ad)
2.0.0-beta.14 (2024-04-03)
Features:
- custom-attribute: ability to find closest attr by name or ctor (#1928) (ab28585)
- i18n: support multiple versions of i18next (#1927) (0789ee5)
Bug Fixes:
- enhance: dont call app tasks from parent container (#1933) (e7119ec)
- form: prevent actionless submission (#1931) (1fc74d4)
Refactorings:
- attr: treat empty string as no binding (#1930) (8fc5275)
2.0.0-beta.13 (2024-03-15)
Features:
- process-content: ability to add information to a data object (#1925) (2a4c436)
- template-controller: ability to have a container per factory (#1924) (6727b56)
- convention: add import as support (#1920) (7a15551)
- di: api to register resources with alias key (7a15551)
Bug Fixes:
- router-lite: dont register config (f71e9e7)
- router: dont swallow instantiation error details (deee8e6)
- *: cleanup di & router tests, add timeout (deee8e6)
- *: router errors stringify (deee8e6)
- *: deepscan issues (deee8e6)
- *: element get own metadata call (dc22fb7)
- di: cache factory on singleton resolution (dc22fb7)
Refactorings:
- event: no longer call prevent default by default (#1926) (f71e9e7)
- compiler: remove special treatment for au slot (2a4c436)
- *: smaller di files, assert text options, more au slot tests (deee8e6)
- runtime: move ctor reg into controller (7a15551)
- resource: cleanup registration, APIs (#1918) (dc22fb7)
- *: cleanup util fn (dc22fb7)
- resources: move find to corresponding resource kind (dc22fb7)
- di: add registrable, remove unecessary infra for attr pattern (dc22fb7)
- resources: use registrable (dc22fb7)
- di: dont search for resources when register (dc22fb7)
- resource: remove resource protocol, simplify resource metadata (dc22fb7)
- resources: add get for vc & bb resource kinds (dc22fb7)
- resource: binding command resolution (dc22fb7)
2.0.0-beta.12 (2024-03-02)
Features:
- enhance: call app tasks with
.enhance
API (#1916) (4d522b2)
- au-compose: ability to compose string as element name (#1913) (06aa113)
Bug Fixes:
- di: dont jit register resources [skip ci] (8ffde34)
- *: tweak typings of injectable token (89f76eb)
- *: use ?? instead of || (89f76eb)
- *: typings for injectable token (89f76eb)
- *: injectable token resolver (89f76eb)
Refactorings:
- *: cleanup (#1912) (8ffde34)
- *: cleanup (#1908) (89f76eb)
- router: use resolve (89f76eb)
- *: better type inferrence for injectable token (89f76eb)
- *: simplify container has, cleanup router (89f76eb)
- au-compose: always create host for non custom element composition (#1906) (8a28e0a)
2.0.0-beta.11 (2024-02-13)
Features:
- event: ability to add modifier (#1891) (67a3c22)
- state: support redux devtools for the state plugin (#1888) (bd07160)
Bug Fixes:
- i18n: ability to unsubscribe locale change (ec2e270)
- templating: custom element takes priority over custom attribute (#1897) (e8b2c80)
- *: upgrade rollup, tweak build scripts (bd07160)
Refactorings:
- controller: remove define lifecycle hook (#1899) (ec2e270)
2.0.0-beta.10 (2024-01-26)
Bug Fixes:
- au-slot: properly handle nested projection registration (#1881) (00e8dee)
- portal: remove target marker when deactivated (#1883) (3db4c17)
- runtime-html: template wrapping (#1875) (bfdaa3b)
- runtime-html: template wrapping (bfdaa3b)
Refactorings:
- enums: string literal types in favour of const enums (#1870) (e21e0c9)
- runtime-html: fix broken tests (bfdaa3b)
2.0.0-beta.9 (2023-12-12)
Features:
- mapping: add mapping for popover apis (#1842) (6deadf4)
Bug Fixes:
- popover: properly set attrs and add tests (#1851) (f4b552b)
- au-slot: ensure work with shadow dom (#1841) (c750d4f)
- repeater: duplicate primitive handling, batched mutation fix (#1840) (703d275)
- repeat: fix sort+splice batched operation bug (703d275)
Refactorings:
- runtime-html: if TC (#1833) (7192e74)
- runtime-html: if (7192e74)
- templating: remove strict binding option from CE (#1807) (7b4455f)
- tests: move all under src folder (7b4455f)
2.0.0-beta.8 (2023-07-24)
Features:
- compose: passthrough bindings + support containerless (#1792) (e8e39a9)
Bug Fixes:
- au-slot: correctly prepare resources for slotted view (#1802) (bf1ca4c)
Refactorings:
- ref: deprecate view-model.ref and introduce component.ref (#1803) (97e8dad)
- text-binding: always evaluate expressions in strict mode (#1801) (15acfee)
- *: bindable property -> name (#1783) (ca0eda7)
2.0.0-beta.7 (2023-06-16)
Features:
- build: add a development entry point (#1770) (69ff445)
Bug Fixes:
- resolver: mark private as internal (07689bf)
Refactorings:
- runtime: cleanup, extract error to const enums (#1775) (07689bf)
- compiler: use comment to mark target (#1774) (e37802c)
- runtime-html: cleanup errors, remove unused code. (#1771) (750210d)
2.0.0-beta.6 (2023-05-21)
Features:
- all: allow injection of implementation (#1766) (a60db13)
- templating: allow deactivate when activating (#1729) (1c9c97c)
- bindable: support getter/setter (#1753) (4279851)
Refactorings:
- compiler: avoid using au class to find targets (#1768) (0d30998)
- *: rename resolveAll -> onResolveAll (#1764) (fdf0747)
- *: cleanup up unused code & decouple interface from default impl (#1761) (7a71d43)
2.0.0-beta.5 (2023-04-27)
Features:
- di: property injection with
resolve
(#1748) (a22826a)
- aurelia: ability to inject with
Aurelia
export beside IAurelia
(a22826a)
Refactorings:
- build: preserve pure annotation for better tree shaking (#1745) (0bc5cd6)
2.0.0-beta.4 (2023-04-13)
Features:
- debounce-throttle: flush via signals (#1739) (af238a9)
- slotted: add slotted decorator, slotchange bindable for au-slot (#1735) (8cf87af)
Bug Fixes:
- repeat: fix mismatchedLengthError on assigning an array with duplicate primitive values (#1737) (cf60ac8)
- select: insensitive multiple.bind order (#1727) (c8d912f)
Refactorings:
- children: make children observation a binding (#1732) (5bde983)
- children: make children deco as a hook (5bde983)
- children: remove children observers from custom element def (5bde983)
- children: cleanup children observer related code, rename to binding (5bde983)
- observers: remove intermediate vars (5bde983)
- *: ignore dev message coverage (5bde983)
- *: remove unnecessary properties on PLATFORM (#1722) (7cd77ad)
2.0.0-beta.3 (2023-03-24)
Features:
- style: add warning messages when binding number to ambiguous properties (#1702) (0937b63)
Bug Fixes:
- css-modules: class command css module (#1690) (b6606d4)
- au-slot: register the right view model instance for injection (#1685) (b42d52f)
Refactorings:
- controller: remove lifecycle flags (#1707) (a31cd75)
- ci: remove e2e safari from pipeline (a31cd75)
- tests: disable hook tests (a31cd75)
- compose: rename props and add compat layer (#1699) (2e7ce43)
- build: use turbo to boost build speed (#1692) (d99b136)
2.0.0-beta.2 (2023-02-26)
Features:
- compat: add binding engine (#1679) (a6dd0de)
Bug Fixes:
- dom: broken in safari16 (#1680) (62321a7)
- templating: ensure fragment always have proper owner document (62321a7)
- *: linting errors (e6010d0)
- ast: correctly resolves access keyed on primitve (#1662) (0eae2ce)
2.0.0-beta.1 (2023-01-12)
Features:
- portal: ability to specify position (6e78e4c)
- *: key assignment notify changes (#1601) (4163dd4)
- repeat: add keyed mode (#1583) (d0c5706)
Bug Fixes:
- runtime-html: remove direct dependency on Reflect polyfill (#1610) (5b37ff5)
Performance Improvements:
- *: move render location creation to compiler (#1605) (66846b1)
Refactorings:
- *: move webcomponents plugin into separate package (065a949)
- *: add platform & obs locator to renderers (6763eed)
- *: add expr parser to renderers via param (06449b0)
- *: remove create element API (de5faf4)
- *: remove dialog export from aurelia pkg (73e3078)
- *: remove au render + infra (0a18ed1)
- *: prefix private props on bindings (d9cfc83)
- *: remove call command, move to compat package (d302d72)
- *: remove event delegator, move completely to compat (cca1ce8)
- event: remove .delegate, add .delegate to compat package (d1539a2)
- runtime: cleanup & size opt, rename binding methods (#1582) (2000e3b)
- runtime: remove interceptor prop from interface (3074f54)
- binding-behavior: remove binding interceptor (767eee7)
- bindings: create override fn instead of binding interceptor (5c2ed80)
- all: error msg code & better bundle size (d81ec6d)
- ast: extract evaluate into a seprate fn (6691f7f)
- *: rename Scope.parentScope -> parent (937d29e)
- templating: cleanup commands, renderers & compiler (099e988)
2.0.0-alpha.41 (2022-09-22)
Features:
- collection-observation: add ability to batch mutation into a single indexmap (39b3f82)
Bug Fixes:
- *: call listener with correct scope, move flush queue to binding (70d1329)
- html: remove attrs on null/undefined (#1561) (2de6f17)
Refactorings:
- *: some tests cleanup (02c8af6)
- *: use utils for smaller bundle (d35e24a)
- *: remove work tracker (96f90c6)
- *: cleanup unnecessary exports in kernel (045d80d)
- *: cleanup di (b299e7b)
- binding-command: make expr parser & attr mapper parameters of command build (0ff9756)
- runtime: make Char local to expr parser only (3272fb7)
- runtime: move LifecycleFlags to runtime-html (ef35bc7)
- ast: observe after eval fn call (aca7b0f)
- observation: also pass collection in change handler (c382e8a)
- *: cleanup context & scope (e806937)
- *: move delegation strategy to runtime-html (f387b2a)
- *: always handle event handler as fn (#1563) (6037495)
- *: cleanup iterable AST, reorganise e2e tests (#1562) (3853f2d)
- bindings: remove flags from bind/unbind (#1560) (eaaf4bb)
- *: remove flags from observers (#1557) (9f9a8fe)
- binding: move BindingMode to runtime-html (#1555) (c75618b)
- ast: remove flags from evaluate (#1553) (dda997b)
2.0.0-alpha.40 (2022-09-07)
Features:
- *: template expression auto observe array methods (001fe4c)
Refactorings:
- ast: remove observe leaf only flag (8b1c7e1)
- app-task: consistent hook name style ing/ed (#1540) (5a11ea0)
2.0.0-alpha.39 (2022-09-01)
Bug Fixes:
- containerless: ensure host of dynamically created containerless comp is removed (#1518) (358b2ed)
- repeater: re attaching when using the same array with if (#1511) (89248cc)
- repeat: unsubscribe collection on detaching (89248cc)
- e2e: better e2e test scripts (855a03f)
- build: remove reference directive, use files in tsconfig instead (855a03f)
- typings: make ListenerOptions public (855a03f)
Refactorings:
- repeat: better collection observer refresh (#1512) (261249a)
- *: clean up instanceof code (89248cc)
2.0.0-alpha.38 (2022-08-17)
Note: Version bump only for package @aurelia/runtime-html
2.0.0-alpha.37 (2022-08-03)
Features:
- capture: ability to define attr filtering filter (e9a22be)
Bug Fixes:
- capture: enable decorator to pass function filter (#1489) (046b33c)
- *: deepscan (809df0a)
- capture: dont capture slot attr (5ef1a18)
2.0.0-alpha.36 (2022-07-25)
Features:
- capture: convention & deco shortcut (#1469) (e89d3ad)
- loader: strip <capture> (e89d3ad)
- element: capture decorator and <capture/> (e89d3ad)
Bug Fixes:
- runtime-html: containerless #1474 (#1475) (35e571f)
- node-obs: dont treat role differently (#1473) (0cde114)
2.0.0-alpha.35 (2022-06-08)
Features:
- lifecycle-hooks: bound (668a0a8)
- lifecycle-hooks: unbinding (2d94910)
- lifecycle-hooks: binding (ddb98ce)
- lifecycle-hooks: attached (#1456) (4a9b3bb)
- lifecycle-hooks: detaching (#1455) (e4fc0de)
- lifecycle-hooks: add attaching (#1454) (0aa386d)
- ts-jest,babel-jest: upgrade to jest v28 (#1449) (b1ec85c)
- lifecycle-hooks: invoke on custom attributes (5a15abd)
Refactorings:
- attr: expose attr own container (286977a)
2.0.0-alpha.34 (2022-06-03)
Bug Fixes:
- convention: re-export vc and bb from runtime, add tests (64a1252)
Refactorings:
- compiler: remove no-action mode for custom element content (#1438) (f9c8170)
2.0.0-alpha.33 (2022-05-26)
Features:
- lifecycle-hooks: call hydrated lch (75650c5)
- lifecycle-hooks: call hydrating lch (737d9ed)
- lifecycle-hooks: add attribute created lch (524a5df)
Bug Fixes:
- array-observer: don't mutate incoming indexmap (#1429) (a77a104)
Refactorings:
- lifecycle-hooks: dont invoke lfc on CA (395b26a)
2.0.0-alpha.32 (2022-05-22)
Features:
- *: lifecyclehooks created (#1428) (3a0e93d)
2.0.0-alpha.31 (2022-05-15)
Features:
- containerless: ability to override
containerless
config from view (#1417) (26968cc)
- plugin: aurelia store (v2) plugin (#1412) (6989de0)
Refactorings:
- *: cleanup unused flags (c4ce901)
- *: add code to DEV err msg, unify error message quote (b4909fb)
2.0.0-alpha.30 (2022-05-07)
Features:
- events: expr as listener handler (#1411) (ff6ebb8)
- testing: automatically hook fixture create promise / tear down (ff6ebb8)
- testing: enhance createFixture helper props (ff6ebb8)
- hmr: add in hmr capabilities (#1400) (6d932a7)
Refactorings:
- runtime-html: remove .js from im/export, add type to barrel (973ae46)
- runtime: remove .js from im/export, add type to barrel (973ae46)
- kernel: remove .js from im/ex, add type to barrel (973ae46)
- testing: remove .js from im/ex, add type to barrel (973ae46)
- store-v1: remove .js from im/ex, add type to barrel (973ae46)
- validation: remove .js from im/ex, add type to barrel (973ae46)
- validation-html: remove .js from im/ex, add type to barrel (973ae46)
- validation-i18n: remove .js from im/ex, add type to barrel (973ae46)
- router-lite: remove .js from im/ex, add type to barrel (973ae46)
- router: remove .js from im/ex, add type to barrel (973ae46)
- i18n: remove .js from im/ex, add type to barrel (973ae46)
- fetch-client: remove .js from im/ex, add type to barrel (973ae46)
- tests: correct import origins (973ae46)
- all: remove imports from re-barrel (973ae46)
- all: remove imports of re-barrel (973ae46)
- all: remove imports of re-barrel (973ae46)
- all: remove imports of re-barrel (973ae46)
2.0.0-alpha.29 (2022-04-27)
Note: Version bump only for package @aurelia/runtime-html
2.0.0-alpha.28 (2022-04-16)
Bug Fixes:
- css-module: allow colon in class names (#1388) (47860ab)
2.0.0-alpha.27 (2022-04-08)
Bug Fixes:
- build: ensure correct DEV build value replacement (#1377) (40ce0e3)
- runtime-html: local dependencies for local element (#1375) (0d48dbf)
- switch+promise: test build issues (63cf5d0)
Refactorings:
- local-template: register dependency while building definition & add tests (0d48dbf)
- switch+promise: deferred view instantiation (#1372) (63cf5d0)
- all: removing unnecessary assertions & lintings (#1371) (05cec15)
2.0.0-alpha.26 (2022-03-13)
Bug Fixes:
- compiler: allowing value modification from attr pattern on some cases for custom attribute (#1366) (6a190b8)
- template-compiler: custom attribute works with attr-pattern in all cases (6a190b8)
2.0.0-alpha.25 (2022-03-08)
Note: Version bump only for package @aurelia/runtime-html
2.0.0-alpha.24 (2022-01-18)
Bug Fixes:
- promise: suppressed TaskAbortError on cancellation (b917470)
Refactorings:
- promise: pre-settled task result rejection (0e5d75d)
2.0.0-alpha.23 (2021-11-22)
Refactorings:
- *: disabling type-coercion by default (e5028c1)
- *: injectable coercion configuration (b901c4b)
- *: post-review changes 1 (cc279d4)
- runtime-html: coercing configuration options (cba53c7)
- runtime-html: nullable coercing (11bd0dd)
- bindable: auto discover coercer WIP (d64d704)
2.0.0-alpha.22 (2021-10-24)
Bug Fixes:
Refactorings:
- repeat: destructuring support WIP (a6257f0)
2.0.0-alpha.21 (2021-09-12)
Refactorings:
- runtime: use isType utilities for fn & string (37a8fd9)
- runtime: use isType utility for string (64b41b5)
- runtime: use isType utility for function (f621365)
2.0.0-alpha.20 (2021-09-04)
Features:
- au-slot: work with containerless (9fa0a06)
Refactorings:
- au-compose: move initiator out of change info, add tests for #1299 (8f2bf0c)
2.0.0-alpha.19 (2021-08-29)
Bug Fixes:
- template-compiler: capture ignore attr command on bindable like props (0a52fbf)
- *: export ITemplateCompiler from aurelia package (0a52fbf)
Refactorings:
- all: remove more internal typings (1ffc38b)
2.0.0-alpha.18 (2021-08-22)
Features:
- au-compose: works with au-slot (4bfcc00)
- attr-transfer: implement attr capturing & spreading (998b91c)
Bug Fixes:
- repeat: ensure binding behavior works with .for binding (30a27a0)
2.0.0-alpha.17 (2021-08-16)
Bug Fixes:
Refactorings:
- command: extract CommandType out of ExpressionType (e24fbed)
- all: rename BindingType -> ExpressionType (8cf4061)
- command: simplify binding type enum (6651678)
- di: resolver disposal (7c50556)
2.0.0-alpha.16 (2021-08-07)
Features:
- wc: add web-component plugin (74589bc)
Bug Fixes:
- href: avoid interfering with native href (de625d2)
Performance Improvements:
- bindings: simpler observer tracking/clearing (c867cd1)
Refactorings:
- binding-command: bindingType -> type (e38e7f2)
- all: use a terser name cache for predictable prop mangling (7649ced)
2.0.0-alpha.15 (2021-08-01)
Features:
- promise: re-enable promise patterns .resolve/then/catch (d0fa65c)
Bug Fixes:
- attr-parser: avoid mutating non endpoint state (9996ae4)
- attr-parser: return null if theres no endpoint (915bfb1)
Refactorings:
- all: remove lifecycle flags from various APIs (b05db02)
- template-compiler: let binding command determine parsing work (63aace4)
2.0.0-alpha.14 (2021-07-25)
Refactorings:
- runtime-html: more error coded (928d75e)
- resources: codify more error messages (5be00b4)
- template-compiler: codeify error messages, add doc (8004b8c)
- instructions: rename instructions to props for CE/CA/TC (ce307f4)
- runtime: mark more private properties (8ecf70b)
- controller: rename semi public APIs (c2ee6e9)
2.0.0-alpha.13 (2021-07-19)
Refactorings:
- enhance: incorporate reviews, enhance returns raw controller (5504ad9)
- controller: remove unneeded param from Controller.forCustomElement (4abb1ee)
- *: remove root from IController (c51ed16)
- enhance: make enhance works in a disconnected way (52c2c1c)
- controller: no longer needs to determine root (9121240)
- bindings: rename observeProperty -> observe, add doc (fed517f)
- ast: simplify AST kind enum (fed517f)
- *: avoid creating blocks (27dcf0b)
- controller: remove ctx ctrl requirement from .forCustomElement (7edcef2)
- render-context: remove render context (7d38f53)
- render-context: remove all main render-context usages (efc607a)
- render-context: prepare to remove .getViewFactory()/.compile() methods (db9a9ab)
- render-context: prepare to remove .createNodes() method (747d8cf)
- render-context: prepare remove .render method (5852299)
- render-context: prepare render context removal (b0a9515)
- binding-context: add comment explaning difference in behavior (f4bcc9f)
- scope: remove host scope (0349810)
- au-slot: make host exposure a normal, explicit prop (e2ce36c)
2.0.0-alpha.12 (2021-07-11)
Refactorings:
- template-compiler: beforeCompile -> compiling (d8d8cc5)
2.0.0-alpha.11 (2021-07-11)
Features:
- au-render: ability to compose element using string as name (aa466b4)
- if-else: add ability to disable cache (600c33f)
Bug Fixes:
- if: fix actvation/deactivation timing (020de51)
- call-binding: assign args to event property, fixes #1231 (fa4c0d4)
- renderer: pass render location to ce (ce141b5)
Performance Improvements:
- renderer: don't always call applyBb (5e2d624)
- rendering: use definition for attrs & els (3a26b46)
- templating: avoid retrieving definition unnecessarily (f0e597f)
- templating: resolved Type for CE instruction (0b52d11)
Refactorings:
- all: use container from controller instead of context (0822330)
- render-context: cache renderers and compiled definition (6a3be10)
- renderer: use container from rendering controller as cotnext (edc5dd8)
- context: remove IContainer interface impls out of Render/Route context (18524de)
- context: distinguish between render context and its container (f216e98)
2.0.0-alpha.10 (2021-07-04)
Features:
- template-compiler: ability to toggle expressions removal (93272a2)
- template-compiler: add hooks decorator support, more integration tests (dd3698d)
- template-compiler: add beforeCompile hooks (5e42b76)
- au-compose: add support for composition with containerless on au-compose (dec8a5a)
- t-compiler: add ability to recognize containerless attr (23ec6cd)
- hydration: add hydration context hierarchy (9afb70c)
- di: instance-provider now accepts predefined instance in 2nd param (54edac9)
Bug Fixes:
- watch: construct scope properly for custom attr + expression watch (cb26b0c)
- scope: disable host scope on CE controller (ac0ff15)
Refactorings:
- templating: remove projections param from getRenderContext (cf34e40)
- templating: remove blur CA, tweak doc/tests (1286b3b)
- au-slot: remove unused exports (58cc0b5)
- au-slot: lazily determine view factory at runtime (5d3fa25)
- controller: remove unneccessary typings (39ed707)
2.0.0-alpha.9 (2021-06-25)
Features:
- templating: add a injectable hydration token (52f11c4)
Bug Fixes:
- with: update bindings scope properly when value change (906105d)
- let: camel-case let target when using with interpolation/literal (bee73cc)
Performance Improvements:
- templating: inline injectable preparation (2f0ea95)
- di: do not create a new factory in .invoke() (23c0405)
- di: minification friendlier di code (23c0405)
Refactorings:
- au-slot: use new hydration context token (52f11c4)
- templating: change timing of the container of a CE (23c0405)
- attr-syntax-transformer: rename IAttrSyntaxTransformer (71f5ceb)
- all: separate value from typing imports (71f5ceb)
2.0.0-alpha.8 (2021-06-22)
Features:
- binding-command: add a build method, and let binding command have access to more raw information. (240692d)
- attr-syntax-transformer: add isTwoWay & map methods. These are lower & purer primitives compared to existing ones, allowing better control in the compilation. (240692d)
- au-slot: ability to use au-slot on the same element with a template controller (240692d)
Bug Fixes:
- dialog: correct dialog dom structure (42ae808)
- dialog default imp: dialog child of wrapper (3cce8ea)
- dialog-default-imp: display flex on overlay (ce3c91e)
Refactorings:
- template-compiler: fix linting issues, cleanup method names (581c1e3)
- template-compiler: remove BindingCommand.prototype.compile (63dee52)
- template-compiler: remove existing TemplateCompiler, remove TemplateBinder (0ab0cde)
- template-compiler: use class base impl for compilation context (6cf1435)
- template-compiler: merge binder & compiler (240692d)
2.0.0-alpha.7 (2021-06-20)
Refactorings:
- hydration-compilation: use an object to carry more than projections information (39c5497)
- au-slot: remove unused exports, fix tests (aaf81de)
- au-slot: do not associate scope with instruction/definition during compilation (2fafe21)
- slot: drop the use of projection provider in <au-slot/> (560e3c5)
- scope: rename isComponentBoundary -> isBoundary (a3a4281)
2.0.0-alpha.6 (2021-06-11)
Features:
- compose: au-compose -> au-render, implement v1 compose (7b1502c)
- compose-v1: better composition queues (7b1502c)
- compose-v1: better basic impl, timing (7b1502c)
- compose-v1: cleanup typings & unnecessary props (7b1502c)
- compose-v1: basic working tests with deactivation (7b1502c)
- compose-v1: better race condition handling (7b1502c)
- compose-v1: correct value change handling during detach (7b1502c)
- compose-v1: add test for scoped view-only behavior (7b1502c)
- compose-v1: add test for custom element composition, tweak detaching (7b1502c)
- compose-v1: more view-model composition tests (7b1502c)
- compose-v1: only re-activate when model changes (7b1502c)
- compose-v1: add more tests for integration (7b1502c)
Bug Fixes:
- compose-v1: ensure remove the old composition (7b1502c)
- attr: ensure attr binding command take precedence over custom attr (5ecd6a7)
Refactorings:
- children: make children observer a controlled observer (673c8ac)
2.0.0-alpha.5 (2021-05-31)
Bug Fixes:
- *: deepscan issue (f7b9dcc)
- *: broken tests (17ccba5)
- content: fix content array auto observation (98f14ef)
Refactorings:
- *: dropped superfluous props view factory (9ef9664)
2.0.0-alpha.4 (2021-05-25)
Note: Version bump only for package @aurelia/runtime-html
2.0.0-alpha.3 (2021-05-19)
Features:
- app-task: allow app task to be created without a key (2786898)
- dialog: add dialog prop, rename controller to dialog, add more doc (8696093)
- dialog: better error msg, encourage IDialogController (fe82826)
- dialog: ensure inject IDialogController, add test for injection (9455c7f)
- dialog: naming consistency, more doc, clear prop names (64a32fa)
- dialog: ensure naming consistency (b49cc6f)
- dialog: more tests, ensure lifecycle invocation (66e8b10)
- dialog: keyboard handling impl, more tests, tweak doc (f7099ba)
- dialog: better interfaces/names + tweak tests (a4c801a)
- dialog: fix linting & deepscan issues (55d47b1)
- dialog: better interface names (499e926)
- dialog: better messages, reorganise tests (7425ba1)
- dialog: move close promise handling to dialog activation, simplify dialog service (2b817d9)
- dialog: update dom impl (b50d4e8)
- dialog: add tests (7ca0502)
- dialog: better implementation (c8c7a1b)
- dialog: add default IDIalogService (eb92a73)
- composer: better definition creation (10e2d05)
- dialog: add entry module for dialog exports (3ada28b)
- composer: tweak the view model invokcation & INode registration (8f33a80)
- dialog: add configuration (8e396d4)
- dialog: rearrange timing in dialog controller, adjust based objects (e433054)
- dialog: move all default implementations together (7287b29)
- dialog: refactor interfaces organisation (1f93ded)
- dialog: refactor dialog controller (7d53df3)
- dialog: refactor interfaces, introduce new ext points (1e0bfc6)
- dialog: add basic dialog service to runtime-html (347f00e)
- compose: basic friendly composer API implementation (3022d76)
- promise-tc: initial implementation (228085b)
Bug Fixes:
- *: deepscan issues (48b1843)
- *: broken i18n tests (2da8e72)
- debounce: respect default delay (420829c)
- select-observer: ensure value is fresh when flush (99e0172)
- lifecycle-hooks: properly maintain resources semantic (6bfefcb)
- *: revert changes in attr-observer, remove unused code in dirty checker (192a26f)
- observers: ensure oldValue is correctly updated in flush,with optz (07bc335)
- promise-tc: activation and deactivation (54ad4ea)
Refactorings:
- *: binding context resolution with bindingmode participation" (b84813c)
- app-task: simplify usage, align with .createInterface (2786898)
- dialog: stricter interface, tweak tests, fix deepscan (53f95a4)
- dialog: simplify interfaces, renmove default animator (49e3c70)
- dialog: remove IDialogAnimator (9e1a354)
- *: binding context resolution with bindingmode participation (3abe3f6)
- all: rename currentValue -> value (6dc943e)
- *: separate scope for promise (1d0de63)
- observable: queue value attr observer (920bd59)
- observation: don't propagate changes with depth first resolution (235f227)
- promise-tc: then, catch redirections (7723332)
- promise-tc: promise.resolve redirection (1ba35df)
- promise-tc: task queuing + timing tests (7b2224f)
- promise-tc: task queue (7abe877)
- promise-tc: and test (1aaf36a)
2.0.0-alpha.2 (2021-03-07)
Features:
- di: add invoke to route context (3c51a30)
- di: add invoke to render context too (ead0522)
Bug Fixes:
- runtime: fix duplicate lifecycleHooks resolution at root (3b245ec)
2.0.0-alpha.1 (2021-03-03)
Note: Version bump only for package @aurelia/runtime-html
2.0.0-alpha.0 (2021-03-02)
Features:
- *: input[type=number/date] value as number binding (d7bc69d)
- *: ability to teach attr-prop mapping (55c8ca7)
- text-interpolation: basic implementation (67f5735)
- *: track read on observable & bindable (011804f)
Bug Fixes:
- template-binder: check if as-element was used (35284f2)
- template-binder: check if as-element was used (6bc5d40)
- syntax-transformer: don't transform attr of .class & .style commands (c07b9d0)
- syntax-transformer): ?? vs ? vs () :dizz: (af12ed7)
- *: binder ignore attr correctly (311fe1e)
- binder-test: adjust the expected output as interpolation is removed (2684446)
- binder: only remove attr when there's an interpolation (51bb404)
- *: remove attr with interpolation (a0a1df9)
- content-interpolation: cancel task if any when latest value is update (6784103)
- content-interpolation: bogus null assignment (815469e)
- content-interpolation: queue in both normal & collection change (b8b6bbc)
- interpolation-binding: cleanup old value in unbind (bdc394c)
- binder: dont remove the physical text node (6beab31)
- bindings: remove redundant return and ensure .updateSource flag (4d975f7)
- interpolation: release task in unbind (08933e4)
- debounce/throttle: override queue when source changes (3c366fd)
Refactorings:
- *: remove left over unused ids (97fc845)
- template-binder: handle binding plain attr differently (a0a1df9)
- all: remove .update flags (3fc1632)
- bindable: use controller for determining bound state & change handler (f4acedd)
- content-interpolation: put text node next to the original one (b78a210)
- content-binding: dont remove on unbind, add assertion for post tearDown (343f790)
- interpolation: rename interpolation part binding, remove redundant code (8a1a21e)
- bindable: use controller for determining bound state & change handler (043c679)
- *: update attr binding, throttle/debounce, add tests (cab73f4)
- prop-binding: remove necessity for id stamping infra (409d977)
0.9.0 (2021-01-31)
Features:
- runtime-html: add @lifecycleHooks wiring (4076293)
- runtime: add getRef/setRef API's and expose $au object on nodes (c47cc85)
- runtime-html: invoke created() hook on custom attributes (3e90d68)
- *: decorator auSlots wip (6ddb362)
- *: processContent wip (cb8a103)
- show/hide: port show & hide attributes from v1 (8dd9562)
- compiler: preserve 'alias' in the compiled instruction for usage by component instance (e80a837)
- di: remove DI.createInterface builder (8146dcc)
- work-tracker: initial implementation for an app-wide 'wait-for-idle' api (c677a4d)
Bug Fixes:
- runtime: prevent early taskQueue yield (a72c8b2)
- custom-attribute: fix CustomAttribute.for (4c97444)
- *: as-element support for au-slot (ae233e3)
- *: linting issue (0613391)
- *: compilation skipping (c9f5bda)
- *: order-agnostic processContent decorator (c3a4bb6)
- batch: ensure nested batch not batched in outer (ae61005)
- *: ensure bindable & observable behavior match v1 (200ac40)
- accessors: add index signature (617c416)
- *: use sub count from record only (e9f578e)
- semantic-model: include alias in cache key (ad09693)
- tests: correct validation controller tests (2849c99)
- attribute: queue new task (5f7fa27)
- controller: fix async unbind with dispose race condition (987d69d)
Performance Improvements:
- controller: use stack to minimize promise tick overhead (d861da8)
Refactorings:
- *: au-slot info via DI (1719669)
- all: rename macroTaskQueue to taskQueue (87c073d)
- *: decorator auSlots (26e980c)
- *: decorator auSlots (9fbb312)
- *: and more tests for processContent (893831e)
- connectable: merge observer record & collection observer record (f2c1501)
- all: rename interfaces, simplify subscriber collection (1c37183)
- all: remove ILifecycle (d141d8e)
- observation: minor cleanup, tweak accessor type (2756ece)
- connectable: more cryptic, less generic name (0f303cb)
- subscribers: use a separate record for managing subscribers (9f9152d)
- di: store factory per container root instead of via metadata (dbbd8b9)
- *: use private static, tweak comments, simplify vs ast code (d8f1c69)
- *: use private static, tweak comments, simplify vs ast code (98d33b4)
- runtime-html: more cleanup (5bde778)
- watch: move to runtime-html (1250402)
- runtime: move binding implementations to runtime-html (8d9a177)
- connectable: make observe coll part of IConnectable, updat watchers (3df866c)
- *: remove IPropertyChangeTracker interface (d9ba9a4)
- obs: remove IPropertyObserver (d29bc28)
- all: remove IBindingTargetAccessor & IBindingTargetObserver interfaces (d9c27c6)
- runtime: reexport watch on aurelia package (af29a73)
- el-accessor: merge size & length observersremove task reuse (3af2d9f)
- obs: clean up bind from observer, (3006d3b)
- if: cleanup & utilize WorkTracker (df3a5d5)
- bench-apps: measurement (ae4ecaf)
0.8.0 (2020-11-30)
Features:
- templating-syntax: ability to define custom bind to two way transform (aa5a693)
- computed: no type check proxy, reorg args order (6f3d36f)
- controller: enable shadowDOM and containerless for host-less components (89856c4)
- *: allow configurable dirty check for el observation (5636608)
- kernel: add resource create/find api's to the container (1cab5bb)
- runtime-html: add IEventTarget interface to specify event delegate target (90b804c)
- setter-observer: separate start/stop from subscribe, (c895f93)
- runtime-html: add interfaces for IWindow, IHistory, ILocation (5273d0a)
- runtime: add cancel api and properly propagate async errors (3c05ebe)
- runtime: add component tree visitor infra (5dd0f67)
- runtime: implement/wireup dispose hook (1e1819e)
- observation: move scheduling to bindings (3237d3d)
- obs-type: add type & last update to all observers in runtime-html (2f7feb8)
- *: enhance API (976ae0c)
Bug Fixes:
- syntax-extension: tweak two mapping, add some more comments (f267f68)
- style-accessor-for-custom-properties' of http: //github.com/aurelia/aurelia into fix-style-accessor-for-custom-properties (e210496)
- style-attribute-accessor: handle prop and url (89c878a)
- *: linting issues (e2fa345)
- observer-loc: new api for overriding accessors (8af6c46)
- *: update trigger uses NodeObserverConfig (b06fad0)
- *: delay default configuration (02134f7)
- *: alias node observer registration (7541638)
- update-trigger: get all original handler config (228c0a8)
- tests: adapt el observation changes (7ac6f4a)
- select-observer: correctly toggle observing status (7f45560)
- shadow-dom-registry: remove StyleElementStylesFactory incorrect guard (288a2a0)
- controller: add controller metadata to host (9f1b23a)
- *: disabled template controllers on local template surrogate (62a45b9)
- switch: add missing accept impl (d497214)
- portal: fallback to body on empty string querySelector (8783bb3)
- switch: pass initiator through for correct deactivate hook timings (3ea306c)
- aurelia: move controller dispose to stop() hook via a flag (4305a7d)
- *: use interface instead (9fc8323)
- event-manager: properly handle delegate events with shadowDOM / cleanup (b79e7ba)
- attr-binding: store task on observer (b8e37b3)
- *: linting/deepscan issues (d9b275b)
- *: deepscan + linting issues (2f75f1e)
- tests: keep bind/unbind for now (5a5174e)
- observers: merge flags instead (1dc7165)
- *: broken tests (3a73602)
- *: ducktype checking for nodelist (b6d650a)
Performance Improvements:
- controller: use stack to minimize promise tick overhead (2cac413)
- bindings: use eval/connect merge (da4b49d)
Refactorings:
- binding: adapt obs record on attribute binding (eddb58f)
- binding: chore try use an obs record (1a93644)
- bindings: use ??= instead (830fdf5)
- bindings: optimize task queue update a bit more (842ab26)
- prop-accessor: simplify property accessor (d19c0aa)
- bindings: always cache source value in binding (9d3aad2)
- *: timing for binding state of controller (4eb09f7)
- bindable: let bindable take action based on controller (a42949f)
- attr-syntax-transformer: adapt code review merge, make interpret independent again (1e09e9c)
- collection: make lifecycle optionial, more type imports re-org (9f8b189)
- runtime-html: remove unnecessary flag requirements (86e8e9e)
- obs: don't use Proxy on platform (f7882e0)
- dom: allow parent-less nodes to be converted to render locations (68aef8f)
- computed-observer: correctly call subscribers when set (8497f38)
- dom: give INode, IEventTarget and IRenderLocation overrideable generic types (e2ac8b2)
- *: remove persistent flags (ffba588)
- all: add .js extensions for native esm compat (0308e2e)
- el-observation: allow different observer ctor config (161b544)
- node-observation: move interface to runtime-html (42626f8)
- validation: merge evaluate & connect, more efficient handling of classes (7803dc6)
- *: use readonly from config (b88e102)
- *: better lookup for el obs loc (9c5197c)
- observation: simplified el observers/accessors more (e818e2f)
- node-observation: merge target observer/accessor, (2c318ee)
- accessors: no cache in accessors (2640c38)
- checked-observer: make non-layout (b75d6a8)
- accessors: more static accessors (6d83921)
- prop/attr-bindings: always call update (3fd75c8)
- select-observer: remove flags & task props (0622450)
- select-observer: remove dedundant handler/methods, add more mutation test (28c5fe2)
- all: rename noTargetQueue flag, remove infrequent mutationtc (edfd2a4)
- obervers: remove task property of IAccessor (affd9d1)
- controller: remove bindingContext property (3cb6a32)
- styles: move style related stuff to single file (80a6381)
- lifecycle: move types to controller file (93fdb7e)
- controller: remove projector abstraction & rework attaching (d69d03d)
- projector: inline take() (189064a)
- projector-locator: merge into controller (2577af5)
- instructions: move instructions to renderer file (3b71a44)
- instructions: merge listener instructions into one class (5ef5e2e)
- instructions: declare instr type as getters (97c5900)
- all: remove binding strategy export (cd258cd)
- all: remove strategy configuration (0ae57c0)
- instructions: merge to-view, two-way, from-view and one-time (4a12c1d)
- resource-model: merge with semantic-model file (c497c16)
- *: remove references to proxy strategy & proxy observer (b1dfe93)
- attribute-pattern: merge the two files (437d5e4)
- binding-command: move to resources folder (f9d20de)
- attribute-pattern: move to resources folder (df52acf)
- templating: remove hooks from CE definition (dcd2762)
- render-context: rename compose to render (f839165)
- templating: remove ResourceModel (e4f2042)
- all: rename beforeUnbind to unbinding (17a82ed)
- all: rename beforeDetach to detaching (0fcb64d)
- all: rename afterAttach to attaching (0178027)
- all: rename afterAttachChildren to attached (9e6e97e)
- all: rename afterBind to bound (696f5d4)
- all: rename beforeBind to binding (67b1c5d)
- runtime-html: rename InstructionComposer to Renderer and remove Composer abstraction (6499d31)
- all: rename CompositionContext back to RenderContext again (1d7673b)
- controller: rename compileChildren to hydrateChildren (4b6fddb)
- controller: rename compile to hydrate (868d125)
- controller: rename afterCompose to created (02e9412)
- controller: rename beforeComposeChildren to hydrated (041a2ff)
- controller: rename beforeCompose to hydrating (64b405e)
- all: remove afterUnbind and afterUnbindChildren, and make deactivate bottom-up (a431fdc)
- controller: simplify activate/deactivate (b839126)
- controller: peel out cancellation for now (bbf6c92)
- controller: remove cancel api for now (367f6c3)
- all: simplify update flags (5c2cc3a)
- all: rename RuntimeHtmlConfiguration to StandardConfiguration (665f3ba)
- all: move scheduler implementation to platform (e22285a)
- scheduler: remove ITaskQueue interface (5b7b276)
- all: remove IDOM, HTMLDOM and DOM; replace DOM with PLATFORM (6447468)
- plugin-svg: cleanup and move to runtime-html as a registration (55a3938)
- all: move html-specific stuff from runtime to runtime-html and remove Node generics (c745963)
- all: remove PLATFORM global (fdef656)
- dom: remove setAttribute (5cd8905)
- dom: remove removeEventListener (1179737)
- dom: remove addEventListener (706a833)
- event-manager: rename EventManager to EventDelegator (9150bb4)
- listener-tracker: subscribe with EventListenerObject instead (e100eb4)
- dom: remove DOM.createNodeObserver (2dc0282)
- all: simplify DOM initialization, remove DOMInitializer (ff13185)
- runtime: rename CompositionRoot to AppRoot (3141a2c)
- runtime: move Aurelia from runtime to runtime-html (d56c4ca)
- instructions: rename hydrate to compose (2ab10b3)
- all: shorten TargetedInstruction to Instruction (a7e61c6)
- all: shorten TargetedInstructionType to InstructionType (7fe8d04)
- all: finish renaming render to compose (ede127b)
- all: rename render to compose (2d11d9e)
- runtime: move rendering, binding commands, attr patterns and instructions to runtime-html (bc010f5)
- all: rename renderer to composer (c1a0f3c)
- all: cut back on the dispose calls (9fec528)
- all: simplify Aurelia#start/stop & AppTask#run, returning promise instead of task (6c7608d)
- observer-locator: improve the flow / work out a few quirks (cc042b4)
- scope: remove IScope interface and use import type where possible for Scope (6b8eb5f)
- focus: only focus blur when really needed (e71f36c)
- *: rename multi interpolation to interpolation (d1c2202)
- all: remove reporter (425fe96)
- interpolation: remove interpolation binding reference, tweak html interpolation (f3a8952)
- *: removed linktype in favor of link cb (5af8498)
- runtime-html: ensure .evaluate() is called with null (8dc3b88)
- start-task: rename StartTask to AppTask (b52fc9c)
- all: remove AST interfaces (7e04d83)
- all: merge jit-html into runtime-html and remove jit-html-* packages (f530bcf)
- runtime: cleanup unused flags (77a930e)
- runtime: merge controller api bind+attach into activate, detach+unbind into deactivate, and remove ILifecycleTask usage from controller (15f3885)
- lifecycles: pass down first + parent controller in the 'before' hooks and use that as the queue instead of ILifecycle (031b7fd)
- runtime: rename 'caching' to 'dispose' and hook cache/dispose logic up to unbind based on isReleased flag (e346ed4)
- controller: rename 'hold' to 'setLocation' (eb43d9e)
- all: remove State enum and use simple booleans instead (762d3c7)
- all: rename afterDetach to afterDetachChildren (080a724)
- all: rename afterAttach to afterAttachChildren (02b573e)
- bindings: always sync, control flush (01db28d)
- html-observers: controllable flush (f0ec574)
- html-observers: keep tasks (78e01f4)
- html-observers: remove unused code/commented code (ae111f3)
- bindings: queue with preempt in handle change (24350ce)
- *: more tests flush revert, linting issues (f3fdfc9)
- bindings: treat changes during bind differently (cf65629)
- html-observers: initialize values in bind (83aeff3)
- bindings: no queue during bind (2a7a0a0)
- html-observers: move task check top in setValue (455ee23)
- bindings: seprate flow entirely for layout accessors (3915230)
- html-observers: handle task inside setValue (2ac796d)
- html-observers: add todo for unsafe cache (8cd7c68)
- style-attr-accessor.ts: no read during bind (1be26f5)
- observers: rename ObserverType to AccessorType (5f8d0e1)
- *: host scope & AST (9067a2c)
- *: facilitated host enhancement directly (ad8c53c)
0.7.0 (2020-05-08)
Features:
- *: support binding for Set/Map for CheckedObserver (7b0dc48)
- array-index-observer: add select/checkbox tests (4237825)
Bug Fixes:
- listener: fix listener binding to work with interceptors (e.g. debounce) (4dedf7e)
- *: create local RepeatableCollection type (c462a6d)
- *: remove down level iteration config in tsconfig (c9e5fce)
- shadow-dom-registry: improve monomorphism by caching via weakmap (1634cdd)
- shadow-dom-registry: change find to some for efficient any check (dff6280)
Refactorings:
- *: rename alias to aliasto for readability and consistency (f3904fe)
- *: use to string to check for array/set/map for checkedobserver (f246c0f)
- *: use lifecycle instead of observer locator for collection observation in CheckedObserver (147bec2)
- shadow-dom-registry: make explicit factory classes (a9771ad)
- styles: a more explicit api for shadow styles and css modules (3b1f978)
0.6.0 (2019-12-18)
Bug Fixes:
- compose: use $controller instead of injected controller (d8c2878)
- dom: clone fragment before creating nodes (bf595b1)
Refactorings:
- all: refine+document controller interfaces and fix types/tests (0a77fbd)
- controller: split up IController into several specialized interfaces + various small bugfixes (05d8a8d)
- dom: add null-object NodeSequence back in (c9244ad)
- runtime-html: fix types / api calls (3d42dc2)
- html-renderer: synchronize with renderer refactor (4219e02)
- binding-behavior: integrate interceptors with renderer (580b76e)
- runtime: make binding behaviors transient and formalize interceptor api (facbe47)
- runtime: rename CustomElementBoilerplate back to RenderContext (a844ccc)
- runtime: factor out rendering engine + context + compiled template, introduce ce boilerplate, fix create-element etc (a3cc2ad)
- runtime: simplify render process / prepare for removing CompiledTemplate layer (6f47ee8)
- runtime: rename 'detached' to 'afterDetach' (d1e2b0c)
- runtime: rename 'attached' to 'afterAttach' (6ae7be1)
- runtime: rename 'detaching' to 'beforeDetach' (9f8b858)
- runtime: rename 'unbinding' to 'beforeUnbind' (79cd5fa)
- runtime: rename 'attaching' to 'beforeAttach' (4685bb1)
- runtime: rename 'binding' to 'beforeBind' (45b2e91)
0.5.0 (2019-11-15)
Features:
- dom: add setEffectiveParentNode for portal-like components (5f40cd5)
- dom: let the getEffectiveParentNode api also traverse out of shadow roots (325601b)
- dom: add getEffectiveParentNode api for containerless support (77a04e0)
Bug Fixes:
- getEffectiveParentNode: skip over sibling containerless elements above the node (6a6dd76)
- runtime-html: do not use DOM types in constructor args (4505abd)
- attribute: do not use DOM type in constructor param (bc383c1)
- runtime-html: style-attribute-accessor issue (40db3dc)
- runtime-html: uniform syntax for class CA (feede3a)
- renderer: add fromBinding to setPropertyBinding (ac1c8ac)
Refactorings:
- runtime: use metadata api to associate resources with nodes (f46dacc)
0.4.0 (2019-10-26)
Features:
- portal: add portal attribute (8602dd0)
- dom: add prependTo api to nodesequences (b958d57)
- integration: new tests for text input (dc87cea)
- integration: test plan for runtime-html (32c0de5)
- runtime-html: Enhance the style accessor (57bc7b1)
- blur: blur attribute (9e844a8)
- styles: support the new css modules spec (9b36a8e)
- runtime: initial runtime support for styles (6aafcca)
- observer: Add the ability to bind an array of objects and strings to a class perf fix (80fd26b)
- blur: blur attribute, basic working state (177684e)
- observer: Add the ability to bind an array of objects and strings to a class (5d4ad6e)
- observer: Add the ability to bind an array of objects and strings to a class (75c8418)
- observer: Add the ability to bind an array of objects and strings to a class (e80b279)
- focus: add focus attribute (1972323)
- observer: Add the ability to bind an object to class (13bd1d1)
- observer: Fix up tests and remove redundancy from class accessor (64294ad)
- observer: Add the ability to bind an object to class (3e7dba7)
- focus: add focus attribute (ec6ba76)
- child-observation: make query pluggable (81f1a9a)
- runtime: add lifecycle flag propagating template controllers for perf tweaks (c28db65)
- runtime: add PriorityBindingBehavior (2d06ef7)
- attr-binding: add configuration/renderer/instruction/exports (41cb920)
- attr-observer: add attribute observer (a82d143)
- attr-binding: add attribute binding (fd284a2)
- runtime-html: re-enable svg (52bf399)
- runtime: expose full DOM (0680c16)
- runtime-html: add custom event constructor (31d4536)
- runtime: added exportable dom object (9419faa)
- runtime-html: create event and dispatch methods (447646e)
- kernel: add performance profiler (32c2a66)
- event-manager: make EventManager disposable (c857547)
- runtime: make runtime-html fully work in jsdom/nodejs (e34f9b1)
- runtime-html: expose individual registrations and configs (dc12f77)
- all: add friendly names to all interface symbols (57876db)
- dom-initializer: allow undefined ISinglePageApp (add1822)
- runtime-html: implement DI configurations and expose configuration API (1d2b457)
- runtime-html: add runtime-html package with html-specific runtime features (412b01a)
Bug Fixes:
- observers: clear task when done (6163a89)
- rendering-engine: always return a CompiledTemplate even if there is no template (7042ca8)
- portal: add 2nd param for hold, add tests, export mountstrategy (d797f9a)
- portal: separate API for hold parent container (537eb97)
- create-element: fix types and refs (9fd883d)
- set-class-inst: pre-prepare classlist (292cf5a)
- setstyle-inst: use correct type (0c468ed)
- inst: add missing exports, instruction for surrogate style attr (dede01e)
- runtime-html: add infra for rendering surrogate class/style attributes (8d2659a)
- tests: linting issues (3f85553)
- styles: proper local vs. global style resolution (95791b1)
- styles: adjust some types (dbddd70)
- styles: ensure all styles infrastructure uses the dom abstraction (2c397ec)
- styles: address two deep scan issues (4906098)
- styles: ensure there is always a root shadow dom style (4e69c3f)
- styles: only allow css strings w/ shadow dom style element strategy (6328ba4)
- runtime: export style configuration (0e47d7c)
- all: build errors related to children observers (1658844)
- flags: only store persistent observer flags (e597b77)
- child-observation: correct shadow projector and children observer (721d6d8)
- event-manager: fix 'this' scope issue in removeEventListener (637f7d3)
- replaceable: fix some more edge cases with multi nested elements and template controllers (b600463)
- replaceable: make part scopes also work when not immediately bound from the wrapping replaceable (78803f1)
- observer-locator: fix attribute NS accessor and tests (923c326)
- compose: fix typo and tests (a3060e9)
- repeat: correctly reorder nodes, fix several small bugs in node state tracking (283af76)
- lint: fix all lint issues (6b163bd)
- class-binding: targetKey -> propertyKey (0971d7d)
- style-attr-binding: properly handle rules, add important tests, non happy path tests (a2b7c62)
- attr-binding-instruction): fro: string -> string | IsBindingBehavior (cafc325)
- value-attribute-observer: fix two-way binding back propagation (b53b863)
- runtime: fix two-way binding (d60b952)
- dom: add event listener to document instead of body (c8fa239)
- dom: add delegate/capture listeners to body instead of window by default (4219d6d)
- shadow-dom-projector: get mutation observer from dom (97333c2)
- create-element: pass null to parentContext (6581dfb)
- host-projector: also observe children of non-shadowROot (502ad2f)
- shadow-dom-projector: observe children of the shadowRoot (443ed52)
- runtime-html: export attribute-ns-accessor (4f08d48)
- projectors: append and return childNodes from the shadowRoot + use correct defaults (09bb7d7)
- runtime: add missing renderer registrations (c301823)
Performance Improvements:
- all: remove tracer/profiler from ts source (cc9c1fc)
- all): add sideEffect: false for better tree shaking (59b5e55)
- all: pre-declare variables used in loops (16b9c18)
- runtime-html: remove DOM dependency from DOM target accessors (74b649a)
Refactorings:
- blur: convert from lifecycle to scheduler (fa65ee7)
- attr: convert from lifecycle to scheduler (9c33fbe)
- attribute: convert from lifecycle to scheduler (f4ba90b)
- observer-locator: convert from lifecycle to scheduler (6cc0160)
- value-attribute-observer: convert from lifecycle to scheduler (3fdb6ad)
- style-attribute-accessor: convert from lifecycle to scheduler (7313429)
- select-value-observer: convert from lifecycle to scheduler (060e872)
- element-property-accessor: convert from lifecycle to scheduler (31138f0)
- data-attribute-accessor: convert from lifecycle to scheduler (d2b3202)
- class-attribute-observer: convert from lifecycle to scheduler (f59d6a4)
- element-attribute-observer: convert from lifecycle to scheduler (7135094)
- checked-observer: convert from lifecycle to scheduler (3205a68)
- attribute-ns-accessor: convert from lifecycle to scheduler (99b75e1)
- dom: remove AuMarker and TextNodeSequence (49042ad)
- compose: generate anonymous name if no name is provided in the definition (211d3d9)
- all: enforce 2nd param for hold (dfda3fe)
- binding-behaviors: back to decorators (1047099)
- compose: update to use metadata etc (009a96c)
- all: update definition refs (676e86a)
- html-renderer: follow general theme (9af1c64)
- inst: move classlist comp to renderer (223f907)
- resources): prepend with a: (dd7c238)
- *: drop unused imports (7755bbf)
- *: un-ignore some ts-ignore (5e19c62)
- all: rename BasicConfiguration in various packages (7e330d8)
- custom-attrs: first pass removing dynamic options (03c5480)
- blur: use nodetype enum, remove unnecessary comments (577f4f2)
- blur/focus: isolated tests in their own host elements (8111b96)
- blur: make contains work across dom boundaries (3f6b88d)
- blur: drop wheel by default, remove redundant code (263afac)
- blur: avoid doing unnecessary work (3a1ef25)
- css-modules-registry: use object spread (f958ca7)
- blur: use lifecycle to enqueue/dequeue (27413cd)
- styles: rename to make processor clear (d703dcf)
- blur: remove alien pattern code (b66d518)
- styles: additional renaming for consistency (77e728b)
- styles: better naming (761b925)
- styles: rename internal var for clarity (d8dfd53)
- styles: enable simpler caching (4bd58af)
- focus: use param deco, add readonly (fde14ff)
- resources: shorten resource names (499634b)
- binding: rename bindings (35d4dff)
- all): more cleaning up after TS breaking changes: ( (c4c3fc7)
- all: use nextId for controller and all resources (e9ed2ac)
- all: move isNumeric/camelCase/kebabCase/toArray to separate functions and fix typings (f746e5b)
- observation: only eager flush with bind flags (47957d9)
- observer-locator: fixup observer ctors (8a6c133)
- attribute: fix ctor call (fbf79a9)
- element-attribute-observer: cleanup and integrate with raf queue (08f6442)
- select-value-observer: cleanup and integrate with raf queue (5c5850f)
- observation: improve accessor consistency and perf (1a6fbb6)
- value-attribute-observer: cleanup and integrate with raf queue (bae0045)
- class-attribute-accessor: cleanup and integrate with raf queue (8448681)
- checked-observer: cleanup and integrate with raf queue (8ae2fdb)
- observation: cleanup the html accessors and integrate with raf queue (9b8a12d)
- resources: expose view property (3168044)
- all: rename $customElement to $controller (aacf278)
- runtime-html: fix create-element types and remove RuntimeBehavior (a34a9da)
- compose: integrate compose with tasks / controllers, fix typings (d86267e)
- runtime: add activator class and make the runtime compile again (b2a707a)
- runtime: encapsulate lifecycle behavior in controller class (4c12498)
- all: break out patch mode for now (e173d0c)
- all: more loosening up of null/undefined (6794c30)
- all: loosen up null/undefined (40bc93a)
- runtime: fix binding and observation strict types (b01d69a)
- *: remove Constructable "hack" and fix exposed typing errors (c3b6d46)
- *: use InjectArray (b35215f)
- observer-locator: deduplicate and optimize data attribute accessor detection (a41578f)
- all: split traceInfo.name up in objName and methodName (2cdc203)
- lifecycle-render: remove arguments that can be resolved from the context (7eb2b5d)
- lifecycle: merge ILifecycleMount and ILifecycleUnmount into IMountableComponent (5e6db98)
- all: combine bindable and attachable into component (a10461f)
- lifecycle: bind bindings before binding() hook and use binding() hook instead of bound() in repeater (970b70d)
- ast: extract interfaces (7f16091)
- *: make unknown the default for InterfaceSymbol (0b77ce3)
- all: prepare lifecycle flags arguments for proxy observation (1f8bf19)
- *: fix bantypes in tests (2d7bad8)
- *: enable ban-types linting rule and fix violations (00e61b1)
- all: reorganize all registrations and make them more composable (6fcce8b)
- all: expose registrations and registerables in a consistent manner (ea9e59c)
- runtime-html: move the dom initializer to runtime-html-browser (444082e)
- *: linting fixes (a9e26ad)
- runtime-html: explicitly export non-internal stuff (554efcb)
- runtime: explicitly export non-internal items (1c05730)
- all: use Resource.define instead of decorators (045aa90)
- all: replace inject decorators with static inject properties (9fc37c1)
- jit: move html-specific logic to new jit-html package (3372cc8)
- runtime: reduce DOM API surface and dependencies on it (5512c64)