Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package agama-web-ui for openSUSE:Factory checked in at 2025-12-03 14:11:42 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/agama-web-ui (Old) and /work/SRC/openSUSE:Factory/.agama-web-ui.new.14147 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "agama-web-ui" Wed Dec 3 14:11:42 2025 rev:30 rq:1320745 version:0 Changes: -------- --- /work/SRC/openSUSE:Factory/agama-web-ui/agama-web-ui.changes 2025-11-14 16:10:55.583280015 +0100 +++ /work/SRC/openSUSE:Factory/.agama-web-ui.new.14147/agama-web-ui.changes 2025-12-03 14:11:44.352569324 +0100 @@ -1,0 +2,5 @@ +Fri Nov 21 08:17:06 UTC 2025 - Ladislav Slezák <[email protected]> + +- Fixed missing translations (error cases for software repos, iSCSI, DASD; bsc#1250059) + +------------------------------------------------------------------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ agama.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/agama/eslint.config.mjs new/agama/eslint.config.mjs --- old/agama/eslint.config.mjs 2025-11-10 13:53:12.000000000 +0100 +++ new/agama/eslint.config.mjs 2025-11-24 13:56:57.000000000 +0100 @@ -41,8 +41,7 @@ { rules: { "agama-i18n/string-literals": "error", - // TODO: enable this check after fixing all top level translations (bsc#1250059) - // "agama-i18n/top-level-translation": "error", + "agama-i18n/top-level-translation": "error", "i18next/no-literal-string": "error", "no-var": "error", "no-multi-str": "off", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/agama/package/agama-web-ui.changes new/agama/package/agama-web-ui.changes --- old/agama/package/agama-web-ui.changes 2025-11-10 13:53:12.000000000 +0100 +++ new/agama/package/agama-web-ui.changes 2025-11-24 13:56:57.000000000 +0100 @@ -1,4 +1,9 @@ ------------------------------------------------------------------- +Fri Nov 21 08:17:06 UTC 2025 - Ladislav Slezák <[email protected]> + +- Fixed missing translations (error cases for software repos, iSCSI, DASD; bsc#1250059) + +------------------------------------------------------------------- Mon Oct 27 15:51:48 UTC 2025 - Ladislav Slezák <[email protected]> - Use the JavaScript/TypeScript parser to extract strings for diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/agama/package-lock.json new/agama/package-lock.json --- old/agama/package-lock.json 2025-11-10 13:53:12.000000000 +0100 +++ new/agama/package-lock.json 2025-11-24 13:56:57.000000000 +0100 @@ -25,7 +25,7 @@ "xbytes": "^1.9.1" }, "devDependencies": { - "@agama-project/eslint-plugin-agama-i18n": "^1.1.0", + "@agama-project/eslint-plugin-agama-i18n": "^1.2.0", "@babel/core": "^7.27.4", "@babel/eslint-parser": "^7.27.5", "@babel/preset-env": "^7.27.2", @@ -102,9 +102,9 @@ "license": "MIT" }, "node_modules/@agama-project/eslint-plugin-agama-i18n": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@agama-project/eslint-plugin-agama-i18n/-/eslint-plugin-agama-i18n-1.1.0.tgz", - "integrity": "sha512-MGhVVeEFaiw4OfaXwl1jTHhTdOy1QVULy7/XdpaWvp4EB+aYdlrgvIblpFDkCtqgLOaLa0+J88icHZzyLCK5aA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@agama-project/eslint-plugin-agama-i18n/-/eslint-plugin-agama-i18n-1.2.0.tgz", + "integrity": "sha512-mI3qGf7XDuHjrO13KT2xKTrFEm5uGxBm17MApvoxStS0kU6oU+eUa6Sh2tX9J6ypvKxzdITMh3QkITeNNztfEg==", "dev": true, "license": "MIT", "peerDependencies": { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/agama/package.json new/agama/package.json --- old/agama/package.json 2025-11-10 13:53:12.000000000 +0100 +++ new/agama/package.json 2025-11-24 13:56:57.000000000 +0100 @@ -23,7 +23,7 @@ "node": ">=18" }, "devDependencies": { - "@agama-project/eslint-plugin-agama-i18n": "^1.1.0", + "@agama-project/eslint-plugin-agama-i18n": "^1.2.0", "@babel/core": "^7.27.4", "@babel/eslint-parser": "^7.27.5", "@babel/preset-env": "^7.27.2", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/agama/src/components/network/WifiConnectionForm.tsx new/agama/src/components/network/WifiConnectionForm.tsx --- old/agama/src/components/network/WifiConnectionForm.tsx 2025-11-10 13:53:12.000000000 +0100 +++ new/agama/src/components/network/WifiConnectionForm.tsx 2025-11-24 13:56:57.000000000 +0100 @@ -36,13 +36,13 @@ import { Connection, ConnectionState, WifiNetwork, Wireless } from "~/types/network"; import { isEmpty } from "radashi"; import { sprintf } from "sprintf-js"; -import { _ } from "~/i18n"; +import { N_, _ } from "~/i18n"; const securityOptions = [ // TRANSLATORS: WiFi authentication mode - { value: "none", label: _("None") }, + { value: "none", label: N_("None") }, // TRANSLATORS: WiFi authentication mode - { value: "wpa-psk", label: _("WPA & WPA2 Personal") }, + { value: "wpa-psk", label: N_("WPA & WPA2 Personal") }, ]; const securityFrom = (supported: string[]) => { @@ -162,7 +162,8 @@ <FormSelectOption key={security.value} value={security.value} - label={security.label} + /* eslint-disable agama-i18n/string-literals */ + label={_(security.label)} /> ))} </FormSelect> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/agama/src/components/product/ProductRegistrationPage.tsx new/agama/src/components/product/ProductRegistrationPage.tsx --- old/agama/src/components/product/ProductRegistrationPage.tsx 2025-11-10 13:53:12.000000000 +0100 +++ new/agama/src/components/product/ProductRegistrationPage.tsx 2025-11-24 13:56:57.000000000 +0100 @@ -82,7 +82,6 @@ <DescriptionListGroup> {!isEmpty(registration.url) && ( <> - {/* eslint-disable agama-i18n/string-literals */} <DescriptionListTerm>{_(SERVER_LABEL)}</DescriptionListTerm> <DescriptionListDescription>{registration.url}</DescriptionListDescription> </> @@ -102,7 +101,6 @@ )} {!isEmpty(registration.email) && ( <> - {/* eslint-disable agama-i18n/string-literals */} <DescriptionListTerm>{_(EMAIL_LABEL)}</DescriptionListTerm> <DescriptionListDescription>{registration.email}</DescriptionListDescription> </> @@ -127,28 +125,21 @@ onChange, }: RegistrationServerProps): React.ReactNode { return ( - <FormGroup - fieldId={id} - /* eslint-disable agama-i18n/string-literals */ - label={_(SERVER_LABEL)} - > + <FormGroup fieldId={id} label={_(SERVER_LABEL)}> <Select id={"server"} value={value} - /* eslint-disable agama-i18n/string-literals */ label={value === "default" ? _(SCC_SERVER_LABEL) : _(CUSTOM_SERVER_LABEL)} onChange={(v: ServerOption) => onChange(v)} > <SelectList aria-label={_("Server options")}> <SelectOption value="default" description={_("Register using SUSE server")}> - {/* eslint-disable agama-i18n/string-literals */} {_(SCC_SERVER_LABEL)} </SelectOption> <SelectOption value="custom" description={_("Register using a custom registration server")} > - {/* eslint-disable agama-i18n/string-literals */} {_(CUSTOM_SERVER_LABEL)} </SelectOption> </SelectList> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/agama/src/components/software/SoftwarePage.tsx new/agama/src/components/software/SoftwarePage.tsx --- old/agama/src/components/software/SoftwarePage.tsx 2025-11-10 13:53:12.000000000 +0100 +++ new/agama/src/components/software/SoftwarePage.tsx 2025-11-24 13:56:57.000000000 +0100 @@ -45,7 +45,7 @@ useRepositoryMutation, } from "~/queries/software"; import { Pattern, SelectedBy } from "~/types/software"; -import { _ } from "~/i18n"; +import { N_, _ } from "~/i18n"; import { SOFTWARE as PATHS } from "~/routes/paths"; /** @@ -96,7 +96,7 @@ </Page.Section> ); -const errorMsg = _( +const errorMsg = N_( /* TRANSLATORS: error details followed by a "Try again" link*/ "Some installation repositories could not be loaded. \ The system cannot be installed without them.", @@ -119,7 +119,7 @@ </> ) : ( <> - {errorMsg}{" "} + {_(errorMsg)}{" "} <Button variant="link" isInline onClick={action}> {/* TRANSLATORS: link for retrying failed repository load */} {_("Try again")} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/agama/src/components/storage/dasd/DASDTable.tsx new/agama/src/components/storage/dasd/DASDTable.tsx --- old/agama/src/components/storage/dasd/DASDTable.tsx 2025-11-10 13:53:12.000000000 +0100 +++ new/agama/src/components/storage/dasd/DASDTable.tsx 2025-11-24 13:56:57.000000000 +0100 @@ -432,7 +432,7 @@ * * These columns are consumed by the core <SelectableDataTable> component. */ -const columns = [ +const createColumns = () => [ { // TRANSLATORS: table header for a DASD devices table name: _("Channel ID"), @@ -494,6 +494,8 @@ const { mutate: updateDASD } = useDASDMutation(); const [state, dispatch] = useReducer(reducer, initialState); + const columns = createColumns(); + useEffect(() => { if (!client) return; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/agama/src/components/storage/dasd/FormatFilter.tsx new/agama/src/components/storage/dasd/FormatFilter.tsx --- old/agama/src/components/storage/dasd/FormatFilter.tsx 2025-11-10 13:53:12.000000000 +0100 +++ new/agama/src/components/storage/dasd/FormatFilter.tsx 2025-11-24 13:56:57.000000000 +0100 @@ -32,7 +32,7 @@ } from "@patternfly/react-core"; import Text from "~/components/core/Text"; import { DASDDevicesFilters } from "~/components/storage/dasd/DASDTable"; -import { _ } from "~/i18n"; +import { N_, _ } from "~/i18n"; type FormatFilterProps = { value: DASDDevicesFilters["formatted"]; @@ -40,9 +40,9 @@ }; const options = { - all: _("all"), - yes: _("yes"), - no: _("no"), + all: N_("all"), + yes: N_("yes"), + no: N_("no"), }; const ID = "dasd-format-filter"; @@ -67,7 +67,8 @@ const toggle = (toggleRef: React.Ref<MenuToggleElement>) => ( <MenuToggle id={ID} ref={toggleRef} onClick={onToggle} isExpanded={isOpen}> - {options[value]} + {/* eslint-disable agama-i18n/string-literals */} + {_(options[value])} </MenuToggle> ); @@ -91,7 +92,8 @@ <SelectList> {Object.keys(options).map((key) => ( <SelectOption key={key} value={key}> - {options[key]} + {/* eslint-disable agama-i18n/string-literals */} + {_(options[key])} </SelectOption> ))} </SelectList> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/agama/src/components/storage/dasd/StatusFilter.tsx new/agama/src/components/storage/dasd/StatusFilter.tsx --- old/agama/src/components/storage/dasd/StatusFilter.tsx 2025-11-10 13:53:12.000000000 +0100 +++ new/agama/src/components/storage/dasd/StatusFilter.tsx 2025-11-24 13:56:57.000000000 +0100 @@ -31,7 +31,7 @@ SelectProps, } from "@patternfly/react-core"; import Text from "~/components/core/Text"; -import { _ } from "~/i18n"; +import { N_, _ } from "~/i18n"; type StatusFilterProps = { value: string; @@ -39,10 +39,10 @@ }; const options = { - all: _("all"), - active: _("active"), - read_only: _("read_only"), - offline: _("offline"), + all: N_("all"), + active: N_("active"), + read_only: N_("read_only"), + offline: N_("offline"), }; const ID = "dasd-status-filter"; @@ -67,7 +67,8 @@ const toggle = (toggleRef: React.Ref<MenuToggleElement>) => ( <MenuToggle id={ID} ref={toggleRef} onClick={onToggle} isExpanded={isOpen}> - {options[value]} + {/* eslint-disable agama-i18n/string-literals */} + {_(options[value])} </MenuToggle> ); @@ -92,7 +93,8 @@ <SelectList> {Object.keys(options).map((key) => ( <SelectOption key={key} value={key}> - {options[key]} + {/* eslint-disable agama-i18n/string-literals */} + {_(options[key])} </SelectOption> ))} </SelectList> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/agama/src/components/storage/iscsi/EditNodeForm.tsx new/agama/src/components/storage/iscsi/EditNodeForm.tsx --- old/agama/src/components/storage/iscsi/EditNodeForm.tsx 2025-11-10 13:53:12.000000000 +0100 +++ new/agama/src/components/storage/iscsi/EditNodeForm.tsx 2025-11-24 13:56:57.000000000 +0100 @@ -39,7 +39,8 @@ }; const startupFormOptions = Object.values(NodeStartupOptions).map((option, i) => ( - <FormSelectOption key={i} value={option.value} label={option.label} /> + /* eslint-disable agama-i18n/string-literals */ + <FormSelectOption key={i} value={option.value} label={_(option.label)} /> )); const id = "iscsiEditNode"; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/agama/src/components/storage/iscsi/LoginForm.jsx new/agama/src/components/storage/iscsi/LoginForm.jsx --- old/agama/src/components/storage/iscsi/LoginForm.jsx 2025-11-10 13:53:12.000000000 +0100 +++ new/agama/src/components/storage/iscsi/LoginForm.jsx 2025-11-24 13:56:57.000000000 +0100 @@ -56,7 +56,8 @@ }; const startupFormOptions = Object.values(NodeStartupOptions).map((option, i) => ( - <FormSelectOption key={i} value={option.value} label={option.label} /> + /* eslint-disable agama-i18n/string-literals */ + <FormSelectOption key={i} value={option.value} label={_(option.label)} /> )); const id = "iscsiLogin"; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/agama/src/components/storage/iscsi/NodeStartupOptions.js new/agama/src/components/storage/iscsi/NodeStartupOptions.js --- old/agama/src/components/storage/iscsi/NodeStartupOptions.js 2025-11-10 13:53:12.000000000 +0100 +++ new/agama/src/components/storage/iscsi/NodeStartupOptions.js 2025-11-24 13:56:57.000000000 +0100 @@ -20,12 +20,12 @@ * find current contact information at www.suse.com. */ -import { _ } from "~/i18n"; +import { N_ } from "~/i18n"; const NodeStartupOptions = Object.freeze({ - MANUAL: { label: _("Manual"), value: "manual" }, - ONBOOT: { label: _("On boot"), value: "onboot" }, - AUTOMATIC: { label: _("Automatic"), value: "automatic" }, + MANUAL: { label: N_("Manual"), value: "manual" }, + ONBOOT: { label: N_("On boot"), value: "onboot" }, + AUTOMATIC: { label: N_("Automatic"), value: "automatic" }, }); export default NodeStartupOptions; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/agama/src/components/storage/iscsi/NodesPresenter.jsx new/agama/src/components/storage/iscsi/NodesPresenter.jsx --- old/agama/src/components/storage/iscsi/NodesPresenter.jsx 2025-11-10 13:53:12.000000000 +0100 +++ new/agama/src/components/storage/iscsi/NodesPresenter.jsx 2025-11-24 13:56:57.000000000 +0100 @@ -65,8 +65,13 @@ if (!node.connected) return _("Disconnected"); const startup = Object.values(NodeStartupOptions).find((o) => o.value === node.startup); - // TRANSLATORS: iSCSI connection status, %s is replaced by node label - return sprintf(_("Connected (%s)"), startup.label); + return sprintf( + // TRANSLATORS: iSCSI connection status, %s is replaced by translated + // start mode ("Manual", "Automatic" or "On boot") + _("Connected (%s)"), + /* eslint-disable agama-i18n/string-literals */ + _(startup.label), + ); }; const nodeActions = (node) => { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/agama/src/po/po.fi.js new/agama/src/po/po.fi.js --- old/agama/src/po/po.fi.js 2025-11-10 13:53:12.000000000 +0100 +++ new/agama/src/po/po.fi.js 2025-11-24 13:56:57.000000000 +0100 @@ -1395,7 +1395,7 @@ "Käynnistämiseen tarvittavat osiot otetaan käyttöön asennuslevyltä." ], "Partitions to host \"system\" will be created if needed.": [ - "Osiot joilla \"järjestelmä\" toimii luodaan tarvittaessa." + "Järjestelmätiedostojen tarvitsemat osiot luodaan tarvittaessa." ], "Partitions will be used and created for %s": [ "Osioita tullaan luomaan ja käyttämään liitoskohdalle %s" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/agama/src/po/po.id.js new/agama/src/po/po.id.js --- old/agama/src/po/po.id.js 2025-11-10 13:53:12.000000000 +0100 +++ new/agama/src/po/po.id.js 2025-11-24 13:56:57.000000000 +0100 @@ -10,7 +10,7 @@ "\"%s\"" ], "\"%s\" does not exist or is no longer available.": [ - "\"%s\" tidak ada atau tidak lagi tersedia." + "\"%s\" tidak ditemukan atau tidak lagi tersedia." ], "%1$s (%2$s)": [ "%1$s (%2$s)" @@ -916,7 +916,7 @@ "Jika Anda melanjutkan, partisi pada hard disk Anda akan dimodifikasi sesuai dengan pengaturan instalasi yang disediakan." ], "If you want to disable this check, please specify \"inst.ay_check=0\" at kernel's command-line": [ - "Jika Anda ingin menonaktifkan pemeriksaan ini, silakan tetapkan \"inst.ay_check=0\" di baris perintah kernel" + "Jika anda ingin menonaktifkan check ini, harap masukkan \"inst.ay_check=0\" di command-line kernel" ], "In progress": [ "Dalam proses" @@ -1174,7 +1174,7 @@ "Mount RAID %s" ], "Mount disk %s": [ - "Mount disk %s" + "Kait diska %s" ], "Mount point": [ "Titik pemasangan" @@ -1384,7 +1384,7 @@ "Partisi untuk boot akan dialokasikan pada disk instalasi." ], "Partitions to host \"system\" will be created if needed.": [ - "Partisi untuk menjadi host \"system\" akan dibuat jika diperlukan." + "Partisi untuk menampung “sistem” akan dibuat jika diperlukan." ], "Partitions will be used and created for %s": [ "Partisi akan digunakan dan dibuat untuk %s" @@ -1942,7 +1942,7 @@ "Kata sandi tidak akan diperlukan untuk mem-boot dan mengakses data jika TPM dapat memverifikasi integritas sistem. Penyegelan TPM mengharuskan sistem baru untuk di-boot secara langsung saat pertama kali dijalankan." ], "The product will be registered with \"%s\" hostname": [ - "Produk akan didaftarkan dengan nama host \"%s\"" + "Produk akan di-registrasi dengan hostname \"%s\"" ], "The size for %1$s will be dynamically adjusted based on the amount of RAM in the system and the presence of a separate file system for %2$s.": [ "Ukuran untuk %1$s akan disesuaikan secara dinamis berdasarkan jumlah RAM dalam sistem dan keberadaan sistem berkas yang terpisah untuk %2$s." diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/agama/src/po/po.ru.js new/agama/src/po/po.ru.js --- old/agama/src/po/po.ru.js 2025-11-10 13:53:12.000000000 +0100 +++ new/agama/src/po/po.ru.js 2025-11-24 13:56:57.000000000 +0100 @@ -1978,7 +1978,7 @@ "Пароль не понадобится для загрузки и доступа к данным, если TPM может проверить целостность системы. Запечатывание TPM требует непосредственной загрузки новой системы при первом запуске." ], "The product will be registered with \"%s\" hostname": [ - "Продукт будет зарегистрирован с именем узла «%s»" + "Продукт будет зарегистрирован с именем узла «%s»." ], "The size for %1$s will be dynamically adjusted based on the amount of RAM in the system and the presence of a separate file system for %2$s.": [ "Размер для %1$s будет динамически корректироваться в зависимости от объема оперативной памяти в системе и наличия отдельной файловой системы для %2$s." ++++++ agama.obsinfo ++++++ --- /var/tmp/diff_new_pack.4QZoje/_old 2025-12-03 14:11:55.585043416 +0100 +++ /var/tmp/diff_new_pack.4QZoje/_new 2025-12-03 14:11:55.593043754 +0100 @@ -1,5 +1,5 @@ name: agama -version: 17+439.4e1b20660 -mtime: 1762779192 -commit: 4e1b206609e1f061603bee944c84c6036f707682 +version: 17+442.754fa78a2 +mtime: 1763989017 +commit: 754fa78a2b03214ab3b2c190de63ed5d3eb3ad96 ++++++ node_modules.obscpio ++++++ Binary files old/@agama-project-eslint-plugin-agama-i18n-1.1.0.tgz and new/@agama-project-eslint-plugin-agama-i18n-1.1.0.tgz differ Binary files old/@agama-project-eslint-plugin-agama-i18n-1.2.0.tgz and new/@agama-project-eslint-plugin-agama-i18n-1.2.0.tgz differ ++++++ node_modules.spec.inc ++++++ --- /var/tmp/diff_new_pack.4QZoje/_old 2025-12-03 14:11:59.189195537 +0100 +++ /var/tmp/diff_new_pack.4QZoje/_new 2025-12-03 14:11:59.209196382 +0100 @@ -1,5 +1,5 @@ Source1000: https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.4.2.tgz#/@adobe-css-tools-4.4.2.tgz -Source1001: https://registry.npmjs.org/@agama-project/eslint-plugin-agama-i18n/-/eslint-plugin-agama-i18n-1.1.0.tgz#/@agama-project-eslint-plugin-agama-i18n-1.1.0.tgz +Source1001: https://registry.npmjs.org/@agama-project/eslint-plugin-agama-i18n/-/eslint-plugin-agama-i18n-1.2.0.tgz#/@agama-project-eslint-plugin-agama-i18n-1.2.0.tgz Source1002: https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz#/@ampproject-remapping-2.3.0.tgz Source1003: https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz#/@babel-code-frame-7.27.1.tgz Source1004: https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.27.5.tgz#/@babel-compat-data-7.27.5.tgz ++++++ package-lock.json ++++++ --- /var/tmp/diff_new_pack.4QZoje/_old 2025-12-03 14:11:59.285199589 +0100 +++ /var/tmp/diff_new_pack.4QZoje/_new 2025-12-03 14:11:59.301200265 +0100 @@ -25,7 +25,7 @@ "xbytes": "^1.9.1" }, "devDependencies": { - "@agama-project/eslint-plugin-agama-i18n": "^1.1.0", + "@agama-project/eslint-plugin-agama-i18n": "^1.2.0", "@babel/core": "^7.27.4", "@babel/eslint-parser": "^7.27.5", "@babel/preset-env": "^7.27.2", @@ -102,9 +102,9 @@ "license": "MIT" }, "node_modules/@agama-project/eslint-plugin-agama-i18n": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@agama-project/eslint-plugin-agama-i18n/-/eslint-plugin-agama-i18n-1.1.0.tgz", - "integrity": "sha512-MGhVVeEFaiw4OfaXwl1jTHhTdOy1QVULy7/XdpaWvp4EB+aYdlrgvIblpFDkCtqgLOaLa0+J88icHZzyLCK5aA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@agama-project/eslint-plugin-agama-i18n/-/eslint-plugin-agama-i18n-1.2.0.tgz", + "integrity": "sha512-mI3qGf7XDuHjrO13KT2xKTrFEm5uGxBm17MApvoxStS0kU6oU+eUa6Sh2tX9J6ypvKxzdITMh3QkITeNNztfEg==", "dev": true, "license": "MIT", "peerDependencies": {
