-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
2.1 release discussion #338
Comments
I set up a 2.1.0 milestone that we can use to track the issues. All the issues also have a v2.1 label. |
You can make a regular issue into a pull request by using the Github API or the hub tool. See this discussion on Stack Overflow for more information. I use the API method like this:
|
Fantastic - thanks for this. Will look through it in detail tomorrow morning. On 22 Feb 2012, at 22:52, Michael Best
|
Looks like a good list of fixes to me. For #182, I haven't looked at its current state in detail, but it would be nice if there is not a performance impact when $index is not required (which is normally the case). |
Nice, thanks for compiling this list. I'd be completely happy for us to merge in the following immediately: Michael, if you have capacity to merge these items into master, please go ahead whenever you are ready (and if you are happy with my pull request for #268). Otherwise I can do them soon. I'll continue looking at the following items on the list as soon as I can. |
I think that #323 could use a little more research. The current fix does not work properly for IE8 in standards mode and we should probably at least consider doing the same with for for/htmlFor. |
@rniemeyer - I updated the fix for #323 to support IE8 standards, and |
I did some tests and found a slight performance hit (but not sure since performance measures of Javascript can vary a lot). I made some performance changes in the latest commit that bring it to equal (or maybe better) terms with the base version. |
I pushed code for #122 (Internet Explorer and AutoComplete). The code works (I used the HTML provided in the issue to test it). I wanted it to work just like the default behavior, but it's a little different. Generally, the blur and change events happen at the same time (one after the other), but blur events also happen when the user switches to another window or application. |
What about #312 (comment) ? |
Here's what's left:
|
What about performance fixes in 2.1: regex for trim (current regex is not optimized): ieVersion enhancements: |
Performance is, of course, important. If you think a change could be valuable in Knockout, please open an issue or pull request. For 2.1, we've already included a number of performance updates: #287 - memory leak fix And there are more. |
I added #361 regarding changing |
Great stuff, everyone! For most of the remaining issues, I think we can have them cleared out this week (no travel for me this week - at last!). The big ones, #153 and #182, will require some careful investigation and if they look like they will need further iterations we could consider deferring them to v2.2 (just to keep the release momentum high) but I do hope we can get them into v2.1. Thanks all, especially to Michael and Ryan. |
Do you have a targeted release date for 2.1? The performance enhancements alone are very compelling. |
By the way is there a 2.1 branch that I can already explore? Or is it all getting put into the master? |
The master branch is what will become 2.1. |
You're welcome. Glad to have you back! |
@rniemeyer - It's been almost three weeks. Any chance you could take care of these? |
@mbest - sorry, my time is very limited at the moment. Will do my best. |
I'm happy with the implementation for #182. The changes are quite simple and clear. And the performance overhead of creating a new object for each item is offset by not creating an extra binding context object for each item. For #153, I was hoping @SteveSanderson would work on it first, but I can do it if he's busy. I took care of #258. |
Thanks for doing the doc update. I'll spend some time tomorrow morning looking at #153 and aim to clarify what exactly is involved in handling it (then possibly implement over the next few days). |
@SteveSanderson - The two commits you made yesterday have "unknown" as the author: 440a933...5d9c406 |
Whoops... never mind |
I'm going to be away next week, but I don't want to slow things down now we're this close. So, I took a quick decision to release the current state as 2.1.0beta - see the mailing list - hope you're all OK with this. All that's left now is the cosmetic "remove trailing whitespace" issue (which I'm happy to do as soon as I'm back), and the cross-frame stuff. I'm not convinced that having extra params and code paths is justified to support cross-frame named templates, even with Michael's simplifications, especially because it's equally justified to prefer to load templates from the parent doc. I'm tending towards agreeing with Ryan that the core doesn't need to be opinionated about something this obscure. So, we may not have any other non-cosmetic changes to make before 2.1.0 is finished. Michael - fantastic work with the I'll try to watch the mailing list for discussion about 2.1.0beta while I'm away, but will be slow to reply. Thanks all for your help! |
Sorry for the delay. I've been through the logs etc., and these are the doc updates I think we need before saying 2.1.0 is released:
Any volunteers to write particular ones? I'd be happy to take items 3 and 5. Ryan/Michael/anyone else keen to take particular ones? I've just created a branch, |
How do you build the documentation to test it? |
It works fine to install Jekyll and build it locally. From the root directory running As for the docs, I am happy to help out. I will start on number 4. I also would like to create 2.0 versions of all of the fiddles here and link to them from the appropriate doc pages. Then, I can circle back and help with number 2, if it still needs help. |
Hmm. Not sure I want to tackle that right now. |
@mbest - no problem. If you are inclined to write some docs, then I would be happy to help clean them up, if there are any issues with them. |
Actually this doesn't apply to the |
I can work on item 2. |
No pressure to install Jekyll, but just in case anyone wants the "fast track" steps for Jekyll on Windows, see here: http://www.madhur.co.in/blog/2011/09/01/runningjekyllwindows.html - note you don't need pygments, so you don't need Python either. Just Ruby will do. Then, once you have jekyll installed:
Then browse to http://localhost:4000/ |
Sounds fine to me. I am still planning to get jsFiddle links for all of the samples, but am out of town for work at the moment. No need to wait on that one though. I was also thinking of adding a sample to the ko.toJSON part to show what you can do with the "replacer" argument. Nothing that needs to wait though. |
For item 2, I've done the following:
Use this link to view the non-whitespace changes. Ryan or Steve, please feel free to review what I've done and change/expand it as you see fit. Also it'll probably be good to add or expand examples to demonstrate |
Thanks Michael! I've merged this all into the OK, so we're done, and 2.1.0 is released! I've just:
Would either of you like to post an announcement to the mailing list? I'm happy to do it myself, but I'd also like to give an opportunity for either of you to be the one bringing the good news this time, especially to emphasise that it's not just me producing all the great new features...! To broadcast this further, I'll write a blog post highlighting the changes in the next week or so (or if Ryan beats me to it, I might just post a link to his...). |
Marking this issue as closed now, but please feel free to continue the discussion here for as long as it is relevant. |
Steve, I feel you moved a bit too soon (although I understand we've been waiting a while to release 2.1). But you undid changes I made without finding out why I had made them. But the big change you made is in how I described "binding context". I spent a lot of time thinking about how to describe it while taking into account how the term was used already in the documentation (and the general definition of "context"). For example, the
I think that although we have an object called If we can, I'd like to change the document back so that "binding context" is used consistently to mean the view model object. |
I can announce this to the list, but since Michael really was the driving force behind this release, I would be happy to let him make the post as well. @mbest - let me know if you have time and want to, otherwise I will do it. It sounds like the As for binding context, I don't have a huge preference, but I generally think that binding context should refer to the object that contains I will put out a blog post on 2.1 as well today or tomorrow. |
@rniemeyer, thanks for the information. So instead of the view model being the binding context, it's the data of the binding context? I'll take another look through the documentation to see if I feel it presents this idea consistently. |
Oops. Steve is right. I was confused because |
@mbest - :) I had looked at it quick too and confused |
I'm happy to do it. I need to get some sleep now, but I'll send it off in the morning. |
I'd like to clean up (delete) all the leftover branches. Any downside to that? |
I personally don't think that keeping the branches is valuable. I'd like to see them cleaned up too. |
Other than the bold ones below, are there any of these we need to keep? 1.3 |
Nope, I think the others can all go. Thanks for tidying this. > But the big change you made is in how I described "binding context" Very sorry if I acted too hastily there. I'm very happy to reconsider how Part of the reason I was keen to move quickly on the release, when it Ryan, great to see the new blog design and the post about 2.1 appearing so Steve On 8 May 2012 19:21, Michael Best <
|
Done.
I felt a bit put off, but it's good we got 2.1 released.
I've read over your changes and the other related documentation, and I think your explanation is good too. I'm happy to keep it like it is.
I went to their site, but couldn't find the podcast. Do you have a link? |
We only just recorded it yesterday, so it may take a few days for them to finalise the production and upload it. I'm not sure how fast they typically do this. |
Just listened to the podcast. Great to get more exposure for Knockout! I don't remember you mentioning version 2.1 ;-) I thought I'd post a binding in one of my apps (not quite 14 but almost): <select name="stdName" data-bind="
enabled: $parents[1].data.accessToCreateSchema,
id: name,
options: $parents[1].data.stdVariables,
optionsCaption: '-- Select or New --',
optionsValue: 'name',
optionsText: 'name',
optionsBind: 'attr.title: $parents[2].stdVarTitle($data)',
value: stdName,
valueUpdate: 'afterkeydown',
setfocus: selectHasFocus"></select> |
I went through all the open issues and selected 14 of them to include in 2.1. I've divided them using labels into bugs (3), documentation changes (2), enhancements (8), and cosmetic changes (1). I've also divided the code (non documentation) changes by impact: minor (8) and moderate (4). All but three of the issues already have code attached (some I just added today) or don't involve code changes.
The text was updated successfully, but these errors were encountered: