Skip to content

i18n - translations#15705

Merged
FelixMalfait merged 2 commits intomainfrom
i18n
Nov 7, 2025
Merged

i18n - translations#15705
FelixMalfait merged 2 commits intomainfrom
i18n

Conversation

@github-actions
Copy link
Copy Markdown
Contributor

@github-actions github-actions bot commented Nov 7, 2025

Created by Github action

@FelixMalfait FelixMalfait merged commit 65014cb into main Nov 7, 2025
6 checks passed
@FelixMalfait FelixMalfait deleted the i18n branch November 7, 2025 14:47
Copy link
Copy Markdown
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Greptile Overview

Greptile Summary

This PR is an automated i18n translation update that removes obsolete translation strings and adds new ones for enhanced permission controls.

Changes

  • Removed translations: View-sort related error messages (5 strings removed across all locales)
  • Added translations: New permission-related messages for workspace field updates and view management (4 new strings)
  • Updated: Refactored permission error messages for workspace settings management

Translation Coverage

  • English (en.po): Complete ✓
  • All other locales: Missing translations for 4 new permission messages

The new untranslated strings are:

  1. "The field \"{field}\" cannot be updated. Please contact your workspace administrator."
  2. "You do not have permission to update these fields: {fieldsList}. Please contact your workspace administrator."
  3. "You don't have permission to create workspace-level views."
  4. "You don't have permission to modify this view."

Impact

Generated TypeScript files include English fallback text for untranslated strings. Non-English users will see English error messages for these 4 new permission scenarios until translations are provided.

Confidence Score: 4/5

  • Safe to merge - automated translation sync with incomplete non-English translations
  • This is an automated translation update PR. The changes are straightforward (removing obsolete strings, adding new ones, compiling to TypeScript). However, 118 translations are missing across all non-English locales. While this won't break functionality (English fallbacks work), it affects UX for non-English users who will see English messages for new permission errors.
  • All non-English .po files need human translation for 4 new permission-related strings before the translation cycle is complete

Important Files Changed

File Analysis

Filename Score Overview
packages/twenty-server/src/engine/core-modules/i18n/locales/en.po 5/5 English source translations updated: removed obsolete view-sort messages, added new permission messages for workspace field updates and view permissions
packages/twenty-server/src/engine/core-modules/i18n/locales/fr-FR.po 3/5 French translations missing for 4 new permission-related messages added in this update
packages/twenty-server/src/engine/core-modules/i18n/locales/de-DE.po 3/5 German translations missing for 4 new permission-related messages
packages/twenty-server/src/engine/core-modules/i18n/locales/es-ES.po 3/5 Spanish translations missing for 4 new permission-related messages
packages/twenty-server/src/engine/core-modules/i18n/locales/generated/en.ts 5/5 Compiled English translations correctly generated from .po file
packages/twenty-server/src/engine/core-modules/i18n/locales/generated/fr-FR.ts 5/5 Compiled French translations generated, but includes untranslated English strings

Sequence Diagram

sequenceDiagram
    participant Dev as Developer
    participant Code as Source Code
    participant Extract as Lingui Extract
    participant PO as .po Files
    participant Compile as Lingui Compile
    participant TS as Generated .ts Files
    participant App as Application

    Dev->>Code: Add/Update t() calls in code
    Dev->>Extract: Run translation extraction
    Extract->>Code: Scan source for t() calls
    Extract->>PO: Update en.po with new msgid
    Extract->>PO: Mark obsolete strings
    Note over PO: All language .po files updated<br/>with empty msgstr for new strings
    
    Dev->>Compile: Run translation compilation
    Compile->>PO: Read all .po files
    Compile->>TS: Generate TypeScript files
    Note over TS: Missing translations use<br/>English fallback
    
    App->>TS: Import translations at runtime
    TS->>App: Return translated strings
    Note over App: Non-English users see<br/>English for untranslated strings
Loading

No files reviewed, no comments

Edit Code Review Agent Settings | Greptile

@github-actions
Copy link
Copy Markdown
Contributor Author

github-actions bot commented Nov 7, 2025

Fails
🚫

node failed.

Log

Details
�[31mError: �[39m SyntaxError: Unexpected end of JSON input
    at JSON.parse (<anonymous>)
�[90m    at parseJSONFromBytes (node:internal/deps/undici/undici:6433:19)�[39m
�[90m    at successSteps (node:internal/deps/undici/undici:6414:27)�[39m
�[90m    at readAllBytes (node:internal/deps/undici/undici:5380:13)�[39m
�[90m    at process.processTicksAndRejections (node:internal/process/task_queues:105:5)�[39m
danger-results://tmp/danger-results-2e881ce9.json

Generated by 🚫 dangerJS against 5dae4d3

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant