Skip to content

Error: "EmberObject.create no longer supports.." on Ember-4.12 addon - ONLY during embroider-safe scenario #733

Open
DazzlingFugu/ember-cp-validations
#2
@Pixelik

Description

@Pixelik

Environment

  • Ember Version: ~4.12.0
  • Ember CLI Version: ~4.12.2
  • Ember CP Validations Version: ^5.0.0

Steps to Reproduce

I updated my Ember Addon (v1) from Ember 4.8 to Ember 4.12.

The addon is using ember-cp-validations v5.

This is what my package.json looks like:

  "dependencies": {
    ...,
    "ember-cp-validations": "^5.0.0",
    ...
  },
  "devDependencies": {
    ...,
    "@babel/core": "^7.22.1",
    "@babel/eslint-parser": "^7.21.8",
    "@babel/plugin-proposal-decorators": "^7.21.0",
    ...,
    "@ember-intl/cp-validations": "^5.0.0",
    ...,
    "@embroider/test-setup": "^3.0.0",
    ...,
    "ember-auto-import": "^2.6.3",
    ...,
    "ember-qunit": "^6.2.0",
    "ember-resolver": "^10.0.0",
    "ember-source": "~4.12.0",
    ...,
    "qunit": "^2.19.4",
    ...,
    "webpack": "^5.0.0
  },
  "peerDependencies": {
    "ember-source": "^4.8.0"
  },
  "resolutions": {
    "@embroider/macros": "^1.12.2"
  }

Everything works and all tests are passing, except when running the embroider-safe scenario where this error is thrown:

Error: Assertion Failed: EmberObject.create no longer supports defining computed properties. Define computed properties using extend() or reopen() before calling create().
    at assert (http://localhost:4200/assets/test-support.js:233:15)
    at initialize (http://localhost:4200/assets/vendor.js:30952:81)
    at Class.create (http://localhost:4200/assets/vendor.js:31314:9)
    at new Options (webpack://dummy/../rewritten-packages/ember-cp-validations.126a452a/-private/options.js?:39:26)
    at Class.buildOptions (webpack://dummy/../rewritten-packages/ember-cp-validations.126a452a/validators/base.js?:130:12)
    at Class.init (webpack://dummy/../rewritten-packages/ember-cp-validations.126a452a/validators/base.js?:110:78)
    at Class.superWrapper [as init] (http://localhost:4200/assets/vendor.js:23897:22)
    at initialize (http://localhost:4200/assets/vendor.js:30988:9)
    at Class.create (http://localhost:4200/assets/vendor.js:31312:9)
    at InternalFactoryManager.create (http://localhost:4200/assets/vendor.js:13726:25)

I understand that the Error itself EmberObject.create no longer supports defining computed properties. is a known issue, but I'm only getting it during the embroider-safe test scenario.
In the default scenario everything is working fine and all tests are passing.

Any help would be much appreciated 🙏

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions