Ticket #2532429 (closed task)

Reporter


Eric Ferraiuolo
Opened: 06/18/12
Last modified: 12/12/12
Status: closed
Type: task
Resolution: fixed

Owner


Eric Ferraiuolo
Target Release: 3.8.0
Priority: P3 (normal)
Summary: Extract Y.Model.Base and Y.Model.Observable from Y.Model
Description:

Provide a `Y.Model.Base` class which can be subclassed and provide all the features of `Y.Model` sans observable events. `Y.Model.Base` will extend `Y.BaseCore`.

`Y.Model.Observable` will also be provide as a class extension to mix in observable events to a model subclass.

`Y.Model` will have the features of the current version, it will be `Y.Model.Base` pre-mixed with `Y.Model.Observable`.

`Y.BaseCore` instance objects are ~70% smaller (in memory usage) than `Y.Base` instance objects. When using models on the server it is rare that events would be used since the lifecycle of the model
instances is so short (just for the request). It is also rarely the case that a model would listen for its own events. By splitting out a `Y.Model.Base` class, the slimmer version of the model class
could be used on the server, and when loaded on the client, the `Y.Model.Observable` extension could be automatically mixed in.

Type: task Observed in Version: development master
Component: Model Severity: S3 (normal)
Assigned To: Eric Ferraiuolo Target Release: 3.8.0
Location: Library Code Priority: P3 (normal)
Tags: YAF2 Relates To:
Browsers: N/A
URL:
Test Information:

Change History

Caridy Patino

YUI Contributor

  • Username: caridy
  • GitHub: caridy
Posted: 07/30/12
  • keywords changed from YAF2 to YAF2, caridy

Eric Ferraiuolo

YUI Developer

  • Username: ericf
  • GitHub: ericf
Posted: 07/30/12
  • keywords changed from YAF2, caridy to YAF2

Eric Ferraiuolo

YUI Developer

  • Username: ericf
  • GitHub: ericf
Posted: 08/3/12
  • milestone changed from 3.NEXT to 3.7.0

Eric Ferraiuolo

YUI Developer

  • Username: ericf
  • GitHub: ericf
Posted: 08/3/12
  • completed changed from 0 to 2.5
  • estimated changed from 0 to 5
  • remaining changed from 0 to 2.5

Eric Ferraiuolo

YUI Developer

  • Username: ericf
  • GitHub: ericf
Posted: 09/5/12

This is waiting on the Base Events Pull Request to be merged:
https://github.com/yui/yui3/pull/168

Jenny Donnelly

YUI Developer

  • Username: jenny
  • GitHub: jenny
Posted: 09/19/12
  • milestone changed from 3.7.0 to 3.NEXT

Moving from 3.7.0 to 3.NEXT.

Eric Ferraiuolo

YUI Developer

  • Username: ericf
  • GitHub: ericf
Posted: 10/24/12
  • completed changed from 2.5 to 3.5

Eric Ferraiuolo

YUI Developer

  • Username: ericf
  • GitHub: ericf
Posted: 10/24/12
  • remaining changed from 2.5 to 1.5
  • sprint changed to Sprint 03
  • status changed from accepted to checkedin

Opened a Pull Request for this:
https://github.com/yui/yui3/pull/323

The `observable` branch on my yui3 fork has these changes as well as the built files, so it's ready to use:
https://github.com/ericf/yui3/tree/observable

Jenny Donnelly

YUI Developer

  • Username: jenny
  • GitHub: jenny
Posted: 12/12/12
  • milestone changed from 3.NEXT to 3.8.0

Jenny Donnelly

YUI Developer

  • Username: jenny
  • GitHub: jenny
Posted: 12/12/12
  • resolution changed to fixed

Jenny Donnelly

YUI Developer

  • Username: jenny
  • GitHub: jenny
Posted: 12/12/12
  • status changed from checkedin to closed