変更点—その危険なドキュメント
変更点
バージョン2.0.2
未発表
バージョン2.0.1
2021年5月18日リリース
- タイプチェックがユーザープロジェクトのインポートを理解できるように、トップレベルの名前をエクスポート済みとしてマークします。 :pr: `240`
Serializer
およびSigner
に対するsalt
引数は、再びNone
にすることができます。 :issue: `237`
バージョン2.0.0
2021年5月11日リリース
- Python2および3.5のサポートを終了します。
- JWSサポート(
JSONWebSignatureSerializer
、TimedJSONWebSignatureSerializer
)は非推奨になりました。 代わりに、authlibなどの専用のJWS / JWTライブラリを使用してください。 :issue: `129` itsdangerous.json
のインポートは非推奨です。 代わりに、Pythonのjson
モジュールをインポートしてください。 :pr: `152`- Simplejsonは、インストールされている場合は使用されなくなりました。 別のライブラリを使用するには、
Serializer(serializer=...)
として渡します。 :issue: `146` datetime
の値は、timezone.utc
でタイムゾーンに対応しています。TimestampSigner.unsign(return_timestamp=True)
またはBadTimeSignature.date_signed
を使用するコードは変更する必要がある場合があります。 :issue: `150`- シグニチャの経過時間が0未満の場合、有効に見えるのではなく、
SignatureExpired
が発生します。 これは、タイムスタンプオフセットが変更された場合に発生する可能性があります。 :issue: `126` BadTimeSignature.date_signed
は、int
ではなく、常にdatetime
オブジェクトである場合があります。 :issue: `124`- キーローテーションのサポートが追加されました。 キーのリストは、古いものから新しいものへと
secret_key
として渡すことができます。 最新のキーが署名に使用され、すべてのキーが署名解除を試みられます。 :pr: `141` default_fallback_signers
からデフォルトのSHA-512フォールバック署名者を削除しました。 :issue: `155`- 静的型付けツールの型情報を追加します。 :pr: `186`
バージョン1.1.0
2018年10月26日リリース
- デフォルトの署名アルゴリズムをSHA-1に戻します。 :pr: `113`
- デフォルトでSHA-512に設定されていたヤンクされた1.0.0リリースを使用したユーザー向けにデフォルトのSHA-512フォールバックを追加しました。 :pr: `114`
- デシリアライズ中のフォールバックアルゴリズムのサポートを追加して、既存の署名を壊すことなく将来的にデフォルトを変更できるようにします。 :pr: `113`
- キャピタライゼーションの変更により一部のツールが破損したため、パッケージのキャピタライゼーションを小文字に戻しました。 :pr: `113`
バージョン1.0.0
2018年10月18日リリース
ヤンク
注:このリリースは、デフォルトのアルゴリズムがSHA-512に変更されたため、PyPIからヤンクされました。 この決定は1.1.0で元に戻され、SHA1のままです。
Python2.6および3.3のサポートを終了します。
単一のモジュールからパッケージにコードをリファクタリングします。 APIドキュメント内のオブジェクトは、トップレベルの
itsdangerous
名から引き続きインポートできますが、他のインポートは変更する必要があります。 将来のリリースでは、これらの互換性のインポートの多くが削除されます。 :pr: `107`タイムスタンプのシリアル化と逆シリアル化の方法を最適化します。 :pr: `13`
base64_decode
は、無効なデータが渡されるとBadData
を発生させます。 :pr: `27`Python 3で
TypeError
を回避するために、署名時に値がバイトであることを確認してください。 :issue: `29`serializer_kwargs
引数をSerializer
に追加します。これは、dump_payload
の間にdumps
に渡されます。 :pr: `36`Unicode文字列用のよりコンパクトなJSONダンプ。 :issue: `38`
オフセットではなく完全なタイムスタンプを使用して、2011年より前の日付を許可します。 :issue: `46`
以前のバージョンの署名者との互換性を維持するために、署名を解除するときにこのシムを使用することを検討してください。
署名自体に現れる可能性のある
sep
文字を検出し、ValueError
を発生させます。 :issue: `62`サブクラスの
Serializer.load_payload
のキーワード引数に一貫した署名を使用します。 :issue: `74` 、:pr:` 75`デフォルトの中間ハッシュをSHA-1からSHA-512に変更します。 :pr: `80`
ロード時にJWSexpヘッダーをintに変換します。 :pr: `99`
バージョン0.24
2014年3月28日リリース
- これらの場合に再利用された古い
BadPayload
例外を置き換える、不正なヘッダーに使用されるBadHeader
例外を追加しました。
バージョン0.23
2013年8月8日リリース
- テストとライセンスファイルが含まれなかったパッケージングの間違いを修正しました。
バージョン0.22
2013年7月3日リリース
TimedJSONWebSignatureSerializer
のサポートが追加されました。- 署名検証機能をオーバーライドして、非対称アルゴリズムの実装を可能にしました。
バージョン0.21
2013年5月26日リリース
- 無効なエラーが生成されるPython3の問題を修正しました。
バージョン0.20
2013年5月23日リリース
- Python2.6でのItsDangerousの一部の使用を中断する
want_bytes
への誤った呼び出しを修正しました。
バージョン0.19
2013年5月21日リリース
- 2.5のサポートを終了し、3.3のサポートを追加しました。
バージョン0.18
2013年5月3日リリース
- JSON Web Signatures(JWS)のサポートが追加されました。
バージョン0.17
2012年8月10日リリース
- ダイジェストメソッドをオーバーライドするときの名前エラーを修正しました。
バージョン0.16
2012年7月11日リリース
load_payload
にUnicode値を渡して、特定のものを簡単にデバッグできるようにしました。
バージョン0.15
2012年7月11日リリース
- 何か問題が発生した場合に1つの特定のエラーを発生させることにより、スタンドアロン
load_payload
をより堅牢にしました。 - より多くのケースを個別にキャッチするように例外をリファクタリングし、より多くの属性を追加しました。
- タイムスタンプベースのシリアライザーで
load_payload
が一部の状況で機能しない問題を修正しました loads_unsafe
メソッドを追加しました。
バージョン0.14
2012年6月29日リリース
- さまざまな鍵導出をサポートするためのAPIリファクタリング。
- 例外に属性を追加して、署名チェックが失敗した場合でもデータを検査できるようにしました。
バージョン0.13
2012年6月10日リリース
- ダイジェストモジュールのカスタマイズを可能にする小さなAPIの変更。
バージョン0.12
2012年2月22日リリース
- エポック計算に使用されているローカルタイムゾーンの問題を修正しました。 UTCタイムゾーンで実行していない場合、これにより一部の署名が無効になる可能性があります。 モンキーパッチ
itsdangerous.EPOCH
を使用すると、以前の動作に戻すことができます。
バージョン0.11
2011年7月7日リリース
- キャッチされない値のエラーを修正しました。
バージョン0.10
2011年6月25日リリース
- ペイロードローダーとダンパーをオーバーライドする代わりに、モジュールを渡すことで基盤となるシリアライザーを交換できるリファクタリングされたインターフェイス。 これにより、インターフェースはDjangoの最近の変更との互換性が高まります。