Hoppa till innehållet

Språk

Välj ditt språk

Byt till samma sida på ett annat språk.

EnglishEnglishenAfrikaansAfrikaansafአማርኛAmharicamالعربيةArabicarঅসমীয়াAssameseasAzərbaycanAzerbaijaniazБашҡортBashkirbaБългарскиBulgarianbgभोजपुरीBhojpuribhoবাংলাBanglabnབོད་སྐད་Tibetanboबड़ोBodobrxBosanskiBosnianbsCatalàCatalancaČeštinaCzechcsCymraegWelshcyDanskDanishdaDeutschGermandeडोगरीDogridoiDolnoserbšćinaLower SorbiandsbދިވެހިބަސްDivehidvΕλληνικάGreekelEspañolSpanishesEestiEstonianetEuskaraBasqueeuفارسیPersianfaSuomiFinnishfiFilipinoFilipinofilVakavitiFijianfjFøroysktFaroesefoFrançaisFrenchfrFrançais (Canada)French (Canada)fr-CAGaeilgeIrishgaGalegoGalicianglकोंकणीKonkanigomગુજરાતીGujaratiguHausaHausahaעבריתHebrewheहिन्दीHindihiछत्तीसगढ़ीChhattisgarhihneHrvatskiCroatianhrHornjoserbsceUpper SorbianhsbHaitian CreoleHaitian CreolehtMagyarHungarianhuՀայերենArmenianhyIndonesiaIndonesianidÌgbòIgboigInuinnaqtunInuinnaqtuniktÍslenskaIcelandicisItalianoItalianitᐃᓄᒃᑎᑐᑦInuktitutiuInuktitut (Latin)Inuktitut (Latin)iu-Latn日本語JapanesejaქართულიGeorgiankaҚазақ ТіліKazakhkkខ្មែរKhmerkmKurmancîKurdish (Northern)kmrಕನ್ನಡKannadakn한국어KoreankoكٲشُرKashmiriksکوردیی ناوەندیKurdish (Central)kuКыргызчаKyrgyzkyLëtzebuergeschLuxembourgishlbLingálaLingalalnລາວLaoloLietuviųLithuanianltLugandaGandalugLatviešuLatvianlv中文 (文言文)Chinese (Literary)lzhमैथिलीMaithilimaiMalagasyMalagasymgTe Reo MāoriMāorimiМакедонскиMacedonianmkമലയാളംMalayalammlМонгол хэлMongolian (Cyrillic)mn-Cyrlᠮᠣᠩᠭᠣᠯ ᠬᠡᠯᠡMongolian (Traditional)mn-MongমৈতৈলোনManipurimniमराठीMarathimrMelayuMalaymsMaltiMaltesemtHmong DawHmong Dawmwwမြန်မာMyanmar (Burmese)myNorsk BokmålNorwegian BokmålnbनेपालीNepalineNederlandsDutchnlSesotho sa LeboaSesotho sa LeboansoChinyanjaChichewanyaଓଡ଼ିଆOdiaorHñähñuQuerétaro OtomiotqਪੰਜਾਬੀPunjabipaPolskiPolishplدریDariprsپښتوPashtopsPortuguês (Brasil)Portuguese (Brazil)ptPortuguês (Portugal)Portuguese (Portugal)pt-PTRomânăRomanianroРусскийRussianruIkirundiRundirunKinyarwandaKinyarwandarwسنڌيSindhisdසිංහලSinhalasiSlovenčinaSlovakskSlovenščinaSlovenianslGagana SāmoaSamoansmchiShonaShonasnSoomaaliSomalisoShqipAlbaniansqСрпски (ћирилица)Serbian (Cyrillic)sr-CyrlSrpski (latinica)Serbian (Latin)sr-LatnSesothoSesothostSvenskaSwedishsvKiswahiliSwahiliswதமிழ்TamiltaతెలుగుTeluguteไทยThaithትግርTigrinyatiTürkmen DiliTurkmentkLea fakatongaTongantoTürkçeTurkishtrТатарTatarttReo TahitiTahitiantyئۇيغۇرچەUyghurugУкраїнськаUkrainianukاردوUrduurUzbek (Latin)Uzbek (Latin)uzTiếng ViệtVietnameseviisiXhosaisiXhosaxhÈdè YorùbáYorubayoYucatec MayaYucatec Mayayua粵語Cantonese (Traditional)yue中文 (简体)Chinese Simplifiedzh-Hans中文 (繁體)Chinese Traditionalzh-HantisiZuluisiZuluzu

Historia

Byteslogg

Sammanfattning av utgåvor på hög nivå. Den kanoniska, auktoritativa ändringsloggen finns i CHANGELOG.md i arkivet.

På denna sida

    Se CHANGELOG.md för hela protokollet.

    Utgåvor

    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. Use changeDetection=disabled or false for legacy always-translate behavior, statePath to relocate the manifest, and snapshotOnly to 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 —

    • Multileverantör: översätta med Azure AI Translator, AWS Translate eller Google Cloud Translation bakom en enhetlig API-yta. Välj en enda leverantör per genomgång med den nya provider input; åtgärden delegerar till den matchande SDK:n bakom en fabrik och fungerar identiskt oavsett leverantör. Fullt bakåtkompatibel — provider är standardinställning till azure, så befintliga Azure-arbetsflöden fortsätter att fungera oförändrade.
    • Ny AWS Translate-leverantör (@aws-sdk/client-translate). Autentisera med AWS standardbehörighetskedja (rekommenderat: OIDC via aws-actions/configure-aws-credentials) eller explicit awsAccessKeyId / awsSecretAccessKey; Region via awsRegion eller AWS_REGION.
    • Ny Google Cloud Translation-leverantör (@google-cloud/translate, v2). Autentisera med ett servicekonto-JSON-inloggingsord (googleCredentials) eller en API-nyckel (googleApiKey); Valfritt googleProjectId.
    • Nya ingångar: provider, awsAccessKeyId, awsSecretAccessKey, awsRegion, googleApiKey, googleCredentials, googleProjectId.
    • Avsiktsspecifikationsmappning: textType mappar till Googles format och profanityAction mappar till AWS-svordomsmaskering där en motsvarighet finns. Azure-endast specificerare (categoryId, apiVersion, profanityMarker, allowFallback) ignoreras av andra leverantörer.
    • Azure-förfrågningsindata (subscriptionKey, endpoint, region) markeras inte längre som nödvändiga i action.yml så att andra leverantörer kan väljas — de valideras fortfarande vid körning när provider är azure.
    • Nya översättningsleverantörer-sida, flikar för leverantörer under Kom igång, val av leverantör på sidan Inputs och en uppdaterad startsida med Azure, AWS och Google.

    3.0.2 —

    • Åtgärdat: Translator-förfrågningar fäster nu api-version=3.0 på tråden för både /translate och /languages. Azure SDK hedrar endast klientnivå-API-versionen när en legitimation har skickats; åtgärden autentiseras per förfrågan via headers, så det alternativet togs tyst bort och förfrågningarna gick till en förhandsgransknings-API-version vars /translate kontrakt avvisade kroppen med HTTP 400 (felkod 400074). Slutför, fixen startade i 3.0.1.

    3.0.1 —

    • Åtgärdat: Den /translate begäranska kroppen är nu en ren JSON-array av { text } objekt istället för ett wrapped { inputs } objekt, vilket matchar v3.0 REST-kontraktet. På egen hand återställde detta inte översättningarna — se 3.0.2.

    3.0.0 —

    • Flyttade till node24 körtid (BRYTNING).
    • Nya ingångar: include, exclude, configPath, categoryId, apiVersion, dryRun, failOnError, samt avancerade översättarrattar textType, profanityAction, profanityMarker och allowFallback.
    • Källplatsen vidarebefordras nu också till Translator som from=<locale> så att korta strängar inte automatiskt upptäcks.
    • Motståndskraft: automatisk omprövning på transienta HTTP-svar (408, 425, 429, 500, 502, 503, 504) som respekterar Azures Retry-After-header — faller tillbaka på jitterad exponentiell backoff när den saknas. Justerbar via maxRetries och retryBackoffMs. Stänger #46.
    • Platshållarskydd: tokens som {{name}}, ${var}, {0}, {0:N2}, %s, %1$s och HTML-entiteter paketeras i sentinels före översättning och återställs efteråt, så Translator slutar förstöra i18next/Mustache/Handlebars/.NET/printf platshållare. Växla via protectPlaceholders; Förläng med customPlaceholderPatterns. Drar åt #16.
    • Avvinkning per nyckel: nya noTranslatePatterns inmatning tar helt bort matchande nycklar från översättarens förfrågan (bevarar källvärden för varumärken, felkoder etc.). Matchar globmönster mot parser-nivånycklar (JSON prickad väg, RESX name, PO msgid, XLIFF-enhet id, INI/restext-tangent). Stänger #35.
    • Repo-nivåkonfiguration via .github/resource-translator.yml.
    • Ordlistastöd, stegsammanfattning via core.summary.
    • esbuild bundler, ESLint 9 flat config, Prettier, EditorConfig.
    • NPM-revision ren (0 sårbarheter).
    • Astro + Tailwind v4 dokumentationssida med vyövergångar och Expressive Code.
    • Docs tillgänglighet: WCAG 2.1 AA-godkänd. Logotypglyfer konverteras till banor så att de inte längre misslyckas med färgkontrast mot gradientstopp, flytande Back to top-knappen använder inert medan den är dold (istället för en aria-hidden som lämnade den tabbar), formats.astro sektioner inte längre kolliderar med sina automatiskt genererade rubrik-ID:n, tre platskort visar nu BCP-47-giltiga lang attribut (nya→ny, lug→lg, run→rn), dubbletter Documentation landmärkesetiketter skiljs mellan sidofältet och foten, och varje datatabell på inputs/configuration levereras med en skärmläsarbildtext.
    • Inline-kodstil: docs <code> prosa bär nu den varma/bärnstensfärgade accenten – skild från varumärkes→accentpaletten som används för länkar och rubriker.
    • Dependabot auto-merge, CodeQL-skanning, CI-matris.

    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).