Releases: dojo/framework
Releases · dojo/framework
v8.0.0
The Dojo framework 8.0.0 release.
Breaking Changes
Enhancements
- Support for TypeScript 4.1 (#892)
- Support for custom resource APIs (#878)
- Create resource templates based on the Data and Api type of a widget (#889, #891)
- Support nested transforms when resources are passed down through multiple widgets (#880)
- Support special head tag for rendering node in the document head (#805)
- Wildcard routing (#766)
- Support redirect in routing configuration (#867, #868, #869, #900)
- Refines the create template function APIs (#866)
- Add intrinsic element types (#796, #814)
- Re-use DOM nodes when moving widgets and nodes in a list (#799)
- Allow numbers in vdom (#781)
- Support optional query params in routing configuration (#901)
- Add
onUpdate
andonDetach
APIs for dom pragma (#829) - Lazy load custom elements on demand (#825)
- Adds support for event proxying and event options (#856)
- Add map shim to Outlet (#860)
pending
API to expose the state of asynchronous icache setters (#862, #865)- Custom element resource support (#815)
- Start to decouple dom completely from vdom (#883)
- Add block middleware mock (#798)
- Allow finding and modifying wrapped widgets in functional children (#780, #851)
- Use the middleware key as the middleware id in the test renderer (#859)
- Support testing widgets with nested typed children (#898)
Bug Fixes
- Expand types for insert after/before (#802)
- Only run the inert middleware when the properties have been changed (#888)
- Add function to create "typed" version of middleware (#819)
- Rendering for multiple nested
head
andbody
nodes (#812) - Cache the function wrapper, no need to recreate each render. (#903)
- Ensure that resources are correctly initialised even if the resource already has been previous created. (#861)
- Make inputs partially only controlled (#887)
- Take in to account virtual nodes when hydrating an existing DOM structure (#896)
- Always pass the target attribute to the anchor tag for
Link
regardless of whether the event is intercepted (#907) - Register the messages for all locales (#908)
- Fix mock middleware types (#822)
- Handle ignored children in decorate (#840)
- Wrap children result in an array if not already in one (#844)
- Support setting properties on named children that are a render result for assertions (#854)
- Update
insertSiblings
type definition (#872) - Pass inserted flag correctly to deferred props in test renderers (#881)
- Fix the typings for the arguments on the test renderer child api (#871)
Release v7.0.0
The Dojo framework 7.0.0 release.
Breaking Changes
- Remove the
Projector
mixin (#549) - Deprecate
cache
with optional flag onicache
to skip validation (#618) - Decouple
Outlet
concept from referencing unique routes (#716) - New Dojo test renderer (#710)
Enhancements
- Typed children support for function-based widgets (#544, #554, #561, #582)
- Add
isExact
options toActiveLink
(#520) - Live binding to function-based widget properties and children (#564, #665)
- Check attached
node
is in the body (#579) - Provide helper middleware
api
type (#580) - Enable cache eviction with the
icache
(#605) - Inert shim (#619)
- Support multiple CSS transition classes (#628)
- Inert middleware (#623)
focus
middleware testing mock (#635)validity
middleware testing mock (#631)- Type nls keys from the
i18n
format function (#610) - Support passing
null
to thedomNode
on.mount(
(#652) - Influence property values with
diffProperties
middleware (#653) - Support specifying an additional property to be considered part of the widget key (#661)
- Support automatic and lazy loading of CLDR data in i18n (#657, #677, #686, #693, #694, #724)
- Unmount an application (#680)
data
middleware andresources
(#672, #701)- Support setting and changing theme variants at runtime (#684, #711, #720)
- "slot" support for Dojo custom elements (#714, #721)
- Forwards compatibility for TypeScript 3.8 (#719)
- Configure document title on route change (#725)
- Skip setting the route when working with build time rendering and using the development server (#729)
Bug Fixes
- Run key checks synchronously (#547)
- Ensure initial properties flag is set
false
(#539) - Call
diffProperties
immediately when first registered (#572) - Fix setting state in
focus
middleware (#575) - Do not invalidate when check if a widget should focus (#583)
- Make assertion templates immutable (#587)
- Ensure mixin properties are inferred correctly when using TSX (#594)
- Run comparators when using harness.expect with an actual render output (#602)
- Allow unsupported nodes to be ignore from harness's assertRender (#599)
- Fix inserting nodes when using the
body
tag (#640) - Fix out of order rendering bug (#642)
- Return injected
theme
as the widget'stheme
property (#659) - Support a mixture of arrays and single children for TSX (#671)
- Update diff type for
Themed
mixin to beauto
(#685) - Invalidate for the
icache.delete
and icache.clear` API (#695) ActiveLink
support for matching query params (#699)- Widgets can render twice during a single scheduled render (#712)
- Spread widget properties for function-based widget in vdom (#717)
Release v6.0.0
The Dojo framework 6.0.0 release.
Breaking Changes
- Merge
widget-core
withcore
(#357) - Move
has
tocore
(#361) - Move core functionality to vdom module(#360)
- Do not throw testing unregistered has flags by default(#278)
- Stop decorating
VNode
andWNodes
during vdom rendering(#290) - Auto bind all class functions(#290, #348)
- Upgrade minimum TypeScript version to 3.4.5(#331)
- Error for selectors that cannot be found with assertion templates(#364)
- Add
start
method to router(#402) - Support factory functions for children replace on assertion templates(#413)
- Make css transition strategy optional(#418)
- Throw an error on missing selector in harness
trigger
(#320)
Enhancements
- function-based widgets and middleware support(#352, #451)
- Core
destroy
andnode
middleware(#362) cache
middleware(#373)registry
middleware(#376)defer
middleware(#378)injector
middleware(#377)cache
middleware(#381, #467, #493)block
middleware(#380)resize
middleware(#384)diffProperty
middleware(#382, #398)theme
middleware(#392)dimensions
middleware(#388)i18n
middleware(#390)focus
middleware(#389)store
middleware(#391)breakpoint
middleware(#387)validity
middleware](#452)- Support integer like index keys in
dojo/stores
(#262) Validation
Meta(#264)- Pluggable state provider for
dojo/stores
(#242) - Pause rendering during merge for lazy loaded widgets(#312)
- Enable mocking shim'd fetch and web platform polyfills(#295)
- Allow direct manipulation of
dojo/stores
state for evergreen browsers() - Improved rendering algorithm when all the previous node have been replaced(#356)
- Convert
dojo/shims
to also work as polyfills(#347) - Pass process id to
dojo/store
'sbefore
callbacks(#409) - Harness support for function-based widgets and middleware(#411)
- Assertion template enhancements(#412)
- Convert routing widgets to function-based widgets(#414)
- special
virtual
tag support(#425) - special
body
tag support(#448, #460, #463) - mock
store
middleware(#428) - mock
breakpoint
middleware(#471) - mock
resize
and intersection middleware(#411) globalThis
shim support(#437, #474)- Automatically detect children type for custom elements(#502)
Bug Fixes
- Disconnect resize meta when destroyed(#272)
- Ensure nodes are inserted in the correct position when nested within widgets(#297)
- Stop extending
WidgetProperties
(#305) - Use the latest wrapper when processing detached nodes(#311)
- Skip changing route for the same url(#317)
- Do not reuse text node when content is different during merge(#355)
- Support widgets with typed children in the harness(#365)
- Ensure shims are elided correctly(#401)
Release v5.0.0
The Dojo framework 5.0.0 release.
Breaking Changes
- Consolidate all has modules into single
has
module - Enable extra classes to be applied to child widgets
- Remove unused
has
flag and remove support forasync
flags - Improved store middleware, supporting
before
andafter
actions
Enhancements
- Enhance working with base paths using
StateHistory
- Allow top level registry items in the VDOM renderer
- Include external polyfills in dojo/shim. (#183, #194, #225)
- Optimize building cache decorator
Block
meta. (#206, #224)- Infer
display
style for custom elements from widget root node - Assertion Templates
- TypeScript 3.2.x support
Bug Fixes
- Support opening router generated links in a new window
- Correctly format router generated links
- Synchronous initial routing navigation
- Support undefined and null values for
activeClasses
inActiveLink
- Remove extra DOM nodes during an initial merged render
- Support setting a value on a select DOM node. (#170)
- Conditional elements rendering out of order with only two siblings
- Fix class typings for
exitAnimation
andenterAnimation
- Incorrect ordering of nodes at the same depth
- Add default export for
watch
decorator - Always render
StoreProvider
when parent renders - Deal with extra nodes inserted into an existing HTML structure on initial merge
Release v4.0.0
The Dojo framework 4.0.0 release.
Breaking Changes
- Emit the routing events after the routing has been completed
- Make
runAfterRenders
private onWidgetBase
- Consolidation of existing dojo/core modules
- Convert
Outlet
higher order widget to a standard widget - Replace symbols with strings in dojo/framework
- Remove
matches
meta
Enhancements
- Re-write of VDOM Rendering Engine
ActiveLink
component that applies classes when an outlet is active- Update to docs for clarity
- Support lazy widgets directly with
w()
(and #112) - Prefer
as any
over legacy<any>
for casting - Convert a to static routing configuration
- Stop route registration from being affect by order, ensure always match against the most specific route
- Warn if widget does not inject a theme and uses the
Themed
mixin - StoreProvider widget for injecting store state into a widget tree
watch
decorator to implicitly call invalidate when the property changes- Improve failure messages in stores when test operation fails
- Support lazy loading widgets with
tsx
- Enhance
v()
andw()
to support merging existing nodes - Stores middleware for local storage
- TS2.7 - TS3.0 forward compatibility
Bug Fixes
- Ensure
onDetach
is called after nodes have been removed - Remove unused property on Themed
- JSDoc Updates and (#85)
- Fix the separator for query params in routing
- Fix setting classes on
svg
nodes - README clean up
- Fix sniff for es6 strings in shims
- Generics for inferring types when using the process factory