See API Changes from 1.5 to 2.0 on the Infusion docs site, as well as Deprecations in 1.5.
- FLUID-5249: Instantiation of all components in a single-rooted component tree
- FLUID-5495: IoCSS expressions matching upwards in the first component, and support for root context /
- FLUID-5241: New "ContextAwareness" grades and API
- FLUID-5264: progressiveCheckerForComponent does not respond at instantiation (implementation is abolished)
- FLUID-5733:
fluid.notImplemented
function for implementing abstract grades - FLUID-4884: New
FluidViewDebugging.js
implementation for DOM-directed browsing of IoC tree - FLUID-5506: Constraint-based priority scheme to compute order of notifying listeners (and others)
- FLUID-5668: Corruption when material written for
members
requires merging - FLUID-5714: The framework does not correctly merge invoker specifications when both "func" and "funcName" are used
- FLUID-5621: Improve
distributeOptions
so that priority of distributions can be precisely controlled - FLUID-5587: Framework should support namespaced options distributions rather than an array
- FLUID-5226:
fluid.isPlainObject()
is not powerful to detect objects which are only exotic by virtue of constructor - FLUID-5717: Merge policies contributed via dynamic grades do not operate correctly
- FLUID-5615: Grade closure algorithm for dynamic grades is faulty (partial fix)
- FLUID-5742: Dynamic components do not respond to dynamic
typeName
orgradeNames
- FLUID-5694: Diagnostic when injecting component to its own location
- FLUID-5696: Failure to gingerly instantiate injection records
- FLUID-5664: Renderer fails to respect rebinding of model reference
- FLUID-5671: Memory exhaustion possible during
fluid.fail
on node.js (fluid.prettyPrintJSON
) - FLUID-5582: Improve flexibility of
fluid.fail
handling further - FLUID-5667: Circularity in material sent for options expansion is not detected
- FLUID-5711: The Infusion core framework doesn't work when run in a Web Worker
- FLUID-5509: Storing NaN via a "new-style applier" will cause infinite recursion in DataBinding
- FLUID-5675: Text To Speech enactor should be supplied with a mock implementation to facilitate integration testing
- FLUID-5616: "init functions" removed from the framework
- Also removed: the static and dynamic environments, dynamic invokers, old ChangeApplier, autoInit, etc.
Note 1.9 was never (so far) an official release of Infusion, but was a "last ditch" branching point to record the state of the framework should we ever in future require to make a release or backport fixes to a version of Infusion API compatible with the latest 1.x line, most particularly 1.5.x. It is stored in github at Infusion 1.9.x
This list of JIRAs is nonexhaustive since work has accumulated in trunk for several years since the 1.5 Infusion release. These are some of the more significant recent fixes, currently not including work on the preferences framework:
- FLUID-5662: fluid.fetchResources stalls if defaultLocale and locale are identical, and forceCache option is supplied
- FLUID-5559: onTestCaseStart event can fire multiple times in IoC Testing fixture
- FLUID-5575: Timing of onTestCaseStart event is incorrect
- FLUID-5268: Newly implemented "afterDestroy" event does not function
- FLUID-5475: Improve diagnostics when framework is used within node.js
- FLUID-5512: Allow valueMapper to handle the defaultOutputValue when the transformation is based upon compound input values
- FLUID-5673: Tooltips are not closed by closeAll and accumulate endlessly if some descendents are not part of "items" option
- FLUID-5659: Failure to notify multiple relay rules
- FLUID-5599: Expand the message bundle system to be able to locate the bundle for a requested language
You can dowload the source code for Infusion from GitHub.
You can create your own custom build of Infusion using the grunt build script:
Infusion ships with a demos for seeing all of the components in action. You can find them in the demos folder in the release bundle or on our build site.
When run from a local file system, several of these demos require you to enable local file AJAX in Firefox and Chrome:
- https://wiki.fluidproject.org/display/fluid/Browser+settings+to+support+local+Ajax+calls
- http://kb.mozillazine.org/Security.fileuri.strict_origin_policy
- http://ejohn.org/blog/tightened-local-file-security/
Fluid Infusion is licensed under both the ECL 2.0 and new BSD licenses.
More information is available in our wiki.
This is a list of publicly available software that is redistributed with Fluid Infusion, categorized by license:
- Foundation v5.4.5
- HTML5 Boilerplate v4.3
- jQuery javascript library v1.11.0
- jQuery UI button, dialog, draggable, mouse, position, resizable, slider, tabs, and tooltip javascript widgets v1.10.4
- jQuery QUnit v1.12.0
- jQuery QUnit Composite v1.0.1
- jQuery Mockjax v1.5.3
- jQuery scrollTo v1.4.2
- jQuery Touch Punch v0.2.2
- jquery.simulate
- Micro Clearfix
- Normalize v3.0.1
- Buzz v1.1.0
- html5shiv v3.7.2
- Sample markup and stylesheets from Sakai v2.5
- Douglas Crockford's JSON.js (from 2007-11-06)
We are in the process of migrating our documentation to a new space. The markdown files for the documentation can be found in github.
The new space is dedicated to only Infusion documentation, and provides improved navigation.
Some of our documentation remains in the wiki space: Links to these pages are indicated with wiki. From any of these pages, you can return to the main documentation space using your browser's Back button.
Infusion 2.0 was tested with the following browsers:
- Chrome current (versions 43-44)
- Firefox current (versions 39-40)
- Internet Explorer versions 10 and 11
- Safari versions ???
For more information see the Fluid Infusion browser support wiki page.
Supported by tested browsers, and stable for production usage across a wide range of applications and use cases
- Infusion Framework Core
- Inline Edit: Simple Text
- Renderer
- Reorderer: List, Grid, Layout, Image
- Undo
Still growing, but with broad browser support. Expect new features in upcoming releases
- IoC
- Pager
- Preferences Framework
- Progress
- UI Options
- Uploader
In development; APIs will change. Share your feedback, ideas, and code
- Inline Edit: Dropdown
- Inline Edit: Rich Text
- Table of Contents
- Model Relay
- Model Transformation
- Progressive Enhancement
- etc.
The Fluid Project uses a JIRA website to track bugs. Some of the known issues in this release are described here:
- FLUID-3864: Layout Reorderer failed to move portlets back to the first column in three-columns view with keyboard
- FLUID-3089: If columns become stacked, can't drag item into lower column
- FLUID-3493: Renderer appears to corrupt templates containing empty tags on Opera (maybe others)
- FLUID-4322: Renderer can corrupt tag nesting structure in some cases with branch containers
- FLUID-4394: Fat Panel UI Options' iFrame HTML page doesn't play nice with a concatenated build of Infusion
- FLUID-4426: Sliding Panel needs ARIA and/or to move focus to beginning of panel when opened to alert screen readers of new content
- FLUID-4491: Line spacing doesn't affect elements that have a line-height style set
- FLUID-5066: UIO Integrators shouldn't have to edit Infusion's copy of html templates to add panels, css
- FLUID-5218: Prefs editor requires iFrame template to be in the same place as panel templates; it probably shouldn't
- FLUID-5223: If there's exactly one text field in the prefs editor, pressing enter on most inputs causes the form to submit
- FLUID-5255: ToC template path is not configurable by UIO integrators