There were also some great releases! Some libraries made some great improvements in the past year, making my life as a developer better and happier.
With all that being said, let's get to reminiscing!
If you're interested in watching this in video form I got you covered! Check out my YouTube video which is me telling you about the past year of releases rather than you doing the work and having to read all the following words.
There were a couple of releases of Prettier this past year, culminating in 1.15, but you'll read more about that in November.
Big release from the Bootstrap team! One thing I love about Bootstrap is how careful they are with their upgrades. The amount of effort and care they put into every release is immense, and Bootstrap 4 was no exception.
Finally, I can invest some of my team to learning and implementing Service Workers! Mobile Safari support was the last main blocker for me, and that blocker was erased in January. It's now been a year of widespread support for Service Workers across modern browsers on the desktop and on mobile. No more excuses! Get Servicing! Workers!
Major release of the Ember framework. They always do such a good job of bringing their community along with them during their upgrades. However a major version is a major version and the big change here was the drop of older browsers IE9 and IE10. And really, IE9 and IE10 shouldn't even be a consideration at all anymore. But alas...
Heyooo! Webpack up in the house! Big release from the Webpack team, happened all the way back in February. The big improvement with Webpack 4 was the arrival of more sensible defaults which was a direct response to the 0-config movement started by ParcelJS and other tools.
I'm excited for Webpack 5, which, wouldn't be too surprising to see it arrive in February 2019. Not bad for a year's worth of work.
TypeScript continued its steady and stable release cadence throughout the entire year. Started off the year with the introduction of conditional types which laid the groundwork for later features to build on top of.
This year was definitely the year of TypeScript. It wasn't so much that TypeScript got amazingly better overnight, it was more that people started to enjoy all the features that TypeSciprt had accrued over the years.
MobX 4 was released in March, a release mostly in preperation for MobX 5 which happened in June (sorry, spoilers!) MobX 4 provided an alternative API for using MobX decorators without the decorator syntax - a very needed update due to the dependency on the now outdated decorator proposal.
Not a huge release but a right and proper semver major release! D3 5 updates the default API for async methods - to now use Promises! Welcome to the present D3!
I didn't realize how...dated...the npm website was until the new version was released.
Also I can't believe this happened all the back in February. I've gotten to used to the new website it feels like it's been there for years.
npm 6 was released! Big new release for npm, and it's been the major release for npm throughout 2018.
npm 6 introduces npm audit, a tool to check the security of every dependency in your node_modules folder.
This new feature was quite prescient as 2018 had more than a handful of security scares. Having this feature at the ready was definitely a case of npm skating to where the puck was headed, not waiting for it to arrive.
Node 10 was released! The latest and greatest LTS version of node (so far).
Redux 4 was released. A few small breaking changes that would only affect you if you were using parts of redux that were already discouraged. This is one library that I'm glad for the update but grateful for the slow pace of iteration.
If Redux updated every 6 months I'd be a little unhappy. How much could you even change?!
Finally. Seriously, finally. After 3 years a new version of Underscore was released. I can't tell you how many times I'd look at the source code of Underscare in master, to see a feature exist there (cough debounce.cancel()) only to find that it hadn't yet been published. So glad this one happened.
Biggest news of the month by far. Did you see this coming? I still don't believe it and it's been a reality for months now.
Actually just reading this news item was a little bit of a shock for me, all over again.
All I can say is I'm glad I'm not a betting man because if someone had given me this to bet on I would be out a handful of cash.
Big new feature here was MobX taking advantage of Proxy objects to power its functionality. Yes this limits its usage to modern and evergreen browsers, however that's why MobX 4 came out earlier this year - to provide a branch that would still support older browsers.
Glad to see MobX embracing the future. Helps push us all closer to there as well.
ESLint always does a great job of helping users migrate to their newest version. Their migration guides and documentation around changes are always top of class. Truly the team that runs ESLint is admirable for the class and ease which they manage a wildly popular library.
ES2018 is for real! Object Rest/Spread of properties gets official approval, as does Promise.finally. A pretty great year of features.
More TypeScript? More fun! TypeScript doesn't really follow semver that closely so while 3.0 looks big, it's really just the next feature release after 2.8. Still, a good release with many useful features that make typing projects more safe and more reliable.
This is the reference implementation for GraphQL and this was over a year's worth of work since the last major version of GraphQL. This brought this implementation to conformace with the June 2018 version of GraphQL, bringing with it support for new schema features and extensions.
Major Babel versions always hit like a cannonball and Babel 7 was no exception. No matter how careful the Babel team is somehow Babel releases still always feel somewhat controversial. That being said, I think Babel 7 was the least controversial release of Babel in ages.
The Babel team removed all yearly presets to encourage people to both use
I think one of the biggest releases of the month. Honestly brought about a huge backlog of features to an official release. If you click on the blog post link there's literally an almost page high bullet point list of upgrades that went into this release.
Mostly what I was excited about was the increase in feature support such that the need to eject went down. Also Create React App 2.2 added opt-in support for TypeScript which is awesome!
Big major release from the Angular team. This continues to see the Angular team work on performance of the framework as well as provide more built-in components that make writing applications easier and quicker.
Very popular CSS-in-JS library. Gets smaller and smarter.
The whole landscape for CSS-in-JS libraries is the fiercest its ever been so it has been great to see that competition push the quality of every library.
New Node! The experimental branch. Gotta wait for Node 12 for LTS though.
Adds support to other UI frameworks outside of React such as Ember, plain ol' HtML, and others.
Also upgraded to use Webpack 4.
A nice release. Would have liked to see it come a little quicker after Webpack 4 came out though. But whose to complain when it comes for free.
An independent foundation to steward the future of GraphQL. A great sign of health for GraphQL as a whole, reducing its reliance on Facebook for its future success. I love seeing news like this.
Another popular CSS-in-JS library. One of the fastest and smallest around. Did a really novel thing with creating their own JSX pragma function. A great release to see.
And TypeScript ends the year at 3.2. Again, slow and steady wins the race and TypeScript nails that to a T.
Essentialy Google's answer to React Native. It'll be interesting to see how this grows in popularity over the upcoming months.
What a year, huh? Did you remember all these things happening? Can you still believe that Microsoft bought GitHub? Also are you shocked there was no major releases of React? Just minor ones (with new features, and no breaking changes). Good on React for keeping things stable.
What does 2019 hold? I'm personally very excited about Webpack 5 which is supposed to have persistent caching to the filesystem to make startup time even faster.
I'm also very excited about ReasonML. I'm curious to see how its popularity and mindshare grow in 2019. It might be its year.
What are you excited about for 2019? What are you hoping for?
Oh, and before I forget - Happy New Year!