wip revive and split off doc generatin toolchain
[plcapi.git] / README.md
1 XMLRPC for PHP
2 ==============
3 A php library for building xml-rpc clients and servers.
4
5 Installation
6 ------------
7 The recommended way to install this library is using Composer.
8
9 Detailed installation instructions are in the [INSTALL.md](INSTALL.md) file, along with system requirements listing.
10
11 Documentation
12 -------------
13
14 See the documentation page at [gggeek.github.io/phpxmlrpc](https://gggeek.github.io/phpxmlrpc) for a list of the
15 library main features and all project related information.
16
17 The user manual can be found in the doc/manual directory, in Asciidoc format: [phpxmlrpc_manual.adoc](doc/manual/phpxmlrpc_manual.adoc)
18
19 Release tarballs also contain HTML and PDF versions of the manual, as well as an automatically generated API documentation.
20
21 *NB: the user manual has not been updated yet with all the changes made in version 4. Please consider it unreliable!*
22
23 *You are encouraged to look instead the code examples found in the demo/ directory*
24
25 Upgrading
26 ---------
27 If you are upgrading from version 3 or earlier you have two options:
28
29 1. adapt your code to the new API (all changes needed are described in [doc/api_changes_v4.md](doc/api_changes_v4.md))
30
31 2. use instead the *compatibility layer* which is provided. Instructions and pitfalls described in [doc/api_changes_v4.md](doc/api_changes_v4.md##enabling-compatibility-with-legacy-code)
32
33 In any case, read carefully the docs in [doc/api_changes_v4.md](doc/api_changes_v4.md) and report back any undocumented
34 issue using GitHub.
35
36 Running tests
37 -------------
38
39 The recommended way to run the library test suite is via the provided Docker containers.
40 A handy shell script is available that simplifies usage of Docker.
41
42 The full sequence of operations is:
43
44     ./tests/ci/vm.sh build
45     ./tests/ci/vm.sh start
46     ./tests/ci/vm.sh runtests
47     ./tests/ci/vm.sh stop
48
49     # and, once you have finished all testing related work:
50     ./tests/ci/vm.sh cleanup
51
52 By default tests are run using php 7.0 in a Container based on Ubuntu 18 Bionic.
53 You can change the version of PHP and Ubuntu in use by setting the environment variables PHP_VERSION and UBUNTU_VERSION
54 before building the Container.
55
56 To generate the code-coverage report, run `./tests/ci/vm.sh runcoverage`
57
58 License
59 -------
60 Use of this software is subject to the terms in the [license.txt](license.txt) file
61
62
63 [![License](https://poser.pugx.org/phpxmlrpc/phpxmlrpc/license)](https://packagist.org/packages/phpxmlrpc/phpxmlrpc)
64 [![Latest Stable Version](https://poser.pugx.org/phpxmlrpc/phpxmlrpc/v/stable)](https://packagist.org/packages/phpxmlrpc/phpxmlrpc)
65 [![Total Downloads](https://poser.pugx.org/phpxmlrpc/phpxmlrpc/downloads)](https://packagist.org/packages/phpxmlrpc/phpxmlrpc)
66
67 [![Build Status](https://github.com/gggeek/phpxmlrpc/actions/workflows/ci.yml/badge.svg)](https://travis-ci.com/gggeek/phpxmlrpc)
68 [![Code Coverage](https://scrutinizer-ci.com/g/gggeek/phpxmlrpc/badges/coverage.png)](https://scrutinizer-ci.com/g/gggeek/phpxmlrpc)