去年の後半に、リリースされたばかりの Angular2 を使用してチャット機能を作っていました。チュートリアルとかを一通りこなして実装しましたが、Rails に組み込む部分で四苦八苦したのが印象深いです。
そんなシステムが今朝クラッシュしていました。なんでだろうと思ったら zone.js が何かコケていると。でも昨日まで動いていて特に手を触れていないのになぜ急に壊れるのか。DB には特に問題はなかったのでこれはもう完全に JS 側の問題だろうと思って調べていたところ、RxJS が原因でした。
CDN から読み込んでくる時にバージョン指定していなくて、昨日次期メジャーバージョンアップの alpha 版が出されたことでコケたみたいです orz
完全にケアレスミスですね。チュートリアルからコピーしてきた部分でしたが、バージョン指定をしているライブラリもあったので、まぁ気づけよと。RxJS の 5 系を指定したらまた問題なく動いてくれました。
やれやれこれで一件落着かと思っていたのですが、引き続き systemjs.config.js を眺めていたらどうも angular core の方にもバージョン指定がされていないように見えました。何か嫌な予感が、胸騒ぎがしました…。
_あ …ありのまま 今 起こった事を話すぜ!
『おれはチュートリアルに従い Angular2 を動かしていると
思ったらいつのまにか Angular4.2.2 になっていた』
な… 何を言ってるのか わからねーと思うが
おれも何をされたのかわからなかった…
頭がどうにかなりそうだった…
見間違いだとか自動アップデートだとか
そんなチャチなもんじゃあ 断じてねえ
もっと恐ろしいものの片鱗を味わったぜ…_
いやぁ、本当に設定がザルでした(汗) 幸いな事に Angular4.2.2 の今でも(確認した範囲では)問題なく動いてくれていたので、このバージョンでロック。今後こういうことが無いように注意します…。