Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 0 additions & 7 deletions .changeset/allow-js-references.md

This file was deleted.

22 changes: 0 additions & 22 deletions .changeset/byok-machine-translate.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/fix-cli-create-require.md

This file was deleted.

26 changes: 0 additions & 26 deletions .changeset/incremental-lix-sync.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/order-fallbacks.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/parse5-portability.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/sherlock-logging-output.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/sherlock-observe-message-view.md

This file was deleted.

48 changes: 48 additions & 0 deletions inlang/packages/cli/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,53 @@
# @inlang/cli

## 3.1.0

### Minor Changes

- ff07482: Require the `INLANG_GOOGLE_TRANSLATE_API_KEY` environment variable for machine translations.

We previously subsidized machine translation costs. As projects become larger, our bill is no longer sustainable.

To ensure that machine translations remain available, we are switching to a Bring Your Own Key (BYOK) model.

**Before**

```sh
npx @inlang/cli machine translate --project ./project.inlang
```

**After**

```sh
export INLANG_GOOGLE_TRANSLATE_API_KEY="your-google-api-key"
npx @inlang/cli machine translate --project ./project.inlang
```

- 7791be7: Upgraded the [inlang SDK](https://github.com/opral/inlang-sdk) to [Lix](https://lix.dev/) v0.5 🎉

## Highlights

### Writing directly to Lix state

State is now written straight into Lix instead of the SDK’s private in-memory SQLite snapshot. Every bundle, message, and variant change becomes a first-class Lix commit, unlocking:

- history and branching,
- writer-key aware workflows,
- change proposals and subscriptions, and
- a single source of truth for downstream tools.

### Per-file filesystem sync

Any inlang-based tooling that opens a project from disk (IDE extensions, CLIs, custom apps) used to patch the entire locale tree whenever a single message changed. That behaviour is at the heart of [opral/inlang-sherlock#173](https://github.com/opral/inlang-sherlock/issues/173) where editing one key in `en.json` would re-export every other locale file, destroying manual formatting or reintroducing stale content.

Thanks to Lix v0.5’s observable state and writer-key APIs we can now react to per-commit metadata and suppress our own writes. When `happy_elephant` in `en.json` is updated, the SDK marks only `en.json` as dirty, leaving `de.json` and friends untouched. Drift is still possible if another tool rewrites `en.json`, yet the blast radius falls from “the whole project just changed” to “only the file you touched,” making reviews and merges manageable across all inlang integrations.

### Patch Changes

- 930df2d: Fix CLI build banner to avoid duplicate `createRequire` declarations when bundling SQLite from [lix](https://lix.dev).
- Updated dependencies [7791be7]
- @inlang/[email protected]

## 3.0.12

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion inlang/packages/cli/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@inlang/cli",
"version": "3.0.12",
"version": "3.1.0",
"private": false,
"publishConfig": {
"access": "public"
Expand Down
40 changes: 40 additions & 0 deletions inlang/packages/paraglide/paraglide-js/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,38 @@
# @inlang/paraglide-js

## 2.5.0

### Minor Changes

- 7791be7: Upgraded the [inlang SDK](https://github.com/opral/inlang-sdk) to [Lix](https://lix.dev/) v0.5 🎉

## Highlights

### Writing directly to Lix state

State is now written straight into Lix instead of the SDK’s private in-memory SQLite snapshot. Every bundle, message, and variant change becomes a first-class Lix commit, unlocking:

- history and branching,
- writer-key aware workflows,
- change proposals and subscriptions, and
- a single source of truth for downstream tools.

### Per-file filesystem sync

Any inlang-based tooling that opens a project from disk (IDE extensions, CLIs, custom apps) used to patch the entire locale tree whenever a single message changed. That behaviour is at the heart of [opral/inlang-sherlock#173](https://github.com/opral/inlang-sherlock/issues/173) where editing one key in `en.json` would re-export every other locale file, destroying manual formatting or reintroducing stale content.

Thanks to Lix v0.5’s observable state and writer-key APIs we can now react to per-commit metadata and suppress our own writes. When `happy_elephant` in `en.json` is updated, the SDK marks only `en.json` as dirty, leaving `de.json` and friends untouched. Drift is still possible if another tool rewrites `en.json`, yet the blast radius falls from “the whole project just changed” to “only the file you touched,” making reviews and merges manageable across all inlang integrations.

### Patch Changes

- 72d1c53: Ensure the CLI honours allowJs flags defined in extended or referenced tsconfig files instead of prompting unnecessarily.

Refs https://github.com/opral/inlang-paraglide-js/issues/560.

- 9735b82: Fix fallback assignment generation so locale chains emit dependencies first and avoid "Block-scoped variable used before its declaration" errors. See https://github.com/opral/inlang-paraglide-js/issues/507 for details.
- Updated dependencies [7791be7]
- @inlang/[email protected]

## 2.4.0

### Minor Changes
Expand Down Expand Up @@ -52,6 +85,7 @@
This change introduces a new `extractLocaleFromRequestAsync` function that supports asynchronous custom server strategies, enabling use cases like fetching user locale preferences from databases.

## What's Changed

- **New Function**: Added `extractLocaleFromRequestAsync` that supports async custom server strategies
- **Middleware Update**: Server middleware now uses the async version to support async custom strategies
- **Breaking Change**: The synchronous `extractLocaleFromRequest` no longer supports custom server strategies
Expand Down Expand Up @@ -120,6 +154,7 @@
```

**Migration**:

- If you want the previous behavior (subdomain sharing), explicitly set `cookieDomain` in your configuration:

```diff
Expand All @@ -137,6 +172,7 @@
- 4255bd5: Provide functions for getting the preferred language on server and client.

This defines two new functions for getting the preferred language:

- `extractLocaleFromHeader`: Extracts the locale from the accept-language header on the server.
- `extractLocaleFromNavigator`: Extracts the locale from the navigator.languages array on the client.

Expand All @@ -148,10 +184,12 @@
This introduces a new way to define custom locale resolution strategies alongside built-in strategies. Custom strategies provide a cleaner, more composable approach compared to overwriting `getLocale()` and `setLocale()` functions directly.

**New APIs:**

- `defineCustomClientStrategy()`: Define custom strategies for client-side locale resolution
- `defineCustomServerStrategy()`: Define custom strategies for server-side locale resolution

**Key features:**

- Custom strategies must follow the pattern `custom-<name>` where `<name>` contains only alphanumeric characters
- Can be combined with built-in strategies in the strategy array
- Respect strategy order for fallback handling
Expand Down Expand Up @@ -274,6 +312,7 @@
- 698b9a9: add `cookieMaxAge` option to compiler and runtime

Closes https://github.com/opral/inlang-paraglide-js/issues/483

- Introduced `cookieMaxAge` option to `CompilerOptions`, allowing configuration of cookie expiration time.
- Adjusted tests to verify `max-age` in cookies.

Expand Down Expand Up @@ -992,6 +1031,7 @@ await compile({
- 14d80b3: Removed the "Which tech-stack are you using?" prompt from the `init` command as it was not providing any real value. All it did was link you to the appropriate documentation.

From now on we rely on the docuemntation site to guide people to the correct documenation for their framework.

- SvelteKit: https://inlang.com/m/dxnzrydw/paraglide-sveltekit-i18n
- NextJs: https://inlang.com/m/osslbuzt/paraglide-next-i18n
- Astro: https://inlang.com/m/iljlwzfs/paraglide-astro-i18n
Expand Down
2 changes: 1 addition & 1 deletion inlang/packages/paraglide/paraglide-js/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@inlang/paraglide-js",
"type": "module",
"version": "2.4.0",
"version": "2.5.0",
"license": "MIT",
"publishConfig": {
"access": "public",
Expand Down
7 changes: 7 additions & 0 deletions inlang/packages/plugins/i18next/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,12 @@
# @inlang/plugin-i18next

## 6.0.12

### Patch Changes

- Updated dependencies [7791be7]
- @inlang/[email protected]

## 6.0.11

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion inlang/packages/plugins/i18next/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@inlang/plugin-i18next",
"version": "6.0.11",
"version": "6.0.12",
"type": "module",
"types": "./dist/index.d.ts",
"exports": {
Expand Down
7 changes: 7 additions & 0 deletions inlang/packages/plugins/m-function-matcher/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,12 @@
# @inlang/plugin-m-function-matcher

## 2.1.1

### Patch Changes

- Updated dependencies [7791be7]
- @inlang/[email protected]

## 2.1.0

### Minor Changes
Expand Down
2 changes: 1 addition & 1 deletion inlang/packages/plugins/m-function-matcher/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@inlang/plugin-m-function-matcher",
"version": "2.1.0",
"version": "2.1.1",
"type": "module",
"types": "./dist/index.d.ts",
"exports": {
Expand Down
7 changes: 7 additions & 0 deletions inlang/packages/plugins/t-function-matcher/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,12 @@
# @inlang/plugin-t-function-matcher

## 2.0.12

### Patch Changes

- Updated dependencies [7791be7]
- @inlang/[email protected]

## 2.0.11

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion inlang/packages/plugins/t-function-matcher/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@inlang/plugin-t-function-matcher",
"version": "2.0.11",
"version": "2.0.12",
"type": "module",
"types": "./dist/index.d.ts",
"exports": {
Expand Down
7 changes: 7 additions & 0 deletions inlang/packages/rpc/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,12 @@
# @inlang/rpc

## 0.3.52

### Patch Changes

- Updated dependencies [7791be7]
- @inlang/[email protected]

## 0.3.51

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion inlang/packages/rpc/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
"express": "^4.18.2"
},
"license": "Apache-2.0",
"version": "0.3.51",
"version": "0.3.52",
"devDependencies": {
"@opral/tsconfig": "workspace:*",
"@types/body-parser": "1.19.2",
Expand Down
23 changes: 23 additions & 0 deletions inlang/packages/sdk/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,28 @@
# @inlang/sdk

## 3.0.0

### Major Changes

- 7791be7: Upgraded the [inlang SDK](https://github.com/opral/inlang-sdk) to [Lix](https://lix.dev/) v0.5 🎉

## Highlights

### Writing directly to Lix state

State is now written straight into Lix instead of the SDK’s private in-memory SQLite snapshot. Every bundle, message, and variant change becomes a first-class Lix commit, unlocking:

- history and branching,
- writer-key aware workflows,
- change proposals and subscriptions, and
- a single source of truth for downstream tools.

### Per-file filesystem sync

Any inlang-based tooling that opens a project from disk (IDE extensions, CLIs, custom apps) used to patch the entire locale tree whenever a single message changed. That behaviour is at the heart of [opral/inlang-sherlock#173](https://github.com/opral/inlang-sherlock/issues/173) where editing one key in `en.json` would re-export every other locale file, destroying manual formatting or reintroducing stale content.

Thanks to Lix v0.5’s observable state and writer-key APIs we can now react to per-commit metadata and suppress our own writes. When `happy_elephant` in `en.json` is updated, the SDK marks only `en.json` as dirty, leaving `de.json` and friends untouched. Drift is still possible if another tool rewrites `en.json`, yet the blast radius falls from “the whole project just changed” to “only the file you touched,” making reviews and merges manageable across all inlang integrations.

## 2.4.9

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion inlang/packages/sdk/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@inlang/sdk",
"version": "2.4.9",
"version": "3.0.0",
"type": "module",
"license": "MIT",
"publishConfig": {
Expand Down
Loading