Language problem after update 3.4.0-8 to 3.5.0-1 (missing translations)

Hi, we’re having a problem after updating OJS from version 3.4.0-8 to 3.5.0-1.

We have a multi-journal website in both Italian and English.

After the update, everything works, but the Italian translations in the submissions administration section are all wrong.

the translation keys are missing.

Why?

_____

this is the log

root@annalsBk:/var/www/html/collane51# php tools/upgrade.php check
Code version: 3.5.0.1
Database version: 3.4.0.8
Latest version: 3.5.0.0
Database version is older than code version
Run “tools/upgrade.php upgrade” to update
root@annalsBk:/var/www/html/collane51# php tools/upgrade.php upgrade
2025-10-06 11:04:41 [pre-install]
2025-10-06 11:04:41 [load: upgrade.xml]
2025-10-06 11:04:41 [version: 3.5.0.1]
2025-10-06 11:04:41 [code: Installer Installer::checkPhpVersion]
2025-10-06 11:04:41 [code: Installer Installer::installDefaultNavigationMenus]
WARNING: The NavigationMenu (ContextId: 1, Title: User Navigation Menu, Area: user) will be skipped because the specified area has already a NavigationMenu attached.
WARNING: The NavigationMenu (ContextId: 1, Title: Primary Navigation Menu, Area: primary) will be skipped because the specified area has already a NavigationMenu attached.
WARNING: The NavigationMenu (ContextId: 2, Title: User Navigation Menu, Area: user) will be skipped because the specified area has already a NavigationMenu attached.
WARNING: The NavigationMenu (ContextId: 2, Title: Primary Navigation Menu, Area: primary) will be skipped because the specified area has already a NavigationMenu attached.
WARNING: The NavigationMenu (ContextId: 3, Title: User Navigation Menu, Area: user) will be skipped because the specified area has already a NavigationMenu attached.
WARNING: The NavigationMenu (ContextId: 3, Title: Primary Navigation Menu, Area: primary) will be skipped because the specified area has already a NavigationMenu attached.
WARNING: The NavigationMenu (ContextId: , Title: User Navigation Menu, Area: user) will be skipped because the specified area has already a NavigationMenu attached.
2025-10-06 11:04:41 [code: Installer Installer::migrateStaticPagesToNavigationMenuItems]
2025-10-06 11:04:41 [migration: APP\migration\upgrade\v3_4_0\I9813_QuickSubmitSubmissionProgressType]
2025-10-06 11:04:41 [migration: APP\migration\upgrade\v3_5_0\I11241_MissingDecisionConstantsUpdate]
2025-10-06 11:04:41 [migration: PKP\migration\upgrade\v3_5_0\PreflightCheckMigration]
2025-10-06 11:04:41 [migration: APP\migration\upgrade\v3_5_0\I8333_AddMissingForeignKeys]
2025-10-06 11:04:41 [migration: APP\migration\upgrade\v3_5_0\I9892_FloatToDecimalColumnTypeUpdate]
2025-10-06 11:04:41 [migration: PKP\migration\upgrade\v3_5_0\I9895_AddAppKeyToConfigFile]
2025-10-06 11:04:41 [migration: PKP\migration\upgrade\v3_5_0\I9678_RemoveScheduledTasksTable]
2025-10-06 11:04:41 [migration: PKP\migration\upgrade\v3_5_0\InstallEmailTemplates]
2025-10-06 11:04:42 [migration: PKP\migration\upgrade\v3_5_0\I9197_MigrateAccessKeys]
2025-10-06 11:04:42 [migration: PKP\migration\upgrade\v3_5_0\I9253_SiteAnnouncements]
2025-10-06 11:04:42 [migration: PKP\migration\upgrade\v3_5_0\I9262_Highlights]
2025-10-06 11:04:42 [migration: APP\migration\upgrade\v3_5_0\I9475_RecoverLayoutFiles]
2025-10-06 11:04:42 [migration: PKP\migration\upgrade\v3_5_0\I9462_UserUserGroupsStartEndDate]
2025-10-06 11:04:42 [migration: PKP\migration\upgrade\v3_5_0\I9552_UserGroupsMasthead]
2025-10-06 11:04:42 [migration: PKP\migration\upgrade\v3_5_0\I5504_UserGroupsSettings]
2025-10-06 11:04:42 [migration: APP\migration\upgrade\v3_5_0\I9425_SeparateUIAndSubmissionLocales]
2025-10-06 11:04:42 [migration: PKP\migration\upgrade\v3_5_0\I9709_UserUserGroupsMasthead]
2025-10-06 11:04:42 [migration: PKP\migration\upgrade\v3_5_0\I9566_UserRememberToken]
2025-10-06 11:04:42 [migration: PKP\migration\upgrade\v3_5_0\I9566_SessionUpgrade]
2025-10-06 11:04:42 [migration: PKP\migration\upgrade\v3_5_0\I9809_ReviewCancelDate]
2025-10-06 11:04:42 [migration: PKP\migration\upgrade\v3_5_0\I9860_EditorialMastheadNavMenuItem]
2025-10-06 11:04:42 [migration: APP\migration\upgrade\v3_5_0\I9937_EditorialTeamToEditorialHistory]
2025-10-06 11:04:42 [migration: PKP\migration\upgrade\v3_5_0\I10041_UserGroupsAndUserUserGroupsMastheadValues]
2025-10-06 11:04:42 [migration: PKP\migration\upgrade\v3_5_0\I9771_OrcidMigration]
2025-10-06 11:04:42 [migration: APP\migration\upgrade\v3_5_0\I10157_CreateAndMigrateIssueIdField]
2025-10-06 11:04:43 [migration: APP\migration\upgrade\v3_5_0\I5885_RenameReviewReminderSettingsName]
2025-10-06 11:04:43 [migration: PKP\migration\upgrade\v3_5_0\COA75_AddUserRoleEndEmail]
2025-10-06 11:04:43 [migration: PKP\migration\upgrade\v3_5_0\I10738_RemoveInvalidUserGroups]
2025-10-06 11:04:43 [migration: PKP\migration\upgrade\v3_5_0\I10362_EventLogEditorNames]
2025-10-06 11:04:43 [migration: PKP\migration\upgrade\v3_5_0\I10292_RemoveControlledVocabEntrySettingType]
2025-10-06 11:04:43 [migration: PKP\migration\upgrade\v3_5_0\I10292_UpdateControlledVocabAssocId]
2025-10-06 11:04:43 [migration: PKP\migration\upgrade\v3_5_0\I10292_UpdateControlledVocabEntrySettingName]
2025-10-06 11:04:43 [migration: PKP\migration\upgrade\v3_5_0\FilterClassNames]
2025-10-06 11:04:43 [migration: APP\migration\upgrade\v3_5_0\I10620_EditorialBoardMemberRole]
2025-10-06 11:04:43 [migration: APP\migration\upgrade\v3_5_0\I9707_WeblateUILocales]
2025-10-06 11:04:43 [migration: PKP\migration\upgrade\v3_5_0\I7135_CreateAuthorAffiliationsTables]
2025-10-06 11:04:43 [migration: PKP\migration\upgrade\v3_5_0\I7135_CreateNewRorRegistryCacheTables]
2025-10-06 11:06:19 [migration: PKP\migration\upgrade\v3_5_0\I10759_AddReviewAssignmentSettings]
2025-10-06 11:06:19 [migration: PKP\migration\upgrade\v3_5_0\I10819_OrcidOauthScopeMail]
2025-10-06 11:06:19 [migration: PKP\migration\upgrade\v3_5_0\I10359_DateConsideredToReviewAssignments]
2025-10-06 11:06:19 [migration: APP\migration\upgrade\v3_5_0\I4787_AddReviewSuggestionHelp]
2025-10-06 11:06:19 [migration: PKP\migration\upgrade\v3_5_0\I4787_InstallReviewerSuggestion]
2025-10-06 11:06:19 [migration: PKP\migration\upgrade\v3_4_0\I7624_StrftimeDeprecation]
2025-10-06 11:06:20 [migration: PKP\migration\upgrade\v3_5_0\I11238_PrepareDBForStructuredCitations]
2025-10-06 11:06:20 [migration: APP\migration\upgrade\v3_5_0\I10659_UpdateCrossrefSchema]
2025-10-06 11:06:20 [migration: APP\migration\upgrade\v3_5_0\I11125_UpdateEmailTemplateVariables]
2025-10-06 11:06:20 [code: Installer Installer::downloadIPGeoDB]
2025-10-06 11:06:21 [note: docs/release-notes/README-3.5.0]
2025-10-06 11:06:21 [code: Installer Installer::addPluginVersions]
2025-10-06 11:06:21 [post-install]

Release Notes

OJS 3.5.0 Release Notes
Git tag: 3_5_0-1

Release date: July 9, 2025

Configuration Changes

The following changes should be applied to the config.inc.php configuration file. See config.TEMPLATE.inc.php for descriptions and examples of all supported configuration parameters.

In the [general] section:

  • app_key: A unique key used internally for encryption/decryption. It will be automatically added at upgrade.
  • scheduled_tasks: This setting is no longer used and can be removed.

In the [security] section:

  • cipher: Algorithm used to generate app key and encryption purpose
  • cookie_encryption: Allow cookie encryption when set

In the newly added [schedule] section:

  • task_runner (default value: On): Whether or not to run the schedule tasks through the web based task runner
  • task_runner_interval (default value: 60): How often the web based task runner should run tasks (in seconds)
  • scheduled_tasks_report_error_only (default value: On): Whether or not task execution failure details will be sent via mail

In [queues]:

  • process_jobs_at_task_scheduler (default value: Off): Controls whether queued jobs should be executed together with the scheduled tasks.

In [cache]:

  • default (default value: ‘file’). Can be either ‘file’ or ‘opcache’ to indicate which Laravel cache should be used.
  • path (default value: ‘cache/opcache’). Use to specify a path for cache storage when using ‘file’ or ‘opcache’ drivers.

3.5.0-1 Build

#11603: User role assignment email template missing
#11559: Uncaught TypeError in NotificationsGridCellProvider.php for a deleted query
#11544: Author ORCID request email fails with new author
#11447: Add NLM Title Abbreviation to PubMed exports
#11529: Upgrade Fails with SQL Syntax Error 1064 on MariaDB/MySQL due to Incorrect Default Value Quoting
#11333: Highlights | Homepage - Long Descriptions ignores paragraph breaks
#11517: [Suggest Reviewers] | Various areas - small adjustments to 4787 feature, to align with design consistency
#9079: Different plugins use different licenses
#11532: Install form time zone is not considered during initial installation
#11536: Language settings, Submissions languages grid shows Reset defaults action which is not needed
#11460: Missing info from existing user invitation in journal A being added to a role in journal B
#11586: [DOI Deposit] | XML generated is not well-formed or does not validate
#11577: Top menu items are only clickable on text
#11613: Reviews - One Click Login for reviewers don't work when inviting a new reviewer
#11609: Remove API controller override mechanism for plugin
#11594: Reader profile language, UI Language change not possible if allowed_hosts is not enabled
#11548: Sitemap - Announcement id error when upgrade to 3.5.0
#11580: Review workflow - Step 3, Buttons are not in the correct order
#11551: 3.5.0 Annoucement sort asc by default
#11556: Edit existing announcement - Expiry Date, the announcement expiry date is not preserved after saving

New Features

#10983, #10970, and many more: Redesigned dashboard and workflow pages
#10796, #10792, and many more: ORCiD integration and improvements
#3022, 10610, #10609, and many more: Allow Journal Managers to invite users to adopt a role
#10620, #9860: Editorial board management
#11273: Improve UserAccessManager extensibility
#11122: [Press Series | Press Series-Series, Submissions can be assigned under inactivated press series
#11044, #10651, #10489: Add user initials to UI
#10994: New showMore component with accessibility in mind
#10964: Retire the Resolver plugin
#10951: Personalise review round statuses for Recommend only editor
#10921: [OMP] Add option to show Press Summary on the home page
#10659: Update Crossref to 5.4.0
#10561: [OMP] Update Onix schema in export plugins
#10537, #10515, #10500, #10480, #10465, and many more: API additions
#10514: Increase resilience of the application against malfunctions on plugins
#10458, #10434, #7505, and many more: Add basic JATS support
#10447: Create new ButtonIcon component
#10444: Improve dialog component design
#10365: [OMP] Update the Onix schema version
#10363: Allow definition of minimum reviews required for a Submission
#10283: Add support for ALTCHA
#10178: Add search by DOI to DOI manager
#10163: Add support for catching registrants to removed hooks
#10158: Move publication to category relationship out of publication_settings
#10157: Move publication to issue_id relationship out of publication_settings table
#10053: Introduce Author::add::before hook
#10033: Add new dropdown menu component
#10001: Possibility to add Cancel button in the form
#9999: Track Editor Workload While Assigning Participants
#9914: Editorial History
#9910: Use UI Language in Web and Announcement RSS2 Feeds
#9895: Introduce APP KEY feature of Laravel
#9892: Upgrade to Laravel version 11.x
#9890: Implement side menu navigation component
#9887, #9197, and many more: Introduce general-purpose invitations toolset
#9857: Create FieldSlider component
#9823: Improve job runner configuration/execution
#9707: Align UI locales with Weblate locales
#9678: Replace task scheduler with Laravel scheduler
#9642: Create date picker in Vue
#9566: Convert session and cookie management to Laravel
#9453: In OJS, a reviewer cannot access his/her recommendations from a previous round.
#9434: Allow plugins to add/modify API endpoints of existing entity
#9425: Make submission language selection and metadata forms independent from website language settings
#9366: Upgrade to TinyMCE7
#9284: Display list of authors with reviewer assignment process
#9243: Performance & Optimization
#9239: 3.5 LTS Dependency maintenance and updates
#8884: New design for pagination component
#8883: Add a summary panel to the submissions list
#8881: Add review assignment progress and pop-ups to submissions table
#8365: Remove disable_path_info URL generation mode
#8350: Authors should be able to cancel in-progress submissions
#7698: Replace Slim with Laravel-based routing toolset
#7512: Use the Accept-Language header when assigning a default language to a new user session
#7504: Add UI tools to control HTML in submission titles
#7135: Multiple author affiliations and machine-readable affiliations
#6528: Ability to bulk-delete old incomplete submissions
#5953: Issue published notification email should include table of contents
#5504: Have option to restrict Editor access to Settings
#5502: Not possible to see or select publication language after submission
#5340: Distinguish different types of Decline in CSV export for editorial stats
#4787: Suggest Reviewers at the Time of Submission
#4396: Allow editors to have saved views for the submissions list
#4348: [OJS] Always show Delete button in submissions listing when user is assigned as editor
#3075: Submissions with completed review assignments should move to reviewer's archive list
#2887: Add quick actions from submissions list
#1550: Allow a journal to define a limited set of allowed keywords and reviewer interests
#699: Ensure that all languages are indexable by crawlers

Bug fixes:

#11397: [Admin] | Creating a new Journal - Adding Locales, when there are multiple locales installed adding them to a new journal seems to cause errors.
#11393: QuickSubmit Plugin| Lingering Form field on Multilingual journals
#10232: REVIEW_ASSIGNMENT_CONSIDERED and REVIEW_ASSIGNMENT_NEW are never granted
#9290: 1061 Duplicate key name 'static_page_settings_static_page_id'
#7611: Assigned To Editor Filter on Submission dashboard picks up submissions by Editor

Successfully upgraded to version 3.5.0.1

Hi @simgiallorosso, the reason you are seeing the hash symbols is because the translation is not complete yet for that language, and those each represent a string with a missing translation. There are often more missing translations with a newer release, and it will become more complete over time with each update as the translators have time to work on them.

We welcome additional support from the community in completing missing translations, and you can learn more in our translating guide or sign up in Weblate if that’s something you’re interested in.