Lihat CHANGELOG.md untuk catatan lengkapnya.
Rilis
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 —
- Multi-vendor: menerjemahkan dengan Azure AI Translator, AWS Translate, atau Google Cloud Translation di balik satu permukaan API terpadu. Pilih satu penyedia per eksekusi dengan input
providerbaru; tindakan didelegasikan ke SDK yang cocok di belakang pabrik dan berperilaku identik terlepas dari vendornya. Sepenuhnya kompatibel dengan versi sebelumnya —providerdefault keazure, sehingga alur kerja Azure yang ada tetap berfungsi tidak berubah. - Penyedia AWS Translate baru (
@aws-sdk/client-translate). Autentikasi dengan rantai kredensial default AWS (disarankan: OIDC melalui aws-actions/configure-aws-credentials) atauawsAccessKeyId/awsSecretAccessKeyeksplisit; wilayah melaluiawsRegionatauAWS_REGION. - Penyedia Google Cloud Translation baru (
@google-cloud/translate, v2). Autentikasi dengan kredensial JSON akun layanan (googleCredentials) atau kunci API (googleApiKey);googleProjectIdopsional. - Input baru:
provider,awsAccessKeyId,awsSecretAccessKey,awsRegion,googleApiKey,googleCredentials,googleProjectId. - Pemetaan penentu maksud:
textTypememetakan keformatGoogle dan petaprofanityActionke penyamaran kata-kata kotor AWS di mana ada yang setara. Penentu khusus Azure (categoryId,apiVersion,profanityMarker,allowFallback) diabaikan oleh penyedia lain. - Input permintaan Azure (
subscriptionKey,endpoint,region) tidak lagi ditandai wajib dalamaction.ymlsehingga penyedia lain dapat dipilih — masih divalidasi saat runtime saatproviderazure. - Halaman penyedia terjemahan baru, tab penyedia di Memulai, pemilihan penyedia di halaman Input, dan halaman beranda yang diperbarui yang mengarah dengan Azure, AWS, dan Google.
3.0.2 —
- Diperbaiki: Permintaan Penerjemah sekarang menyematkan
api-version=3.0pada kabel untuk/translatedan/languages. Azure SDK hanya menghormati opsi versi api tingkat klien saat kredensial diteruskan; tindakan mengautentikasi per permintaan melalui header, sehingga opsi itu diam-diam dihilangkan dan permintaan default ke versi API pratinjau yang kontrak/translate-nya menolak isi dengan HTTP 400 (kode kesalahan400074). Menyelesaikan perbaikan yang dimulai di 3.0.1.
3.0.1 —
- Diperbaiki: Isi permintaan
/translatesekarang menjadi array JSON kosong dari item{ text }, bukan objek{ inputs }yang dibungkus, cocok dengan kontrak REST v3.0. Dengan sendirinya ini tidak memulihkan terjemahan — lihat 3.0.2.
3.0.0 —
- Menabrak ke
node24runtime (MEMECAHKAN). - Input baru:
include,exclude,configPath,categoryId,apiVersion,dryRun,failOnError, ditambah kenop Penerjemah tingkat lanjuttextType,profanityAction,profanityMarker, danallowFallback. - Lokal sumber sekarang juga diteruskan ke Penerjemah karena
from=<locale>sehingga string pendek tidak terdeteksi secara otomatis. - Ketahanan: percobaan ulang otomatis pada respons HTTP sementara (
408, 425, 429, 500, 502, 503, 504) yang menghormati headerRetry-AfterAzure — kembali ke backoff eksponensial yang gelisah saat tidak ada. Dapat disetel melaluimaxRetriesdanretryBackoffMs. Menutup #46. - Token Perlindungan placeholder: seperti entitas
{{name}},${var},{0},{0:N2},%s,%1$s, dan HTML dibungkus dalam penjaga sebelum diterjemahkan dan dipulihkan setelahnya, sehingga Penerjemah berhenti merusak placeholder i18next/Mustache/Handlebars/.NET/printf. Beralih melaluiprotectPlaceholders; memperluas dengancustomPlaceholderPatterns. Mengencangkan #16. - Penolakan per kunci: input
noTranslatePatternsbaru akan menghapus kunci yang cocok dari permintaan Penerjemah sepenuhnya (mempertahankan nilai sumber untuk nama merek, kode kesalahan, dll.). Mencocokkan pola glob dengan kunci tingkat parser (jalur putus-putus JSON,nameRESX, POmsgid,idunit XLIFF, kunci INI/restext). Tutup #35. - Konfigurasi tingkat repositori melalui
.github/resource-translator.yml. - Dukungan glosarium, ringkasan langkah melalui
core.summary. - esbuild bundler, ESLint 9 konfigurasi datar, Prettier, EditorConfig.
- Audit NPM bersih (0 kerentanan).
- Situs dokumen Astro + Tailwind v4 dengan transisi tampilan dan Kode Ekspresif.
- Aksesibilitas dokumen: WCAG 2.1 AA lulus. Mesin terbang logo dikonversi menjadi jalur sehingga tidak lagi gagal kontras warna terhadap penghentian gradien, tombol
Back to topmengambang menggunakaninertsaat tersembunyi (alih-alih sakelararia-hiddenyang membuatnya dapat ditab), bagianformats.astrotidak lagi bertabrakan dengan ID judul yang dibuat secara otomatis, tiga kartu lokal sekarang mengekspos atributlangyang valid BCP-47 (nya→ny,lug→lg,run→rn), label landmark duplikatDocumentationdidisambiguasi antara bilah sisi dan footer, dan setiap tabel data diinputs/configurationdikirimkan dengan keterangan pembaca layar. - Gaya kode sebaris:
<code>prosa docs sekarang mengenakan aksen tema hangat/kuning — berbeda dari palet aksen →merek yang digunakan untuk tautan dan judul. - Penggabungan otomatis Dependabot, pemindaian CodeQL, matriks 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).