DoneJS Contributors Meeting – 2016-11-25

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

Live Stream

In Progress Epic Status:

Topic Suggestion:
We should update our QUnit tests on the generators and demos to use the documented 2.0 style syntax rather than the deprecated now undocumented style.
There is even a tool to help migrate automatically

Or, maybe we should consider switching to something like Mocha, Jest, or Jasmine

Topic Suggestion:

  • Using decorators
  • Could can-define be a decorators?
  • What about backup, validate, and stream?
class Something {


Topic suggestion: how to require multiple versions of the same package

This is a bigger discussion that might be more appropriate for another Contributors Meeting (since we’ll be missing a few people).

Last Week

  • Started working on documenting steal-conditional in StealJS website
  • Working on steal-conditional sample apps
  • Working on figuring out string interpolation variations during build time

Next Week

  • Finish documentation on StealJS website
  • Make guides

Last week:

Next week:

  • Finish the Models section of the CanJS Technical Highlights page:
  • Review other CanJS V3 site pages
  • Review StealJS 1 pages
  • Continue working on meetup & conference opportunities
  • Update the DoneJS Upcoming Events section on the Community page
  • November DoneJS Stats report

Last Week
Bitcentive working towards MVP

  • cleaning up issues and incomplete work
  • got CD running with prod deployments to CDN for static and Heroku for SSR and APIs
  • updating to latest and greatest CanJS and DoneJS packages
    Next Week
    Continue working towards Bitcentive MVP
  • get models working correctly
  • get components working
  • finish MVP

my thoughts about the naming of the ecosystem are:

  • we have a can core bundle with all the core modules and it version number depends on the feature or bugfixes on this core bundle.
  • we have a can ecosystem bundle that contains all the ecosystem modules. there version numbers depends on the features on the modules of the ecosystem.

if can ecosystem bundle changes the version number, it not changes the can core bundle.
otherwise if can core bundle major version changed, the can ecosystem also changed. e.g. can core 4.0 changes can ecosystem to can ecosystem 4.0

Rough meeting notes:

Attendees: @BigAB, @chasen, @daffl, @pYr0x, @justinbmeyer, @m-mujica, @obaid, & @RyanWheale

Discussed topics:

QUnit discussion:

  • Yes to upgrading the syntax
  • General problem: support all the combos of module formats, syntax, test library, etc.
  • Some discussion around creating generators versus transpilers:
    – Make fewer transpilers that handle each conversion individually, e.g. one for QUnit to Mocha, CommonJS to ES6, etc.
    – Make generators for each combination, e.g. a QUnit to Mocha CommonJS generator, QUnit to Mocha ES6 generator, etc.
  • Pro of transpilers: need to make fewer of them, can chain to support more combinations (e.g. QUnit to Mocha and Mocha to Jasmine transpilers make writing a QUnit to Jasmine transpiler unnecessary)
  • Pro of generators: generally easier to write and encourage forking for specific needs
  • Tabling any decisions until @phillipskevin is around


  • Nice for a DoneJS 1.1 release to have decorator support
  • Start making patterns that will be compatible with decorators in the future
  • Awesome decorators feature: only apply modules to explicitly affect code instead of implicitly
  • Heads up: decorators API might be discussed in a future TC39 meeting

Changes to ecosystem affect CanJS version:

  • can.all includes everything from ecosystem
  • Idea: showing version compatability with named releases
  • Idea: create can.ecosystem that includes the ecosystem dependencies and is versioned independently
  • Tabling this for now until we run into this issue