zircote/swagger-php — pull request #66 by bfanger (2013-03-25 12:15:29+00:00)
Title: Improved architecture with many new features and improved stability.

* New architecture
* Split Swagger class into Swagger & Parser.
Parser focuses on extracting swagger comments and converting them into a valid Resource or Model objects.
Swagger provides the public api and crawls the project folder.

* Add Logger, instead of crashing with an Exception, Swagger now reports the error and skips entries that are invalid or incomplete.

* Split the Annotation->toArray into:
* __contruct() import the data extracted by doctrine. (Parser might augement this data)
* validate() tries to create a optimal valid data-structure and returns false if the annotation can't be used.
* jsonSerialize() serializing the Annotation to the format expected by swagger-ui.

* The Swagger->repository now consists of a more predictable object-tree instead of errror prone array struct.

* User features
* Running bin/swagger without arguments now shows the help.

* All encapsulation annotations are now optional, and might be deprecated in the future.
@Api(@Operations(@Operation(), @Operation())) is the same as @Api(@Operation(), @Operation())

* Show human readable hints/notices instead of "undefined index xxxx" notices.

* Augment Swagger comments with available data from class/property/method or remaining data in the doc-comment.
* Example @Model() used the classname as id

* An @Api can be nested inside a @Resource and @Property can be nested inside a @Model.