Skip to content

Releases: MrSwitch/hello.js

Fix broken dist/

02 Dec 10:30
Compare
Choose a tag to compare

See related issue #529

Release v1.16.0

01 Dec 10:23
Compare
Choose a tag to compare
  • New Module Spotify #524
  • Add Popup options left and right #500
  • Add params to oauth_proxy #528

Patch v1.15.1

19 Jun 20:02
Compare
Choose a tag to compare

Fixes Facebook auth login version parameters. See #498

Update Facebook v2.9

14 Jun 11:07
Compare
Choose a tag to compare

Release v1.13.5

31 Aug 13:19
Compare
Choose a tag to compare

Release v1.13.0 Update

09 May 08:36
Compare
Choose a tag to compare

Remove authentication 'display' parameter by default

Release v1.12.0 Explicit Scope

27 Feb 20:11
Compare
Choose a tag to compare

v1.12.0 reverts the default scopes that were introduced in v1.11.x

Now there is only one standard scope...

  • basic: "" (empty string)

In this release modules must explicitly define empty strings for common scopes. Not sure what that means? Let me explain.

So if you we have a generic function like which calls hello.login with the scope 'email' (a standard scope in hellojs v1.11), like so...

login(network) => hello(network).login({scope.email});

Now lets say that all but one of the providers linked to this service supported the email scope. The one that didn't is the one we are worrying about.

  • In v1.11.x: The module for network which doesn't support the scope 'email' would not have to worry, because it was a standard scope which defaulted to an empty string and it would not be applied to the OAuth login request. Conversely if the others supported the email string they would have to explicitly define it. email: 'email'.
  • In this version v1.12.0: Its changed instead the module must explicitly say that it doesn't support that scope. i.e.
scope: {
    email: ''
}

Typically its left up to the person implementing the library to know which scopes the provider supports But in the case of the the bundled modules its nice to map the scopes to an empty string to help the developer out. Doing it this way does involves more configuration (arguably), setting common scopes to an empty string, but on the flip side if they support the common scope then they dont have to set laboriously map the value to itself, with email: 'email'.

The real benefit comes with creating new modules. Developers dont need to know about this secret standards list which HelloJS has applied. So they can use any scope without having to wonder why its not been applied.

I hope that makes sense.

Thanks

Release v1.11.2

27 Feb 20:57
Compare
Choose a tag to compare

Release v1.11.0

26 Feb 17:53
Compare
Choose a tag to compare

Scope Map

This changes how default scopes are mapped. Previously a default scope was defined by what other modules had defined. This was particulary bad behaviour as depending on your modules a scope was deemed a default of "" (an empty string) was applied.

However this could still break some services. The following scopes will be mapped to null unless otherwise stated.

  • basic
  • email
  • files
  • friends
  • photos
  • publish
  • publish_files
  • share
  • video

Phonegap

The phonegap specific code has been removed from hello.js, and included with hello.phonegap.js (this is still bundled with dist/ files)
The OAuth flow is much better now, with less webviews being opened and closed. However you might like to revert to the previous version if you have problems.

Duct taping

19 Dec 00:12
Compare
Choose a tag to compare