Skip to content

Commit 08e7bfc

Browse files
authored
Merge pull request #13860 from phalcon/feature/13847/support-php73
Provide the ability to build Phalcon using PHP 7.3
2 parents 3b55639 + f7357cd commit 08e7bfc

17 files changed

+956
-1381
lines changed

CHANGELOG-3.4.md

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# [3.4.3](https://github.com/phalcon/cphalcon/releases/tag/v3.4.3) (2018-02-24)
2+
- Provided PHP 7.3 support [#13847](https://github.com/phalcon/cphalcon/issues/13847)
3+
14
# [3.4.2](https://github.com/phalcon/cphalcon/releases/tag/v3.4.2) (2018-12-02)
25
- Added missing Volt tags to array helper in `Phalcon\Mvc\View\Engine\Volt\Compiler::functionCall` [#13447](https://github.com/phalcon/cphalcon/issues/13447)
36
- Added the ability to explicitly define nullable columns (especially timestamp ones) [#13099](https://github.com/phalcon/cphalcon/issues/13099)

appveyor.yml

+124-75
Original file line numberDiff line numberDiff line change
@@ -1,54 +1,72 @@
1-
version: 3.4.2-{build}
1+
# This file is part of the Phalcon Framework.
2+
#
3+
# (c) Phalcon Team <[email protected]>
4+
#
5+
# For the full copyright and license information, please view
6+
# the LICENSE.txt file that was distributed with this source code.
7+
8+
version: 3.4.3-{build}
29

310
environment:
4-
matrix:
5-
- PHP_MINOR: 7.0
6-
VC_VERSION: 14
7-
BUILD_TYPE: Win32
8-
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013
9-
- PHP_MINOR: 7.0
10-
VC_VERSION: 14
11-
BUILD_TYPE: nts-Win32
12-
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013
13-
- PHP_MINOR: 7.1
14-
VC_VERSION: 14
15-
BUILD_TYPE: Win32
16-
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013
17-
- PHP_MINOR: 7.1
18-
VC_VERSION: 14
19-
BUILD_TYPE: nts-Win32
20-
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013
21-
- PHP_MINOR: 7.2
22-
VC_VERSION: 15
23-
BUILD_TYPE: Win32
24-
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
25-
- PHP_MINOR: 7.2
26-
VC_VERSION: 15
27-
BUILD_TYPE: nts-Win32
28-
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
29-
PHP_PATH: C:\Projects\php
30-
PHP_SDK_PATH: C:\Projects\php-sdk
31-
PHP_DEVPACK: C:\Projects\php-devpack
32-
TEST_PHP_EXECUTABLE: C:\Projects\php\php.exe
33-
PHP_SDK_VERSION: 2.0.7
34-
PACKAGE_PREFIX: phalcon
35-
EXTENSION_NAME: phalcon
36-
EXTENSION_FILE: php_phalcon.dll
37-
NO_INTERACTION: 1
38-
REPORT_EXIT_STATUS: 1
39-
COMPOSER_NO_INTERACTION: 1
40-
PARSER_VERSION: 1.1.3
41-
PARSER_RELEASE: 401
42-
PHALCON_STABLE_VERSION: 3.3.2
43-
ZEPHIR_VERSION: 0.10.14
11+
matrix:
12+
- PHP_VERSION: 7.0
13+
VC_VERSION: 14
14+
BUILD_TYPE: Win32
15+
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013
16+
17+
- PHP_VERSION: 7.0
18+
VC_VERSION: 14
19+
BUILD_TYPE: nts-Win32
20+
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013
21+
22+
- PHP_VERSION: 7.1
23+
VC_VERSION: 14
24+
BUILD_TYPE: Win32
25+
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013
26+
27+
- PHP_VERSION: 7.1
28+
VC_VERSION: 14
29+
BUILD_TYPE: nts-Win32
30+
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013
31+
32+
- PHP_VERSION: 7.2
33+
VC_VERSION: 15
34+
BUILD_TYPE: Win32
35+
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
36+
37+
- PHP_VERSION: 7.2
38+
VC_VERSION: 15
39+
BUILD_TYPE: nts-Win32
40+
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
41+
42+
- PHP_VERSION: 7.3
43+
VC_VERSION: 15
44+
BUILD_TYPE: Win32
45+
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
46+
47+
- PHP_VERSION: 7.3
48+
VC_VERSION: 15
49+
BUILD_TYPE: nts-Win32
50+
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
51+
52+
PHP_AVM: https://raw.githubusercontent.com/sergeyklay/php-appveyor/master/php-appveyor.psm1
53+
54+
PHP_SDK_VERSION: 2.1.9
55+
ZEPHIR_PARSER_VERSION: 1.2.0
56+
ZEPHIR_PARSER_RELEASE: 454
57+
ZEPHIR_VERSION: 0.10.15
58+
59+
TEST_PHP_EXECUTABLE: C:\php\php.exe
60+
NO_INTERACTION: 1
61+
REPORT_EXIT_STATUS: 1
62+
COMPOSER_NO_INTERACTION: 1
63+
PHALCON_STABLE_VERSION: 3.3.2
4464

4565
matrix:
4666
fast_finish: true
4767

4868
cache:
4969
- 'C:\Downloads -> appveyor.yml'
50-
- 'vendor -> composer.json'
51-
- 'composer.phar -> composer.json'
5270

5371
clone_depth: 1
5472
clone_folder: c:\projects\phalcon
@@ -60,48 +78,79 @@ platform:
6078
branches:
6179
only:
6280
- master
63-
- 4.0.x
6481
- 3.4.x
6582

83+
init:
84+
- ps: $DebugPreference = 'SilentlyContinue' # Continue
85+
6686
install:
67-
- ps: Import-Module .\tests\_ci\appveyor.psm1
68-
- ps: AppendSessionPath
69-
- ps: SetupPhpVersionString
70-
- ps: EnsureRequiredDirectoriesPresent
71-
- ps: Ensure7ZipIsInstalled
72-
- ps: InstallSdk
73-
- ps: InstallPhp
74-
- ps: InstallPhpDevPack
75-
- ps: InstallStablePhalcon
76-
- ps: InstallParser
77-
- ps: TuneUpPhp
87+
- ps: (new-object Net.WebClient).DownloadString($Env:PHP_AVM) | iex
88+
89+
- ps: InstallPhpSdk $Env:PHP_SDK_VERSION $Env:VC_VERSION $Env:PLATFORM
90+
- ps: InstallPhp $Env:PHP_VERSION $Env:BUILD_TYPE $Env:VC_VERSION $Env:PLATFORM
91+
- ps: InstallPhpDevPack $Env:PHP_VERSION $Env:BUILD_TYPE $Env:VC_VERSION $Env:PLATFORM
92+
93+
- ps: TuneUpPhp -DefaultExtensions openssl,mbstring,pdo_sqlite,fileinfo,gettext,gd2,curl
94+
- ps: InstallComposer
95+
96+
- ps: >-
97+
InstallZephirParser `
98+
-Version $Env:ZEPHIR_PARSER_VERSION `
99+
-BuildId $Env:ZEPHIR_PARSER_RELEASE `
100+
-PhpVersion $Env:PHP_VERSION `
101+
-BuildType $Env:BUILD_TYPE `
102+
-VC $Env:VC_VERSION `
103+
-Platform $Env:PLATFORM
104+
105+
before_build:
106+
- ps: EnablePhpExtension -Name zephir_parser -PrintableName "Zephir Parser"
78107

79108
build_script:
80-
- ps: InitializeBuildVars
81-
- ps: InitializeReleaseVars
82-
- ps: InstallBuildDependencies
83-
- '"%VSCOMNTOOLS%\VsDevCmd" %PLATFORM%'
84-
- '"%VSCOMNTOOLS%\..\..\VC\vcvarsall.bat" %ARCH%'
85-
- '%PHP_SDK_PATH%\bin\phpsdk_setvars'
86-
- 'vendor\bin\zephir generate --backend=ZendEngine3 -Wnonexistent-function -Wnonexistent-class -Wunused-variable'
87-
- 'cd %APPVEYOR_BUILD_FOLDER%\build'
88-
- 'php gen-build.php'
89-
- 'cd %APPVEYOR_BUILD_FOLDER%\build\php7\safe'
90-
- '%PHP_DEVPACK%\phpize.bat'
91-
- 'configure --with-prefix=%PHP_PATH% --with-php-build=%PHP_DEVPACK% --disable-all --enable-phalcon'
92-
- nmake 2> compile-errors.log 1> compile.log
93-
- ps: EnableExtension
109+
- ps: Import-Module .\tests\_ci\appveyor.psm1
110+
- ps: InitializeBuildVars
111+
- cmd: '"%VSCOMNTOOLS%\VsDevCmd" -arch=%PLATFORM%'
112+
- cmd: '"%VCVARSALL_FILE%" %ARCH%'
113+
- cmd: C:\php-sdk\bin\phpsdk_setvars
114+
- cmd: C:\php\php.exe composer.phar install -q -n --no-progress -o --prefer-dist --no-suggest --ignore-platform-reqs
115+
- cmd: C:\php\php.exe composer.phar require -q -n --no-progress -o --prefer-dist --no-suggest --ignore-platform-reqs "phalcon/zephir:%ZEPHIR_VERSION%"
116+
- cmd: C:\php\php.exe vendor\phalcon\zephir\compiler.php generate --backend=ZendEngine3 -Wnonexistent-function -Wnonexistent-class -Wunused-variable
117+
- ps: Set-Location "${Env:APPVEYOR_BUILD_FOLDER}\build"
118+
- cmd: C:\php\php.exe gen-build.php
119+
- ps: Set-Location "${Env:APPVEYOR_BUILD_FOLDER}\build\php7\safe"
120+
- cmd: C:\php-devpack\phpize
121+
- cmd: configure --with-prefix=C:\php --with-php-build=C:\php-devpack --disable-all --enable-phalcon
122+
- cmd: nmake 2> compile-errors.log 1> compile.log
123+
- ps: InitializeReleaseVars
94124

95125
after_build:
96-
- ps: PrepareReleasePackage
126+
- ps: Set-Location "${Env:APPVEYOR_BUILD_FOLDER}"
127+
- ps: >-
128+
PrepareReleasePackage `
129+
-PhpVersion $Env:PHP_VERSION `
130+
-BuildType $Env:BUILD_TYPE `
131+
-Platform $Env:PLATFORM `
132+
-ConverMdToHtml $true `
133+
-ReleaseFiles "${Env:RELEASE_DLL_PATH}",`
134+
"${Env:APPVEYOR_BUILD_FOLDER}\LICENSE-PHP.txt",`
135+
"${Env:APPVEYOR_BUILD_FOLDER}\LICENSE-ZEND.txt"
97136
98137
artifacts:
99138
- path: '.\$(RELEASE_ZIPBALL).zip'
100139
type: zip
101140
name: Phalcon
102141

103-
on_failure :
104-
- ps: PrintLogs "${Env:APPVEYOR_BUILD_FOLDER}\build\php7\safe"
105-
- ps: PrintVars
106-
- ps: PrintDirectoriesContent
107-
- ps: PrintPhpInfo
142+
on_failure:
143+
- ps: $LogsDirectory = "${Env:APPVEYOR_BUILD_FOLDER}\build\php7\safe"
144+
- ps: $FilterPattern = "(warning C4267)|(warning C4244)|(warning C4018)"
145+
146+
- ps: >-
147+
if (Test-Path -Path "${LogsDirectory}\compile-errors.log") {
148+
Get-Content -Path "${LogsDirectory}\compile-errors.log" | Where-Object {
149+
$_ -notMatch "${FilterPattern}"
150+
}
151+
}
152+
if (Test-Path -Path "${LogsDirectory}\compile.log") {
153+
Get-Content -Path "${LogsDirectory}\compile.log" | Where-Object {
154+
$_ -notMatch "${FilterPattern}"
155+
}
156+
}

build/php5/32bits/phalcon.zep.c

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

build/php5/32bits/php_phalcon.h

+2-2
Original file line numberDiff line numberDiff line change
@@ -150,10 +150,10 @@ typedef zend_function zephir_fcall_cache_entry;
150150

151151

152152
#define PHP_PHALCON_NAME "phalcon"
153-
#define PHP_PHALCON_VERSION "3.4.2"
153+
#define PHP_PHALCON_VERSION "3.4.3"
154154
#define PHP_PHALCON_EXTNAME "phalcon"
155155
#define PHP_PHALCON_AUTHOR "Phalcon Team and contributors"
156-
#define PHP_PHALCON_ZEPVERSION "0.10.14-975ad02db4"
156+
#define PHP_PHALCON_ZEPVERSION "0.10.15-5e3e482891"
157157
#define PHP_PHALCON_DESCRIPTION "Web framework delivered as a C-extension for PHP"
158158

159159
typedef struct _zephir_struct_db {

build/php5/64bits/phalcon.zep.c

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

build/php5/64bits/php_phalcon.h

+2-2
Original file line numberDiff line numberDiff line change
@@ -150,10 +150,10 @@ typedef zend_function zephir_fcall_cache_entry;
150150

151151

152152
#define PHP_PHALCON_NAME "phalcon"
153-
#define PHP_PHALCON_VERSION "3.4.2"
153+
#define PHP_PHALCON_VERSION "3.4.3"
154154
#define PHP_PHALCON_EXTNAME "phalcon"
155155
#define PHP_PHALCON_AUTHOR "Phalcon Team and contributors"
156-
#define PHP_PHALCON_ZEPVERSION "0.10.14-975ad02db4"
156+
#define PHP_PHALCON_ZEPVERSION "0.10.15-5e3e482891"
157157
#define PHP_PHALCON_DESCRIPTION "Web framework delivered as a C-extension for PHP"
158158

159159
typedef struct _zephir_struct_db {

build/php5/safe/phalcon.zep.c

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

build/php5/safe/php_phalcon.h

+2-2
Original file line numberDiff line numberDiff line change
@@ -150,10 +150,10 @@ typedef zend_function zephir_fcall_cache_entry;
150150

151151

152152
#define PHP_PHALCON_NAME "phalcon"
153-
#define PHP_PHALCON_VERSION "3.4.2"
153+
#define PHP_PHALCON_VERSION "3.4.3"
154154
#define PHP_PHALCON_EXTNAME "phalcon"
155155
#define PHP_PHALCON_AUTHOR "Phalcon Team and contributors"
156-
#define PHP_PHALCON_ZEPVERSION "0.10.14-975ad02db4"
156+
#define PHP_PHALCON_ZEPVERSION "0.10.15-5e3e482891"
157157
#define PHP_PHALCON_DESCRIPTION "Web framework delivered as a C-extension for PHP"
158158

159159
typedef struct _zephir_struct_db {

build/php7/32bits/php_phalcon.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ typedef zend_function zephir_fcall_cache_entry;
132132

133133

134134
#define PHP_PHALCON_NAME "phalcon"
135-
#define PHP_PHALCON_VERSION "3.4.2"
135+
#define PHP_PHALCON_VERSION "3.4.3"
136136
#define PHP_PHALCON_EXTNAME "phalcon"
137137
#define PHP_PHALCON_AUTHOR "Phalcon Team and contributors"
138138
#define PHP_PHALCON_ZEPVERSION "0.10.14-975ad02db4"

build/php7/64bits/php_phalcon.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ typedef zend_function zephir_fcall_cache_entry;
132132

133133

134134
#define PHP_PHALCON_NAME "phalcon"
135-
#define PHP_PHALCON_VERSION "3.4.2"
135+
#define PHP_PHALCON_VERSION "3.4.3"
136136
#define PHP_PHALCON_EXTNAME "phalcon"
137137
#define PHP_PHALCON_AUTHOR "Phalcon Team and contributors"
138138
#define PHP_PHALCON_ZEPVERSION "0.10.14-975ad02db4"

0 commit comments

Comments
 (0)