Web SDK変更ログ
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
SDKのすべての重要な変更点はこのファイルに記録されます。
4.2.62
追加
- Search APIの SearchClient への支持。
4.2.61
追加
- クエリフィルター Ancestor サポート。
4.2.34
追加
- 新しいジョブズAPIの JobsClient への支援。
- Querying SearchAfterのバージョン3のサポート。
固定
- さまざまなバグ
4.2.0
追加
- 翻訳クライアント。
- AuditLogsClient。
- AssetClient.CreatePublicLinkAsync(): 指定されたアセットに対して公開リンクを作成できます。
- EntitiesClient.CopyAsync(): idでエンティティを新規または既存のエンティティにコピーできます。
- エンティティ関連パスのサポート。
- DataSourceClient.GetManyAsync() と GetManyCachedAsync(): オプションリストを名前で取得します。
- ByteArrayUploadSource、Content Hubにアップロードされます。
- エンティティ関係はIDの代わりに識別子を使って関係を設定することができます。
固定
- さまざまなバグ
4.1.0
追加
- Fluent SDK;は既存のSDKの上に構築されたラッパーで、特定の操作を流暢に実行できるようにします。
- 型付きエンティティ;実際のプロパティ値にマッピングされた宣言されたプロパティを通じて、一般的に使われるプロパティや関係へのアクセスを容易にします。
変わった
- IWebMClient.SetKnownSSoRedirects;は廃止とマークされており、今後のリリースで削除される予定です。このメソッドを呼び出す必要は、Content Hub = 3.3では不要になりました。
固定
4.0.0
追加
- パーミッションクライアント;指定されたエンティティおよびオプションで指定されたユーザーの権限を取得します。
- パッケージクライアント;パッケージエクスポートを管理する機能を備えています。
- アップロードクライアント;ファイルをSitecore Content Hub ™インスタンスにアップロードします。
変わった
- 関係資源への関係のマッピングに関する更新されたロジック。
固定
3.4.2
追加
変わった
固定
設定カテゴリ名をクエリフィルターの一部として使わないバグを修正し、設定を一意に識別する。
3.4.1
追加
変わった
固定
自己参照関係に関するバグを修正します。自己参照関係の親側は修正されていて、子側は変更されていない場合、子側にリンクされたエンティティ(およびその逆)はセーブ時にクリアされます。
3.4.0
追加
変わった
このリリースは、Web SDKのリリースサイクル、依存関係の使用、異なるContent Hubバージョンとの互換性を改善する重要な構造変更をもたらします。
リリースサイクルの変更
3.4.0以降、Web SDKのリリースサイクルはContent Hubのリリースサイクルに紐づかなくなりました。これにより、新機能の追加やバグ修正時により頻繁にリリースできるようになりました。
依存関係の変化
多くの(内部およびサードパーティの)Web SDKの依存関係が削除されました。これにより、依存関係の変更が一つ以上あっても予期せぬ変更がWebSDKに起こるのを防ぎます。
Web SDKも、NuGetsの使用量が減ったため軽量化されます。しかし、いくつかの統合は以下のNuGetのいずれかで提供されたモデルを使用していた可能性があります。
- Stylelabs.M.Base.Web.Api.Models
- Stylelabs.M.Content.Web.Api.Models
- Stylelabs.M.Dam.Web.Api.Models
- Stylelabs.M.Portal.Web.Api.Models
これらのNuGetsのいずれかが必要な場合は、手動で参照してください。
互換性の変更
これまでContent Hubはバージョン3.0以降のウェブSDKの任意のバージョンと後方互換性がありました。今後、ウェブSDKはウェブSDKより新しいまたは古いバージョン(ただしバージョン3.0以降)ともContent Hub互換性があります。つまり、Content Hubバージョンに関係なく、常に最新のウェブSDKにアップデートできるはずです。
詳細については、互換性をご参照ください。
固定
3.2.0
このリリースは、エンティティ定義クライアントおよびカルチャークライアントのHTTPレジリエンスとパフォーマンス向上に焦点を当てています。
さらに、古いWebApiClientはWeb SDKに組み込まれ、WebApiClientは削除されました。このため名前空間の一部変更が生じます。
追加
Web SDKは現在、レジリエントなHTTP呼び出しのためにPollyを使用しています。Pollyはタイムアウト、再試行、スロットリング、認証トークンの更新管理に使われています。
DiagnosticsClientは、Web SDKから監査やデバッグのために実行時に追加情報を得るために追加されました。HTTPリクエストやレスポンス、キャッシュイベント、ネットワークの問題、警告の記録に利用できます(記事参照)。
サーバーとSDK間の互換性チェックを無効化するフラグを追加しました(記事参照)。
ContentGroupプロパティがIMemberGroupインターフェースに追加されました。
IEntityの基盤となるJSONペイロードからExtensionDataを取得する拡張メソッドを追加しました。
AllowUpdatesプロパティはリレーション定義でもサポートされるようになりました。以前はプロパティ定義でのみサポートされていました。その結果、AllowUpdatesプロパティはIPropertyDefinitionからIMemberDefinitionに移され、プロパティとリレーション定義の両方の基本インターフェースとなりました。
エンティティ定義クライアントにキャッシュオーバーロードを追加しました:
- GetCachedAsync
- GetNameCachedAsync
- GetNamesCachedAsync
- GetIdCachedAsync
- GetManyCachedAsync(キャッシュアドシンク)
- GetManyCachedAsync(キャッシュアドシンク)
- GetIdsCachedAsync
カルチャークライアントにキャッシュされたメソッドオーバーロードを追加しました:
- GetDefaultCultureCachedAsync
- GetAllCulturesCachedAsync
削除済み
ILinkHelperのDefinitionsToLinksAsyncメソッドは削除されました。
変わった
WebApiClientはWeb SDKに組み込まれました。この変更は主に内部的なものですが、名前空間にいくつかの変更をもたらしました。最も顕著な名前空間の変更は以下の通りです:
クラス
以前の名前空間
現在の名前空間
HttpContentExtensions
Stylelabs.M.Sdk.WebApiClient.Utilities
Stylelabs.M.Sdk.WebClient.Http
HttpResponseMessage拡張
Stylelabs.M.Sdk.WebApiClient.Utilities
Stylelabs.M.Sdk.WebClient.Http
JsonContent
Stylelabs.M.Sdk.WebApiClient.Utilities
Stylelabs.M.Sdk.WebClient.Http
テンプレート拡張
Stylelabs.M.Sdk.WebApiClient.Utilities
Stylelabs.M.Sdk.WebClient.Http
DefaultDelegationHandlerFactory
Stylelabs.M.Sdk.WebApiClient.Http
Stylelabs.M.Sdk.WebClient.Http
DefaultHttpClientFactory
Stylelabs.M.Sdk.WebApiClient.Http
Stylelabs.M.Sdk.WebClient.Http
IDelegatingHandlerFactory
Stylelabs.M.Sdk.WebApiClient.Http
Stylelabs.M.Sdk.WebClient.Http
IHttpクライアントファクトリー
Stylelabs.M.Sdk.WebApiClient.Http
Stylelabs.M.Sdk.WebClient.Http
RequestCreatedEventArgs
Stylelabs.M.Sdk.WebApiClient
Stylelabs.M.Sdk.WebClient.Http
RefreshTokenReceivedEventArgs
Stylelabs.M.Sdk.WebApiClient
Stylelabs.M.Sdk.WebClient.Http
TokenExpiredException
Stylelabs.M.Sdk.WebApiClient.Exceptions
Stylelabs.M.Sdk.WebClient.Http
固定
3.1.2
追加
スロットリングサポートを追加(バックポート)。
変わった
固定
3.1.0
このリリースでは以下の点が強調されています:
- 新しい通知クライアント。これはリアルタイム(ブラウザ)やメール通知をユーザーに送信するために使えます。(記事)
- 新しい資産クライアントです。このクライアントは現在、主に資産の最終ライフサイクルステータスを管理する役割を担っています。(記事)
- エンティティ定義のサポートを作成、修正、削除するにはエンティティ定義クライアントが使えます。(記事)
- AssetとMailテンプレート用の強力型エンティティ。
追加
エンティティ定義クライアントにエンティティ定義の作成、修正、削除操作を追加しました。(記事)
新しい通知クライアントを追加しました。(記事)
資産クライアントを追加しました。(記事)
このリリースでは、最初の強型型エンティティが登場します。アセットについては、IAssetが利用可能になりました。通知クライアントには強型型エンティティIMailTemplateも付属しています。これらの強型型エンティティは依然としてIEntityですが、エンティティメンバーはより良い開発体験のためにC#プロパティやメソッドとして提供されています。将来的には、より強い型付けのエンティティが追加され、既存のエンティティも拡張される予定です。
IEntityDefinitionsClientの新機能:
- 現在は、イテレーター作成時のオプションパラメータとしてカスタムバッチサイズをサポートしています。
- idでエンティティ定義を取得する方法を追加しました。
- IDで同時に多くのエンティティ定義を取得する方法を追加しました。
- 定義IDを定義名に解決する方法を追加しました。
- 定義名を定義IDに解決する方法が追加されました。これは **タスクIListロングのGetManyIdsAsync(IEnumerable string names)**よりも好まれます。
IEntityLoadConfigurationにビルダーを追加しました。これを使ってロード構成を簡単に作成または拡張できます。(記事)
クエリフィルターが拡張され、以下の新しい文字列フィルターが利用可能になりました(記事参照):
- 包含
- StartsWith
- 終わり
デフォルト数にはさらに多くのデフォルト数値が追加されました。
IEntityDefinition: に新機能が追加されました。IsNewプロパティが追加されました。
ILinkHelper(ウェブSDK)の新機能:
- 既存のドキュメントを改善し、欠けているドキュメント(API参照)を追加しました。
- idでエンティティ定義へのリンクを作成する方法を追加しました。
IUsersClientの新機能:
- ユーザー名でユーザーIDを取得する方法を追加しました。
- idでユーザー名を取得する方法を追加しました。
- idでユーザーを取得する方法を追加しました。
- ユーザーグループ名でユーザーグループIDを取得する方法を追加しました。
- IDでユーザーグループ名を取得する方法を追加しました。
- idでユーザーグループを取得する方法を追加しました。
サーバーとSDK間の互換性チェックをオプションで無効化するフラグを追加しました(バックポートです)。
IEntity(バックポート)の基盤となるJSONペイロードからExtensionDataを取得する拡張メソッドを追加しました。
IRelationDefinitionにAssociatedLabelsプロパティを追加しました。
変わった
IMemberDefinition: IsSecuredプロパティの変更点は、もはやnullableではありません。
IRelationDefinitionの変更点:
- ChildIsMandatory プロパティはもはや無効化されません。
- ParentIsMandatory プロパティはもはや無効化できません。
- AncestorsAreCopied は削除され、 PathHierarchyScore が導入されました。これはMの変更に関連しています。
Query上のEntityLoadOptionsプロパティとLoadConfigurationプロパティは現在は不要になりました。ロード設定は常にクエリとは別に渡されるか、SDKによって自動的に解決されます。プロパティは後方互換性のためのみ存在しています。これにより、LINQを使用した場合のWithProperties、WithRelations、InCultures、LoadConfigurationも時代遅れになります。しかし、上記のように、ロード構成には同様のビルダーが使われています。
すべてのロードオプション(PropertyLoadOption、RelationLoadOption、CultureLoadOption)は、カスタム値を表示するためにIEnumerableの代わりに配列を使用しています。
IEntityでは、LoadPropertiesAsync、LoadRelationsAsync、LoadMembersAsyncは、怠惰な読み込みができない場合はスローしなくなりますが、直接falseを返します。
固定
フィルターなしでクエリを実行する際にバックエンドが例外を投げる問題を修正しました。今ではフィルターなしでクエリが可能になりました。これにより、例えばMの最新のエンティティX個を取得することが可能になります。
3.0.5
追加
スロットリングサポートを追加(バックポート)。
変わった
固定
3.0.1
このパッチリリースはいくつかのバグを修正しています。
追加
WebApiExceptionは、メッセージにより多くの情報とHTTPステータスコードを含めています。
ValidationExceptionのToStringには、検証失敗も含まれます。
サーバーとSDK間の互換性チェックをオプションで無効化するフラグを追加しました(バックポートです)。
IEntity(バックポート)の基盤となるJSONペイロードからExtensionDataを取得する拡張メソッドを追加しました。
変わった
失敗したAPI呼び出しに対してStylelabs.M.Sdk.WebApiClient.Exceptions.WebApiExceptionではなく、Stylelabs.M.Sdk.WebClient.Exceptions.WebApiExceptionを出すことはなくなりました。
RelationMemberConditionはエンティティIDではなくエンティティ定義IDを参照していました。
GetSettingsForCategoryAsyncは、カテゴリが存在しないと空のリストを返します。これは透過的な動作ではなく、NotFoundExceptionを投げます。
一部のデフォルト値は変更されています:
- エンティティは InheritsSecurity をデフォルトで true に設定しています。
- プロパティ定義はデフォルトで AllowUpdates を true に設定して作成されます。
- 関係定義はデフォルトで AllowNavigation を true に設定しています。
固定
固定されたIMemberDefinitionモデル(実装)が公開されていないこと。
IEntityDefinitionsClientで、範囲別定義がオフセットと総カウントを入れ替えた結果が返ってきた問題を修正しました。
IDataSourcesClientで、データソースを削除した際に検証例外が発生した際にクライアントが間違った例外をスローしていた問題を修正しました。
ISettingsClientで、カテゴリが存在しないときにGetCategoryIdAsyncがnullではなく0を返す問題を修正しました。
文化なしで明示的に作成されたエンティティを作成する際のエンティティ工場の問題を修正しました。文化を持たずに作成された場合、文化に敏感なプロパティはエンティティに付着しなくなりました。
IEntityDefinitionsClientで、GetIdAsyncがNullReferenceExceptionを出して定義が存在しないのにNullReferenceExceptionを出すバグを修正しました。
IRelationDefinition上のNestedPropertiesが、ネストされたプロパティがない場合に空のリストではなくnullになるバグを修正しました。
抜けた引き渡しを修正しました。
3.0.0
SDKの初期リリース。このSDKはContent Hubのバージョン3.0.0以降で動作します。