Skip to content
This repository was archived by the owner on Jul 7, 2018. It is now read-only.

Commit 370682b

Browse files
authored
Merge pull request #26 from pinepain/drop-php71
Drop PHP 7.1 and windows support
2 parents c2ca24d + 80c81e4 commit 370682b

31 files changed

+628
-201
lines changed

.travis.yml

+12-10
Original file line numberDiff line numberDiff line change
@@ -3,21 +3,23 @@ dist: trusty
33

44
language: php
55

6-
php:
7-
- 7.1
8-
- nightly
6+
env:
7+
global:
8+
- NO_INTERACTION=1
9+
- TEST_TIMEOUT=120
910

1011
matrix:
1112
allow_failures:
1213
- php: nightly
1314

14-
env:
15-
global:
16-
- NO_INTERACTION=1
17-
- TEST_TIMEOUT=120
18-
matrix:
19-
-
20-
- TEST_PHP_ARGS=-m
15+
include:
16+
- php: 7.2
17+
- php: 7.2
18+
env: TEST_PHP_ARGS=-m
19+
20+
- php: nightly
21+
# - php: nightly
22+
# env: TEST_PHP_ARGS=-m
2123

2224
before_install:
2325
- phpize && ./configure && make

CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
cmake_minimum_required(VERSION 3.1)
2-
project(php_ref)
2+
project(php-ref)
33

44
# NOTE: This CMake file is just for syntax highlighting in CLion
55

LICENSE

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
The MIT License
22

3-
Copyright (c) 2016-2017 Bogdan Padalko <[email protected]>
3+
Copyright (c) 2016-2018 Bogdan Padalko <[email protected]>
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy of
66
this software and associated documentation files (the "Software"), to deal in

README.md

+6-11
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ This extension adds [Soft Reference](https://en.wikipedia.org/wiki/Soft_referenc
99
data structures that require advanced referencing model.
1010

1111

12-
**PHP >= 7.1 required**
12+
**PHP >= 7.2 required.** The last version that supports PHP 7.1 is `v0.5.0`.
1313

1414
### PLEASE READ:
1515

@@ -162,22 +162,17 @@ to add it to your project.
162162
$ sudo add-apt-repository -y ppa:ondrej/php
163163
$ sudo add-apt-repository -y ppa:pinepain/php
164164
$ sudo apt-get update -y
165-
$ sudo apt-get install -y php7.1 php-ref
165+
$ sudo apt-get install -y php7.2 php-ref
166166
$ php --ri ref
167167

168168
#### OS X (homebrew)
169169

170-
$ brew tap homebrew/devtoo
170+
$ brew tap homebrew/dupes
171171
$ brew tap homebrew/php
172172
$ brew tap pinepain/devtools
173-
$ brew install php71 php71-ref
173+
$ brew install php php-ref
174174
$ php --ri ref
175175

176-
### Windows
177-
178-
Windows builds can be found at [php-ref Appveyor build page](https://ci.appveyor.com/project/pinepain/php-ref).
179-
Pick artifacts from build which match your platform (x86 or x64), PHP release.major version and thread safety (ZTS or NTS).
180-
181176
### Building from sources
182177

183178
git clone https://github.com/pinepain/php-ref.git
@@ -189,12 +184,12 @@ To install extension globally run
189184

190185
# sudo make install
191186

192-
You will need to copy the extension config to your php dir, here is example for Ubuntu with PHP 7.1 from
187+
You will need to copy the extension config to your php dir, here is example for Ubuntu with PHP 7.2 from
193188
[Ondřej Surý's PPA for PHP](https://launchpad.net/~ondrej/+archive/ubuntu/php):
194189

195190
# sudo cp provision/php/ref.ini /etc/php/mods-available/
196191
# sudo phpenmod -v ALL ref
197-
# sudo service php7.1-fpm restart
192+
# sudo service php7.2-fpm restart
198193

199194
You may also want to add php-ref extension as a [composer.json dependency](https://getcomposer.org/doc/02-libraries.md#platform-packages):
200195

appveyor.yml

-93
This file was deleted.

config.m4

+2-2
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@ if test "$PHP_REF" != "no"; then
1111
PHP_REF_FOUND_VERSION=`${PHP_CONFIG} --version`
1212
PHP_REF_FOUND_VERNUM=`${PHP_CONFIG} --vernum`
1313

14-
if test "$PHP_REF_FOUND_VERNUM" -lt "70100"; then
15-
AC_MSG_ERROR([not supported. PHP version >= 7.1 required (found $PHP_REF_FOUND_VERSION)])
14+
if test "$PHP_REF_FOUND_VERNUM" -lt "70200"; then
15+
AC_MSG_ERROR([not supported. PHP version >= 7.2 required (found $PHP_REF_FOUND_VERSION)])
1616
else
1717
AC_MSG_RESULT([supported ($PHP_REF_FOUND_VERSION)])
1818
fi

config.w32

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1-
ARG_ENABLE("ref", "enable ref support", "no");
1+
#ARG_ENABLE("ref", "enable ref support", "no");
22

33
if (PHP_REF != "no") {
4-
EXTENSION("ref", "ref.c php_ref_notifier_exception.c php_ref_reference.c php_ref_functions.c", PHP_REF_SHARED, "/DZEND_ENABLE_STATIC_TSRMLS_CACHE=1");
4+
EXTENSION("ref", "ref.c", PHP_REF_SHARED, "/DZEND_ENABLE_STATIC_TSRMLS_CACHE=1");
55
}
6+
``

package.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,7 @@
155155
<dependencies>
156156
<required>
157157
<php>
158-
<min>7.1.0</min>
158+
<min>7.2.0</min>
159159
</php>
160160
<pearinstaller>
161161
<min>1.4.0</min>

php_ref.h

+3-19
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/*
22
* This file is part of the pinepain/php-ref PHP extension.
33
*
4-
* Copyright (c) 2016-2017 Bogdan Padalko <[email protected]>
4+
* Copyright (c) 2016-2018 Bogdan Padalko <[email protected]>
55
*
66
* Licensed under the MIT license: http://opensource.org/licenses/MIT
77
*
@@ -26,9 +26,9 @@ extern zend_module_entry php_ref_module_entry;
2626
#define PHP_REF_REVISION "dev"
2727
#endif
2828

29-
#if PHP_VERSION_ID < 70100
29+
#if PHP_VERSION_ID < 70200
3030
// should never get her, but just in case
31-
#error PHP >= 7.1 required
31+
#error PHP >= 7.2 required
3232
#endif
3333

3434
#define PHP_REF_NS "Ref"
@@ -42,22 +42,6 @@ extern zend_module_entry php_ref_module_entry;
4242
#endif
4343

4444

45-
// Add zend_type support (new since PHP 7.2)
46-
#ifdef ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX
47-
#define PHP_REF_ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(name, return_reference, required_num_args, classname, allow_null) \
48-
ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(name, return_reference, required_num_args, classname, allow_null)
49-
50-
#define PHP_REF_ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(name, return_reference, required_num_args, type, allow_null) \
51-
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(name, return_reference, required_num_args, type, allow_null)
52-
#else
53-
#define PHP_REF_ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(name, return_reference, required_num_args, classname, allow_null) \
54-
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(name, return_reference, required_num_args, IS_OBJECT, #classname, allow_null)
55-
56-
#define PHP_REF_ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(name, return_reference, required_num_args, type, allow_null) \
57-
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(name, return_reference, required_num_args, type, NULL, allow_null)
58-
#endif
59-
60-
6145
#ifdef ZTS
6246
#include "TSRM.h"
6347
#endif

php_ref_functions.c

+20-20
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/*
22
* This file is part of the pinepain/php-ref PHP extension.
33
*
4-
* Copyright (c) 2016-2017 Bogdan Padalko <[email protected]>
4+
* Copyright (c) 2016-2018 Bogdan Padalko <[email protected]>
55
*
66
* Licensed under the MIT license: http://opensource.org/licenses/MIT
77
*
@@ -208,44 +208,44 @@ PHP_FUNCTION(is_obj_destructor_called)
208208
}
209209

210210

211-
PHP_REF_ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(refcounted_arg, ZEND_RETURN_VALUE, 1, _IS_BOOL, 0)
211+
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(refcounted_arg, ZEND_RETURN_VALUE, 1, _IS_BOOL, 0)
212212
ZEND_ARG_INFO(0, value)
213213
ZEND_END_ARG_INFO()
214214

215-
PHP_REF_ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(refcount_arg, ZEND_RETURN_VALUE, 1, IS_LONG, 0)
216-
ZEND_ARG_INFO(0, value)
215+
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(refcount_arg, ZEND_RETURN_VALUE, 1, IS_LONG, 0)
216+
ZEND_ARG_TYPE_INFO(0, object, IS_OBJECT, 0)
217217
ZEND_END_ARG_INFO()
218218

219-
PHP_REF_ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(softrefcounted_arg, ZEND_RETURN_VALUE, 1, _IS_BOOL, 0)
220-
ZEND_ARG_INFO(0, object)
219+
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(softrefcounted_arg, ZEND_RETURN_VALUE, 1, _IS_BOOL, 0)
220+
ZEND_ARG_TYPE_INFO(0, object, IS_OBJECT, 0)
221221
ZEND_END_ARG_INFO()
222222

223-
PHP_REF_ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(softrefcount_arg, ZEND_RETURN_VALUE, 1, IS_LONG, 0)
224-
ZEND_ARG_INFO(0, object)
223+
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(softrefcount_arg, ZEND_RETURN_VALUE, 1, IS_LONG, 0)
224+
ZEND_ARG_TYPE_INFO(0, object, IS_OBJECT, 0)
225225
ZEND_END_ARG_INFO()
226226

227-
PHP_REF_ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(softrefs_arg, ZEND_RETURN_VALUE, 1, IS_ARRAY, 0)
228-
ZEND_ARG_INFO(0, object)
227+
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(softrefs_arg, ZEND_RETURN_VALUE, 1, IS_ARRAY, 0)
228+
ZEND_ARG_TYPE_INFO(0, object, IS_OBJECT, 0)
229229
ZEND_END_ARG_INFO()
230230

231-
PHP_REF_ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(weakrefcounted_arg, ZEND_RETURN_VALUE, 1, _IS_BOOL, 0)
232-
ZEND_ARG_INFO(0, object)
231+
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(weakrefcounted_arg, ZEND_RETURN_VALUE, 1, _IS_BOOL, 0)
232+
ZEND_ARG_TYPE_INFO(0, object, IS_OBJECT, 0)
233233
ZEND_END_ARG_INFO()
234234

235-
PHP_REF_ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(weakrefcount_arg, ZEND_RETURN_VALUE, 1, IS_LONG, 0)
236-
ZEND_ARG_INFO(0, object)
235+
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(weakrefcount_arg, ZEND_RETURN_VALUE, 1, IS_LONG, 0)
236+
ZEND_ARG_TYPE_INFO(0, object, IS_OBJECT, 0)
237237
ZEND_END_ARG_INFO()
238238

239-
PHP_REF_ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(weakrefs_arg, ZEND_RETURN_VALUE, 1, IS_ARRAY, 0)
240-
ZEND_ARG_INFO(0, object)
239+
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(weakrefs_arg, ZEND_RETURN_VALUE, 1, IS_ARRAY, 0)
240+
ZEND_ARG_TYPE_INFO(0, object, IS_OBJECT, 0)
241241
ZEND_END_ARG_INFO()
242242

243-
PHP_REF_ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(object_handle_arg, ZEND_RETURN_VALUE, 1, IS_LONG, 0)
244-
ZEND_ARG_INFO(0, object)
243+
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(object_handle_arg, ZEND_RETURN_VALUE, 1, IS_LONG, 0)
244+
ZEND_ARG_TYPE_INFO(0, object, IS_OBJECT, 0)
245245
ZEND_END_ARG_INFO()
246246

247-
PHP_REF_ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(is_obj_destructor_called_arg, ZEND_RETURN_VALUE, 1, _IS_BOOL, 0)
248-
ZEND_ARG_INFO(0, object)
247+
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(is_obj_destructor_called_arg, ZEND_RETURN_VALUE, 1, _IS_BOOL, 0)
248+
ZEND_ARG_TYPE_INFO(0, object, IS_OBJECT, 0)
249249
ZEND_END_ARG_INFO()
250250

251251
const zend_function_entry php_ref_functions[] = {

php_ref_functions.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/*
22
* This file is part of the pinepain/php-ref PHP extension.
33
*
4-
* Copyright (c) 2016-2017 Bogdan Padalko <[email protected]>
4+
* Copyright (c) 2016-2018 Bogdan Padalko <[email protected]>
55
*
66
* Licensed under the MIT license: http://opensource.org/licenses/MIT
77
*

php_ref_notifier_exception.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/*
22
* This file is part of the pinepain/php-ref PHP extension.
33
*
4-
* Copyright (c) 2016-2017 Bogdan Padalko <[email protected]>
4+
* Copyright (c) 2016-2018 Bogdan Padalko <[email protected]>
55
*
66
* Licensed under the MIT license: http://opensource.org/licenses/MIT
77
*

php_ref_notifier_exception.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/*
22
* This file is part of the pinepain/php-ref PHP extension.
33
*
4-
* Copyright (c) 2016-2017 Bogdan Padalko <[email protected]>
4+
* Copyright (c) 2016-2018 Bogdan Padalko <[email protected]>
55
*
66
* Licensed under the MIT license: http://opensource.org/licenses/MIT
77
*

php_ref_reference.c

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/*
22
* This file is part of the pinepain/php-ref PHP extension.
33
*
4-
* Copyright (c) 2016-2017 Bogdan Padalko <[email protected]>
4+
* Copyright (c) 2016-2018 Bogdan Padalko <[email protected]>
55
*
66
* Licensed under the MIT license: http://opensource.org/licenses/MIT
77
*
@@ -585,17 +585,17 @@ static PHP_METHOD(WeakReference, notifier)
585585

586586

587587
ZEND_BEGIN_ARG_INFO_EX(arginfo_ref_reference___construct, ZEND_SEND_BY_VAL, ZEND_RETURN_VALUE, 1)
588-
ZEND_ARG_INFO(0, referent)
588+
ZEND_ARG_TYPE_INFO(0, referent, IS_OBJECT, 0)
589589
ZEND_ARG_CALLABLE_INFO(0, notify, 1)
590590
ZEND_END_ARG_INFO()
591591

592592
ZEND_BEGIN_ARG_INFO_EX(arginfo_ref_reference_get, ZEND_SEND_BY_VAL, ZEND_RETURN_VALUE, 0)
593593
ZEND_END_ARG_INFO()
594594

595-
PHP_REF_ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_ref_reference_valid, ZEND_RETURN_VALUE, 0, _IS_BOOL, 0)
595+
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_ref_reference_valid, ZEND_RETURN_VALUE, 0, _IS_BOOL, 0)
596596
ZEND_END_ARG_INFO()
597597

598-
PHP_REF_ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_ref_reference_notifier, ZEND_SEND_BY_VAL, 0, IS_CALLABLE, 1)
598+
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_ref_reference_notifier, ZEND_SEND_BY_VAL, 0, IS_CALLABLE, 1)
599599
ZEND_ARG_CALLABLE_INFO(0, notify, 1)
600600
ZEND_END_ARG_INFO()
601601

0 commit comments

Comments
 (0)