Releases: knockout/tko
Releases · knockout/tko
4.0.0 Beta 3
What's Changed
- See CHANGELOG.md
- Updating readme to include note regarding git LFS by @codymullins in #34
- Legacy browser support, better Monorepo usage by @caseyWebb in #39
- Remove git-lfs from project by @caseyWebb in #40
- Set up the initial documentation by @brianmhunt in #41
- Add knockout proper, with spec by @brianmhunt in #54
- Support JSX and Slots by @brianmhunt in #73
- 22 tc39 observables by @brianmhunt in #76
- added null check as per same fix in
knockout-fast-foreach
library by @mattbarkerdev in #88 - Bump stringstream from 0.0.5 to 0.0.6 in /tko.io by @dependabot in #101
- 130 1 package update by @brianmhunt in #136
- make/ci) update the
all
default target to depend on the package-loc… by @brianmhunt in #137 - Create codeql-analysis.yml by @brianmhunt in #138
- Bmh/mass rename typescript by @brianmhunt in #139
- observable) add polyfill for Symbol.observable by @brianmhunt in #143
- Add preventDefault option to event bindings by @danieldickison in #148
- functionRewrite improvements by @danieldickison in #150
- Pr-157/identifier-inherit by @brianmhunt in #161
- Make Identifier.set_value work with inherited properties by @danieldickison in #157
- Remove mustache providers from ko build for backwards compatibility by @danieldickison in #156
- Bump path-parse from 1.0.5 to 1.0.7 in /tko.io by @dependabot in #152
- select-value-equality by @brianmhunt in #163
- Use == for comparing select option values for better ko compatibility by @danieldickison in #155
- Fix parsing and evaluation of lambdas with args and operator associativity by @danieldickison in #151
- Make options.bindingGlobals empty by default by @danieldickison in #165
- Re-enable knockout build tests and fix dummyTemplateEngine import by @bcdanieldickison in #169
- observable) replace
objectLookup
with canonicalMap
by @brianmhunt in #171 - builds) fix build exports for ESM by @brianmhunt in #173
- 172 build exports 2 by @brianmhunt in #174
New Contributors
- @codymullins made their first contribution in #34
- @caseyWebb made their first contribution in #39
- @brianmhunt made their first contribution in #41
- @mattbarkerdev made their first contribution in #88
- @dependabot made their first contribution in #101
- @danieldickison made their first contribution in #148
- @bcdanieldickison made their first contribution in #169
Full Changelog: v4.0.0-alpha3...v4.0.0-beta1.3
v4.0.0 Alpha version 3
From the CHANGELOG:
- (build) Compiles to
dist/ko.js
- (build) The
dist/tko.js
(that exportedtko
) has been deprecated/removed - (internal) Add the ES6 LifeCycle class (see tko.lifecycle)
- (binding handlers) Add new-style ES6 Binding Handler class (see custom-bindings documentation and tko.bind/src/BindingHandler.js), descended from the LifeCycle class
- (lifecycle) Fix error with event handler type
- (provider) Add & document the Provider base class
- (subscribable) Add the
once
,then
,when
,yet
, andnext
functions - (parser) Fix early-out for logical (
&&
/||
) operators - (binding)
ko.applyBindings
now returns a Promise that resolves when bindings are completed - (attr) Support namespaced attributes with
attr
binding #27 - (options) Add the
options.Promise
, so users can use a their own or a safe Promise variant of A+/Promises (defaults towindow.Promise
) - (attribute-interpolation) Fix interpolation of
styles
attribute (e.g.style="color: {{color}}"
) in theAttributeMustacheProvider
, by addingattributesBindingMap
parameter.
Alpha One
This is the second alpha of TKO.
It incorporates a number of changes, fixes a number of edge cases (particularly with the parser), and incorporates the last pre-release binding plugin, fast-foreach.
- Fix negation operator (-) application - integers/floats e.g.
-1
work, as well as variables-x
and expressions-(x + y)
- Use tko.binding.foreach for the
foreach
binding (based on brianmhunt/knockout-fast-foreach) - Add
each
as an alias offoreach
- Parser
- Correct behaviour with dereferencing members of expressions (e.g.
(x || y).z
or(abc || {x: null})['x']
) - Fix canonical (
() => ...
) lambdas - Support C & C++ style comments (knockout/knockout#1524)
- Fix filter/or ambiguity on pipe
|
- Raise an error with anonymous functions
- Fix && and || operator precedence
- Correct behaviour with dereferencing members of expressions (e.g.
- Updated Rollup - changes order of compilation, smaller output
- Fix issue with first rendering of an elseif binding
- Make the
template
binding expose a conditional for else-binding - Expose ko.dependencyDetection
- Make sure
obj.x
usesthis
ofobj
wherex
is a function (e.g.click: model.onClick
hasthis
ofmodel
) - Ensure
obj.x
only usesobj
asthis
whenx
is a prototypal method (and not just a value) - Honour explicit references to
this
(as$data
) - Ensure bindings with multiple filters work as expected
- If available, use a WeakMap for DOM node data (resolves knockout/knockout#2141)
- Fix filters not separated by whitespace (e.g.
value|filter1|filter2
)