DoneJS Contributors Meeting – 2016-12-30

Please add topics for discussion (and your status if you’re a contributor).

Live Stream


Last Week:

  • Fixed critical issue with can-util/js/ajax. Testee is not working with production though, preventing full canjs release. Waiting for @daffl or @phillipskevin to help.
  • Fixed sidebar issue with site
  • Started work on can-stream changes.

Next Week:

  • can-stream changes
  • DoneJS 1.0

Status last week:

Next week:


  • How to best organize community contribution efforts.
  • Removing API docs from module READMEs

Last week

  • Finished up Steal 1.0 article and released it.
  • Working on refactoring done-css to use steal-css.

Next week

  • Finish up done-css refactor.
  • Bitballs SSR bug.
  • Other DoneJS 1.0 things.

Last Week:




Next Week

  • making steal video
  • steal-cache-bust
  • make system-trace part of stealjs core

Last Week:

  • Created can-zone-storage to work with zone-safe data, primarily for Done-SSR.
  • Published can-connect-feathers@3.0.0

Next Week: Back on client work


  • can-zone-storage
  • can-connect-feathers

Rough meeting notes:

Attendees: @chasen @justinbmeyer @Macrofig @marshallswain @matthewp @pYr0x

Discussed topics:

can-operate and can-symbol proposal:

Mixin-based can-define-stream:

  • Building mix-ins are tough: how do you define their interaction?
  • Idea: mix-ins you have to apply in a certain order
  • Idea: structure code to provide hooks for different steps
  • can-connect has the same issue with behaviors
    – It chooses the order based on the behaviors it knows

Smart merge:

  • Intelligently merges objects based on IDs
  • Use it by adding a can-connect behavior
  • Maybe this will be made part of super-map

steal-cache-bust issue:

  • Idea is that in production, in order to bust caches, query parameter is added when bundles are fetched
  • Problem: it has to be added as a config dependency in package.json; it becomes part of the main bundle; steal-cache-bust is only loaded after the main bundle; main bundle isn’t ever cache-busted
  • Idea: move the functionality into core as part of Steal’s mission to make it easy to do the right thing

can-connect-feathers & can-zone-storage:

  • Use the regular Feathers client library
  • Behaviors: maps the can-connect methods to Feathers methods
  • Session.current has all the session info and is observable
    – Import your model to access the global session data
    – Automatically updates based on log in/out
    – Awesome because you don’t need to pass the session data throughout all the parts of your app
  • Challenge: globals are SSR’s enemy
    – Solution: can-zone-storage makes the global session and SSR possible