Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

Already on GitHub? Sign in to your account

September 2012 iteration planning #624

SteveSanderson opened this Issue Sep 3, 2012 · 10 comments


None yet
3 participants

SteveSanderson commented Sep 3, 2012

Hi all

For September, I propose we set our focus on getting to code-complete for a 2.2 release, and we do that by significantly trimming the set of items we plan to include in that release.

In August we got some great code baked into the product, but our overall momentum wasn't enough to hit the original set of goals for that iteration. This was largely to do with me being out of action for a couple of weeks, and to do with some issues requiring a lot of discussion.

Before we confirm exactly what set of issues we have as a goal for September, could anyone concerned please take a look at this 2.2 scope proposal? Is this reasonable, both in terms of what we can get done in September alongside updating docs, and as good place to say it's time for a 2.2 release to go out?


mbest commented Sep 10, 2012

@SteveSanderson - You have a bit of a mix-up with you git/GitHub configuration. Your commits have the email address steve@codeville.net, which doesn't match the email address you have configured in GitHub. If I click on your name from your commits, it just takes me to the GitHub homepage. Also since your Gravitar is associated with steve@codeville.net, it shows up for your commits but not for your comments and other GitHub activity.


SteveSanderson commented Sep 21, 2012

You have a bit of a mix-up with you git/GitHub configuration

Good point - thanks. Have now registered both email addresses with GitHub, and now the links and Gravatars all seems to work.


mbest commented Sep 21, 2012

@SteveSanderson, thanks for taking care of #324 and #615. I've merged them now. I've added #474 to version 2.2 since I'd like to get that in as soon as possible.


SteveSanderson commented Oct 1, 2012

OK fantastic, we're now code-complete for v2.2.0!

I've uploaded the RC build to https://github.com/SteveSanderson/knockout/downloads. So what's left now is:

  1. Email the KO mailing list to announce availability of the RC (with brief descriptions of what's new)
  2. Update the docs to match (this includes doing #374)
  3. Fix any last-minute critical issues raised by KO users based on the RC
  4. Publish and publicise the final 2.2.0 build

Hopefully we can get all of 1-4 done in the first half of October, leaving the second half of the month to get started on planning the next version :)

Anyone keen to volunteer for specific aspects of item 1 or 2? Ryan/Michael: I'm happy to coordinate this if preferred.


rniemeyer commented Oct 1, 2012

I am happy to help with any of this, but have commitments this week. Next week, I will happily assist with whatever needs to be done.

@SteveSanderson - the 2.2RC files that you uploaded do not appear to be a current build.

I looked through the commits and here are a list of the items that seem like they would be most interesting to a user of the library:

2.2 Changes

  • css binding is more flexible (multiple classes in a string and dynamic class names)
  • observables and computed include peek function for access without adding a dependency
  • optionsValue now can accept a function like optionsText
  • containerless text binding <-- ko text: myValue -->
  • when a function is used for template name, it now receives the binding context as the second argument
  • optionsCaption can be an observable
  • the options binding will skip destroyed items, unless optionsIncludeDestroyed is passed as truthy
  • ko.utils.compareArrays now reports moved items
  • The foreach functionality now does its best to understand items that were moved and move their content rather than re-render
  • beforeMove and afterMove callbacks can now be configured when using foreach functionality.
  • handle name attribute better in older versions of IE
  • The ko object is now available from within bindings, even if ko is not global, such as when used with an AMD loader.
  • array mutation functions no longer cause subscriptions in computeds
  • change (normal manual subscription) and beforeChange callbacks no longer create dependencies
  • can access the current element in a binding using the $element variable
  • can access the current context directly in a binding using the $context variable
  • writes to writeable computeds can now be chained like observables
  • foreach and template bindings now accept an as option to give $data an alias.
  • computed observables now have an isActive function that will indicate that the computed has dependencies (can be triggered again)
  • The if and ifnot bindings will now copy child DOM elements as their template, but bind against the original DOM elements. Additionally, these bindings will only re-render the content when the truthiness of their value actually changes.
  • The with binding will now take a copy of the child DOM elements to use as a template, but will bind against the original DOM elements, when the initial value is truthy.
  • the afterRender, beforeRemove, afterAdd, beforeMove, and afterMove callbacks of the template binding will no longer cause dependencies.

mbest commented Oct 1, 2012

The 2.2RC files that you uploaded do not appear to be a current build.

I've re-uploaded the 2.2RC files with the current build.


mbest commented Oct 2, 2012

I've re-uploaded the 2.2RC files with the current build.

Maybe GitHub doesn't work properly if you delete a file and then re-upload another with the same name. Even after I deleted the build and uploaded the correct one, the old one is still showing up (It appears to be version 2.1.0). Since I'm not sure how to fix it, I've just deleted the minified file from the downloads (the debug file seems to be okay). Interestingly, the "cloud" link still works: http://cloud.github.com/downloads/SteveSanderson/knockout/knockout-2.2.0rc.js

I sent a help request to GitHub support.


mbest commented Oct 2, 2012

This is the message I got from GitHub support:

I am afraid you have to change the name slightly and upload the new file.

But apparently all I had to do was wait a while. I've uploaded the file again and now it works.


mbest commented Oct 3, 2012

I posted on the forum about the release candidate. Thanks, Ryan, for compiling the list of changes.



rniemeyer commented Oct 3, 2012

Great, thanks!

I have had that problem before in other repos with uploading a new version of a file with the same name. Seems to usually show up after some time at least.

@mbest mbest closed this Oct 30, 2012

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment