Skip to content

Latest commit

 

History

History
343 lines (264 loc) · 14.2 KB

changelog.md

File metadata and controls

343 lines (264 loc) · 14.2 KB

Changelog

Changelog of data-tier as per release.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

[4.0.0] -

BREAKING CHANGE

Chore

  • refactored publishing to the scoped one
  • updated tests to the new framework
  • update CI to the best practices

[3.6.6] - 2023-03-03

Chore

  • documentation updated
  • dependencies updated
  • CI adjusted to better practice, BUT tests were disabled to to very outdate test framework and move to the scoped v4

[3.6.1] - 2022-02-18

Fixed

  • dependencies updated
  • CI adjusted to better practice

[3.5.2] - 2021-11-8

Fixed

  • dependencies updated

[3.5.1] - 2021-07-09

Fixed

  • dependencies updated

[3.5.0] - 2021-06-16

Added

  • Issue #75 - implemented tying declaration API - events
  • documentation updated
  • dependencies updated

[3.4.0] - 2021-06-15

Changed

  • Issue #79 - implemented tying declaration API - attributes
  • removed special treatment for the data- attributes (in favor of well defined attributes support API)
  • documentation updated
  • dependencies maintanance

[3.3.1] - 2021-06-11

Changed

  • Issue #74 - added tying declaration API - specification

[3.3.0] - 2021-06-06

Changed

  • Added special treatment for the data- attributes (thanks Piotr Pazola) - sets the value on the attribute rather than property
  • dependencies maintanance

[3.2.0] - 2021-05-08

Changed

  • removed addRootDocument/removeRootDocument in favor of addDocument/removeDocument APIs (deprecated since 2.11.0)
  • Issue #56 - internal implementation improvements
  • documentation updated
  • dependencies maintanance

[3.1.6] - 2021-04-24

Added

  • Issue #70 - added manually triggered release

Changed

  • documentation updated
  • dependencies maintainance

[3.1.4] - 2021-03-29

Changed

  • documentation updated
  • dependencies maintainance

[3.1.3] - 2021-02-01

Added

  • Issue #68 - exposing Observable implementation that is bundled with this data-tier version
  • cache-control added to the CDN deployment

[3.1.0] - 2021-01-30

Changed

  • Issue #58 - allowed to create/update ties with primitive model (boolean, number, string); won't throw now and will corretly do a ties updates
  • Issue #59 - capable of create/update ties with null; won't throw now and will correctly do a ties updates
  • nullish model values (undefined, null) transformation into an empty string is now limited to only:
    • textContent target property for any element
    • value target property for only these: INPUT, SELECT, TEXTAREA

[3.0.0] - 2021-01-28

Changed

  • Issue #60:
    • removed defaultTieTarget property support (less intrusive approach aggenda)
    • removed changeEvent property support (less intrusive approach aggenda)
    • added new syntax to specify the event to listen to per tied property
    • added support for multiple events as per multiple properties tied

[2.12.0] - 2021-01-17

Changed

  • updated dependencies
  • Issue #61 - release version automation

[2.11.1] - 2020-11-18

Changed

  • updated dependencies

[2.11.0] - 2020-11-13

Added

Changed

  • Issue #41 - thoroughtly revised DOM processing mechanics
  • updated dependencies

Deprecated

  • addRootDocument API, (use addDocument instead)
  • removeRootDocument API, (use removeDocument instead)

[2.10.1] - 2020-10-24

Added

  • security process to be used - TideLift

Changed

  • updated dependencies
  • added release automation
  • removed Travis CI (in favor of GitHub actions)

[2.10.0] - 2020-09-10

Fixed

  • Issue #50 - fixed a scoped views lifecycle, case when view added before the model
  • upgraded dependencies

[2.9.5] - 2020-08-22

Fixed

  • Issue #49 - fixed a new API: DataTier.ties.update(key, newModel); which misbehaved when non-existing scoped (element) key provided
  • upgraded dependencies

[2.9.4] - 2020-08-04

Fixed

  • implemented Issue #48 - fixed a new API: DataTier.ties.update(key, newModel);
  • upgraded dependencies

[2.9.3] - 2020-04-06

Added

  • Issue #42 - added a possibility to update tie's model as a whole via new API: DataTier.ties.update(key, newModel);
  • upgraded dependencies

[2.8.7] - 2020-02-24

Changed

  • upgraded object-observer dependency, bearing an important, yet meanwhile experimental, functionality for a repeater like consumers

[2.7.2] - 2020-02-15

Added

  • adding experimental scoped tying capabilities - not yet publically available

[2.5.0] - 2020-02-05

Added

  • Issue #40 - documented all of the latest changes, verified functional tying documentation
  • add full tutorial example and improved tutorials description (should add more use-cases in the future)

[2.4.0] - 2020-02-04

Added

  • Issue #39 - added support for a classList in a special manner

Changed

  • changed behavior of the nested properties change when parent is watched - now parent is also notified

[2.3.0] - 2020-01-25

Fixed

  • Issue #37 - fixed mishandlings of the data-tie property changes
  • attempting to push performance further (switched model change observer definition from bind to lambda syntax)

[2.2.0] - 2020-01-05

Added

  • Issue #36 - method/function based tying
  • enhanced tests coverage
  • performance tunings

[2.1.2] - 2019-12-18

Added

  • documentation improved and enhanced
  • added full test coverage for a tie params

[2.1.0] - 2019-12-17

Fixed

  • Issue #34 - tying the model at the root level
  • minor documentation improvements

[2.0.2] - 2019-12-15

Fixed

  • documentation improvements and enhancements

[2.0.0] - 2019-12-14

Changed

  • issue #29 - removing non-convenience and ambiguity in API usage

This point (2.0.0) is an API breaking point! Please refer to the API documentation.


Historical releases

  • 1.14.0

    • upgrading object-observer dependency, which has a fix for a proper handling of an Error objects
  • 1.13.1

    • fixed issue #32 - when mistakenly same property tied more than once - error is shown, the first one is effective
    • fixed issue #33 - fixes a defect with NULL value in the deep object's tied path
    • fixed issue (non-reported) with creation of non existing path by change event
  • 1.12.1

    • moved to newer version of just-test, providing real tests in CI and coverage now
  • 1.12.0

    • upgraded dependencies (specifically object-observer including some important fixes)
  • 1.11.0

    • performance tuning and preventing potential double processing of child nodes
  • 1.10.0

    • upgraded dependencies (specifically object-observer including some important fixes)
  • 1.9.0

    • upgraded dependencies (specifically object-observer including some important fixes)
  • 1.7.1

    • fixed issue #26 - shadow DOM hosts were not tied properly, when collected before than defined
    • fixed issue #27 - accedentaly root document DOM was observed twice, leading to annoying warning in logs and wasted CPU cycles
  • 1.7.0

    • fixed issue #25 - yet another issue with the nested tied elements within shadow DOMs
  • 1.6.2

    • fixed issue #24 - adding MutationObserver to any shadow DOM (or even any document root) added to the data-tier
  • 1.6.1

    • implemented issue #23 - auto-tying/untying the open shadow DOM during the addition/removal of the host elements to the living DOM; providing APIs to explicitly add/remove shadow DOM for a closed shadow DOM case and for the elements that the shadow DOM is attached to them 'post-factum' (when they are already in the living DOM)
  • 1.5.0

    • added default target property src for the following elements: iframe, img, source
  • 1.4.2

    • performance improvements (mainly in the area of collecting new view from DOM)
    • improved print outs to clarify the library boot process/times
    • add initial experimental implementation of support for a micro frontend design patterning issue #3
  • 1.4.1

    • implemented issue #21 - missing Tie won't do anything with tied elements - allowing to work with multiple unrelated instances of DataTier in the same application (microfrontends - we are coming!!!)
  • 1.3.0

    • implemented issue #18 - well defined API to customize change-like event
    • implemented issue #19 - graceful handling of removing (already) non-existing ties
    • implemented issue #20 - support for default target property as well as customization of it
  • 1.2.0

    • fixed an issue where single element mapped to few different ties was not updated correctly
    • upgraded dependencies
  • 1.1.2

    • upgraded object-observer dependency to 2.0.2, having some essential fix for issue #20
  • 1.1.0

    • upgraded object-observer dependency to 2.0.0, which affects the support matrix
    • fixed an issue with not-yet upgraded customized elements (not ideal, but works, waiting for spec to have it ideal)
  • 1.0.3

    • Fixed issue no. 15
    • Improved error handling during elements collection in order to not break the flow due to a single failure
  • 1.0.2

  • 1.0.0

    • First release to hold an ES6 module flavor distribution only (pay attention to the library loading)
    • Fixed view -> model flow for input of type checkbox
    • Fixed an error in the log where non-tied elements were removed from DOM

Medieval

  • 0.6.25

  • 0.6.22

    • initial provisioning of ES6 module
    • new API defined and implemented in ES6 module distribution

Ancient

  • 0.6.19

    • Fixed incorrect behavior when tie-property configured on the element after it was added to the DOM
  • 0.6.18

  • 0.6.17

    • Added tie-property OOTB controller - having parameter syntax path.to.data => propName it is made possible to tie to arbitrary element property (yes, this is having CustomElements in mind)
  • 0.6.16

    • Fixed potential issue with empty (null) object traversal in deep tying
  • 0.6.15

  • 0.6.14

    • Fixed defect in tie-list controller when text nodes present in the template element
    • Added tie-datetime-text OOTB controller
  • 0.6.13

    • Added tie-input OOTB controller in other to track an immediate changes in input elements supporting input event (types: text, password of input element, textarea element).
  • 0.6.12

  • 0.6.11

  • 0.6.10

    • Added a possibility to create/update Tie's data with a plain JS object, in this case data-tier will attempt to auto-create and use Observable from it, using an embedded Observable implementation
    • Fixed issue no. 7
  • 0.6.9

    • Conceptually Rule has been replaced by Controller. There are still no API changes with regard to that, nor any API are yet published, but there will be some refactoring in this area in future releases
    • Fixed issue no. 6, some performance improvements made for a large scale DOM manipulations
  • 0.6.8

    • Fixes: issue no. 2 (smooth handling of an empty values given to the controllers definition), issue no. 4 (non working repeaters on subgraph list), issue no. 5 (improvements of data-tie-classes)
  • 0.6.7

    • Added a possibility to create a tie without providing any initial data, for early setup with lazy data provisioning
  • 0.6.5

    • Fixed a case that element having no dataset breaks the views collection flow (this is not a valid case, but see this issue in Edge, so got to be defensive here)
    • Added tieSrc rule and removed obsolete tieImage rule (did the same as tieSrc, just in a less general flavor)
    • Added tieHRef rule
    • Added tieClasses rule
  • 0.6.0

    • Moved to object-observer.js library as an observation engine, were impacted both the API and the implementation.

Primordial

  • 0.5.41
    • First version, based on native Object.observe technology.