2022年の Snowflake Connector for Python リリースノート¶
この記事には、 Snowflake Connector for Python のリリースノートが含まれています。また、該当する場合は以下が含まれます。
動作の変更
新機能
顧客向けバグ修正
Snowflake は、 Snowflake Connector for Python の更新にセマンティックバージョニングを使用します。
バージョン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に。
numby依存バージョンを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 ファイルを更新しました。