ci/cd: fix release asset upload
[awesomized/ext-ion] / README.md
1 # pecl/ion
2
3 ## About:
4 PHP extension wrapping [amzn/ion-c](https://github.com/amzn/ion-c).
5 See the [Amazon ION specification](https://amzn.github.io/ion-docs/).
6
7 ## License:
8 [BSD-2-Clause](https://github.com/awesomized/ext-ion/blob/master/LICENSE);
9 see [spdx.org](https://spdx.org/licenses/BSD-2-Clause.html).
10
11 ## Installation:
12
13 ### Dependencies:
14 #### Required:
15 * PHP-8.1
16 * ext/date (standard)
17 * ext/spl (standard)
18 #### Optional:
19 * [amzn/ion-c](https://github.com/amzn/ion-c) (bundled as git submodule)
20
21 ### Trinity:
22 ```shell
23 phpize
24 ./configure # --with-php-config=<path/to/php-config>
25 make # -j$(nproc)
26 sudo make install # INSTALL=install
27 ```
28
29 ### PECL
30
31 pecl install ion
32
33 ### PHARext
34
35 Watch out for [PECL replicates](https://replicator.pharext.org?ion)
36 and pharext packages attached to [releases](./releases).
37
38 ### Try with Docker:
39 ```shell
40 docker build -t php-ion
41 docker run --rm php-ion -r 'echo ion\serialize(ion\Symbol\PHP::asTable());'
42 ```
43
44 ## Editor Stub:
45 See [ion.stub.php](https://github.com/awesomized/ext-ion/blob/master/ion.stub.php).
46
47 ## Known Issues:
48 Due to private internal state of ion-c's readers and writers,
49 instances of the following PHP classes cannot be cloned:
50 * ion\Reader\Reader
51 * ion\Writer\Writer
52 * ion\Serializer\PHP
53 * ion\Unserializer\PHP