変更履歴—Pythonドキュメント
変更履歴
このドキュメントには、4.4.xシリーズのバグ修正と新機能の変更点が含まれています。を参照してください。 セロリ4.4(クリフ)の新機能 Celery4.4の新機能の概要については。
4.4.7
- 発売日
- 2020-07-31 11.45 PM UTC + 6:00
- リリースバイ
- Asif Saif Uddin
- task_received、task_rejected、およびtask_unknownをシグナルモジュールに追加します。
- [ESバックエンド]再試行しても安全な401を追加します。
- 内部エラーを失敗として扱います。
- redisファンアウトの警告を削除します。
- 修正:-Aと–argsは同じように動作するはずです。 (#6223)
- クラスベースのタスクの自動再試行(#6233)
- Redis結果バックエンドでグループ結果の順序を保持する(#6218)
- futureをcelery.fiveFix#6250に置き換え、reraiseの代わりにraise_with_contextを使用します
- REMAP_SIGTERM = SIGQUITが機能しない問題を修正
- (修正#6258)MongoDB:シリアル化の問題の修正(#6259)
- Redisオプトインで注文したセットを利用する
- テスト、CI、Dockerとスタイル、およびマイナーなドキュメントの改善。
4.4.6
- 発売日
- 2020-06-24 2.40 PM UTC + 6:00
- リリースバイ
- Asif Saif Uddin
- autoscale force_scaleメソッドを削除します(#6085)。
- 自動スケールテストを修正
- pingの宛先を渡して要求する
- コード:初期化オプションと実行オプションをマージします
- 状態なしでKeyValueStoreBackend.setメソッドを元に戻す
- celery multi に–range-prefixオプションを追加しました(#6180)
- as_list関数をAsyncResultクラスに追加しました(#6179)
- スレッドまたはgeventプールのCassandraBackendエラーを修正しました(#6147)
- 昆布4.6.11
4.4.5
- 発売日
- 2020-06-08 12.15 PM UTC + 6:00
- リリースバイ
- Asif Saif Uddin
- 欠落しているfutureへの依存関係を追加します(#6146)。
- ElasticSearch:ドキュメントがインデックス間で削除された場合、インデックスを再試行します
- Windowsビルドを修正
- chord_unlockタスクの再試行間隔をカスタマイズします
- ローカルでのマルチテストを修正
4.4.4
- 発売日
- 2020-06-03 11.00 AM UTC + 6:00
- リリースバイ
- Asif Saif Uddin
- 明示的な再試行でautoretry_forを修正しました(#6138)。
- 昆布4.6.10
- Django DBの最大年齢接続設定を使用します(修正#4116)。
- バックエンドの回復可能な例外で再試行を追加します(#6122)。
- 指数バックオフのジッターのランダム分布を修正しました。
- ElasticSearch:メタをjsonとして保存する設定を追加します。
- 修正#6136。 celery4.4.3は常に/ var / run / celeryディレクトリを作成しようとします。
- task_internal_errorシグナルを追加します(#6049)。
4.4.3
- 発売日
- 2020-06-01 4.00 PM UTC + 6:00
- リリースバイ
- Asif Saif Uddin
- s3バックエンドのバックエンドutf-8エンコーディングを修正しました。
- 昆布4.6.9
- タスククラス定義に再試行属性を含めることができます(#5869)
- pycurlをwheelをサポートする最新バージョンにアップグレードしました。
- statsinspectコマンドに稼働時間を追加します
- 問題#6019の修正:取得時にmysqlSSLパラメーターを使用できない
- TraceBackをクリーンアップして、例外タスクのメモリリークを減らします(#6024)
- 例外:NotRegistered:言語を修正
- トランスポートが接続されていない場合は、ワーカーオフラインメッセージの送信をあきらめます
- celery.__init__。pyの__all__にタスクを追加します
- チェーン内の単一のチェーンオブジェクトがMaximumRecursionを発生させないことを確認します
- prefetch_multiplierが1の場合の自動スケールを修正
- start_workerがpingタスクなしで機能できるようにする
- celeryd.confを更新します
- always_eagerモードのシリアライザーの構成を正しく処理する問題を修正しました。
- prefetch_multiplier時のprefetch_count増加の倍増を削除
- 再試行後に結果を返さないeager関数を修正しました
- スローしない場合は再試行結果を返し、is_eager
- 再配信されたフラグに関係なく、ワーカーが失われる間は常に再キューイングします
- ファイルシステムバックエンドで相対パスを許可する(#6070)
- [修正された問題#6017]
- タスクの重複による競合状態を回避します。
- 例外は古いスタイルのクラスであるか、BaseExceptionから派生している必要があります
- Windowsビルドの修正(#6104)
- base.pyのメタタスクにエンコードを追加します(#5894)
- マイクロ秒の問題を解決するためにtime.pyを更新します(#5199)
- バックエンド_ensure_not_eagerエラーを警告に変更します
- 'celery.chord_unlock'タスクの優先サポートを追加(#5766)
- 熱心な再試行動作を変更する
- elasticsearchバックエンドでの競合状態を回避する
- バックエンドベースget_manyパスREADY_STATESarg
- Elasticsearchの統合テストを追加し、_updateを修正します
- feat(backend):ArangoDBバックエンドにクリーンアップを追加します
- jythonチェックを削除します
- ファイルシステムのバックエンドを選択してシリアル化できない問題を修正
4.4.0
- 発売日
- 2019-12-16 9.45 AM UTC + 6:00
- リリースバイ
- Asif Saif Uddin
- このバージョンは、CPython 2.7、3.5、3.6、3.7、および3.8で公式にサポートされており、PyPy2およびPyPy3でもサポートされています。
- 昆布4.6.7
- タスククラス定義に再試行属性を含めることができます(#5869)
4.4.0rc5
- 発売日
- 2019-12-07 21.05 AM UTC + 6:00
- リリースバイ
- Asif Saif Uddin
- 昆布4.6.7
- イベントがない場合、イベントのブートステップは無効になります(#5807)
- SQS-失敗時に拒否(#5843)
- ThreadPoolExecutorを使用して並行性モデルを追加する(#5099)
- DynamoDBバックエンドの自動有効期限を追加します(#5805)
- 拡張結果をすべてのバックエンドに保存する(#5661)
- 非常に大きなコードヘッダーを公開するときの競合状態を修正しました(#5850)
- ドキュメントとテストマトリックスを改善する
4.4.0rc4
- 発売日
- 2019-11-11 00.45 AM UTC + 6:00
- リリースバイ
- Asif Saif Uddin
- 昆布4.6.6
- Py-AMQP 2.5.2
- Python 3.8
- 多数のバグ修正
- PyPy 7.2
4.4.0rc3
- 発売日
- 2019-08-14 23.00 PM UTC + 6:00
- リリースバイ
- Asif Saif Uddin
- 昆布4.6.4
- ビリヤード3.6.1
- Py-AMQP 2.5.1
- 日時のシリアル化を避ける(#5606)
- 修正:(group()| group())が単一のグループと等しくない(#5574)
- 「ブローカー接続はアプリ構成のハートビート設定を使用します。
- 追加のファイル記述子の安全性チェック。
- null引数の呼び出しを修正しました(#5631)
- キャッシュバックエンドの汎用パスを追加しました。
- ネストされたグループ(チェーン(グループ))が失敗する問題を修正(#5638)
- __call__をオーバーライドするときにself.run()を使用します(#5652)
- asyncloopの終了を修正しました(#5671)
- メッセージプロトコルのv1とv2の両方で機能するように移行タスクを修正しました。
- 実行時にtask_routes構成を更新すると、有効になります。
4.4.0rc2
- 発売日
- 2019-06-15 4:00 AM UTC + 6:00
- リリースバイ
- Asif Saif Uddin
- 多くのバグとリグレッションが修正されました。
- 昆布4.6.3
4.4.0rc1
- 発売日
- 2019-06-06 1:00 PM UTC + 6:00
- リリースバイ
- Asif Saif Uddin
- Python3.4ドロップ
- 昆布4.6.1
- 非推奨のPyMongoメソッドの使用法を置き換えます(#5443)
- update_stateを呼び出すときにタスクリクエストを渡す(#5474)
- DST時間変更の場合の残り時間計算のバグを修正しました(#5411)
- 拡張結果を要求するときに欠落していたタスク名を修正しました(#5439)
- Python 2.7でのコレクションインポートの問題を修正しました(#5428)
- ベースバックエンド例外デシリアライザーで AttributeError を処理します(#5435)
- AsynPool の proc_alive_timeout を構成可能にする(#5476)
- 拡張結果のAMQPサポート(#5495)
- 拡張結果で動作するようにSQLAlchemy結果バックエンドを修正しました(#5498)
- 必要なパラメータを使用した例外の復元を修正しました(#5500)
- Django: ImportError がタスクモジュールの欠落が原因ではない場合、例外を再発生させます(#5211)
- Django: CONN_MAX_AGE!= 0 (#5515)の場合にDB接続が無効な状態になるリグレッションを修正しました
- ブローカーへの接続が失われる原因となる OSError を修正しました(#4457)
- inspectAPIがリクエストの詳細を取得できない問題を修正しました
- mogodbバックエンド認証を修正しました(#5527)
- 拡張タスクメタ引数/ kwargsの列タイプをLargeBinaryに変更します
- Elasticsearchバックエンド結果でhttp_authを処理する(#5545)
- task_always_eager = True でタスクシリアライザーが無視される問題を修正(#5549)
- task.replace が .apply()および `.apply_async()(#5540)で機能するように修正しました
- ソロワーカーの worker_process_init シグナルの送信を修正しました(#5562)
- 例外メッセージのアップアッキングを修正しました(#5565)
- beat_scheduleに遅延パラメータ関数を追加(#5558)
- 複数のドキュメントの更新
4.3.0
- 発売日
- 2019-03-31 7:00 PM UTC + 3:00
- リリースバイ
- オメル・カッツ
正規表現パターンまたはグロブパターンを使用したブロードキャストのサポートが複数のPidboxに追加されました。
これにより、一度に複数のワーカーを検査またはpingできます。
寄稿者ドミトリー・マリノフスキー & ジェイソン開催
PEP420名前空間パッケージのサポートが追加されました。
これにより、名前空間パッケージからタスクをロードできます。
Colin Watson による寄稿
タスクのみのオプションではなく、設定として:setting: `acks_on_failure_or_timeout` を追加しました。
これは元のPRにはありませんでしたが、完全を期すために追加されました。
Omer Katz による寄稿
:signal: `task_received` シグナルを追加しました。
Omer Katz による寄稿
Python <3.6を使用しているすべての人に発生したCLIのクラッシュを修正しました。
クラッシュは、Python3.6で導入された
ModuleNotFoundError
例外を使用して、 acd6025 で導入されました。Omer Katz による寄稿
:setting: `result_expires` がNoneに設定されているときにRedis結果バックエンドを使用すると発生したクラッシュを修正しました。
寄稿者トニルジャ & オメル・カッツ
MongoDB結果バックエンドの DNSシードリスト接続形式のサポートが追加されました。
これには、MongoDB結果バックエンドの依存関係をインストールするときにデフォルトでインストールされる dnspython パッケージが必要です。
George Psarakis による寄稿
イベントレットの最小バージョンを0.24.1にバンプします。
George Psarakis による寄稿
msgpack-python パッケージを msgpack に置き換えます。
非推奨のパッケージは使用しなくなりました。 アップグレード方法の詳細については、このリリースの重要な注意事項を参照してください。
Daniel Hahler による寄稿
現在のワーカーに登録されていないタスクであるエラーハンドラーのスケジューリングを許可します。
これらの種類のエラーハンドラーが可能になりました。
from celery import Signature Signature( 'bar', args=['foo'], link_error=Signature('msg.err', queue='msg') ).apply_async()
Redisブローカーと結果バックエンドのSSLサポートに対する追加の修正と機能拡張。
Jeremy Cohen による寄稿
コードクリーンアップ、テストカバレッジ、CIの改善:
- オメル・カッツ
- フロリアン・シャルダン
ドキュメントの修正:
- オメル・カッツ
- サミュエル・ファン
- Amir Hossein Saeid Mehr
- Dmytro Litvinov
4.3.0 RC2
- 発売日
- 2019-03-03 9:30 PM UTC + 2:00
- リリースバイ
- オメル・カッツ
ファイルシステムバックエンド:ファイルシステムバックエンドに意味のあるエラーメッセージを追加しました。
Lars Rinn による寄稿
新しい結果バックエンド:ArangoDBバックエンドが追加されました。
Dilip Vamsi Moturi による寄稿
Django :プロジェクトディレクトリが期待どおりにシステムモジュールよりも優先されるように、追加する代わりに現在の作業ディレクトリを追加します。
Antonin Delpeuch による寄稿
最小py-redisバージョンを3.2.0にバンプします。
以前のバージョンのpy-redisには複数のバグがあり、Celeryで問題が発生していたため、最低限必要なバージョンを3.2.0に上げる必要がありました。
Omer Katz による寄稿
依存関係:昆布の最低限必要なバージョンを4.4にバンプ
Omer Katz による寄稿
4.3.0 RC1
- 発売日
- 2019-02-20 5:00 PM IST
- リリースバイ
- オメル・カッツ
Canvas :
celery.chain.apply()
は、チェーンを適用するときにキーワード引数を無視しなくなりました。Korijn van Golen による寄稿
結果セット:結果を
celery.result.ResultSet
にキャッシュしようとしないでください。結合中に、結果キャッシュは
celery.result.ResultSet.get()
を使用して入力されました。結果のいずれかに例外が含まれている場合、予期せず結合が失敗しました。結果キャッシュが削除されました。
Derek Harland による寄稿
Application :[X23X] related_name キーワード引数が None の場合、
celery.Celery.autodiscover_tasks()
はパッケージ自体をインポートしようとするようになりました。Alex Ioannidis による寄稿
Windowsサポート:Windows 10では、古いPIDファイルがセロリビートの実行を妨げていました。
SystemExit
が発生したときにそれらを削除するようになりました。:github_user: `na387` による寄稿
タスク:新しい:setting: `task_acks_on_failure_or_timeout` 設定を追加しました。
失敗またはタイムアウト時にSQSメッセージを確認すると、デッドレターキューを使用できなくなります。
新しいオプションacks_on_failure_or_timeoutを導入して、ネイティブSQSメッセージのライフサイクルに完全にフォールバックできるようにします。再試行の再配信(処理が遅い場合や失敗した場合)を使用し、定義された回数後にデッドレターキューに移行します。
Mario Kostelac による寄稿
RabbitMQ Broker :RabbitMQ3.xで動作するようにHAヘッダーを調整します。
この変更は、RabbitMQ2.xの公式サポートを終了することも意味します。
Asif Saif Uddin による寄稿
コマンドライン:セロリ更新エラー処理を改善しました。
フェデリコボンドによる寄稿
Canvas ::setting: `task_always_eager` が True に設定されたコードをサポートします。
Axel Haustant による寄稿
結果バックエンド:オプションで、タスクプロパティを結果バックエンドに保存します。
:setting: `result_extended` 構成オプションを True に設定すると、追加のタスクプロパティを結果バックエンドに保存できます。
John Arnold による寄稿
Couchbase結果バックエンド:Couchbase結果バックエンドがシリアル化形式を自動的に検出できるようにします。
Douglas Rohde による寄稿
新しい結果バックエンド:Azure Block BlobStorageの結果バックエンドが追加されました。
バックエンドは、Azure BlobStorageを使用してスケーラブルで低コストのPaaSバックエンドを実現する紺碧のストレージライブラリの上に実装されます。
バックエンドは、DS4仮想マシン(4 vCore、16 GB RAM)でホストされている単純なnginx / gunicorn / sanicアプリを介して負荷テストされ、600人以上の同時ユーザーを最大170RPSで処理できました。
コミットには、バックエンド機能の検証を容易にするためのライブエンドツーエンドテストも含まれています。 テストは、 AZUREBLOCKBLOB_URL 環境変数を azureblockblob:// {ConnectionString} に設定することでアクティブになります。ここで、 ConnectionString の値は Accessにあります。 Azureポータルのストレージアカウントリソースの[キー] ペイン。
Clemens Wolff による寄稿
タスク:
celery.app.task.update_state()
がキーワード引数を受け入れるようになりました。これにより、結果のバックエンドに追加のフィールドを渡すことができます。 これらのフィールドはデフォルトでは使用されていませんが、カスタム結果バックエンドはこれらを使用して結果の保存方法を決定できます。
Christopher Dignam による寄稿
コンシューマー
kombu.exceptions.DecodeError
を適切に処理します。v2プロトコルを使用している場合、メッセージのデコード中にコンシューマーでエラーが発生したときにワーカーがクラッシュすることはなくなりました。
Steven Sklar による寄稿
デプロイメント:init.dサービスの停止を修正しました。
Marcus McHale による寄稿
Django :Django <1.11のサポートを終了します。
Asif Saif Uddin による寄稿
Django :古いdjceleryローダーを削除します。
Asif Saif Uddin による寄稿
結果バックエンド:
celery.worker.request.Request
は、celery.app.task.Context
をバックエンドのstore_result関数に渡すようになりました。現在、クラスは self をこれらの関数に渡しているため、django-celery-resultsを使用すると、タスクを取り消すとタスク結果データが破損していました。
山口清裕による寄稿
Worker :ハートビート接続が切断された場合は再試行してください。
以前は、壊れた接続への書き込みを試み続けていました。 これにより、イベントディスパッチャがメッセージをアウトバウンドバッファに追加し続けるため、メモリリークが発生します。
Raf Geens による寄稿
Celery Beat :スケジューリング時にマイクロ秒を処理します。
K Davis による寄稿
Asynpool :ソケットを閉じるときのデッドロックを修正しました。
ソケットを閉じようとすると、
celery.concurrency.asynpool.AsynPool
はキューライターをハブから削除するだけで、リーダーは削除しませんでした。 これによりファイル記述子がデッドロックになり、最終的にワーカーは新しいタスクの受け入れを停止しました。ここで、デッドロックを防ぐ単一のループ反復でリーダーとライターの両方のファイル記述子を閉じます。
Joshua Engelman による寄稿
Celery Beat :タイムスタンプを計算するときにタイムゾーンを正しく考慮してください。
:github_user: `yywing` による寄稿
Celery Beat :
celery.beat.Scheduler.schedules_equal()
は、 None 値であるいずれかの引数を処理できるようになりました。:github_user: `ratson` による寄稿
Documentation / Sphinx :shared_taskで装飾された関数のSphinxサポートを修正しました。
Jon Banafato による寄稿
新しい結果バックエンド:CosmosDB結果バックエンドが追加されました。
この変更により、新しい結果バックエンドが追加されます。 バックエンドは、Azure CosmosDBを使用するpydocumentdbライブラリの上に実装され、スケーラブルでグローバルに複製された、高性能、低レイテンシ、高スループットのPaaSバックエンドを実現します。
Clemens Wolff による寄稿
アプリケーション:個別の複数のアプリを単一のRabbitMQ仮想ホストで実行できるようにする構成オプションが追加されました。
新しく追加された:setting: `event_exchange` および:setting:` control_exchange` 構成オプションにより、ユーザーは個別のPidbox交換と個別のイベント交換を使用できます。
これにより、異なるCeleryアプリケーションを同じ仮想ホストで別々に実行できます。
Artem Vasilyev による寄稿
結果バックエンド:結果を忘れると、親の結果メタデータを忘れます。
:github_user: `tothegump` による寄稿
タスクタスク引数を
celery.exceptions.MaxRetriesExceededError
内に格納します。Anthony Ruhier による寄稿
結果バックエンド::setting: `result_accept_content` 設定を追加しました。
この機能を使用すると、結果のバックエンドにさまざまな受け入れ済みコンテンツを構成できます。
署名されたメッセージングには特別なシリアライザー( auth )が使用されますが、結果のバックエンドに暗号化されたコンテンツが必要ないため、result_serializerはjsonに残ります。
結果のバックエンドから署名されていないコンテンツを受け入れるために、この新しい構成オプションを導入して、バックエンドから受け入れられるコンテンツを指定しました。
Benjamin Pereto による寄稿
Canvas :クラスベースのタスクのエラーコールバック処理を修正しました。
Victor Mireyev による寄稿
新しい結果バックエンド:S3結果バックエンドが追加されました。
Florian Chardin による寄稿
タスク:CythonizedCeleryタスクのサポートが追加されました。
Andrey Skabelin による寄稿
Riak結果バックエンド:Python3.7の非互換性の可能性についてRiakバックエンドユーザーに警告します。
George Psarakis による寄稿
Pythonランタイム:Python3.7のサポートが追加されました。
寄稿者オメル・カッツ & Asif Saif Uddin
認証シリアライザー:認証シリアライザーを刷新しました。
認証シリアライザーは完全なオーバーホールを受けました。 以前はひどく壊れていました。
現在、このシリアライザーはpyOpenSSLではなく暗号化に依存しています。
Benjamin Pereto による寄稿
コマンドライン:セロリレポートは、他のプラットフォームの詳細とともにカーネルバージョンを報告するようになりました。
Omer Katz による寄稿
Canvas :グループ内のサブコードを含むチェーンを持つコードを修正しました。
Celeryは、次のタイプのキャンバスで最後のタスクを正しく実行するようになりました。
c = chord( group([ chain( dummy.si(), chord( group([dummy.si(), dummy.si()]), dummy.si(), ), ), chain( dummy.si(), chord( group([dummy.si(), dummy.si()]), dummy.si(), ), ), ]), dummy.si() ) c.delay().get()
Maximilien Cuony による寄稿
Canvas :エラーコールバックのある複雑なキャンバスで
AttributeError
が発生しなくなりました。this のような非常に複雑なキャンバスは、
AttributeError
を発生させなくなり、構築が妨げられなくなりました。このバグが発生する理由はまだわかりません。
ManuelVázquezAcostaによる寄稿
コマンドライン:アプリを読み込めない場合の適切なエラーメッセージを追加しました。
以前は、セロリは例外を除いてクラッシュしていました。
適切なエラーメッセージを出力します。
Omer Katz による寄稿
タスク::setting: `task_default_priority` 設定を追加しました。
:setting: `task_default_priority` 設定を使用して、タスクのデフォルトの優先度を設定できるようになりました。 特定のタスクに優先順位が指定されていない場合は、設定の値が使用されます。
:github_user: `madprogrammer` による寄稿
依存関係:昆布の最低限必要なバージョンを4.3に、ビリヤードを3.6にバンプします。
Asif Saif Uddin による寄稿
結果バックエンド:メモリリークを修正しました。
vine でPython2の完全なweakrefサポートを追加した後、AsyncResultコールバックpromiseのバインドされたメソッドへの弱参照を再導入しました。 詳細については、 celery / celery#4839 をご覧ください。
George Psarakis および:github_user: `monsterxx03` による寄稿。
タスクの実行:熱心なタスクのラウンドトリップシリアル化を修正しました。
熱心なタスクのラウンドトリップシリアル化を行う場合、 serializer 引数が
celery.app.task.Task.apply_async()
の呼び出しに存在しない限り、タスクシリアライザーは常にJSONになります。 シリアライザー引数が存在するが 'pickle' の場合、 serialization.loads にどのコンテンツタイプを受け入れるかを指定しないと、pickle-serializedオブジェクトを逆シリアル化できないため、例外が発生します。 プロデューサーのシリアライザーはなしに設定されているようで、デフォルトでJSONシリアル化になっています。シリアライザー引数が存在する場合は
celery.app.task.Task.apply_async()
に、存在しない場合はプロデューサーのシリアライザーを(順番に)引き続き使用しますなし 。 Producer のシリアライザーが None の場合、Celeryアプリの task_serializer 構成エントリをシリアライザーとして使用します。ブレットジャクソンによる寄稿
Redis結果バックエンド:
celery.backends.redis.ResultConsumer
クラスは、celery.backends.redis.ResultConsumer.drain_events()
の前にcelery.backends.redis.ResultConsumer.start()
が呼び出されることを想定しなくなりました。これにより、Geventワーカープールを使用する際の競合状態が修正されます。
Noam Kush による寄稿
タスク::setting: `task_inherit_parent_priority` 設定を追加しました。
:setting: `task_inherit_parent_priority` 構成オプションを True に設定すると、Celeryタスクはそれにリンクされている前のタスクの優先度を継承します。
例:
c = celery.chain( add.s(2), # priority=None add.s(3).set(priority=5), # priority=5 add.s(4), # priority=5 add.s(5).set(priority=3), # priority=3 add.s(6), # priority=3 )
@app.task(bind=True) def child_task(self): pass @app.task(bind=True) def parent_task(self): child_task.delay() # child_task will also have priority=5 parent_task.apply_async(args=[], priority=5)
:github_user: `madprogrammer` による寄稿
Canvas ::setting: `result_chord_join_timeout` 設定を追加しました。
以前は、
celery.result.GroupResult.join()
のタイムアウトは3秒に固定されていました。:setting: `result_chord_join_timeout` 設定で、変更できるようになりました。
:github_user: `srafehi` による寄稿
コードクリーンアップ、テストカバレッジ、CIの改善:
- Jon Dufresne
- Asif Saif Uddin
- オメル・カッツ
- ブレットジャクソン
- ブルーノアラ
- :github_user: `tothegump`
- ボジャン・ヨバノビッチ
- フロリアン・シャルダン
- :github_user: `walterqian`
- ファビアンベッカー
- ラース・リン
- :github_user: `madprogrammer`
- シアラン・コートニー
ドキュメントの修正:
- ルイスM。 カブイ
- ダッシュウィンターソン
- シャナバスM
- ブレット・ランドール
- PrzemysławSuliga
- ジョシュアシュミット
- Asif Saif Uddin
- シャオドン
- Vikas Prasad
- ジェイミー・アレッシオ
- ラース・クルーゼ
- Guilherme Caminha
- アンドレア・ラバグリエッティ
- Itay Bittan
- ノアホール
- 鵬偉康
- マリアッタウィジャヤ
- エド・モーリー
- PawełAdamczak
- :github_user: `CoffeeExpress`
- :github_user: `aviadatsnyk`
- ブライアンシュレーダー
- Josue Balandrano Coronel
- トムクランシー
- セバスティアン・ウォジチェチョフスキ
- メイサムアザド
- ウィレム・ティアート
- チャールズ・チャン
- オメル・カッツ
- ミリンド釈迦族