After extensive manual testing, SteemConnect SDK for PHP is finally at Beta stage.
This mean the library is completely operational, and the stable release will arrive as soon there are 100% unit test coverage.
1. Bug Fixes
Most of the bug fixing was related to type-hinting, refactoring and dead code removal, in special:
1.1. SteemConnect response parsing.
Computers fail. That is a fact. On this beta release, cases where SteemConnect would become unavailable or misbehave (for example respond with a HTML instead of JSON) were covered in a good depth, meaning, errors would be clearer now to understand.
1.2. Implementations vs Interfaces.
On this beta release, a first step was done into decoupling dependencies, like improving parameters and return types to reference interfaces instead of library implementations.
An even more decoupled approach is planned for after the first stable version.
2. New Features
2.1. Better responsibility segregation.
Some of the internal logic were refactored to better reflect each component of the SDK responsibility.
This includes removing some dead code on the authentication manager, moving all logic on operation broadcast to the SDK client code, instead of the authentication part.
2.2. Base Unit Testing Structure and Initial Coverage.
Aside from the base unit testing configuration, the initial 15% of code is already covered by unit tests.
3. Next Steps.
Those the the planned next steps for this project, and contributions are always welcome:
3.1. [before stable] 100% Unit Test Coverage.
100% unit test coverage is a required milestone to make the project reach the stable status.
3.2. [before stable] Extensive Documentation.
The plan on the documentation is to make it available on a separate branch, write it in markdown and convert to html using MkDocs.
3.3. [after stable] Showcase Application.
A separate repository that makes full usage of the SDK, to teach by example.
4. Contributing.
Join me on Discord ( hernandev#5834), open a GitHub issue, or interact on the related posts about the project.
Posted on Utopian.io - Rewarding Open Source Contributors