Skip to content

Commit

Permalink
Upmerge 5.1 to 5.2
Browse files Browse the repository at this point in the history
  • Loading branch information
pe7er committed May 21, 2024
2 parents 5580224 + de31a3f commit b5315c8
Show file tree
Hide file tree
Showing 45 changed files with 172 additions and 80 deletions.
9 changes: 3 additions & 6 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,9 @@ build/bump.php @rdeutz
build/deleted_file_check.php @rdeutz

# Core/Extension Install/Update Tools
administrator/components/com_joomlaupdate/* @rdeutz @zero-24
libraries/src/Installer/* @rdeutz @zero-24
libraries/src/Updater/* @rdeutz @zero-24
administrator/components/com_joomlaupdate/* @rdeutz
libraries/src/Installer/* @rdeutz
libraries/src/Updater/* @rdeutz

# Automated Testing
tests/* @hackwar @fancyFranci
Expand All @@ -24,9 +24,6 @@ tests/Unit/* @rdeutz @fancyFranci
phpunit.xml.dist @rdeutz @hackwar @fancyFranci
phpunit-pgsql.xml.dist @rdeutz @hackwar @fancyFranci

# HttpHeaders Plugin
plugins/system/httpheaders/* @zero-24

# Workflow
administrator/components/com_workflow/* @bembelimen @hleithner
administrator/language/en-GB/com_workflow.ini @bembelimen @hleithner
Expand Down
17 changes: 10 additions & 7 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,19 +7,22 @@ You are welcome to submit a contribution for review and possible inclusion in th
2) Follow the [Joomla! Coding Standards](https://developer.joomla.org/coding-standards.html).

3) When filing an issue or opening a PR, please include a clear title and description. The title should be a short summary of an issue and, if possible, should include a reference to an open issue. For example, `Invalid Query in com_admin (Ref #1234)` would be sufficient. All issues and PRs should include a description with as much detail as possible.
If it is a PR, include what the issue is, what the PR is addressing, testing instructions and environmental information (PHP version, database driver and version, and other data you can retrieve from your site's system information view) in case the issue is specific to certain environments. If additional information is needed, please be prepared to provide it as our community members review your submission.
If it is a PR, include what the issue is, what the PR is addressing, testing instructions and environmental information (PHP version, database driver and version, and other data you can retrieve from your site's system information view) in case the issue is specific to certain environments. If additional information is needed, please be prepared to provide it as our community members review your submission.

4) Report security issues to the Joomla! Security Strike Team (JSST) at security@joomla.org or use the [JSST contact form](https://developer.joomla.org/contact-security-team.html). Please do not use the public tracker for security issues.

5) If you have a feature request, then please open a discussion to define the feature request and discuss possible solutions. Discussions can be converted into issues when the request is defined sufficiently that a developer can start coding the feature. In this process you will get feedback from the maintainers, if the feature is something for the Joomla core distribution or not.

Please be patient as not all items will be tested immediately (remember, all bug testing for the Joomla! CMS is done by volunteers) and be receptive to feedback about your code.

#### Branches
PRs should usually be made to the `4.3-dev` branch as this contains the most recent version of the code.
There are other branches available which serve specific purposes.
While 4.4 is in maintenance mode, ie we are still fixing bugs, PRs should be made to the `4.4-dev` branch. Merged bugfixes will be upmerged into the current 5.x branch. If a bug is only in the 5.x series the PR should be made to the current 5.x branch (currently 5.1).


| Branch | Purpose |
| ------ | ------- |
| 3.10-dev | Branch for the Joomla 3.x series. The 3.10 series release will now only include security patches. |
| 4.3-dev | Branch for the current minor Joomla version.|
| 4.4-dev | Branch for the next minor Joomla version. Commits to 4.3-dev will be applied to this branch as well. |
| 5.0-dev | Branch for the next major Joomla version. New features go into this branch. |
| 4.4-dev | Branch for the current 4.x Joomla version. Currently in maintenance mode |
| 5.1-dev | Branch for the current 5.x Joomla version. Bugfix only for 5.x go into this branch. |
| 5.2-dev | Branch for the next minor 5.x Joomla version. New features go into this branch. |
| 6.0-dev | Branch for the next major Joomla version. New features that include a b/c break have to go into this branch. |

2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ Overview
What is Joomla?
---------------------
* [Joomla!](https://www.joomla.org/about-joomla.html) is a **Content Management System** (CMS) which enables you to build websites and powerful online applications.
* It is a simple and powerful web server application which requires a server with PHP and either MySQL or PostgreSQL to run. You can find [full technical requirements here](https://downloads.joomla.org/technical-requirements).
* It is a simple and powerful web server application which requires a server with PHP and either MySQL, MariaDB or PostgreSQL to run. You can find [full technical requirements here](https://downloads.joomla.org/technical-requirements).
* Joomla! is **free and Open Source software** distributed under the GNU General Public License version 2 or later.

Looking for an installable package?
Expand Down
2 changes: 1 addition & 1 deletion README.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ The Joomla! 5.2 branch is under heavy development and not all links in this docu
2- What is Joomla?
* Joomla! is a Content Management System (CMS) which enables you to build websites and powerful online applications.
* It's a free and Open Source software, distributed under the GNU General Public License version 2 or later.
* This is a simple and powerful web server application and it requires a server with PHP and either MySQL, PostgreSQL or SQL Server to run.
* This is a simple and powerful web server application and it requires a server with PHP and either MySQL, MariaDB or PostgreSQL to run.
You can find full technical requirements here: https://downloads.joomla.org/technical-requirements.

3- Is Joomla! for you?
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -177,10 +177,10 @@ public static function getLogContentTypeParams($context)
*/
public static function getHumanReadableLogMessage($log, $generateLinks = true)
{
static::loadActionLogPluginsLanguage();
static $links = [];

$message = Text::_($log->message_language_key);
$messageData = json_decode($log->message, true);
$message = Text::_($log->message_language_key);
$messageData = json_decode($log->message, true);

// Special handling for translation extension name
if (isset($messageData['extension_name'])) {
Expand Down
12 changes: 12 additions & 0 deletions administrator/components/com_admin/script.php
Original file line number Diff line number Diff line change
Expand Up @@ -2326,6 +2326,13 @@ public function deleteUnexistingFiles($dryRun = false, $suppressOutput = false)
'/administrator/components/com_admin/sql/updates/postgresql/4.4.4-2024-03-28.sql',
'/administrator/modules/mod_post_installation_messages/mod_post_installation_messages.php',
'/media/vendor/punycode/LICENSE-MIT.txt',
// From 5.1.0 to 5.1.1
'/libraries/vendor/cweagans/composer-patches/LICENSE.md',
'/libraries/vendor/cweagans/composer-patches/src/PatchEvent.php',
'/libraries/vendor/cweagans/composer-patches/src/PatchEvents.php',
'/libraries/vendor/cweagans/composer-patches/src/Patches.php',
'/libraries/vendor/cweagans/composer-patches/tests/PatchEventTest.php',
'/libraries/vendor/laminas/laminas-diactoros/PATCHES.txt',
];

$folders = [
Expand Down Expand Up @@ -2585,6 +2592,11 @@ public function deleteUnexistingFiles($dryRun = false, $suppressOutput = false)
'/libraries/src/Event/Router',
// From 5.1.0-beta2 to 5.1.0-rc1
'/media/vendor/punycode',
// From 5.1.0 to 5.1.1
'/libraries/vendor/cweagans/composer-patches/tests',
'/libraries/vendor/cweagans/composer-patches/src',
'/libraries/vendor/cweagans/composer-patches',
'/libraries/vendor/cweagans',
];

$status['files_checked'] = $files;
Expand Down
6 changes: 6 additions & 0 deletions administrator/components/com_joomlaupdate/extract.php
Original file line number Diff line number Diff line change
Expand Up @@ -1400,6 +1400,9 @@ private function processTypeFileUncompressed(): bool
if ($this->dataReadLength == 0) {
// Before processing file data, ensure permissions are adequate
$this->setCorrectPermissions($this->fileHeader->file);

// This file is changed during the script's operation so we clear the status cache.
clearstatcache($this->fileHeader->file);
}

// Open the output file
Expand Down Expand Up @@ -1491,6 +1494,9 @@ private function processTypeFileCompressed(): bool
// Before processing file data, ensure permissions are adequate
$this->setCorrectPermissions($this->fileHeader->file);

// This file is changed during the script's operation so we clear the status cache.
clearstatcache($this->fileHeader->file);

// Open the output file
$outfp = @fopen($this->fileHeader->realFile, 'wb');

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1632,7 +1632,7 @@ private function checkCompatibility($updateFileUrl, $joomlaTargetVersion)
$minimumStability = ComponentHelper::getParams('com_installer')->get('minimum_stability', Updater::STABILITY_STABLE);

$update = new Update();
$update->set('jversion.full', $joomlaTargetVersion);
$update->setTargetVersion($joomlaTargetVersion);
$update->loadFromXml($updateFileUrl, $minimumStability);

$compatibleVersions = $update->get('compatibleVersions');
Expand Down
1 change: 1 addition & 0 deletions administrator/components/com_redirect/config.xml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
name="mode"
type="radio"
label="COM_REDIRECT_MODE_LABEL"
description="COM_REDIRECT_MODE_DESC"
layout="joomla.form.field.radio.switcher"
default="0"
>
Expand Down
10 changes: 4 additions & 6 deletions administrator/components/com_users/tmpl/methods/list.php
Original file line number Diff line number Diff line change
Expand Up @@ -69,12 +69,10 @@ class="img-fluid"
<?php foreach ($method['active'] as $record) : ?>
<div class="com-users-methods-list-method-record d-flex flex-row flex-wrap justify-content-start border-top py-2">
<div class="com-users-methods-list-method-record-info flex-grow-1 d-flex flex-column align-items-start gap-1">
<?php if ($methodName === 'backupcodes') : ?>
<?php if ($canAddEdit) : ?>
<div class="alert alert-info mt-1 w-100">
<?php echo Text::sprintf('COM_USERS_MFA_BACKUPCODES_PRINT_PROMPT_HEAD', Route::_('index.php?option=com_users&task=method.edit&id=' . (int) $record->id . ($this->returnURL ? '&returnurl=' . $this->escape(urlencode($this->returnURL)) : '') . '&user_id=' . $this->user->id)) ?>
</div>
<?php endif ?>
<?php if ($methodName === 'backupcodes' && $canAddEdit) : ?>
<div class="alert alert-info mt-1 w-100">
<?php echo Text::sprintf('COM_USERS_MFA_BACKUPCODES_PRINT_PROMPT_HEAD', Route::_('index.php?option=com_users&task=method.edit&id=' . (int) $record->id . ($this->returnURL ? '&returnurl=' . $this->escape(urlencode($this->returnURL)) : '') . '&user_id=' . $this->user->id), 'text-decoration-underline') ?>
</div>
<?php else : ?>
<h4 class="com-users-methods-list-method-record-title-container mb-1 fs-3">
<?php if ($record->default) : ?>
Expand Down
1 change: 1 addition & 0 deletions administrator/language/en-GB/com_redirect.ini
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,7 @@ COM_REDIRECT_HEADING_STATUS_CODE_DESC="Status Code descending"
COM_REDIRECT_MANAGER_LINK_EDIT="Redirects: Edit"
COM_REDIRECT_MANAGER_LINK_NEW="Redirects: New"
COM_REDIRECT_MANAGER_LINKS="Redirects: Links"
COM_REDIRECT_MODE_DESC="The Advanced Mode allows the use of HTTP 1.1 status codes other than the default '301 Permanently Moved'."
COM_REDIRECT_MODE_LABEL="Activate Advanced Mode"
COM_REDIRECT_N_ITEMS_ARCHIVED="%d links archived."
COM_REDIRECT_N_ITEMS_ARCHIVED_1="Link archived."
Expand Down
2 changes: 1 addition & 1 deletion administrator/language/en-GB/com_users.ini
Original file line number Diff line number Diff line change
Expand Up @@ -253,7 +253,7 @@ COM_USERS_MFA_ACTIVE="Uses Multi-factor Authentication"
COM_USERS_MFA_ADD_AUTHENTICATOR_OF_TYPE="Add a new %s"
COM_USERS_MFA_ADD_PAGE_HEAD="Add a Multi-factor Authentication Method"
COM_USERS_MFA_BACKUPCODES_PRINT_PROMPT="Backup Codes let you log into the site if your regular Multi-factor Authentication method does not work or you no longer have access to it. Each code can be used <em>only once</em>."
COM_USERS_MFA_BACKUPCODES_PRINT_PROMPT_HEAD="<a href=\"%s\">Print these codes</a> and keep them in your wallet."
COM_USERS_MFA_BACKUPCODES_PRINT_PROMPT_HEAD="<a href=\"%1s\" class=\"%2s\">Print these codes</a> and keep them in your wallet."
COM_USERS_MFA_BACKUPCODES_RESET="Regenerate Backup Codes"
COM_USERS_MFA_BACKUPCODES_RESET_INFO="Use the \"Regenerate Backup Codes\" button on the toolbar to generate a new set of Backup Codes. We recommend that you do this if you think your Backup Codes are compromised, e.g. someone got hold of a printout with them, or if you are running low on available Backup Codes."
COM_USERS_MFA_EDIT_FIELD_DEFAULT="Make this the default Multi-factor Authentication method"
Expand Down
2 changes: 1 addition & 1 deletion administrator/language/en-GB/install.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<name>English (en-GB)</name>
<tag>en-GB</tag>
<version>5.2.0</version>
<creationDate>2024-04</creationDate>
<creationDate>2024-05</creationDate>
<author>Joomla! Project</author>
<authorEmail>admin@joomla.org</authorEmail>
<authorUrl>www.joomla.org</authorUrl>
Expand Down
2 changes: 1 addition & 1 deletion administrator/language/en-GB/langmetadata.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<metafile client="administrator">
<name>English (en-GB)</name>
<version>5.2.0</version>
<creationDate>2024-04</creationDate>
<creationDate>2024-05</creationDate>
<author>Joomla! Project</author>
<authorEmail>admin@joomla.org</authorEmail>
<authorUrl>www.joomla.org</authorUrl>
Expand Down
1 change: 1 addition & 0 deletions administrator/language/en-GB/lib_joomla.ini
Original file line number Diff line number Diff line change
Expand Up @@ -663,6 +663,7 @@ JLIB_INSTALLER_SQL_END="End of SQL updates."
JLIB_INSTALLER_SQL_END_NOT_COMPLETE="End of SQL updates - INCOMPLETE."
JLIB_INSTALLER_TUF_DEBUG_MESSAGE="TUF Debug Message: %s"
JLIB_INSTALLER_TUF_DOWNLOAD_SIZE="The size of the update downloaded did not match the expected size."
JLIB_INSTALLER_TUF_ERROR_GENERIC="Could not fetch update information, enable system debug mode for further information."
JLIB_INSTALLER_TUF_FREEZE_ATTACK="Update not possible because the offered update has expired."
JLIB_INSTALLER_TUF_INVALID_METADATA="The saved TUF update information is invalid."
JLIB_INSTALLER_TUF_NOT_AVAILABLE="TUF is not available for extensions yet."
Expand Down
2 changes: 1 addition & 1 deletion administrator/manifests/files/joomla.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<copyright>(C) 2019 Open Source Matters, Inc.</copyright>
<license>GNU General Public License version 2 or later; see LICENSE.txt</license>
<version>5.2.0-alpha1-dev</version>
<creationDate>2024-04</creationDate>
<creationDate>2024-05</creationDate>
<description>FILES_JOOMLA_XML_DESCRIPTION</description>

<scriptfile>administrator/components/com_admin/script.php</scriptfile>
Expand Down
2 changes: 1 addition & 1 deletion administrator/manifests/packages/pkg_en-GB.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<name>English (en-GB) Language Pack</name>
<packagename>en-GB</packagename>
<version>5.2.0.1</version>
<creationDate>2024-04</creationDate>
<creationDate>2024-05</creationDate>
<author>Joomla! Project</author>
<authorEmail>admin@joomla.org</authorEmail>
<authorUrl>www.joomla.org</authorUrl>
Expand Down
2 changes: 1 addition & 1 deletion api/language/en-GB/install.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<name>English (en-GB)</name>
<tag>en-GB</tag>
<version>5.2.0</version>
<creationDate>2024-04</creationDate>
<creationDate>2024-05</creationDate>
<author>Joomla! Project</author>
<authorEmail>admin@joomla.org</authorEmail>
<authorUrl>www.joomla.org</authorUrl>
Expand Down
2 changes: 1 addition & 1 deletion api/language/en-GB/langmetadata.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<metafile client="api">
<name>English (en-GB)</name>
<version>5.2.0</version>
<creationDate>2024-04</creationDate>
<creationDate>2024-05</creationDate>
<author>Joomla! Project</author>
<authorEmail>admin@joomla.org</authorEmail>
<authorUrl>www.joomla.org</authorUrl>
Expand Down
10 changes: 4 additions & 6 deletions components/com_users/tmpl/methods/list.php
Original file line number Diff line number Diff line change
Expand Up @@ -69,12 +69,10 @@ class="img-fluid"
<?php foreach ($method['active'] as $record) : ?>
<div class="com-users-methods-list-method-record d-flex flex-row flex-wrap justify-content-start border-top py-2">
<div class="com-users-methods-list-method-record-info flex-grow-1 d-flex flex-column align-items-start gap-1">
<?php if ($methodName === 'backupcodes') : ?>
<?php if ($canAddEdit) : ?>
<div class="alert alert-info mt-1 w-100">
<?php echo Text::sprintf('COM_USERS_MFA_BACKUPCODES_PRINT_PROMPT_HEAD', Route::_('index.php?option=com_users&task=method.edit&id=' . (int) $record->id . ($this->returnURL ? '&returnurl=' . $this->escape(urlencode($this->returnURL)) : '') . '&user_id=' . $this->user->id)) ?>
</div>
<?php endif ?>
<?php if ($methodName === 'backupcodes' && $canAddEdit) : ?>
<div class="alert alert-info mt-1 w-100">
<?php echo Text::sprintf('COM_USERS_MFA_BACKUPCODES_PRINT_PROMPT_HEAD', Route::_('index.php?option=com_users&task=method.edit&id=' . (int) $record->id . ($this->returnURL ? '&returnurl=' . $this->escape(urlencode($this->returnURL)) : '') . '&user_id=' . $this->user->id), 'text-decoration-underline') ?>
</div>
<?php else : ?>
<h3 class="com-users-methods-list-method-record-title-container mb-1 fs-5">
<?php if ($record->default) : ?>
Expand Down
2 changes: 1 addition & 1 deletion installation/language/ca-ES/langmetadata.xml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
</files>
<metadata>
<name>Catalan (ca-ES)</name>
<nativeName>Català (Catalunya)</nativeName>
<nativeName>Català (ca-ES)</nativeName>
<tag>ca-ES</tag>
<rtl>0</rtl>
</metadata>
Expand Down
2 changes: 1 addition & 1 deletion installation/language/en-GB/langmetadata.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<metafile client="installation">
<name>English (United Kingdom)</name>
<version>5.2.0</version>
<creationDate>2024-04</creationDate>
<creationDate>2024-05</creationDate>
<author>Joomla! Project</author>
<copyright>(C) 2005 Open Source Matters, Inc.</copyright>
<license>GNU General Public License version 2 or later; see LICENSE.txt</license>
Expand Down
2 changes: 1 addition & 1 deletion installation/language/hr-HR/joomla.ini
Original file line number Diff line number Diff line change
Expand Up @@ -231,7 +231,7 @@ JLIB_FILESYSTEM_ERROR_PATH_IS_NOT_A_FOLDER="%1$s: Putanja nije mapa. Putanja: %2
JLIB_FORM_FIELD_INVALID="Neispravno polje:&#160"
JLIB_FORM_VALIDATE_FIELD_INVALID="Neispravno polje: %s"
JLIB_FORM_VALIDATE_FIELD_REQUIRED="Potrebno polje: %s"
JLIB_INSTALLER_ABORT="Odustajanje od instalacije jezika: %s"
JLIB_INSTALLER_ABORT="Zaustavljanje instalacije jezika: %s"
JLIB_INSTALLER_ABORT_CREATE_DIRECTORY="Dodatak %1$s: Nije uspjelo kreiranje direktorija: %2$s"
JLIB_INSTALLER_ABORT_NOINSTALLPATH="Instalacijska putanja ne postoji"
JLIB_INSTALLER_ABORT_PACK_INSTALL_ERROR_EXTENSION="Paket %1$s: Došlo je do greške prilikom instalacije dodatka: %2$s."
Expand Down
2 changes: 2 additions & 0 deletions installation/language/lv-LV/joomla.ini
Original file line number Diff line number Diff line change
Expand Up @@ -81,11 +81,13 @@ INSTL_DATABASE_NAME_LABEL="Šim datu bāzes tipam nav atrodama shēma."
INSTL_DATABASE_NAME_MSG_MYSQL="Datu bāzes nosaukums nav derīgs. Tajā nedrīkst būt šādas rakstzīmes: \ /"
INSTL_DATABASE_NAME_MSG_POSTGRES="Nepareizs datu bāzes nosaukums. Tam jāsākas ar burtu un jāturpinās ar ciparu, burtu kombināciju."
INSTL_DATABASE_NO_SCHEMA="Šim datu bāzes tipam nav atrodama shēma."
INSTL_DATABASE_PASSWORD_DESC="Ievadiet datu bāzes paroli."
INSTL_DATABASE_PREFIX_DESC="Ievadiet tabulas prefiksu vai lietojiet automātiski ģenerētu."
INSTL_DATABASE_PREFIX_DUPLICATE_DESC="Ja lietojat eksistējošu datu bāzi ar tabulām kurām ir tāds pats prefikss, Joomla pārsauks šīs tabulas pievienojot prefiksu \"bak_\"."
INSTL_DATABASE_PREFIX_MSG="Datu bāzes prefiksam ir jāsākas ar burtu, pēc tā var būt cipari, burti vai zemsvītra"
INSTL_DATABASE_RESPONSE_ERROR="Instalēšanas process neizdevās."
INSTL_DATABASE_TYPE_DESC="Izvēlieties datu bāzes tipu."
INSTL_DATABASE_USER_DESC="Ievadiet datu bāzes lietotāju."
INSTL_DATABASE_VALIDATION_ERROR="Pārbaudiet savu datu bāzes pieslēguma datus, datu bāzes tipu, datu bāzes nosaukumu vai resursdatora nosaukumu. Ja jums ir instalēta MySQL 8, lūdzu, izlasiet šo <a href = \"https: //docs.joomla.org/Special: MyLanguage/Joomla_and_MySQL_8#Workaround_to_get_Joomla_working_with_MySQL_8 \" target = \"_ blank\" rel = \"noopener noreferrer\" > wiki </a>, lai iegūtu plašāku informāciju."

INSTL_CONNECT_DB="Iestatīt datu bāzes pieslēgumu"
Expand Down
Loading

0 comments on commit b5315c8

Please sign in to comment.