2022年の Snowflake Connector for Python リリースノート¶
この記事には、 Snowflake Connector for Python のリリースノートが含まれています。また、該当する場合は以下が含まれます。
動作の変更
新機能
顧客向けバグ修正
Snowflake は、 Snowflake Connector for Python の更新にセマンティックバージョニングを使用します。
ドキュメントについては、 Python用Snowflake Connector をご参照ください。
バージョン2.9.0(2022年12月14日)¶
新機能および更新¶
ユーザーがカスタムキーペア認証方式をプラグインできるように、認証内部を再構築しました。
複数ステートメントのクエリ実行が、
cursor.executeおよびcursor.executemanyでサポートされるようになりました。Snowflakeパラメーター
MULTI_STATEMENT_COUNTは、アカウント、セッション、またはステートメントレベルで変更できます。ステートメントレベルでこのパラメーターを使用するには、実行時に追加の引数num_statementsを指定します。これをexecutemanyに提供し、メソッドで複数ステートメントのクエリを送信する必要があります。複数ステートメントのクエリを送信する場合は、executemanyで利用可能な一括挿入の最適化は利用できないことに注意してください。デフォルトでは、パラメーターは1です。つまり、一度に送信できるクエリは1つのみです。
複数ステートメントのクエリで任意の数のステートメントを送信するには0を設定します。
複数ステートメントのクエリで指定された正確な数のステートメントを送信するには、>1に設定します。
バインドは複数ステートメントでも単一ステートメントのクエリと同じように受け付けられます。
複数ステートメントの非同期クエリ実行がサポートされています。結果を取得するには、引き続き
get_results_from_sfqidを使用する必要があります。各クエリの結果にアクセスするには、ユーザーは DB 2.0 API (PEP-249)で指定されているように、
call SnowflakeCursor.nextset()を使用し、各ステートメントの結果をとおして反復します。最初のステートメントの結果は、実行(非同期の場合は
get_results_from_sfqid)を呼び出した直後に、既存のfetch*()メソッドからアクセスできます。
バグ修正¶
GET コマンドでダウンロードしたファイルの権限が変更されるバグを修正しました。
バージョン2.8.3(2022年11月28日)¶
新機能および更新¶
暗号の依存関係を<39.0.0から<41.0.0に変更しました。
バグ修正¶
期限切れの OCSP 対応キャッシュがキャッシュのロード時に無限再帰を引き起こすバグを修正しました。
バージョン2.8.2(2022年11月18日)¶
新機能および更新¶
OCSP 対応キャッシュのパフォーマンスが向上しました。
GET コマンドの実行中に、ローカルマシン上のターゲットロケーションを解決することがなくなりました。
PUT/GET SQL ステートメントの検出に使用される正規表現のパフォーマンスが向上しました。
バージョン2.8.1(2022年10月28日)¶
新機能および更新¶
暗号の依存関係を<37.0.0から<39.0.0に変更しました。
接続を閉じる際の非同期クエリステータスチェックが並列化されるようになりました。
バグ修正¶
write_pandasが空のDataFrameをSnowflakeに書き込まない問題を修正しました。
バージョン2.8.0(2022年9月27日)¶
バグ修正¶
空の結果で
fetch_pandas()とfetch_arrow()を呼び出したときのdtypesの欠落を修正しました。カーソルを閉じたときに
rowcountが削除されるバグを修正しました。extTypeNameが空でも使用されるバグを修正しました。テレメトリエントリの構築方法を更新しました。
ランタイム中にインポートされたルートパッケージのテレメトリを追加しました。
write_pandasを使用するためのテレメトリを追加しました。write_pandas関数は、DataFrame.to_parquetで使用する追加引数の提供をサポートするようになりました。write_pandasのすべてのオプションパラメーターをpd_writerとmake_pd_writerに提供して、DataFrame.to_sqlで使用できるようになりました。
バージョン2.7.12(2022年8月24日)¶
新機能および更新¶
OCSP 対応キャッシュにファイル内キャッシュを追加しました。
OKTA Identity Engineのサポートを追加しました。
create_temp_table引数に代わる新しい引数table_typeにより、write_pandas関数は一時テーブルをサポートするようになりました。
バグ修正¶
pandas.DataFrameまたはpyarrow.Tableとして取得されたタイムスタンプが、不必要な精度のためにオーバーフローするバグを修正しました。オーバーフローを防止できない場合は、明確なエラーが発生するようになりました。非同期クエリ実行後に
fetch_pandas_batchesを呼び出すと、NotSupportedErrorが不正に発生するバグを修正しました。
バージョン2.7.11(2022年7月28日)¶
バグ修正¶
typing_extensionsに最小バージョンのピンを追加しました。
バージョン2.7.10(2022年7月25日)¶
新機能および更新¶
OCSP リクエストにメモリ内キャッシュを追加しました。
write_pandasに上書きオプションを追加しました。PEP-249に従い、
SnowflakeCursorにlastrowid属性を追加しました。新しい接続診断機能を追加しました。
以下のライブラリとリソースを更新しました。
pyarrowのバージョンを8.0.Xまでサポートしました。
Vendoredライブラリのバージョンリクエストを2.28.1に、またurllib3を1.26.10に。
numpyが依存している1.23.0から1.24.0までのバージョンに対応しました。
バグ修正¶
gzip圧縮 HTTP リクエストがフラッシュされていないバッファーによって文字化けすることがある問題を修正しました。
バージョン2.7.5(2022年3月18日)¶
動作変更¶
Python 3.6のサポートを廃止しました。
新機能¶
環境変数(
SF_PARTNER)を介してパートナーの名前を注入するオプションを追加しました。
バグ修正¶
SSO ログインのためにブラウザーウィンドウを開くことができない場合に入力を待たないバグを修正しました。
SnowflakeConnectionの型定義をエクスポートしました。fetch_pandas_allを使用した場合に、最終的なArrowテーブルに重複したインデックス番号が含まれるバグを修正しました。
バージョン2.7.3(2022年1月18日)¶
バグ修正¶
パッケージのメタデータを
setup.pyからsetup.cfgに移動しました。TimezoneをTimestamp_TZに追加しました。ストレージ認証情報に関連するエラーを修正しました。
py.typedがホイールに含まれていなかった問題を修正しました。
arrow_number_to_decimalを使用すると負の数が正しく変換されない問題を修正しました。GET を使用する際に、空のファイルの処理を追加しました。
PyPi の長い説明のレンダリングを修正しました。
SMS が存在しない場合の DUO のエラー処理を追加しました。
pandas
DataFrameをSnowflakeテーブルに記述する際に、テーブルを自動作成する機能を追加しました。numpyの要件を<1.22.0から<1.23.0に更新しました。
CODEOWNERS ファイルを更新しました。