Show more

久し振りにブログを書きました。おおよそ1年振りですね。

w3c-xmlhttprequest v3.0.0をリリースしました | ykzts.blog ykzts.blog/2020/08/01/w3c-xmlh

依存パッケージの管理にはRenovateを使っているのですが管理しているリポジトリの数が増えてきて依存関係の管理が極めて煩雑になってきました。なのでこれまでは一部のパッケージのみに限定していたautomergeの設定をより多くのパッケージに反映させるようにしました。

開発時に使われるパッケージの場合はminorリリースとpatchリリースの変更はautomergeされるようにし、そうでないパッケージの場合はpatchリリースの変更のみautomergeされるようにしています。

renovate-config/package.json at v1.11.0 · inabagumi/renovate-config github.com/inabagumi/renovate-

w3c-xmlhttprequestのv3.0.0をnpmに公開しました。TypeScript化がメインですがほかにも細かなバグの修正や最新のXMLHttpRequestの仕様に沿わせたりもしています。7月22日に着手したので一週間ほどの開発期間になりましたね。

Release v3.0.0 · ykzts/node-xmlhttprequest github.com/ykzts/node-xmlhttpr

GitHub Sponsorsを有効にするためにマイナンバーカードの申請をしばらく前にしたのですが一向に届く気配がないですね。

2011年から2012年にかけて開発していたnpm パッケージ『w3c-xmlhttprequest』をTypeScriptに書き換えました。名前の通りW3Cの仕様に沿ってXMLHttpRequestをNode.jsでも使えるようにしたものとなっています。

もともとはES5で書かれていましたが2016年にES2015に書き換えています。段階を踏めているので今回のTypeScriptへの書き換えも数日要したとはいえそこまでの手間ではありませんでした。

現代のJavaScript (TypeScript) はPromiseを前提としてエコシステムが完成されつつあるのでイベントベースのXMLHttpRequestの需要がどこまであるのかは正直疑問ではあるのですが……。

build: replace to typescript by ykzts · Pull Request #77 · ykzts/node-xmlhttprequest github.com/ykzts/node-xmlhttpr

自身がGitHubで管理しているいくつかのリポジトリのデフォルトブランチをmasterからmainに変更しました。当初はtrunkへの変更を検討をしていましたがGitHub社が管理されているリポジトリの多くがmainブランチをデフォルトブランチになっているようなので今後はこちらが主流になっていくだろうと判断しました。

また変更した後に気付きましたがmasterブランチを対象とするファイルやディレクトリ単位のURL (e.g. github.com/manaelproxy/manael/) からデフォルトブランチの同一パスへリダイレクトするようになっていますね。変更前はデッドリンクが発生してしまうことを危惧して影響が少なそうなリポジトリから変更していましたがデッドリンクの心配は不要そうで安心しました。

来週椅子が届き、再来週に机が届く予定です。リモートワークが長期化してきたので自宅の開発環境にもようやく投資を始めました。

GitHubでcode scanningのbetaが有効になったのでいくつかのリポジトリでチェックが行われるようにしました。

GitHubが提供するコード解析エンジンのCodeQLはGitHub Actions経由で分析を行えるようなのでsharing workflow templatesを使って自身の管理するオーガニゼーションの複数のリポジトリでWeb UI経由での有効化ができるようにしています。

.github/codeql-analysis.yml at main · inabagumi/.github github.com/inabagumi/.github/b

これまでNetlifyのProプランの料金は月額45ドルでしたが19ドルに変更されたようですね。これによりチームでの利用やパスワード保護といった機能が安価に使えるようになるのでNetlifyの利用者もより増えるのではないでしょうか。

Netlify Pricing and Plans netlify.com/pricing

v3以降でfull-icuが要求されるようになって使い勝手が悪くなってしまったReact Intlの代替として@​react-aria/i18nを試してみているのですがシンプルに使えて非常に良いですね。

I18nProvider – React Aria react-spectrum.adobe.com/react

Next SEOがESMの出力もするようになりwebpackなどのmoduleフィールドに対応したbundlerでTree Shakingが有効になりました。これによりビルド後のスクリプトファイルの容量の削減が見込めるのではないでしょうか。

github.com/garmeeh/next-seo/re

GitHub Enterpriseを使っていればGithubが落ちても問題がないかと言われればそんなことはまったくなく使っているライブラリのドキュメントやソースコードが読めなくなって困ったりします。

検証を兼ねて ykzts.technology ではこれまでGKEのRegional Clustersを使い三つのゾーンで実行させていました。しかしながら今月からゾーンごとにクラスターの管理手数料が導入されたことにより費用面で些か厳しくなってしまったためクラスターを作り直してひとつのゾーンで実行させるように変更しました。

これにより可用性は落ちてしまいますが月額の費用は大きく削減されます。また当初の目的であった検証もある程度の成果を上げられており、役割は終えたという認識でいます。

今回のクラスターの管理手数料が請求されるようになったことに伴いGKEにSLAが導入されるようになりました。よりサービスを安心して運用できるようになったのではないかと期待しています。

ボランティアで開発しているからといってセキュリティをないがしろにしてはいけませんし、企業による開発であっても開発者個人を攻撃するべきではありません。

Mastodonは今話題になっているスマートフォン向けアプリと同様にボランティアによって開発されているOSSですがセキュリティには一定の注意がはらわれて開発されていますね。

わたしの勤務先はGitHub Enterpriseを使っているのでGitHubさんが落ちても終業になりませんねえ。

GKEでクラスタの料金が上がってしまい少しコスト面で厳しくなってしまったのでこのサーバー ( ykzts.technology/ ) でElasticsearchを使うのをやめようと考えています。このサーバーではElastic Cloudを使っているためこちらをやめるだけで大幅なコスト減が見込めます。

わたしがinabagumi organizationで開発しているプロダクトはArchivedにしたものを除いてmasterブランチを廃止してtrunkブランチに名前を変更しています。これは他者のIPをお借りしたプロダクト開発を行っているためできる限りの配慮はしていきたいという方針によるものです。

Haneru Developers github.com/inabagumi

定期的にクローリングするウェブサービスでcron代わりにGitHub Actionsを使っています。ですが処理の開始までに少しの遅延があるため困っています

遅れる時間が一定なら調整をすれば良いのですが遅延する時間が2分から5分とまばらなので処理の間隔が詰まってしまいがちです。

こちらの問題に対処するために代替を思案しています。

Show more

山岸和利's choices:

ykzts.technology

ykzts.technologyMastodonのコミッターの一人である山岸和利 (ykzts) が個人で使うために運用しているMastodonサーバーです。