mirror of
https://github.com/actualbudget/actual.git
synced 2026-04-30 03:23:51 -05:00
* Update typography rule to disallow curly quotes with auto-fix - Reverse typography rule to detect and flag curly quotes instead of straight quotes - Add auto-fixer that converts curly quotes to straight quotes - Fix auto-fixer to properly escape quotes when they match string delimiters * Fix quotation marks in error messages and formatting strings across multiple files - Standardize quotation marks from curly to straight in error messages and string formatting for consistency. - Update various components and utility files to ensure proper string handling and improve readability. * Standardize quotation marks across multiple files - Replace curly quotes with straight quotes in various documentation and code files for consistency and improved readability. - Update error messages, comments, and documentation to ensure uniformity in string formatting. * Standardize month formatting across multiple components - Update month formatting strings from "MMMM 'yy" to "MMMM ''yy" in various components and utility files for consistency. - Ensure uniformity in how months are displayed throughout the application. * Refactor typography rule to enhance curly quote handling - Simplify the error reporting mechanism for curly quotes by creating a shared fix function. - Update test cases to include various curly quote scenarios for improved coverage. - Ensure consistent handling of curly quotes in formatting functions across multiple files. * Refactor typography handling and update tests for curly quotes - Replace curly quotes with their Unicode equivalents in typography rule and related test cases for consistency. - Remove unnecessary eslint-disable comments to improve code clarity. - Ensure proper handling of quotes in arithmetic and utility tests to align with updated typography standards. * Update VRT screenshots Auto-generated by VRT workflow PR: #6454 * Fix: Correct typo in budget cell notification message Co-authored-by: matiss <matiss@mja.lv> * Update VRT screenshots Auto-generated by VRT workflow PR: #6454 * Temporarily disable i18n string extraction workflow --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Cursor Agent <cursoragent@cursor.com>
88 lines
2.9 KiB
YAML
88 lines
2.9 KiB
YAML
name: Extract and upload i18n strings
|
|
|
|
on:
|
|
schedule:
|
|
# 4am UTC
|
|
- cron: '0 4 * * *'
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
extract-and-upload-i18n-strings:
|
|
runs-on: ubuntu-latest
|
|
if: false # Temporarily disabled
|
|
steps:
|
|
- name: Check out main repository
|
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
|
with:
|
|
path: actual
|
|
- name: Set up environment
|
|
uses: ./actual/.github/actions/setup
|
|
with:
|
|
working-directory: actual
|
|
download-translations: false # As we'll manually clone instead
|
|
- name: Configure Git config
|
|
run: |
|
|
git config --global user.name "github-actions[bot]"
|
|
git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com"
|
|
- name: Configure i18n client
|
|
run: |
|
|
pip install wlc
|
|
|
|
- name: Lock translations
|
|
run: |
|
|
wlc \
|
|
--url https://hosted.weblate.org/api/ \
|
|
--key "${{ secrets.WEBLATE_API_KEY_CI_STRINGS }}" \
|
|
lock \
|
|
actualbudget/actual
|
|
|
|
- name: Update VCS with latest translations
|
|
run: |
|
|
wlc \
|
|
--url https://hosted.weblate.org/api/ \
|
|
--key "${{ secrets.WEBLATE_API_KEY_CI_STRINGS }}" \
|
|
push \
|
|
actualbudget/actual
|
|
- name: Check out updated translations
|
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
|
with:
|
|
ssh-key: ${{ secrets.STRING_IMPORT_DEPLOY_KEY }}
|
|
repository: actualbudget/translations
|
|
path: translations
|
|
- name: Generate i18n strings
|
|
working-directory: actual
|
|
run: |
|
|
mkdir -p packages/desktop-client/locale/
|
|
cp ../translations/en.json packages/desktop-client/locale/
|
|
yarn generate:i18n
|
|
if [[ ! -f packages/desktop-client/locale/en.json ]]; then
|
|
echo "File packages/desktop-client/locale/en.json not found. Ensure the file was generated correctly."
|
|
exit 1
|
|
fi
|
|
- name: Check in new i18n strings
|
|
working-directory: translations
|
|
run: |
|
|
cp ../actual/packages/desktop-client/locale/en.json .
|
|
git add .
|
|
if git commit -m "Update source strings"; then
|
|
git push
|
|
else
|
|
echo "No changes to commit"
|
|
fi
|
|
- name: Update Weblate with latest translations
|
|
run: |
|
|
wlc \
|
|
--url https://hosted.weblate.org/api/ \
|
|
--key "${{ secrets.WEBLATE_API_KEY_CI_STRINGS }}" \
|
|
pull \
|
|
actualbudget/actual
|
|
|
|
- name: Unlock translations
|
|
if: always() # Clean up even on failure
|
|
run: |
|
|
wlc \
|
|
--url https://hosted.weblate.org/api/ \
|
|
--key "${{ secrets.WEBLATE_API_KEY_CI_STRINGS }}" \
|
|
unlock \
|
|
actualbudget/actual
|