versions (2.*, 2.0.*, 2.0.1) • Maintain dependencies by specific packages • Must follow ZF coding standards • Must be unique A service that does the same thing should not already exist!
major versions Exceptions must be noted in the ChangeLog Component should only state dependency on minor versions • Maintainers must attempt at all times to keep compatibility with the latest version If unable to maintain, actively recruit, if still unable ZF or CR team will make a recommendation on the component.
However, the namespace implies 3rd party integrations. They are also organized like the framework. • Service Components should be reusable for other developers Write it out based on the API and not just what you need. • Create reasonable dependencies Zend\Http and Zend\Stdlib being most common.
no skeleton) Copy over files from the tests directory: _autoload.php, Bootstrap.php, phpunit.xml.dist, TestConfiguration.php.dist, TestConfiguration.php.travis • You will need to customize phpunit.xml.dist – Change out the unit test name. TestConfiguration.php.dist – Configure your constants and configuration.
you need should be located in an _files directory inside the test area of your component tests/ZendService/Google/Gcm/_files • Write unit tests like normal!
of us are familiar with • Write your library inside of your compliant directory library/ZendService/Google/Gcm • Ensure proper namespacing ZendService\Google\Gcm • Attempt to follow great naming so that it makes sense!
dependencies Use the constructor! Only set dependencies for items you require! • Write Tests Hook into Travis-CI, go for 100% code coverage • Discoverability Put the component on Packagist, submit it for inclusion to ZendService.
the documentation is in the “zf2-documentation” project under the “zendframework” github organization. This will likely change for services in the future. • Fork the project • Create a feature branch: feature/service-google-gcm • Write your documentation • Submit a PR