First stable release of Pioneer. Pioneer have been under v0.x for a while and it has shown little major issues. This brings a bit more confidence for me to start introducing major improvements and changes.
This pull request is all about decoupling Pioneer and Vapor. Moving all integration into their own directories and as extensions. This decoupling should be allow usage with other frameworks and better customisations
Once all v1 pull request have been merged, I am hoping to release v1.0.0-rc.1 or v1.0.0-beta which will be available to use and play with (hopefully shine some light into uncaught issues). If no major issue come up, v1.0.0 should be released soon after.
Motivation
One of the goal is to allow more Web frameworks integrations. Vapor is a great Web framework, but similarly to Apollo Server, Pioneer should not strictly restrict itself to one framework.
At some point (possibly v2), Pioneer and its Vapor integration would be separate packages which allow user of the library to use other options if they see fit.
Another goal is catch up to Apollo Server v4 which have significant changes especially on the API of the library.
Changes
[x] Significantly reduced coupling with Vapor
[x] Use middleware style of routing
[x] Made some useful structs, protocols, and functions public which would allow other Web frameworks integration
[x] Removed Configuration
[x] Moved context builder into middleware instead of being in Pioneer directly
[x] Properly did WebSocket on initialisation guard
[x] Updated tests accordingly
[x] Added comments documentation into new functions, structs, and protocols
Description
First stable release of Pioneer. Pioneer have been under v0.x for a while and it has shown little major issues. This brings a bit more confidence for me to start introducing major improvements and changes.
This pull request is all about decoupling Pioneer and Vapor. Moving all integration into their own directories and as extensions. This decoupling should be allow usage with other frameworks and better customisations
Once all v1 pull request have been merged, I am hoping to release v1.0.0-rc.1 or v1.0.0-beta which will be available to use and play with (hopefully shine some light into uncaught issues). If no major issue come up, v1.0.0 should be released soon after.
Motivation
One of the goal is to allow more Web frameworks integrations. Vapor is a great Web framework, but similarly to Apollo Server, Pioneer should not strictly restrict itself to one framework. At some point (possibly v2), Pioneer and its Vapor integration would be separate packages which allow user of the library to use other options if they see fit.
Another goal is catch up to Apollo Server v4 which have significant changes especially on the API of the library.
Changes
Configuration