API 中心のアプリケーションの Rails バージョンを 5.2
から 6.0
にアップグレードする際に処理する必要がある主な事項には、構成のチューニングと非推奨の警告の修正が含まれます。
Ruby v2.7.6
は、この記事の執筆時点では v3.0
より前の最新バージョンであり、アプリケーションが BigDecimal
に依存するライブラリを使用している場合、v2.7.6
にアップグレードすると重大な問題が発生する可能性があります。
ご存知のとおり、BigInt 型は、任意の大きな整数を表すことができるデータ型として JavaScript で使用できます。これは、値が number
で表せる範囲を超える場合の補助として役立ちます。ただし、JSON
形式でデータを交換する必要があるアプリケーションで作業する場合、JSON
はデフォルトで BigInt
値をシリアル化する方法を認識しないため、BigInt
値が問題になります。このような場合、1 つの解決策は、この投稿で示されているように、BigInt
を string
に変換することです。
socket.io を v2 から v3 にアップグレード に続き、この投稿では、socket.io
と関連パッケージをこの投稿の執筆時点での最新バージョンにアップグレードすることについて説明します。設定の変更は、redis-adapater
と、今回はクライアント io
をインポートする方法のみのようです (特定のユースケースの場合)。
socket.io と socket.io-redis-adapter や socket.io-redis-emitter などの関連ライブラリは、v3 以降、機能または動作にいくつかの重大な変更があり、v2 から v3 への移行中に問題が発生する可能性があります。この投稿では、実際の経験に基づいて、特定のユースケースで発生した問題とその解決方法をリストします。
最近はバックエンド開発やフロントエンド開発に関係なく、JavaScript でコードを書く機会が増えているので、少なくとも 10 年以上ぶりに JavaScript を真剣に検討してみるべきだと考えました。ここでは、長い間見過ごされてきたこのプログラミング言語を詳しく調べる際に役立つリソースを紹介します。
共有 Linux マシンまたは環境で作業する場合、機密情報を含むファイルを非表示にしたり保護したりする必要がある場合があります。幸いなことに、ほとんどの Linux ディストリビューションに既にプリインストールされている GnuPG というツールがあり、このツールを便利に利用できます。この投稿では、非常に基本的なシナリオでこのツールをいかに簡単かつ迅速に使用できるかについて説明します。
Ruby の defined?
がどこで定義されているのか疑問に思ったことはありませんか? メソッドのように見えるため、Object
、Kernel
、BasicObject
、さらには Class
や Module
など、さまざまな場所を調べようとするかもしれませんが、どの場所でも見つけることができません。まあ、気付くまではそうですが、答えは非常に簡単です。defined?
はメソッドではなく、演算子またはキーワードです。
アプリケーション Rails のバージョンを 5.1
から 5.2
にアップグレードするのは、4.2 から 5.0 や 5.0 から 5.1 よりもはるかに簡単です。処理する変更は非常に少なく、テストが失敗する可能性も低くなります。