mirror of
https://we.phorge.it/source/phorge.git
synced 2024-11-25 08:12:40 +01:00
23786784ef
Summary: Adds the Balanced PHP API to externals/. Ref T2787. Test Plan: Used in next diff. Reviewers: btrahan, chad Reviewed By: chad CC: aran, aurelijus Maniphest Tasks: T2787 Differential Revision: https://secure.phabricator.com/D5764 |
||
---|---|---|
.. | ||
src/RESTful | ||
tests | ||
.gitignore | ||
.travis.yml | ||
bootstrap.php | ||
build-phar | ||
composer.json | ||
LICENSE | ||
README.md |
RESTful
Library for writing RESTful PHP clients.
The design of this library was heavily influenced by Httpful.
Requirements
Issues
Please use appropriately tagged github issues to request features or report bugs.
Installation
You can install using composer, a phar package or from source. Note that RESTful is PSR-0 compliant:
Composer
If you don't have Composer install it:
$ curl -s https://getcomposer.org/installer | php
Add this to your composer.json
:
{
"require": {
"bninja/restful": "*"
}
}
Refresh your dependencies:
$ php composer.phar update
Then make sure to require
the autoloader and initialize both:
<?php
require(__DIR__ . '/vendor/autoload.php');
Httpful\Bootstrap::init();
RESTful\Bootstrap::init();
...
Phar
Download an Httpful phar file, which are all here:
$ curl -s -L -o httpful.phar https://github.com/downloads/nategood/httpful/httpful.phar
Download a RESTful phar file, which are all here:
$ curl -s -L -o restful.phar https://github.com/bninja/restful/downloads/restful-{VERSION}.phar
And then include
both:
<?php
include(__DIR__ . '/httpful.phar');
include(__DIR__ . '/restful.phar');
...
Source
Download Httpful source:
$ curl -s -L -o httpful.zip https://github.com/nategood/httpful/zipball/master;
$ unzip httpful.zip; mv nategood-httpful* httpful; rm httpful.zip
Download the RESTful source:
$ curl -s -L -o restful.zip https://github.com/bninja/restful/zipball/master
$ unzip restful.zip; mv bninja-restful-* restful; rm restful.zip
And then require
both bootstrap files:
<?php
require(__DIR__ . "/httpful/bootstrap.php")
require(__DIR__ . "/restful/bootstrap.php")
...
Usage
TODO
Testing
$ phpunit --bootstrap vendor/autoload.php tests/
Publishing
- Ensure that all tests pass
- Increment minor
VERSION
insrc/RESTful/Settings
andcomposer.json
(git commit -am 'v{VERSION} release'
) - Tag it (
git tag -a v{VERSION} -m 'v{VERSION} release'
) - Push the tag (
git push --tag
) - Packagist will see the new tag and take it from there
- Build (
build-phar
) and upload a phar file
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Write your code and tests
- Ensure all tests still pass (
phpunit --bootstrap vendor/autoload.php tests/
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new pull request