Releases: lingodotdev/lingo.dev
lingo.dev@0.136.2
Patch Changes
- Updated dependencies [
7893f5b]:- @lingo.dev/_sdk@0.16.4
- @lingo.dev/_compiler@0.12.4
lingo.dev@0.136.1
Patch Changes
-
#2096
7d803d2Thanks @louisguitton! - Installgitin thelingodotdev/ci-actionDocker image solingo.dev ciworks in runners that do not already provide it (e.g. GitLab CI using the image directly). -
#2095
fd11342Thanks @Waqasabid99! - Fix parsing of comma-separated locale inputs with spaces and quotes during init
@lingo.dev/_sdk@0.16.4
Patch Changes
- #2103
7893f5bThanks @AndreyHirsa! - Android-format (pt-rPT) and underscore (pt_PT) locales passed config validation but were sent to the API verbatim, which it rejects with a 400. NormalizesourceLocale,targetLocale, andreferencekeys to canonical BCP 47 on the wire via a schema transform. File paths are unaffected, so the CLI keeps the original code for Android resource directories (e.g.values-pt-rPT/)
@lingo.dev/_compiler@0.12.4
Patch Changes
- Updated dependencies [
7893f5b]:- @lingo.dev/_sdk@0.16.4
lingo.dev@0.136.0
Minor Changes
-
#2093
74c8be0Thanks @cherkanovart! - Change the default behavior oflingo.dev lockfileso it fills in missingi18n.locksections additively instead of bailing out. Without--force, sections that already contain checksums are left untouched (preserving the divergence signal that--frozenrelies on), and any pathPattern whose section is missing or empty is populated from the current source.--forcestill rebuilds the entire lock as before.Update the
--frozenvalidation error to point users at the recovery command: messages now read "Runlingo.dev lockfileto refresh i18n.lock, or run without --frozen."Together these surface a fix for the false-positive
--frozenfailures that PR #2091 did not cover (new files under**globs, new buckets, prior--target-localeruns that don't write checksums, and pre-existing empty lock sections).
@lingo.dev/compiler@0.4.3
Patch Changes
- Updated dependencies [
74c8be0]:- lingo.dev@0.136.0
lingo.dev@0.135.1
Patch Changes
- #2091
bf06078Thanks @cherkanovart! - Fix--frozenfalsely reporting "Source file has been updated" after a no-oprun. Whenlingo.dev runfinds nothing to translate (source matches target), it now persists source checksums toi18n.lockso a subsequent--frozenrun has a baseline to validate against.
lingo.dev@0.135.0
Minor Changes
-
#2089
0106b48Thanks @cherkanovart! - Support recursive glob patterns (**) in bucketinclude/exclude.Patterns like
config/locales/**/[locale].ymlorsrc/**/[locale]/strings/*.jsonnow match files at any depth, so you no longer need to enumerate every nesting level. The previous restriction that rejected any pattern containing**has been removed.Two safety nets ship with this change, both scoped to patterns that actually use
**:- For
**patterns only,node_modules,.git,dist,build,.next, and.turboare excluded by default so a broad pattern like**/[locale].jsondoes not descend into vendored or build trees. Existing patterns without**keep the previous traversal behavior exactly as before. Add your ownexcludeentries on top as needed. - When a matched file cannot be unambiguously mapped back to the
[locale]placeholder (for example, a pattern with multiple wildcards around[locale]that admits more than one valid restoration), the CLI now throws a clear error instead of silently returning a malformed path.
- For
@lingo.dev/compiler@0.4.2
Patch Changes
- Updated dependencies [
0106b48]:- lingo.dev@0.135.0
lingo.dev@0.134.0
Minor Changes
-
#2087
2787e33Thanks @moygospadin! - Fixlingo.dev loginon Safari (and other browsers that block mixed-content requests tolocalhost).The login command now uses a polling-based device flow: the CLI registers a session with the API, opens the browser to confirm it, then polls until the user grants access. The previous flow opened a local Express server and asked the web page to
POSTthe API key tohttp://localhost:<port>, which Safari blocks because the page is served over HTTPS. The web app continues to support the legacy?port=query parameter for one release cycle so CLI versions published before this change keep working in Chrome — Safari users need this upgrade either way. Theexpressandcorsdependencies are no longer needed and have been removed.