Git Product home page Git Product logo

cloudflarephpsdk's People

Contributors

aweingarten avatar jhedstrom avatar larowlan avatar mglaman avatar nerdstein avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cloudflarephpsdk's Issues

Beta Release of the SDK

Business Requirements

  • As a developer I want a stable release of the SDK for inclusion in my application

Technical Requirements

  • Pin Guzzle to a specific version
  • Tag a release
  • Confirm that a non-dev release tag is pushed to packagist (Don't want to pull down all the dev dependencies).
  • Confirm that the readme is up-to-date.

Upgrade Guzzle

  • Upgrade module to use Guzzle 6.

The original implementation was built using guzzle5. With D8 beta13 the default version of guzzle became guzzle6. This broke a lot.

Audit Core Object Model and Architecture

Business Requirements

  • As the SDK creator I would like the core object model and design validated.

Technical Requirements

  • Review the code
  • Suggest changes that should be made
  • Work with the module maintainer to create an architecture document with UML diagram of the object model
  • Work with the module maintainer to create follow up issue to enact changes/cleanup

Expand PHP Unit Test Coverage

Currently there is a rudimentary set of PHPUnit tests. There were written by a first time PHP unit noob. There is ample opportunity for improvement. Goal is to reach 100% test coverage. We want high coverage but also meaningful coverage. So tests that don't just simply result in the code being executed but that tests the outputs as much as possible.

Audit and Expand Error handling In CloudFlareAPI class

Business Requirements

  • As a use of the PHP SDK I want to get meaningful and typed exceptions thrown when a request does not succeed as expected.

Background

The PHP SDK attempts to consolidate as much exception handling into a central location here:
https://github.com/d8-contrib-modules/cloudflarephpsdk/blob/master/src/ApiEndpoints/CloudFlareAPI.php#L123

The code is designed to throw typed exceptions when a problem happens and expects the implementing code to handle these exceptions:
https://github.com/d8-contrib-modules/cloudflarephpsdk/tree/master/src/Exceptions

Technical Requirements

Investigate implementing a symphony service

Business Requirements

  • As a developer I want to use a php sdk that uses PHP best practices.

Technical Requirements

  • Research Symphony and Drupal Services. See if it makes sense to implement API endpoints as symphony services
  • If it makes sense then implement symphony services.
  • Update phpunit tests as necessary to fix breaking tests.
  • Add any phpunit tests as necessary.

Unable to increase per_page limit when listing all zones

I have the need to increase the per_page limit to be 1000, to which decreases by application's report time significantly.

Currently the method listZones does not allow overriding this value, and the other more raw method makeListingRequest is protected.

Ideal solution

per_page is allowed to be set by the application, and not the library.

loadZone method no longer exists; remove from README.md

Following along with the examples in the README.md file, the loadZone method no longer exists.

$zone = $api->loadZone($zoneId);
$zone_settings = $zone-> getSettings();

Seems like getSettings is directly on the ZoneApi class:

$zone_settings = $api->getZoneSettings($zoneId);

Add Code Coverage test to travis CI builds

Requirements

[ ] As a maintainer of the SDK I want to ensure that the code has sufficient test coverage.
[ ] Add a test to the travis ci builds that runs the php unit tests with coverage and fails the build if code coverage drops below 80%.
[ ] Provide meaningful output to the user if the build fails due to insufficient code coverage.

Purging works sporadically due to API client timeout

I'm getting errors from the Cloudflare purger at times due to the client set timeout. I've verified API limits have not been breached but instead this is simply because Cloudflare had not responded in a timely manor.

Reported Error:

purger_cloudflare_055f11ff77: cURL error 28: Operation timed out after 3000 milliseconds with 0 bytes received (see http://curl.haxx.se/libcurl/c/libcurl-errors.html)

Whats unclear to me, is why, even after three seconds waiting for a response, no purging takes place. My default thought would be to extend the timeout to see if cloudflare timeouts to the API reduce.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.