Skip to content

Releases: forio/epicenter-js-libs

2.0

20 Sep 20:49
Compare
Choose a tag to compare
2.0

2.0 (2016-09-20)

This is a major release, including several major features and a few bug fixes.

  • New Feature: Introspection: You can now view a listing of all of the variables and operations (functions) exposed in your model. You can access this through the Introspection Service, or through introspect in the Run Service.
  • New Feature: Epicenter APIs, v2: New in this release, all calls are now routed to v2 of the underlying Epicenter APIs. This is largely a transparent change -- probably the biggest difference you'll notice is that Run Ids have a slightly different format; they no longer contain hyphens. Under the hood, runs are now created on a new and improved distributed model service infrastructure, which provides increased stability and improved logging and error reporting.
  • New Feature: jQuery 3.1: New in this release, you can include jQuery 3.1.0. Changes are backwards compatible, so you can use either jQuery 2.1.4 (as for previous releases of Epicenter.js) or jQuery 3.1.0, but you may already be using the newer version of jQuery in your project for other reasons. In particular, jQuery 3 is A+ promises compatible so will play well with ES6 code.
  • Bug Fixes:
    • In some cases when multiple end users were logging into a project in the same browser (but not explicitly logging out), the always-new strategy was failing to create a new run. This has been corrected.
    • The AuthManager's logout() call now correctly removes all managed cookies.

v1.8.1

07 Jul 19:51
Compare
Choose a tag to compare

This release fixes a bug introduced 1.8.0. In some cases, when an end user logged in (using the AuthManager), the end user's group was not being correctly passed down to the scope of the runs being created by that user. This has been resolved.

1.8.0

29 Jun 16:47
Compare
Choose a tag to compare

This release cleans up session handling significantly, including making cookies specific to account and project.

Improvements

  • All session information is now stored in a single cookie, epicenterjs.session, that defaults to a path of /app/{account id}/{project id}/.
    • Making the cookie specific to the account and project allows end users to log in to several different projects from the same team without session information being overridden.
    • As a developer, if you need to set the cookie path to something else, you can change it explicitly by passing { store: { root: 'other/path' } } to the Authorization Manager.
  • When a user logs in, the access token is now automatically passed to the User, Member, and State API adapters, and to the Channel and Epicenter Channel managers. As a developer, you no longer need to worry about passing tokens once the user is logged in.
  • The Epicenter Channel manager now automatically validates channel names. They must be in the form /{type}/{account id}/{project id}/{...}, where type is one of run, data, user, world, or chat. (See the underlying Push Channel API for additional details.) You can disable this validation if needed.

Bug Fixes

  • When automatically splitting long queries into multiple pieces, the pieces were still a little too long for Microsoft Edge when all the URL-encoding was included. This was fixed by shortening the size of the pieces to account for any encoding.
  • In some situations, the login component generated extraneous errors in the console. This has been fixed.

1.7.1

12 Apr 22:05
Compare
Choose a tag to compare
  • Bug fixes for the API configuration feature introduced in 1.7.0: make sure we first search for the API configuration on the current server; if it's not available, default to api.forio.com. This allows Epicenter.js to more easily be used on multiple Epicenter installations (not just forio.com), but still provides flexibility for local development.
  • Upgraded test framework (sinon) version.

1.7.0

11 Apr 22:57
Compare
Choose a tag to compare
  • The API configuration (that is, where the REST API calls should be sent) is now loaded from the server, rather than hard-coded in the library. This allows Epicenter.js to more easily be used on multiple Epicenter installations (not just forio.com).
  • In the Authorization Manager, improve how the path in the cookie is set to make local development easier. This is an extension of the improvement in v1.6.4.

1.6.4

27 Feb 01:05
Compare
Choose a tag to compare

This is a minor release.

It includes:

  • In the Authorization Manager, set the path in the cookie based on the account and project name. This allows end users to log in to multiple Epicenter simulations at once without conflict.

v1.6.3

23 Feb 22:01
Compare
Choose a tag to compare

This is a minor release.

It includes:

  • Updates for the run strategies to use group name rather than group id to create runs with specific scope.
  • Addition of the Auto-Restore header to the Variables API Service query() call; previously it had only been set for the load() call. This header means that runs are automatically pulled from the Epicenter backend database into memory (and replayed) when they are queried. A run must be in memory in order to update model variables or call model operations.
  • Clean up of the Authentication API Service logout() call; it no longer calls the (unsupported) Epicenter delete.
  • Documentation improvements, including more information on running Epicenter projects locally and additional examples when using Asset API Adapter.

1.6.2

30 Dec 23:43
Compare
Choose a tag to compare

This is a minor release.

It includes:

  • Internal refactoring to add support for version numbers in upcoming Epicenter APIs.
  • Bare-bones implementation of F.service.File to get contents of any file in your project. Currently only used internally, by Flow Inspector (see https://github.com/forio/flow.js/releases/v0.10.0).

Bug fixes

02 Dec 20:28
Compare
Choose a tag to compare

Bug Fixes:

  • State API Service did not allow you to pass in an exclude filter before, now it does
  • Fixed issue with the splitGet feature in the previous release which broke up large Ajax requests.

Asset API, Auto-restore & more

17 Nov 21:22
Compare
Choose a tag to compare

Features:

  • The libraries now include an Asset Service (mapping to the underlying REST Asset API) to allow end-users manage files within projects.
  • Run Service now auto-restores runs which go out of memory (#132). You can turn this off by setting autoRestore to `false. See https://forio.com/epicenter/docs/public/run_persistence for more information on Run Persistence.
  • Run Service now automatically breaks apart long URLs into multiple GETs behind the scenes. Browsers typically have a URL length limit of 2048 characters, and it's easy to bump into that for GETs with lots of variables. There should be no change in behavior as a result of this change (#123).
  • Run Service now supports id as an alias to filter as part of the options, to be more semantic you're only working with a single run.
  • World Service: delete() now takes in an optional world id as first param #56
  • World Service now supports id as an alias to filter as part of the options, to be more semantic you're only working with a single world.
  • World Manager now takes in the model from the run if you don't specify it as part of the world.

Bug Fixes:

  • Run manager sets cookie path to / if you're running it locally - this fixes an issue where cookies were never set locally and you always got a new run if you refreshed.