Ruby バージョン整理(TZInfo - 最後)
昨日保留した、
2020-07-08 Ruby バージョン整理(TZInfo)
| それが不都合だったので、動的にパッチを入れていた
を調べてみましたが、どうやらこのパッチは現時点では不要になっている
ようです。内部動作を追って見ましたが、DateTime オブジェクトの暦法が
グレゴリオ暦・ユリウス暦の何れであっても、unix time に正しく変換でき、
かつ、順序が正しく保証されてさえいれば TZInfo の外部には影響がない。
SubVersion の履歴を確認すると、このパッチは履歴の残る最初の版である
2012-09-15 の時点ですでに入っていて、おそらく TZInfo v.0.3 のころの
ためのものだったのではないかと考えられます。今となっては v.0.3 を
意識する必要はないでしょう。
…ということで、2020-07-08 の後半で説明した、版による仕様の違いを
吸収するパッチのみ GitHub に公開します↓。
https://github.com/suchowan/when_exe/commit/1da191f633740826f23cb28d1a68a0859396395d
デフォルトのコードは TZInfo v.2.0.2 に対応したものとし、v.1.x の
場合に不足のメソッドをパッチで追加するという考え方になっています。
こうした方が、今後のメンテナンスがしやすいでしょう。
2020-07-08 Ruby バージョン整理(TZInfo)
| それが不都合だったので、動的にパッチを入れていた
を調べてみましたが、どうやらこのパッチは現時点では不要になっている
ようです。内部動作を追って見ましたが、DateTime オブジェクトの暦法が
グレゴリオ暦・ユリウス暦の何れであっても、unix time に正しく変換でき、
かつ、順序が正しく保証されてさえいれば TZInfo の外部には影響がない。
SubVersion の履歴を確認すると、このパッチは履歴の残る最初の版である
2012-09-15 の時点ですでに入っていて、おそらく TZInfo v.0.3 のころの
ためのものだったのではないかと考えられます。今となっては v.0.3 を
意識する必要はないでしょう。
…ということで、2020-07-08 の後半で説明した、版による仕様の違いを
吸収するパッチのみ GitHub に公開します↓。
https://github.com/suchowan/when_exe/commit/1da191f633740826f23cb28d1a68a0859396395d
デフォルトのコードは TZInfo v.2.0.2 に対応したものとし、v.1.x の
場合に不足のメソッドをパッチで追加するという考え方になっています。
こうした方が、今後のメンテナンスがしやすいでしょう。
この記事へのコメント