LearnNewsExamplesServices
Frontmatter
id7814
titleFix regression: Replace deprecated parseConfig with createBindings in Layout.mjs
stateClosed
labels
bugrefactoringregression
assigneestobiu
createdAtNov 19, 2025, 5:34 PM
updatedAtNov 19, 2025, 5:36 PM
githubUrlhttps://github.com/neomjs/neo/issues/7814
authortobiu
commentsCount0
parentIssuenull
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]
closedAtNov 19, 2025, 5:36 PM

Fix regression: Replace deprecated parseConfig with createBindings in Layout.mjs

Closed v11.6.1 bugrefactoringregression
tobiu
tobiu commented on Nov 19, 2025, 5:34 PM

A regression bug was identified in apps/form/view/FormContainer.mjs, where parseConfig() is called on a layout. This method has been deprecated and removed in Neo.state.Provider.

The issue originates in src/layout/Base.mjs:

    /**
     * Applies all class configs to this instance
     * @param {Object} config
     * @param {Boolean} [preventOriginalConfig] True prevents the instance from getting an originalConfig property
     */
    initConfig(config, preventOriginalConfig) {
        super.initConfig(config, preventOriginalConfig);

        let me = this;

        me.bind && me.container.getStateProvider()?.parseConfig(me)
    }

Solution: Replace parseConfig(me) with createBindings(me) in src/layout/Base.mjs. The createBindings method in Neo.state.Provider correctly handles setting up reactive bindings using the new Effect-based system.

Affected File:

  • src/layout/Base.mjs

Verification: Verify that bindings on layouts (e.g., in apps/form/view/FormContainer.mjs) work correctly after the fix.

tobiu added the bug label on Nov 19, 2025, 5:35 PM
tobiu added the refactoring label on Nov 19, 2025, 5:35 PM
tobiu added the regression label on Nov 19, 2025, 5:35 PM
tobiu assigned to @tobiu on Nov 19, 2025, 5:35 PM
tobiu referenced in commit 17e188b - "Fix regression: Replace deprecated parseConfig with createBindings in Layout.mjs #7814" on Nov 19, 2025, 5:36 PM
tobiu closed this issue on Nov 19, 2025, 5:36 PM