diff --git a/CHANGELOG.md b/CHANGELOG.md index fc0d6a151e..1b0505ebc4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -21,6 +21,15 @@ Infusion from v2.0.0 onwards adheres to [Semantic Versioning](https://semver.org ### More Info +## [4.2.0] - 2022-07-05 + +### Fixed + +* [FLUID-6741](https://issues.fluidproject.org/browse/FLUID-6741) Workflow failure when constructed lensed component + from asynchronous resource +* [FLUID-6742](https://issues.fluidproject.org/browse/FLUID-6742) Race condition in IoC Testing Framework tests + exposed by upgrade to Chrome 103 + ## [4.1.0] - 2022-05-12 ### Fixed @@ -937,6 +946,7 @@ A pre-release of [0.3.0]. * [Changes in 0.1.0](https://github.com/fluid-project/infusion/commits/v0.1.0) [Unreleased]: https://github.com/fluid-project/infusion/compare/v4.0.0...HEAD +[4.1.0]: https://github.com/fluid-project/infusion/releases/tag/v4.2.0 [4.1.0]: https://github.com/fluid-project/infusion/releases/tag/v4.1.0 [4.0.0]: https://github.com/fluid-project/infusion/releases/tag/v4.0.0 [3.0.1]: https://github.com/fluid-project/infusion/releases/tag/v3.0.1 diff --git a/ReleaseNotes.md b/ReleaseNotes.md index e910587fb2..b91d9a44d1 100644 --- a/ReleaseNotes.md +++ b/ReleaseNotes.md @@ -1,9 +1,17 @@ -# Release Notes for Fluid Infusion 4.1.0 +# Release Notes for Fluid Infusion 4.2.0 [Fluid Project](https://fluidproject.org) [Infusion Documentation](https://github.com/fluid-project/infusion-docs) +## What's New in 4.2.0 + +* Maintenance release which resolves + * [FLUID-6741](https://issues.fluidproject.org/browse/FLUID-6741) Workflow failure when constructed lensed component + from asynchronous resource + * [FLUID-6742](https://issues.fluidproject.org/browse/FLUID-6742) Race condition in IoC Testing Framework tests + exposed by upgrade to Chrome 103 + ## What's New in 4.1.0 * Maintenance release which resolves diff --git a/package.json b/package.json index 1d7bfb1c36..28ec23b30d 100755 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "infusion", "description": "Infusion is an application framework for developing flexible stuff with JavaScript", - "version": "4.1.0", + "version": "4.2.0", "author": "Fluid Project", "bugs": "http://issues.fluidproject.org/browse/FLUID", "homepage": "http://www.fluidproject.org/", diff --git a/src/framework/core/js/Fluid.js b/src/framework/core/js/Fluid.js index 907275e749..5d61a46a5b 100644 --- a/src/framework/core/js/Fluid.js +++ b/src/framework/core/js/Fluid.js @@ -1,5 +1,5 @@ /*! - * Fluid Infusion v4.1.0 + * Fluid Infusion v4.2.0 * * Infusion is distributed under the Educational Community License 2.0 and new BSD licenses: * http://wiki.fluidproject.org/display/fluid/Fluid+Licensing @@ -30,7 +30,7 @@ Underscore may be freely distributed under the MIT license. var fluid = fluid || {}; // eslint-disable-line no-redeclare -fluid.version = "Infusion 4.1.0"; +fluid.version = "Infusion 4.2.0"; // Export this for use in environments like node.js, where it is useful for // configuring stack trace behaviour diff --git a/src/framework/core/js/FluidIoC.js b/src/framework/core/js/FluidIoC.js index a5a6f9ac72..f29a3eac93 100644 --- a/src/framework/core/js/FluidIoC.js +++ b/src/framework/core/js/FluidIoC.js @@ -2158,17 +2158,10 @@ fluid.findWorkflowShadows = function (shadows, blockStart, blockEnd, workflowRec }; fluid.waitPendingIOTask = function (transRec) { - var instantiator = fluid.globalInstantiator; - var resumeCurrentTransaction = function () { - instantiator.currentTreeTransactionId = transRec.transactionId; - }; - var bracketIO = function (sequence) { - return sequence.concat([resumeCurrentTransaction]); - }; var sequence; var waitIOTask = function () { // TODO: Think about clearing out old resolved I/O from this list - return transRec.pendingIO.length ? (sequence = fluid.promise.sequence(bracketIO(transRec.pendingIO))) : null; + return transRec.pendingIO.length ? (sequence = fluid.promise.sequence(transRec.pendingIO)) : null; }; waitIOTask.taskName = "waitIO"; waitIOTask.sequence = sequence; @@ -2209,6 +2202,7 @@ fluid.enqueueWorkflowBlock = function (transRec, shadows, workflowStart, workflo sequence.push(globalWorkflowTask); } else { var localWorkflowTask = function () { + resumeCurrentTransaction(); if (workflowRecord.namespace === "concludeComponentInit") { sequencer.hasStartedConcludeInit = true; }