Skip to content
This repository has been archived by the owner on Jul 8, 2023. It is now read-only.

Commit

Permalink
Merge branch 'release/4.0.1'
Browse files Browse the repository at this point in the history
  • Loading branch information
ezzatron committed Jan 30, 2014
2 parents 7181072 + 439385a commit 8d7edec
Show file tree
Hide file tree
Showing 47 changed files with 169 additions and 160 deletions.
21 changes: 14 additions & 7 deletions .travis.install
Original file line number Diff line number Diff line change
@@ -1,10 +1,14 @@
#!/usr/bin/env php
<?php
/**
* This script is executed before composer dependencies are installed,
* and as such must be included in each project as part of the skeleton.
*/

// Update git to the latest version ...
passthru('sudo apt-get update');
passthru('sudo apt-get install git');

// Update composer to the latest version ...
passthru('composer self-update --no-interaction');

// Build a composer config that uses the GitHub OAuth token if it is available ...
$config = array(
'config' => array(
'notify-on-install' => false
Expand All @@ -16,20 +20,23 @@ if ($token = getenv('ARCHER_TOKEN')) {
'github.com' => $token
);
$composerFlags = '--prefer-dist';
passthru('curl -s -i -H "Authorization: token $ARCHER_TOKEN" https://api.github.com | grep "^X-RateLimit"');
} else {
$composerFlags = '--prefer-source';
}

$file = '~/.composer/config.json';
$dir = dirname($file);
$dir = dirname($file);
if (!is_dir($dir)) {
mkdir($dir, 0755, true);
}
file_put_contents($file, json_encode($config));

passthru('composer self-update --no-interaction');
// Display some information about GitHub rate limiting ...
if ($token) {
passthru('curl -s -i -H "Authorization: token $ARCHER_TOKEN" https://api.github.com | grep "^X-RateLimit"');
}

// Install composer dependencies ...
$exitCode = 0;
passthru('composer install --dev --no-progress --no-interaction --ansi ' . $composerFlags, $exitCode);
exit($exitCode);
11 changes: 2 additions & 9 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,21 +1,14 @@
#
# This is the default Travis CI configuration.
#
# It uses a GitHub OAuth token when fetching composer dependencies
# to avoid IP-based API throttling.
#
# It also allows publication of artifacts via an additional build.
#
language: php

php: ["5.3", "5.4", "5.5"]

env:
global:
- ARCHER_PUBLISH_VERSION=5.4
- ARCHER_PUBLISH_VERSION=5.5
- secure: "GLvEYXvqvUstaRhJ0blmDfxdpHxJ7+lfqciliflZZUDha7LD1fF3aLPzQa5TP5o6MahKNWTAQSnSchoWEjU4DXUKCXqNOknUjJJFx8TD55hvwx40uZzgqD6EYPC/8zr36qe/5InRETYxAS+/8EgMHzL1phm4+KWadHX4T4Mq3as="

install:
- ./.travis.install

script:
- ./vendor/bin/archer travis:build
8 changes: 6 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
# Pops changelog

### 4.0.0 (2013-09-04)
## 4.0.1 (2014-01-30)

- **[MAINTENANCE]** General repository maintanance

## 4.0.0 (2013-09-04)

- **[BC BREAK]** Interface name changes:
- `Proxy` -> `ProxyInterface`
Expand All @@ -9,7 +13,7 @@
- **[NEW]** API documentation
- **[MAINTENANCE]** Major repository maintanance

### 3.1.1 (2013-03-04)
## 3.1.1 (2013-03-04)

- **[NEW]** [Archer](https://github.com/IcecaveStudios/archer) integration
- **[NEW]** Implemented changelog
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Copyright © 2013 Erin Millard
Copyright © 2014 Erin Millard

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
30 changes: 15 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@

*PHP Object Proxy System.*

[![Build Status]][Latest build]
[![Test Coverage]][Test coverage report]
[![Uses Semantic Versioning]][SemVer]
[![The most recent stable version is 4.0.1][version-image]][Semantic versioning]
[![Current build status image][build-image]][Current build status]
[![Current coverage status image][coverage-image]][Current coverage status]

## Installation and documentation

Expand All @@ -14,9 +14,9 @@
## What is *Pops*?

*Pops* is a system for wrapping PHP objects in other objects to modify their
behaviour. A Pops proxy will, as much as possible, imitate the object it wraps.
It passes along method calls and returns the underlying result, and allows
transparent access to properties (for both setting and getting).
behaviour. A *Pops* proxy will, as much as possible, imitate the object it
wraps. It passes along method calls and returns the underlying result, and
allows transparent access to properties (for both setting and getting).

Pops is the underlying system behind [Liberator].

Expand Down Expand Up @@ -76,7 +76,7 @@ echo $proxy->derp; // outputs 'HAS ANYONE REALLY BEEN FAR EVEN AS DECIDED T

## Recursive proxies

Pops proxies can be applied to any value recursively. This comes in handy when
*Pops* proxies can be applied to any value recursively. This comes in handy when
designing, for example, an output escaper (similar to Symfony). Here's an
example of how such a system could be created for escaping HTML output:

Expand Down Expand Up @@ -264,7 +264,7 @@ escaping is a complex issue that should not be taken lightly.
### Excluding values from recursion

Note that in the above example, the last list item was wrapped in a *Safe*
proxy. When Pops applies its proxies, it will skip anything marked as safe in
proxy. When *Pops* applies its proxies, it will skip anything marked as safe in
this manner.

## Calling methods with by-reference parameters
Expand All @@ -287,7 +287,7 @@ class Confusion

This method cannot be proxied normally because the `$wasPhone` argument is
passed by reference. The correct way to call the above butWho() method through a
Pops proxy looks like this:
*Pops* proxy looks like this:

```php
use Eloquent\Pops\Proxy;
Expand All @@ -313,11 +313,11 @@ directly as a value. The arguments must also contain a **reference** to
[Liberator]: https://github.com/eloquent/liberator

[API documentation]: http://lqnt.co/pops/artifacts/documentation/api/
[Build Status]: https://api.travis-ci.org/eloquent/pops.png?branch=master
[Composer]: http://getcomposer.org/
[build-image]: http://img.shields.io/travis/eloquent/pops/develop.svg "Current build status for the develop branch"
[Current build status]: https://travis-ci.org/eloquent/pops
[coverage-image]: http://img.shields.io/coveralls/eloquent/pops/develop.svg "Current test coverage for the develop branch"
[Current coverage status]: https://coveralls.io/r/eloquent/pops
[eloquent/pops]: https://packagist.org/packages/eloquent/pops
[Latest build]: https://travis-ci.org/eloquent/pops
[SemVer]: http://semver.org/
[Test coverage report]: https://coveralls.io/r/eloquent/pops
[Test Coverage]: https://coveralls.io/repos/eloquent/pops/badge.png?branch=master
[Uses Semantic Versioning]: http://b.repl.ca/v1/semver-yes-brightgreen.png
[Semantic versioning]: http://semver.org/
[version-image]: http://img.shields.io/:semver-4.0.1-brightgreen.svg "This project uses semantic versioning"
6 changes: 3 additions & 3 deletions composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,11 @@
"php": ">=5.3"
},
"require-dev": {
"icecave/archer": "1.0.0-alpha.2"
"icecave/archer": "~1"
},
"autoload": {
"psr-0": {
"Eloquent\\Pops": "src"
"psr-4": {
"Eloquent\\Pops\\": "src"
}
}
}
Loading

0 comments on commit 8d7edec

Please sign in to comment.