Releases: fluid-project/infusion
Infusion 4.6.0
The Fluid community is pleased to announce the release of Infusion 4.6.0!
This is a minor release which resolves the following three issues:
Fixed
- FLUID-6758 Selection reading continues from where page reading
stopped - FLUID-6757 Rendering and other methods for the selection reader
are not invokers - FLUID-6756 regenerateCursor function defined in the global scope
in both Fluid.js and FluidIoC.js
Infusion 4.5.0
The Fluid community is pleased to announce the release of Infusion 4.5.0!
This is a minor release which resolves the following two issues:
Fixed
- FLUID-6749 Stop using iframe to render preferences editor
- FLUID-6753 Framework error messages which attempt to dump the
entire component are unreadable
Infusion 4.4.0
The Fluid community is pleased to announce the release of Infusion 4.4.0!
This is a minor release which resolves the following issue:
Fixed
- FLUID-6750 Model-driven relocalisation does not take account
of initial model values
Infusion 4.3.0
The Fluid community is pleased to announce the release of Infusion 4.3.0!
This is a minor release which resolves the following three issues:
Added
- FLUID-6745 Improve TextNodeParser so that it can be configured
with a free hash of selectors to ignore
Fixed
- FLUID-6744 Failure distributing to gradeNames for component
which has undefined options
Removed
- FLUID-6748 Remove the auto save of panel index in separated
panel UIO
Infusion 4.2.0
The Fluid community is pleased to announce the release of Infusion 4.2.0!
This is a bugfix release which resolves the following two issues:
Fixed
- FLUID-6741 Workflow failure when constructed lensed component
from asynchronous resource - FLUID-6742 Race condition in IoC Testing Framework tests
exposed by upgrade to Chrome 103
Infusion 4.1.0
The Fluid community is pleased to announce the release of Infusion 4.1.0!
This is a bugfix release which resolves the following four issues:
Fixed
- FLUID-6727 Improve documentation (retrospectively) about changes
in DataSource API in the 3.0.0 release - FLUID-6728 A sourcePath into the first element of an array fails
to resolve in contexts where expandImmediate is used - FLUID-6729 References into local record such as {source} and
{sourcePath} can't be resolved in interpolated relay segments - FLUID-6730 Removed some obsoleted utilities - fluid.accumulate,
fluid.contains, fluid.add, fluid.stableSort
Infusion 3.0.1
The Fluid community is pleased to announce the release of Infusion 3.0.1!
This is a minor patch release which updates release notes with compatibility information on DataSources which were ported into Infusion from Kettle in the Infusion 3.0.0 release.
The release notes include the following additional note to the Infusion 3.0.0 release. Source code and all builds will have identical contents to Infusion 3.0.0.
- NOTE: The scheme for configuring writable dataSources is not compatible with that seen in some development
releases of Infusion, e.g. 3.0.0-dev and 4.0.0-dev - see API Changes documentation
for more details
Infusion 4.0.0
The Fluid community is pleased to announce the release of Infusion 4.0!
Infusion 4.0 includes many changes to the core and preferences framework and may not be backwards compatible with previous versions of Infusion.
Please see:
- API Changes from 3.0 to 4.0
- Deprecated in 4.0
- Issues addressed in 4.0.0
- Changes in 4.0.0
- Original Announcement
- Release Notes
Added
- FLUID-6698 Allow model relay from constant values
- FLUID-6605 Allow contrast themes to be applied using custom properties only
- FLUID-6580 "Integration constant lenses"
- FLUID-6413 Model-driven resource localisation
- FLUID-6390 "lensed components"
- FLUID-6260 Enactors that modify the styling and presentation of content provide a class and/or CSS custom properties to hook into for custom styling
- FLUID-6148 "Potentia II" holds aligned, transactional units of intent
- FLUID-6147 Transactional units for component creation
- FLUID-5790 cancellable promises
- FLUID-4925 "wave of explosions"
- FLUID-4483 Latched events acting as promises
- A basic quality implementation of FLUID-4982 "asynchronous ginger world", sufficient to allow progress on new renderer for FLUID-4260, FLUID-6580
- Browser-side implementation of fluid.dataSource.URL
Changed
- FLUID-6695 Rationalise exception stripping code
- FLUID-6420 Split start schema aux schema into separate schema grades. Consolidate component grades.
- FLUID-6145 Make all component options immutable
For more details see: API Changes from 3.0 to 4.0
Deprecated
- Core Framework
fluid.contains
fluid.stableSort
fluid.add
fluid.accumulate
- Preferences Framework / UI Options
- In Infusion 5.0, it's planned for the Preferences Framework and UI Options to undergo a re-write and redesign. The
API, including Auxiliary Schemas, are likely to change or be removed. This is also the case for any components that
are used by/within the Preferences Framework.
- In Infusion 5.0, it's planned for the Preferences Framework and UI Options to undergo a re-write and redesign. The
- Components
- UI widgets and other components included with Infusion will be evaluated for future releases. A number of these
widgets are no longer required as native HTML options and other tools have filled in the gaps that they were meant
to address.
- UI widgets and other components included with Infusion will be evaluated for future releases. A number of these
For more details see: Deprecated in 4.0
Removed
- FLUID-6710 Remove versioned globals and file guards from the
framework
Fixed
- FLUID-6705 Increasing line spacing pushes the sliding panel tab
down - FLUID-6696 Table of Contents toggle initially has no effect if
TOC container has display: none style - FLUID-6687 Adjusters/inputs are blue in iOS
- FLUID-6482 fluid.getCallerInfo throws exception sometimes on
Safari (atDepth exceeds stack.length) - FLUID-6438 Improved closure of ContextAwareness grades
- FLUID-6418 Failure when referring to dynamic component location
during afterDestroy - FLUID-6414 Allow dynamic grades to be contributed via expander
- FLUID-6146 Mutual reference between createOnEvent components
- FLUID-5912 {arguments} in members and models
- FLUID-5614 "double deep trees"
- FLUID-5519 Problematic timing of model init transaction
Infusion 3.0.0
The Fluid community is pleased to announce the release of Infusion 3.0!
Infusion 3.0 includes many changes to the core and preferences framework and may not be backwards compatible with previous versions of Infusion. All bundled JS files are now minified, so you may need to update your imports if you were specifically requesting minified versions for previous releases.
Please see API Changes from 2.0 to 3.0 and Deprecations in 3.0 on the Infusion Documentation site.
Original Announcement
Release Notes
What's New in 3.0.0?
- Build
- Minified distributions:
- infusion-all.js
- infusion-all-no-jquery.js
- infusion-framework.js
- infusion-framework-no-jquery.js
- infusion-uio.js
- infusion-uio-no-jquery.js
- Minified distributions:
- Framework
- Added model transformations for converting between:
- Boolean values and Strings
fluid.transforms.booleanToString
fluid.transforms.stringToBoolean
- Date/Time and Strings
fluid.transforms.dateToString
fluid.transforms.dateTimeToString
fluid.transforms.stringToDate
- JSON Objects and Strings
fluid.transforms.objectToJSONString
fluid.transforms.JSONstringToObject
- Boolean values and Strings
- Updated model transformations:
- Number to String transformation supports specifying decimal precision.
- Round transformation can round to an integer or decimal value
fluid.stringTemplate
updated to support nested objects for interpolating values- Added
fluid.dataSource
grade - Added
fluid.remoteModelComponent
for keeping remote and local models in sync.
- Added model transformations for converting between:
- Preference framework
- Switched from Stylus to SASS for CSS pre-processing
- Responsive design for small screens/mobile devices.
- Updated look of on/off toggles and checkboxes
- Added additional contrast themes based on Windows contrast themes.
- Added the OpenDyslexic 3 font as an option to the Text Style panel
- Added localized message bundles for Farsi, French, Portuguese, and Spanish.
- New preferences:
- Letter spacing
- Syllabification preference
- Text-to-speech preference using the Orator component
- Word spacing preference
- Orator
- A self voicing widget with play/pause, text highlighting, selection reading.
- NOTE: Currently there is a bug with Google supplied voice synthesizers that prevents text highlighting and
long text being synthesized in Chrome. See FLUID-6635
- NOTE: Currently there is a bug with Google supplied voice synthesizers that prevents text highlighting and
- A self voicing widget with play/pause, text highlighting, selection reading.
- Test Infrastructure
jqUnit.test
supports async tests with promises
Deprecated
More information about deprecations can be found in the Deprecated in 3.0 docs.
- Fast XML Pull
- Will be removed in a future release.
- Pager
fluid.pagedTable
andfluid.table
grades and related functionality will be removed in an upcoming release.
- Renderer
- The Renderer will be completely overhauled in an upcoming release. Expect API breakage, and that all of the existing
Renderer implementation is deprecated. This includes potential API breakages for the Preferences Framework and
Infusion components that use the Renderer.
- The Renderer will be completely overhauled in an upcoming release. Expect API breakage, and that all of the existing
Infusion 2.0.0
The Fluid community is pleased to announce the release of Infusion 2.0!
Infusion 2.0 includes significant framework improvements and is not backwards compatible with previous versions of Infusion. Please see API Changes from 1.5 to 2.0 and Deprecations in 1.5 on the Infusion Documentation site.
Original Announcement
Release Notes
What's New in 2.0.0?
- Constraint-based priorities, supported by
listeners
,modelListeners
,modelRelay
,distributeOptions
,contextAwareness
, andcomponents
. This allows the specific order of those items to be configured. (See: Priorities) - Context Awareness - and things it relies on:
- Global Instantiator
- Every Infusion component, regardless of how it is instantiated, ends up in a single-rooted tree of components
- This enables use of modern IoC features such as model relay and declarative event binding
- Enables use of the root distributeOptions context "/"
- Enables the removal of "demands blocks"
- Useful debugging tip: Watch
fluid.globalInstantiator
in your JS debugging tools to see the structure of your application and its tree.
- Global Instantiator
fluid.notImplemented
function for implementing abstract grades- Lazy loading for UI Options and instructions for how to use the Preferences Framework with a zero initial load time.
- This should assist in improving performance when using the Preferences Framework, particularly for resource intensive sites and applications
- Much faster invokers and boiled listeners (c. 60x faster)
- Support for using Infusion with npm for both Node.js and web-based projects.
- Provides a variety of prebuilt versions of Infusion in the module's
dist
directory.
- Provides a variety of prebuilt versions of Infusion in the module's
- Source Maps are generated for the concatenated JavaScript files
- View oriented IoC debugging tools
- Including FluidViewDebugging.js on the page of any Infusion application gives you access to the IoC View Inspector. Click on the small cogwheel icon at the bottom right of the page to open a panel which shows the details of the view components and their grades, that are attached to DOM nodes in the browser pane. This interface works similarly to the DOM Inspector familiar from modern web browsers, but is an experimental implementation with an engineer-level UI.
A lot of time and effort has gone into this release, and we'd like to thank everyone in the community for their contributions.