Skip to content

Commit ed6847a

Browse files
author
aganttor
committed
Initialize Project
0 parents  commit ed6847a

23 files changed

+1241
-0
lines changed

.gitattributes

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# Path-based git attributes
2+
# https://www.kernel.org/pub/software/scm/git/docs/gitattributes.html
3+
4+
# Ignore all test and documentation with "export-ignore".
5+
/.gitattributes export-ignore
6+
/.gitignore export-ignore
7+
/.travis.yml export-ignore
8+
/phpunit.xml.dist export-ignore
9+
/tests export-ignore

.gitignore

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
composer.lock
2+
vendor/
3+
.idea/
4+
.vagrant/
5+
tests/coverage

.travis.yml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
sudo: false
2+
3+
language: php
4+
5+
php:
6+
- 7.0
7+
- 7.1
8+
9+
matrix:
10+
fast_finish: true
11+
allow_failures:
12+
php: 7.1
13+
14+
cache:
15+
directories:
16+
- $HOME/.composer/cache
17+
18+
before_install:
19+
- travis_retry composer self-update
20+
21+
install:
22+
- if [[ $(phpenv version-name) == '7.0' ]]; then composer require satooshi/php-coveralls:dev-master -n ; fi
23+
- travis_retry composer install --no-interaction --prefer-dist
24+
25+
script:
26+
- if [[ $(phpenv version-name) == '7.0' ]]; then phpunit --coverage-clover build/logs/clover.xml ; fi
27+
- if [[ $(phpenv version-name) != '7.0' ]]; then phpunit ; fi
28+
29+
after_success:
30+
- if [[ $(phpenv version-name) == '7.0' ]]; then php vendor/bin/coveralls -v ; fi

CHANGELOG.md

Lines changed: 234 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,234 @@
1+
# Hawkbit Changelog
2+
3+
## 2.3.2
4+
5+
### Fixed
6+
7+
- Fix issue #34. Bind closure always to application instance.
8+
9+
### Altered
10+
11+
- Upgrade league/container to 2.4
12+
- Upgrade zendframework/zend-diactoros to 1.4
13+
- Update container implementation to psr 11
14+
15+
## 2.3.1
16+
17+
### Fixed
18+
19+
- Reopen and fix #29, Special Thanks to @BlackScorp for fixing and @designcise for identification
20+
21+
## 2.3.0
22+
23+
### Added
24+
25+
- Add basic usage example
26+
27+
### Altered
28+
29+
- Add official league/route 3.0 support
30+
31+
### Fixed
32+
33+
- Fix #29, #30
34+
35+
## 2.2.0
36+
37+
### Added
38+
39+
- Add console application
40+
- Add constructor injection for console commands
41+
42+
### Altered
43+
44+
- Move application interface to correct position
45+
- Refactor configuration initiation into trait and reuse in application and console
46+
47+
## 2.1.3
48+
49+
### Fixed
50+
51+
- Fix #25 Ajax request is always forcing JSON request and response
52+
- Fix #26 use league/route at dev master until official middleware release
53+
54+
### Removed
55+
56+
- Remove HHVM integration due to inconsitencies
57+
58+
## 2.1.2
59+
60+
### Fixed
61+
62+
- Fix #24 incorrect and buggy error handling
63+
64+
## 2.1.1
65+
66+
### Added
67+
68+
- Add tests for controller constructor injection
69+
70+
## 2.1.0
71+
72+
### Fixed
73+
74+
- Validate response contract after executing
75+
76+
### Altered
77+
78+
- Whoops handlers has been refactored to `\Hawkbit\Application\Services\Whoops\HandlerService`
79+
- Error und shutdown handling has been refactored to `Hawkbit\Application\Init\InitHaltHooksTrait`
80+
81+
### Added
82+
83+
- Add exception stack `Hawkbit\Application\Application\AbtractApplication::getExceptionStack` of all occured exceptions
84+
- Provide backwards / onwards compatibility for PHP 7 `\Throwables`
85+
86+
87+
### Altered
88+
89+
- Update [League Router](https://github.com/thephpleague/route/tree/507606b53d3935e7830aa7c48c43337bc2b1b2ba) and use router middleware implementation instead of application middleware.
90+
- Update Zend Stratigility to 1.3.1
91+
- Advanced error capturing and error stack for debugging
92+
93+
### Removed
94+
95+
- Remove dotted notation from from configuration
96+
- Remove vagrant machine
97+
98+
## 2.0.1
99+
100+
### Altered
101+
102+
- Fix documentation
103+
- Fix typo
104+
105+
## 2.0
106+
107+
### Notice
108+
109+
__Migrate Turbine from PhpThinkTank to hawkbit.__
110+
111+
### Added
112+
113+
- Add `\Hawkbit\Application\Configuration` (extending `\Zend\Config\Config`) as default configuration storage
114+
- Add PSR7 middleware implementation `\Hawkbit\Application\Application\MiddlewareRunner` for advanced control of application lifecycle
115+
116+
### Altered
117+
118+
- Change Hawkbit\Application test namespace to Hawkbit\Application\Tests
119+
- Rewrite event behavior for advanced interception of requests, responses and errors
120+
- Implement dot chaining for nested configuration
121+
122+
## 1.1.7
123+
124+
### Altered
125+
126+
- Fix wrong response determined by content type delegation
127+
128+
## 1.1.6
129+
130+
### Added
131+
132+
- Add vagrant development environment
133+
- Add shutdown event
134+
- Add logic to force response emitting if headers already send
135+
136+
### Altered
137+
138+
- Delegate request content type to response
139+
- Rename `Application::cleanUp` to `Application::collectGarbage`
140+
- Rename `Application::finishRequest` to `Application::shutdown`
141+
- Rename `Application::subscribe` to `Application::addListener`
142+
- Enhance error handling for different content types
143+
- Log application errors correctly, logging is silenced by default.
144+
145+
### Deprecated
146+
147+
- `Application::cleanUp`
148+
- `Application::finishRequest`
149+
- `Application::subscribe`
150+
151+
152+
## 1.1.5
153+
154+
### Added
155+
156+
- Add `\Hawkbit\Application\Application\ConfiguratorInterface`
157+
158+
### Altered
159+
160+
- `Application::getConfigurator` is now bound to `\Hawkbit\Application\Application\ConfiguratorInterface` contract
161+
162+
## 1.1.4
163+
164+
### Fixes
165+
166+
- [\#9](../../issues/9) If class exists and is not part of container, `League\Container\Container::has` returns now false.
167+
168+
## 1.1.3
169+
170+
### Altered
171+
172+
- Accept and process `\ArrayAccess` and `\Traversable` as configuration
173+
174+
## 1.1.2
175+
176+
### Altered
177+
178+
- Replace applications [route collection methods](https://github.com/thephpleague/route/blob/master/src/RouteCollectionInterface.php) with `\League\Route\RouteCollectionMapTrait`
179+
- Application implements `\League\Route\RouteCollectionInterface`
180+
- add `\League\Route\RouteCollectionInterface::map()`
181+
- add `\Hawkbit\Application\Application::group()` for creating route groups, see [documentation](http://route.thephpleague.com/route-groups/)
182+
183+
### Deprecated
184+
185+
- `\Hawkbit\Application\Application::subscribe()`
186+
187+
## 1.1.1
188+
189+
### Altered
190+
191+
- Upgrade `league/route` from dev-develop to stable 2.x (`~2.0`) release
192+
193+
## 1.1.0
194+
195+
### Added
196+
197+
- Add `filp/whoops` as default error handler
198+
- Add `zendframework/zend-stratigility` integration
199+
200+
### Altered
201+
202+
- add request and response accessors
203+
- refactor error handling and replace exception decorator with whoops
204+
- pass and receive all config
205+
- remove possibilty to configure events, routes and services by callables
206+
- rename `Hawkbit\Application\Psr7\TerminableInterface` to `Hawkbit\Application\TerminableInterface`
207+
- rename debug config option to error
208+
- change configuration engine from `array` to instance of `\ArrayAccess`
209+
- Signature changes of `Hawkbit\Application\Application::handle`, `Hawkbit\Application\Application::run`, `Hawkbit\Application\Application::__construct`, `Hawkbit\Application\Application::handleErrors`
210+
211+
### Removed
212+
213+
- `Hawkbit\Application\Psr7\HttpKernelInterface` replaced by `Hawkbit\Application\ApplicationInterface`
214+
215+
## 1.0.0 (2016-03-04)
216+
217+
### Added
218+
219+
- `Hawkbit\Application\Psr7\HttpKernelInterface` and `Hawkbit\Application\Psr7\TerminableInterface` port of symfony HttpKernelInterface for PSR-7 compatibility
220+
- Add `zend/diactoros` for PSR-7 http support
221+
- provide compatibility with adapter `Hawkbit\Application\Symfony\HttpKernelAdapter` for StackPHP and other Symfony HttpKernelInterface implementations
222+
- Add `filp/whoops` as default error handler
223+
- Add `zendframework/zend-stratigility` integration
224+
225+
### Altered
226+
227+
- upgrade `league/container` to latest version 2 and add interopt compatibility
228+
- upgrade `league/route` to latest version 2 (currently under development)
229+
- replace symfony request and response with diactoros request and response
230+
- enable auto wiring of container configurable and enable by default
231+
- events, routes and services configurable by callables
232+
- add request and response accessors
233+
- refactor error handling and replace exception decorator with whoops
234+
- enhance configuration handling

CONTRIBUTING.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
# Contributing
2+
3+
Contributions are **welcome** and will be fully **credited**.
4+
5+
We accept contributions via Pull Requests on [Github](https://github.com/Hawkbit).
6+
7+
## Pull Requests
8+
9+
- **[PSR-2 Coding Standard](https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-2-coding-style-guide.md)** - The easiest way to apply the conventions is to install [PHP Code Sniffer](http://pear.php.net/package/PHP_CodeSniffer).
10+
11+
- **Add tests!** - Your patch won't be accepted if it doesn't have tests.
12+
13+
- **Document any change in behaviour** - Make sure the `README.md` and any other relevant documentation are kept up-to-date.
14+
15+
- **Consider our release cycle** - We try to follow [SemVer v2.0.0](http://semver.org/). Randomly breaking public APIs is not an option.
16+
17+
- **Create feature branches** - Don't ask us to pull from your master branch.
18+
19+
- **One pull request per feature** - If you want to do more than one thing, send multiple pull requests.
20+
21+
- **Send coherent history** - Make sure each individual commit in your pull request is meaningful. If you had to make multiple intermediate commits while developing, please squash them before submitting.
22+
23+
## Install
24+
25+
``` bash
26+
$ composer install --dev
27+
```
28+
29+
## Running Tests
30+
31+
``` bash
32+
$ composer test
33+
```
34+
35+
**Happy coding**!

LICENSE.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
The MIT License (MIT)
2+
3+
Copyright (c) 2014 Alex Bilbie
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

0 commit comments

Comments
 (0)