Skip to content

Commit

Permalink
Merge branch '4.0-dev' into feature/jsonld
Browse files Browse the repository at this point in the history
  • Loading branch information
wilsonge committed Sep 14, 2019
2 parents a3f15bb + ba5e292 commit 3133be5
Show file tree
Hide file tree
Showing 2,210 changed files with 51,806 additions and 35,833 deletions.
54 changes: 31 additions & 23 deletions .appveyor.yml
Expand Up @@ -9,14 +9,20 @@ branches:

## Build matrix for lowest and highest possible targets
environment:
DLLVersion: "5.6.1"
PHPBuild: "x64"
VC: "vc15"
matrix:
- php_ver_target: 7.2
DLLVersion: "5.3.0"
WINCACHE: "2.0.0.8"
- php_ver_target: 7.3
WINCACHE: "2.0.0.8"

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 PHP=1 # This var relates to caching the php install
- SET ANSICON=121x90 (121x90)
services:
- mssql2014
Expand All @@ -27,31 +33,32 @@ services:
## Install PHP and composer, and run the appropriate composer command
install:
- IF EXIST C:\tools\php (SET PHP=0)
# TODO: This is a workaround for https://github.com/chocolatey/choco/issues/1843. Once this is fixed we
# should go back to latest version in appveyor saving ourselves test time
- ps: choco install chocolatey -y --version 0.10.13 --allow-downgrade
- ps: >-
If ($env:PHP -eq "1") {
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") {
$DLLVersion = "4.3.0"
cd c:\tools\php\ext
$source = "http://windows.php.net/downloads/pecl/releases/sqlsrv/$($DLLVersion)/php_sqlsrv-$($DLLVersion)-$($env:php_ver_target)-nts-vc14-x64.zip"
$destination = "c:\tools\php\ext\php_sqlsrv-$($DLLVersion)-$($env:php_ver_target)-nts-vc14-x64.zip"
$source = "https://windows.php.net/downloads/pecl/releases/sqlsrv/$($env:DLLVersion)/php_sqlsrv-$($env:DLLVersion)-$($env:php_ver_target)-nts-$($env:VC)-$($env:PHPBuild).zip"
$destination = "c:\tools\php\ext\php_sqlsrv-$($env:DLLVersion)-$($env:php_ver_target)-nts-$($env:VC)-$($env:PHPBuild).zip"
Invoke-WebRequest $source -OutFile $destination
#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
$source = "http://windows.php.net/downloads/pecl/releases/pdo_sqlsrv/$($DLLVersion)/php_pdo_sqlsrv-$($DLLVersion)-$($env:php_ver_target)-nts-vc14-x64.zip"
$destination = "c:\tools\php\ext\php_pdo_sqlsrv-$($DLLVersion)-$($env:php_ver_target)-nts-vc14-x64.zip"
#appveyor-retry appveyor DownloadFile https://windows.php.net/downloads/pecl/releases/sqlsrv/$($env:DLLVersion)/php_sqlsrv-$($env:DLLVersion)-$($env:php_ver_target)-nts-$($env:VC)-$($env:PHPBuild).zip
7z x -y php_sqlsrv-$($env:DLLVersion)-$($env:php_ver_target)-nts-$($env:VC)-$($env:PHPBuild).zip > $null
$source = "https://windows.php.net/downloads/pecl/releases/pdo_sqlsrv/$($env:DLLVersion)/php_pdo_sqlsrv-$($env:DLLVersion)-$($env:php_ver_target)-nts-$($env:VC)-$($env:PHPBuild).zip"
$destination = "c:\tools\php\ext\php_pdo_sqlsrv-$($env:DLLVersion)-$($env:php_ver_target)-nts-$($env:VC)-$($env:PHPBuild).zip"
Invoke-WebRequest $source -OutFile $destination
#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
#appveyor-retry appveyor DownloadFile https://windows.php.net/downloads/pecl/releases/pdo_sqlsrv/$($env:DLLVersion)/php_pdo_sqlsrv-$($env:DLLVersion)-$($env:php_ver_target)-nts-$($env:VC)-$($env:PHPBuild).zip
7z x -y php_pdo_sqlsrv-$($env:DLLVersion)-$($env:php_ver_target)-nts-$($env:VC)-$($env:PHPBuild).zip > $null
Remove-Item c:\tools\php\ext* -include .zip
cd c:\tools\php}
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
Expand All @@ -76,18 +83,19 @@ install:
- IF %PHP%==1 echo extension=php_curl.dll >> php.ini
# Get the Wincache DLLs
- ps: >-
If ($env:PHP -eq "1") {
$wincache = "2.0.0.8"
If ($env:PHP -eq "1" -and $env:WINCACHE) {
cd c:\tools\php\ext
$source = "http://windows.php.net/downloads/pecl/releases/wincache/$($wincache)/php_wincache-$($wincache)-$($env:php_ver_target)-nts-$($VC)-$($PHPBuild).zip"
$destination = "c:\tools\php\ext\php_wincache-$($wincache)-$($env:php_ver_target)-nts-$($VC)-$($PHPBuild).zip"
$source = "https://windows.php.net/downloads/pecl/releases/wincache/$($env:WINCACHE)/php_wincache-$($env:WINCACHE)-$($env:php_ver_target)-nts-$($env:VC)-$($env:PHPBuild).zip"
$destination = "c:\tools\php\ext\php_wincache-$($env:WINCACHE)-$($env:php_ver_target)-nts-$($env:VC)-$($env:PHPBuild).zip"
Invoke-WebRequest $source -OutFile $destination
#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
#appveyor-retry appveyor DownloadFile https://windows.php.net/downloads/pecl/releases/wincache/$($env:WINCACHE)/php_wincache-$($env:WINCACHE)-$($env:php_ver_target)-nts-$($env:VC)-$($env:PHPBuild).zip
7z x -y php_wincache-$($env:WINCACHE)-$($env:php_ver_target)-nts-$($env:VC)-$($env: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
cd c:\tools\php
Add-Content php.ini "`nextension=php_wincache.dll"
Add-Content php.ini "`wincache.enablecli = 1"
Add-Content php.ini "`n"
}
- 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 extension=php_ldap.dll >> php.ini
Expand All @@ -111,4 +119,4 @@ before_test:

test_script:
- cd C:\projects\joomla-cms
- libraries/vendor/bin/phpunit
- libraries/vendor/bin/phpunit --testsuite Unit
129 changes: 113 additions & 16 deletions .drone.yml
Expand Up @@ -23,21 +23,22 @@ steps:
image: joomlaprojects/docker-tools:develop
depends_on: [ restore-cache ]
commands:
- composer validate --no-check-all --strict
- composer install --no-progress --no-suggest

- name: phpcs
image: php:7.2
image: joomlaprojects/docker-images:php7.2
depends_on: [ composer ]
commands:
- echo $(date)
- ./libraries/vendor/bin/phpcs --report=full --encoding=utf-8 --extensions=php -p --standard=build/phpcs/Joomla .
- ./libraries/vendor/bin/phpcs --extensions=php -p --standard=libraries/vendor/joomla/cms-coding-standards/lib/Joomla-CMS .
- echo $(date)

- name: npm
image: joomlaprojects/docker-tools:develop
depends_on: [ phpcs ]
commands:
- npm install --unsafe-perm
- npm ci --unsafe-perm

- name: rebuild-cache
image: drillster/drone-volume-cache
Expand All @@ -55,33 +56,93 @@ steps:

- name: php72-unit
depends_on: [ phpcs ]
image: php:7.2
image: joomlaprojects/docker-images:php7.2
commands:
- php -v
- ./libraries/vendor/bin/phpunit
- ./libraries/vendor/bin/phpunit --testsuite Unit

- name: php73-unit
depends_on: [ phpcs ]
image: php:7.3
image: joomlaprojects/docker-images:php7.3
commands:
- php -v
- ./libraries/vendor/bin/phpunit
- ./libraries/vendor/bin/phpunit --testsuite Unit

- name: php74-unit
depends_on: [ phpcs ]
image: phpdaily/php:7.4-dev
errignore: true
image: joomlaprojects/docker-images:php7.4
failure: ignore
commands:
- php -v
- ./libraries/vendor/bin/phpunit
- ./libraries/vendor/bin/phpunit --testsuite Unit

- name: php80-unit
depends_on: [ phpcs ]
image: phpdaily/php:8.0-dev
errignore: true
image: joomlaprojects/docker-images:php8.0
failure: ignore
commands:
- php -v
- ./libraries/vendor/bin/phpunit
- ./libraries/vendor/bin/phpunit --testsuite Unit

- name: php72-integration
depends_on: [ npm ]
image: joomlaprojects/docker-images:php7.2
commands:
- php -v
- ./libraries/vendor/bin/phpunit --testsuite Integration

- name: php73-integration
depends_on: [ npm ]
image: joomlaprojects/docker-images:php7.3
commands:
- php -v
- ./libraries/vendor/bin/phpunit --testsuite Integration

- name: php74-integration
depends_on: [ npm ]
image: joomlaprojects/docker-images:php7.4
failure: ignore
commands:
- php -v
- ./libraries/vendor/bin/phpunit --testsuite Integration

- name: php80-integration
depends_on: [ npm ]
image: joomlaprojects/docker-images:php8.0
failure: ignore
commands:
- php -v
- ./libraries/vendor/bin/phpunit --testsuite Integration

- name: php72-integration-pgsql
depends_on: [ npm ]
image: joomlaprojects/docker-images:php7.2
commands:
- php -v
- ./libraries/vendor/bin/phpunit --testsuite Integration --configuration phpunit-pgsql.xml.dist

# - name: php73-integration-pgsql
# depends_on: [ npm ]
# image: joomlaprojects/docker-images:php7.3
# commands:
# - php -v
# - ./libraries/vendor/bin/phpunit --testsuite Integration --configuration phpunit-pgsql.xml.dist

# - name: php74-integration-pgsql
# depends_on: [ npm ]
# image: joomlaprojects/docker-images:php7.4
# failure: ignore
# commands:
# - php -v
# - ./libraries/vendor/bin/phpunit --testsuite Integration --configuration phpunit-pgsql.xml.dist

# - name: php80-integration-pgsql
# depends_on: [ npm ]
# image: joomlaprojects/docker-images:php8.0
# failure: ignore
# commands:
# - php -v
# - ./libraries/vendor/bin/phpunit --testsuite Integration --configuration phpunit-pgsql.xml.dist

- name: javascript-cs
depends_on: [ npm ]
Expand Down Expand Up @@ -109,12 +170,40 @@ steps:
commands:
- bash tests/Codeception/drone-system-run.sh "$(pwd)" mysql

- name: system-tests-postgres
- name: system-tests-mysql8
depends_on: [ system-tests-mysql ]
image: joomlaprojects/docker-systemtests:latest
failure: ignore
commands:
- bash tests/Codeception/drone-system-run.sh "$(pwd)" mysql8

- name: system-tests-postgres
depends_on: [ system-tests-mysql8 ]
image: joomlaprojects/docker-systemtests:latest
commands:
- bash tests/Codeception/drone-system-run.sh "$(pwd)" postgres

- name: artifacts-system-tests
image: cschlosser/drone-ftps
depends_on: [ system-tests-postgres ]
environment:
FTP_USERNAME:
from_secret: ftpusername
FTP_PASSWORD:
from_secret: ftppassword
PLUGIN_HOSTNAME: ci.joomla.org:21
PLUGIN_SRC_DIR: /tests/Codeception/_output/
PLUGIN_DEST_DIR: /artifacts
PLUGIN_SECURE: false
PLUGIN_EXCLUDE: ^\.git/$
commands:
- export PLUGIN_DEST_DIR=$PLUGIN_DEST_DIR/$DRONE_REPO/$DRONE_BRANCH/$DRONE_PULL_REQUEST_$DRONE_BUILD_NUMBER/system-tests
- echo https://ci.joomla.org:444$PLUGIN_DEST_DIR
- /bin/upload.sh
when:
status:
- failure

- name: api-tests
depends_on: [ system-tests-postgres ]
image: joomlaprojects/docker-systemtests:latest
Expand All @@ -141,7 +230,6 @@ steps:
branches:
exclude: [ l10n_* ]


volumes:
- name: cache
host:
Expand All @@ -156,6 +244,15 @@ services:
MYSQL_ROOT_PASSWORD: joomla_ut
MYSQL_DATABASE: test_joomla

- name: mysql8
image: mysql:8
command: ["--default-authentication-plugin=mysql_native_password"]
environment:
MYSQL_USER: joomla_ut
MYSQL_PASSWORD: joomla_ut
MYSQL_ROOT_PASSWORD: joomla_ut
MYSQL_DATABASE: test_joomla

- name: memcached
image: memcached:alpine

Expand All @@ -173,6 +270,6 @@ services:

---
kind: signature
hmac: fe0f4efe905e680da49bd332d26fd3fe68e43f392747b1ceb821693d26459bb8
hmac: 9462caf361ab517c63d66d10ba0c934ead624ecf116828ab71ddc889f1b0a137

...
4 changes: 4 additions & 0 deletions .editorconfig
Expand Up @@ -10,3 +10,7 @@ end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true

[*.{js,scss,css}]
indent_style = space
indent_size = 2
40 changes: 17 additions & 23 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Expand Up @@ -7,14 +7,13 @@ plugins/fields/* @laoneo
plugins/systems/fields/* @laoneo

# Smart Search
#administrator/components/com_finder/*
#components/com_finder/*
#modules/mod_finder/*
#plugins/content/finder/*
#plugins/finder/*
administrator/components/com_finder/* @hackwar
components/com_finder/* @hackwar
modules/mod_finder/* @hackwar
plugins/content/finder/* @hackwar
plugins/finder/* @hackwar

# CodeMirror
media/editors/codemirror/* @okonomiyaki3000
plugins/editors/codemirror/* @okonomiyaki3000

# Statistics Server
Expand All @@ -32,25 +31,20 @@ libraries/src/Installer/* @rdeutz @wilsonge @zero-24
libraries/src/Updater/* @rdeutz @wilsonge @zero-24

# Automated Testing
build/jenkins/* @rdeutz
build/travis/* @rdeutz
tests/codeception/* @rdeutz
tests/javascript/* @dgrammatiko @rdeutz
tests/unit/* @rdeutz
.appveyor.yml @rdeutz
.drone.yml @rdeutz
.hound.yml @wilsonge
.travis.yml @rdeutz
appveyor-phpunit.xml @rdeutz
codeception.yml @rdeutz
karma.conf.js @dgrammatiko @rdeutz
phpunit.xml.dist @rdeutz
RoboFile.dist.ini @rdeutz
RoboFile.php @rdeutz
travis-phpunit.xml @rdeutz
tests/* @hackwar
tests/Codeception/* @rdeutz
tests/javascript/* @wilsonge @rdeutz
tests/Unit/* @rdeutz
.appveyor.yml @rdeutz @hackwar
.drone.yml @rdeutz @hackwar
.hound.yml @wilsonge @hackwar
codeception.yml @rdeutz @hackwar
phpunit.xml.dist @rdeutz @hackwar
phpunit-pgsql.xml.dist @rdeutz @hackwar
RoboFile.php @rdeutz @hackwar

# Core JS
media/*/js/* @dgrammatiko
build/media_source/*/js/* @wilsonge

# CSP Tooling
plugins/system/httpheaders/* @zero-24
Expand Down
1 change: 1 addition & 0 deletions .github/FUNDING.yml
@@ -0,0 +1 @@
custom: https://community.joomla.org/sponsorship-campaigns.html
6 changes: 2 additions & 4 deletions SECURITY.md → .github/SECURITY.md
Expand Up @@ -9,9 +9,7 @@ This document outlines security procedures and policies for the `Joomla! Project

## Reporting a Bug

The `Joomla` team and community take all security bugs in `Joomla` seriously.

The Joomla! Project takes security vulnerabilities very seriously. As such, the Joomla! Security Strike Team (JSST) oversees the project's security issues and follows some specific procedures when dealing with these issues.
The `Joomla` team and community take all security bugs in `Joomla` seriously. The Joomla! Security Strike Team (JSST) oversees the project's security issues and follows some specific procedures when dealing with these issues.

If you find a possible vulnerability, please report it to the JSST using the [online form](https://developer.joomla.org/security/contact-the-team.html) or via email at security@joomla.org

Expand All @@ -25,7 +23,7 @@ Thank you for improving the security of `Joomla`.

## Response Handling

The JSST aims to ensure all issues are handled in a timely manner and for clear communication between the team and issue reporters. As such, we have established the following guidelines for responding to issue reports:
The JSST aims to ensure all issues are handled in a timely manner and for clear communication between the team and issue reporters. We have established the following guidelines for responding to issue reports:

* Within 24 hours every report gets acknowledged
* Within 7 days every report gets a further response stating either
Expand Down

0 comments on commit 3133be5

Please sign in to comment.