ember-simple-auth: Recommendation to install beta breaks ecosystem

From the docs:

Installing the library is as easy as: ember install ember-simple-auth@3.1.0-beta.1

However this beta is not marked as latest, so any other addons that require ESA won’t work - Babel will use random parts of the two libraries.

For example, using ember-simple-auth-token for JWT auth:

yarn why ember-simple-auth
yarn why v1.22.10
[1/4] Why do we have the module "ember-simple-auth"...?
[2/4] Initialising dependency graph...
[3/4] Finding dependency...
[4/4] Calculating file sizes...
=> Found "ember-simple-auth@3.1.0-beta.1"
info Has been hoisted to "ember-simple-auth"
info This module exists because it's specified in "devDependencies".
info Disk size without dependencies: "1.8MB"
info Disk size with unique dependencies: "2.8MB"
info Disk size with transitive dependencies: "52.19MB"
info Number of shared dependencies: 236
=> Found "ember-simple-auth-token#ember-simple-auth@3.0.1"
info This module exists because "ember-simple-auth-token" depends on it.
info Disk size without dependencies: "2.73MB"
info Disk size with unique dependencies: "3.73MB"
info Disk size with transitive dependencies: "53.12MB"
info Number of shared dependencies: 236

In my case this means that

beforeModel(transition: any) {
    this.session.requireAuthentication(transition, 'login');
}

throws - session doesn’t have any methods, only the authenticated data block. Uninstalling ember-simple-auth-token makes it work again.

Please can we get a 3.1.0 release, and never recommend installation of a beta - that’s guaranteed to cause these types of problems.

About this issue

  • Original URL
  • State: open
  • Created 3 years ago
  • Comments: 28 (10 by maintainers)

Most upvoted comments

An app written for 3.1.0-beta.1 will break in really weird ways if 3.0.1 is installed instead.

Of course it will 😉 3.1.0 introduces new APIs that do not exist in 3.0.1. That does not mean 3.1.0 is not backwards compatible.

We’re aiming for a stable 3.1.0 within the next few weeks.