The long awaited 2.0 is getting very close. babel-plugin-react-transform reached version 2.0 last Wednesday. This was all I needed to push the book to Babel 6. I released 2.0.0-beta1 as a xmas present of some sort to my Leanpub readers in early access at 25th. I think they earned it. :)
Today, after some initial feedback and subsequent fixes, I am prepared to publish a wider scale beta. Besides Babel 6 support, I have improved the formatting of the code examples considerably. Instead of having to guess what code goes and where, the examples now contain bolding and overlining to illustrate the changes better. In addition, there's some new content about Flow and JavaScript language features.
The primary purpose of this beta is to encourage you to provide feedback as there's still some time before the book goes to printing presses. I know it's missing some interesting topics, but that's something that can be worked during the next iteration (2 -> 3) of the book.
I am prepared to spend the next week or two on improvements on both the book and the site. It might be fun to code something cool for a change. ;)
2.0.0-beta2
#In total 129 commits went to 2.0.0-beta2
. To make it easier to follow what happened and where, I've split up the changes below.
You can see GitHub for all changes.
npm init -y
shortcut. Far better than having to hit return.BABEL_ENV
works and why it needs to be set.bind
convention and replaced that with a snippet about property initializers.items
to more specific notes
. This has been done also for lanes
.componentWillUpdate
.update
interface. Now it doesn't care about the data you pass to it. This has been done for both stores (NoteStore
, LaneStore
). The implementation goes through object-assign
.update
interface here as well. One interesting refactoring would be to do a generic CRUD store and then reuse that from elsewhere.waitFor
. It just introduced unnecessary complexity given we're dealing with synchronous data. There's still an explanation around as you need to be aware of it in asynchronous cases when you are dealing with data dependencies.Lane
bind
s from the constructor
to render()
. Although this isn't ideal performance-wise, this is something that is easier to handle in Flow typing.DefinePlugin
.include
s. Interestingly this worked even if it was missing a "s". That's something to investigate.peerDependencies
.>= 1.3.0 < 2.0.0
version range.This depends on you. I have a couple smaller things on my plate, but nothing major. I want to push the final release as far as I can. But to achieve that, I'm going to need feedback so I know what to improve. There's no such thing as a perfect book, but at least I'm willing to push this as far as I possibly can.
I might do an intermediate beta-3. I want to do a final release within a week or two. After that I'll focus my efforts depending on demand.
If you are working through the book, it might be a good idea to patch your project based on the book repository so it's up to date and continue from there. Eggs and omelette, right?
Leanpub readers have access to the stable release through "extras". I made a little switcheroo there. Earlier the beta version was within "extras". Speaking of which, I will need to figure out a better way to archive releases and make them available. Leanpub isn't working in my favor here unfortunately.
Remember that you can contact me directly or through the GitHub issue tracker. Also Gitter will work. The last thing I want is that you curse some parts of the book alone. I'm here to help after all.
You can support my work by purchasing the book at Leanpub. Every little bit counts and allows me to keep it up.