全文はCHANGELOG.mdを参照してください。
リリース
3.2.0 —
- Smart change detection now defaults to
smart: a compact provider-neutral state manifest (.github/resource-translator-state.json) tracks parser keys, source hashes, target hashes, and translation-affecting settings so only changed or missing keys are sent to the selected provider. UsechangeDetection=disabledorfalsefor legacy always-translate behavior,statePathto relocate the manifest, andsnapshotOnlyto bootstrap the manifest from existing target files without calling a provider. The same release adds nested {provider} blocks, AWS/Google-native behavior knobs, narrow-friendly reference cards, and official provider-doc links. Key-level audit rule codes are logged for every decision.
3.1.0 —
- マルチベンダー: Azure AI Translator、AWS Translate、またはGoogle Cloud Translationで統一されたAPIサーフェスを一つにして翻訳します。新しい
provider入力で1回の実行ごとに1つのプロバイダーを選択します。このアクションはファクトリーの背後にある対応するSDKに委任され、ベンダーに関係なく同じ動作をします。完全に後方互換性があり、providerデフォルトはazureで、既存のAzureワークフローは変更せずに動作します。 - 新しいAWS Translateプロバイダー(
@aws-sdk/client-translate)。認証はAWSのデフォルト認証チェーン(推奨:aws-actions/configure-aws-credentials経由のOIDC)または明示的なawsAccessKeyId/awsSecretAccessKeyで認証してください。地域はawsRegionまたはAWS_REGIONで分類できます。 - 新しいGoogle Cloud Translationプロバイダー(
@google-cloud/translate、v2)。サービスアカウントのJSON認証(googleCredentials)またはAPIキー(googleApiKey)で認証します。任意googleProjectId。 - 新しい入力:
provider、awsAccessKeyId、awsSecretAccessKey、awsRegion、googleApiKey、googleCredentials、googleProjectId。 - 意図・指定子マッピング:
textTypeGoogleのformatに、profanityActionはAWSの罵り言葉マスキングに相当するものにマッピングされます。Azureのみの仕様子(categoryId、apiVersion、profanityMarker、allowFallback)は他のプロバイダーによって無視されます。 - Azureのリクエスト入力(
subscriptionKey、endpoint、region)はaction.ymlで必須とマークされなくなり、他のプロバイダーを選択できるようになっています。providerがazureされた際には実行時に検証されます。 - 新しい翻訳プロバイダーページ、Getting Startedのプロバイダータブ、Inputsページのプロバイダー選択、そしてAzure、AWS、Googleでリードするリフレッシュされたホームページが登場します。
3.0.2 —
- 修正:トランスレーターのリクエストは、
/translateと/languagesの両方の線にapi-version=3.0ピンで固定されます。Azure SDKは認証情報が渡された場合にのみクライアントレベルのAPIバージョンオプションを尊重します。アクションはリクエストごとにヘッダーで認証されるため、そのオプションは静かに削除され、リクエストはプレビューAPIバージョンにデフォルト化され、/translate契約がHTTP 400(エラーコード400074)でボディを拒否しました。3.0.1から始まった修正を完了します。
3.0.1 —
- 修正:
/translateリクエストボディは、ラップされた{ inputs }オブジェクトではなく、v3.0 REST コントラクトに準拠した{ text }アイテムの素きJSON配列になっています。これだけでは翻訳を復元するものではありません — 3.0.2を参照してください。
3.0.0 —
node24の実行時間(ブレイキング)に引き上げました。- 新入力:
include、exclude、configPath、categoryId、apiVersion、dryRun、failOnErrorに加え、高度な翻訳ノブtextType、profanityAction、profanityMarker、allowFallback。 - ソースの所在地も
from=<locale>としてトランスレーターに転送されるため、短い文字列が自動検出されなくなります。 - レジリエンス: Azureの
Retry-Afterヘッダーを尊重する一時的なHTTP応答(408, 425, 429, 500, 502, 503, 504)に対する自動リトライは、不在時にはジッター指数的バックオフに戻されます。maxRetriesとretryBackoffMsで調整可能です。クローズ #46。 {{name}}、${var}、{0}、{0:N2}、%s、%1$s、HTMLエンティティなどのトークンプレースホルダー保護:、翻訳前にセンチネルでラップされ、翻訳後に復元されるため、翻訳者はi18next/Mustache/Handlebars/.NET/printfのプレースホルダーをめちゃくちゃにするのをやめます。protectPlaceholders経由で切り替え;customPlaceholderPatternsで拡張しましょう。#16を締め付ける。- 新しい
noTranslatePatterns入力キーごとのオプトアウト:トランスレーターリクエストから一致するキーを完全に除外します(ブランド名やエラーコードなどのソース値を保持します)。グロブパターンをパーサーレベルのキー(JSON点線パス、RESXname、POmsgid、XLIFFユニットid、INI/restextキー)と照合します。クローズ#35。 .github/resource-translator.ymlによるリポジトリレベルの設定。- 用語集のサポート、
core.summaryによるステップサマリー。 - esbuild bundler, ESLint 9 flat config, Prettier, EditorConfig.
- NPM監査クリーン(脆弱性0)。
- Astro + Tailwind v4のドキュメントサイトで、ビュートランジションと表現コードがあります。
- ドキュメントのアクセス性: WCAG 2.1 AAパス。ロゴグリフがパスに変換され、グラデーションストップに対する色コントラストが失敗しなくなり、浮動
Back to topボタンはタブ可能なaria-hiddenトグルではなく隠れている状態でinertを使用し、formats.astroセクションは自動生成の見出しIDと衝突しなくなり、3つのローカレカードがBCP-47有効なlang属性(nya→ny、lug→lg、run→rn)を露出し、重複したDocumentationランドマークラベルはサイドバーとフッター間の曖昧さを解消します。 また、inputs/configurationのすべてのデータテーブルにはスクリーンリーダー用の字幕が付いています。 - インラインコードのスタイリング: Docsの散文
<code>現在は暖色系/アンバー色のアクセントを採用しており、リンクや見出しに使われるブランドアクセントとは異なるもの→。 - Dependabotの自動マージ、CodeQLスキャン、CIマトリックス。
2.2.1 —
- Security: bumped axios (1.4.0 → 1.6.0), @babel/traverse, semver, and tough-cookie/@azure/ms-rest-js to clear Dependabot alerts.
2.2.0 —
- Maintenance release (dependency and dist refresh).
2.1.9 —
- Dependency upgrades (including xml2js 0.4.23 → 0.5.0) and a refreshed dist build.
2.1.8 —
- Security: bumped follow-redirects, node-fetch, decode-uri-component, minimist, ansi-regex, jsdom, json5, minimatch, and @actions/core (1.2.6 → 1.9.1).
2.1.7 —
- Use a different delimiter when building the translation map so keys containing the previous separator are handled correctly (#36).
- Fixes #32.
2.1.6 —
- Assorted bug fixes and improved logging.
2.1.5 —
- Fix an issue with file names containing four segments.
2.1.4 —
- Added a JSON parser and .json file support.
- Fix batching bug (#18).
2.1.3 —
- Maintenance release.
2.1.2 —
- Fixes #15.
2.1.1 —
- Fix the generated step summary.
2.1.0 —
- Support for additional resource file formats beyond .resx: .ini, .po, .restext, and .xliff.
2.0.4 —
- Maintenance release.
2.0.3 —
- Fixes a batching bug and other related issues.
2.0.2 —
- File filtering to limit excessive translations.
- Batching of the translate API call to avoid rate limiting.
2.0.1 —
- New action outputs: has-new-translations, summary-title, and summary-details.
- Fix a bug where an error was logged but the action failure was not set.
2.0.0 —
- First official, fully functional and verified release.
1.0.1 —
- Build release.
1.0.0 —
- Initial release of the Azure AI Translator resource action (.resx support).
0.0.x —
- Initial prototype pre-releases (tags 0.01–0.09).