Skip to content

Commit

Permalink
Merge branch 'staging' into patch-1
Browse files Browse the repository at this point in the history
  • Loading branch information
t-arapi committed Jun 3, 2017
2 parents d6b66a5 + 3f15a2d commit bd829a5
Show file tree
Hide file tree
Showing 4,745 changed files with 130,033 additions and 75,989 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
120 changes: 120 additions & 0 deletions .appveyor.yml
@@ -0,0 +1,120 @@
build: false
platform:
- x64
clone_folder: C:\projects\joomla-cms
## Build matrix for lowest and highest possible targets
environment:
matrix:
- php_ver_target: 5.6
- php_ver_target: 7.0
- php_ver_target: 7.1

init:
- SET PATH=C:\Program Files\OpenSSL;C:\tools\php;%PATH%
- SET COMPOSER_NO_INTERACTION=1
- SET PHP=1 # This var relates to caching the php install
- SET ANSICON=121x90 (121x90)
services:
- mssql2014
- mysql
- postgresql94
- iis

## Install PHP and composer, and run the appropriate composer command
install:
- IF EXIST C:\tools\php (SET PHP=0)
- ps: >-
If ($env:php_ver_target -eq "5.6") {
appveyor-retry cinst --params '""/InstallDir:C:\tools\php""' --ignore-checksums -y --forcex86 php --version ((choco search php --exact --all-versions -r | select-string -pattern $env:php_ver_target | sort { [version]($_ -split '\|' | select -last 1) } -Descending | Select-Object -first 1) -replace '[php|]','')
$VC = "vc11"
$PHPBuild = "x86"
} Else {
appveyor-retry cinst --params '""/InstallDir:C:\tools\php""' --ignore-checksums -y php --version ((choco search php --exact --all-versions -r | select-string -pattern $env:php_ver_target | sort { [version]($_ -split '\|' | select -last 1) } -Descending | Select-Object -first 1) -replace '[php|]','')
$VC = "vc14"
$PHPBuild = "x64"
}
- appveyor-retry cinst -y sqlite
- cd C:\tools\php
# Get the MSSQL DLL's
- ps: >-
If ($env:PHP -eq "1") {
If ($env:php_ver_target -eq "5.6") {
appveyor-retry appveyor DownloadFile https://cdn.joomla.org/ci/php-sqlsrv.zip
7z x -y php-sqlsrv.zip > $null
copy SQLSRV\php_sqlsrv_56_nts.dll ext\php_sqlsrv_nts.dll
copy SQLSRV\php_pdo_sqlsrv_56_nts.dll ext\php_pdo_sqlsrv_nts.dll
Remove-Item C:\tools\php\* -include .zip
} Else {
$DLLVersion = "4.1.6.1"
cd c:\tools\php\ext
appveyor-retry appveyor DownloadFile http://windows.php.net/downloads/pecl/releases/sqlsrv/$($DLLVersion)/php_sqlsrv-$($DLLVersion)-$($env:php_ver_target)-nts-vc14-x64.zip
7z x -y php_sqlsrv-$($DLLVersion)-$($env:php_ver_target)-nts-vc14-x64.zip > $null
appveyor-retry appveyor DownloadFile http://windows.php.net/downloads/pecl/releases/pdo_sqlsrv/$($DLLVersion)/php_pdo_sqlsrv-$($DLLVersion)-$($env:php_ver_target)-nts-vc14-x64.zip
7z x -y php_pdo_sqlsrv-$($DLLVersion)-$($env:php_ver_target)-nts-vc14-x64.zip > $null
Remove-Item c:\tools\php\ext* -include .zip
cd c:\tools\php}}
- IF %PHP%==1 copy php.ini-production php.ini /Y
- IF %PHP%==1 echo date.timezone="UTC" >> php.ini
- IF %PHP%==1 echo extension_dir=ext >> php.ini
- IF %PHP%==1 echo extension=php_openssl.dll >> php.ini
- IF %PHP%==1 echo extension=php_mbstring.dll >> php.ini
- IF %PHP%==1 echo extension=php_fileinfo.dll >> php.ini
- IF %PHP%==1 echo extension=php_gd2.dll >> php.ini
- ps: >-
If ($env:php_ver_target -eq "5.6") {
Add-Content php.ini "`nextension=php_sqlsrv_nts.dll"
Add-Content php.ini "`nextension=php_pdo_sqlsrv_nts.dll"
Add-Content php.ini "`n"
} Else {
Add-Content php.ini "`nextension=php_sqlsrv.dll"
Add-Content php.ini "`nextension=php_pdo_sqlsrv.dll"
Add-Content php.ini "`n"
}
- IF %PHP%==1 echo extension=php_pgsql.dll >> php.ini
- IF %PHP%==1 echo extension=php_pdo_pgsql.dll >> php.ini
- IF %PHP%==1 echo extension=php_pdo_sqlite.dll >> php.ini
- IF %PHP%==1 echo extension=php_sqlite3.dll >> php.ini
- IF %PHP%==1 echo extension=php_pdo_mysql.dll >> php.ini
- IF %PHP%==1 echo extension=php_mysqli.dll >> php.ini
- IF %PHP_VER_TARGET%==5.6 IF %PHP%==1 echo extension=php_mysql.dll >> php.ini
- IF %PHP%==1 echo extension=php_curl.dll >> php.ini
# Get the Wincache DLLs
- ps: >-
If ($env:PHP -eq "1") {
If ($env:php_ver_target -eq "5.6") {$wincache = "1.3.7.12"} Else {$wincache = "2.0.0.8"}
cd c:\tools\php\ext
appveyor-retry appveyor DownloadFile http://windows.php.net/downloads/pecl/releases/wincache/$($wincache)/php_wincache-$($wincache)-$($env:php_ver_target)-nts-$($VC)-$($PHPBuild).zip
7z x -y php_wincache-$($wincache)-$($env:php_ver_target)-nts-$($VC)-$($PHPBuild).zip > $null
Remove-Item C:\tools\php\ext* -include .zip
cd c:\tools\php}
- IF %PHP%==1 echo extension=php_wincache.dll >> php.ini
- IF %PHP%==1 echo wincache.enablecli = 1 >> php.ini
- IF %PHP%==1 echo zend_extension=php_opcache.dll >> php.ini
- IF %PHP%==1 echo opcache.enable_cli=1 >> php.ini
- IF %PHP%==1 echo @php %%~dp0composer.phar %%* > composer.bat
- appveyor-retry appveyor DownloadFile https://getcomposer.org/composer.phar
- cd C:\projects\joomla-cms
- appveyor-retry composer install --no-progress --profile

before_test:
# Database setup for MySQL via PowerShell tools
- >
"C:\Program Files\MySQL\MySQL Server 5.7\bin\mysql" -u root -p"Password12!" -e "CREATE DATABASE IF NOT EXISTS joomla_ut;"
- >
"C:\Program Files\MySQL\MySQL Server 5.7\bin\mysql" -u root -p"Password12!" joomla_ut < tests\unit\schema\mysql.sql
# Database setup for PostgreSQL
- SET PGUSER=postgres
- SET PGPASSWORD=Password12!
- PATH=C:\Program Files\PostgreSQL\9.4\bin\;%PATH%
- createdb joomla_ut
- psql -d joomla_ut -a -f tests\unit\schema\postgresql.sql

# Database setup for SQL Server
- ps: $sqlInstance = "(local)\SQL2014"
- ps: sqlcmd -b -E -S "$sqlInstance" -Q "CREATE DATABASE joomla_ut"
- ps: sqlcmd -S "$sqlInstance" -U "sa" -P "Password12!" -i $env:APPVEYOR_BUILD_FOLDER\tests\unit\schema\sqlsrv.sql

test_script:
- cd C:\projects\joomla-cms
- libraries/vendor/bin/phpunit -c appveyor-phpunit.xml
40 changes: 26 additions & 14 deletions .drone.yml
@@ -1,16 +1,28 @@
build:
image: yveshoppe/joomla-systemtests:latest
commands:
- apt-get install nodejs npm
- ln -s /usr/bin/nodejs /usr/bin/node
- export DISPLAY=:0
- Xvfb -screen 0 1024x768x24 -ac +extension GLX +render -noreset > /dev/null 2>&1 &
- sleep 3
- fluxbox > /dev/null 2>&1 &
- cd tests/javascript
- npm install
- cd ../..
- tests/javascript/node_modules/karma/bin/karma start karma.conf.js --single-run
pipeline:
clone:
image: plugins/git
depth: 1
path: repo

phpcs:
image: joomlaprojects/docker-phpcs
commands:
- echo $(date)
- /root/.composer/vendor/bin/phpcs --report=full --extensions=php -p --standard=build/phpcs/Joomla .
- echo $(date)

javascript:
image: joomlaprojects/docker-systemtests:latest
commands:
- echo $(date)
- apt-get install nodejs npm
- ln -s /usr/bin/nodejs /usr/bin/node
- export DISPLAY=:0
- Xvfb -screen 0 1024x768x24 -ac +extension GLX +render -noreset > /dev/null 2>&1 &
- sleep 3
- fluxbox > /dev/null 2>&1 &
- cd tests/javascript
- npm install
- cd ../..
- tests/javascript/node_modules/karma/bin/karma start karma.conf.js --single-run
- echo $(date)

14 changes: 7 additions & 7 deletions .github/CONTRIBUTING.md
Expand Up @@ -2,12 +2,12 @@ Contributing to the Joomla! CMS™
===============
You are welcome to submit a contribution for review and possible inclusion in the Joomla! CMS but, before it will be accepted, we ask that you follow these simple steps:

1) Open an issue on our [Issue Tracker](https://issues.joomla.org/) or here on GitHub. If you can, please provide a fix and create a pull request (PR) instead; this will automatically create an issue for you.
1) Open an issue on our [Issue Tracker](https://issues.joomla.org/) or here on GitHub. If you can, please provide a fix and create a pull request (PR) instead; this will automatically create an issue for you so you do not have to create an issue if you are creating a pull request.

2) Follow the [Joomla! Coding Standards](https://joomla.github.io/coding-standards).
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.
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.

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.

Expand All @@ -19,7 +19,7 @@ There are other branches available which serve specific purposes.

| Branch | Purpose |
| ------ | ------- |
| staging | Current codebase. |
| staging | Current codebase. Branch for the next minor Joomla version. New backward compatible features go into this branch. |
| master | Each commit made to staging gets tested if it passes unit tests and codestyle rules. It is then merged into master. This is done automatically. |
| 2.5.x | Branch for the Joomla 2.5.x series. Support for this version has ended, no patches are accepted here. |
| 3.6.x | Branch for the next minor Joomla version. New backward compatible features go into this branch. Commits to staging will be applied to this branch as well. |
| 3.8-dev | Branch for the next minor Joomla version. The 3.8.0 release will only include compatibility features for 4.0. Commits to staging will be applied to this branch as well. |
| 4.0-dev | Branch for the next major Joomla version. New features go into this branch. Commits to staging will be applied to this branch as well. |
13 changes: 13 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Expand Up @@ -2,6 +2,19 @@ Pull Request for Issue # .

### Summary of Changes



### Testing Instructions



### Expected result



### Actual result



### Documentation Changes Required

17 changes: 17 additions & 0 deletions .gitignore
Expand Up @@ -5,6 +5,7 @@
.settings
.DS_Store
.idea
.vscode

# Local System Files (i.e. cache, logs, etc.) #
/administrator/cache
Expand Down Expand Up @@ -35,6 +36,16 @@ phpdoc-*
# Install from Web plugin #
/plugins/installer/webinstaller

# Languages #
administrator/language/*
!administrator/language/en-GB
administrator/manifests/packages/*
!administrator/manifests/packages/pkg_en-GB.xml
!administrator/language/overrides/index.html
language/*
!language/en-GB
!language/overrides/index.html

# OSX #
._*
.Spotlight-V100
Expand All @@ -60,6 +71,7 @@ Desktop.ini
/libraries/vendor/ircmaxell/password-compat/phpunit.xml.dist
/libraries/vendor/ircmaxell/password-compat/README.md
/libraries/vendor/ircmaxell/password-compat/version-test.php
/libraries/vendor/joomla/*/.github
/libraries/vendor/joomla/*/.gitignore
/libraries/vendor/joomla/*/.gitmodules
/libraries/vendor/joomla/*/docs
Expand All @@ -70,6 +82,7 @@ Desktop.ini
/libraries/vendor/joomla/*/composer.json
/libraries/vendor/joomla/*/phpunit.xml.dist
/libraries/vendor/joomla/*/README.md
/libraries/vendor/joomla/session/Joomla/Session/.github
/libraries/vendor/joomla/session/Joomla/Session/_Tests
/libraries/vendor/joomla/session/Joomla/Session/build
/libraries/vendor/joomla/session/Joomla/Session/Tests
Expand All @@ -92,9 +105,13 @@ Desktop.ini
/libraries/vendor/paragonie/random_compat/other
/libraries/vendor/paragonie/random_compat/CHANGELOG.md
/libraries/vendor/paragonie/random_compat/ERRATA.md
/libraries/vendor/paragonie/random_compat/RATIONALE.md
/libraries/vendor/paragonie/random_compat/README.md
/libraries/vendor/paragonie/random_compat/SECURITY.md
/libraries/vendor/paragonie/random_compat/build-phar.sh
/libraries/vendor/paragonie/random_compat/composer.json
/libraries/vendor/paragonie/random_compat/psalm-autoload.php
/libraries/vendor/paragonie/random_compat/psalm.xml
/libraries/vendor/paragonie/random_compat/tests
/libraries/vendor/phpmailer/phpmailer/docs
/libraries/vendor/phpmailer/phpmailer/examples
Expand Down
40 changes: 5 additions & 35 deletions .travis.yml
Expand Up @@ -5,18 +5,18 @@ language: php

env:
global:
- RUN_PHPCS="no"
- RUN_UNIT_TESTS="yes"
- RUN_JAVASCRIPT_TESTS="no"
- INSTALL_MEMCACHE="yes"
- INSTALL_MEMCACHED="yes"
- INSTALL_REDIS="yes"

matrix:
fast_finish: true
include:
- php: 5.6
env: RUN_PHPCS="yes" RUN_UNIT_TESTS="no" INSTALL_MEMCACHE="no" INSTALL_MEMCACHED="no" INSTALL_REDIS="no"
- php: 7.0
env: INSTALL_APCU="yes" INSTALL_APCU_BC_BETA="no" INSTALL_MEMCACHE="no" INSTALL_MEMCACHED="no" INSTALL_REDIS="no" # Disabled apcu_bc install until https://github.com/travis-ci/travis-ci/issues/5207 is resolved
- php: 7.1
env: INSTALL_APCU="yes" INSTALL_APCU_BC_BETA="no" INSTALL_MEMCACHE="no" INSTALL_MEMCACHED="no" INSTALL_REDIS="no" # Disabled apcu_bc install until https://github.com/travis-ci/travis-ci/issues/5207 is resolved
- php: 5.3
env: INSTALL_APC="yes"
- php: 5.4
Expand All @@ -25,48 +25,18 @@ matrix:
env: INSTALL_APCU="yes"
- php: 5.6
env: INSTALL_APCU="yes"
- php: 7.0
env: INSTALL_APCU="yes" INSTALL_APCU_BC_BETA="no" INSTALL_MEMCACHE="no" INSTALL_MEMCACHED="no" INSTALL_REDIS="no" # Disabled apcu_bc install until https://github.com/travis-ci/travis-ci/issues/5207 is resolved
- node_js: 6.1
sudo: true
env: RUN_JAVASCRIPT_TESTS="yes" RUN_UNIT_TESTS="no"
- php: 7.1
env: INSTALL_APCU="yes" INSTALL_APCU_BC_BETA="no" INSTALL_MEMCACHE="no" INSTALL_MEMCACHED="no" INSTALL_REDIS="no" # Disabled apcu_bc install until https://github.com/travis-ci/travis-ci/issues/5207 is resolved
- php: hhvm
sudo: true
dist: trusty
group: edge # until the next update
addons:
apt:
packages:
- mysql-server-5.6
- mysql-client-core-5.6
- mysql-client-5.6
services:
- mysql
- postgresql
- redis-server
env: INSTALL_APCU_BC_BETA="no" INSTALL_MEMCACHE="no" INSTALL_MEMCACHED="no" # Disabled items that currently do not work in travis-ci hhvm
allow_failures:
- php: 7.1
- php: hhvm
- node_js: 6.1

services:
- memcache
- memcached
- redis-server

before_script:
# JavaScript tests
- if [[ $RUN_JAVASCRIPT_TESTS == "yes" ]]; then export DISPLAY=:99.0; bash build/travis/javascript-tests.sh $PWD; fi
# Make sure all dev dependencies are installed
- if [[ ( $RUN_UNIT_TESTS == "yes" ) || ( $RUN_PHPCS == "yes" ) ]]; then bash build/travis/unit-tests.sh $PWD; fi
- if [[ $RUN_UNIT_TESTS == "yes" ]]; then bash build/travis/unit-tests.sh $PWD; fi

script:
- if [[ $RUN_PHPCS == "yes" ]]; then libraries/vendor/bin/phpcs --report=full --extensions=php -p --standard=build/phpcs/Joomla .; fi
- if [[ $RUN_UNIT_TESTS == "yes" ]]; then libraries/vendor/bin/phpunit --configuration travisci-phpunit.xml; fi
- if [[ $RUN_JAVASCRIPT_TESTS == "yes" ]]; then tests/javascript/node_modules/karma/bin/karma start karma.conf.js --single-run ; fi

branches:
except:
Expand Down

0 comments on commit bd829a5

Please sign in to comment.