.github
1 year ago
.vscode
1 year ago
scripts
1 year ago
src
5 months ago
.editorconfig
1 year ago
CONTRIBUTING.md
5 years ago
LICENSE
5 years ago
README.md
1 year ago
THIRD PARTY NOTICES
5 years ago
composer.json
1 year ago
msgraph-sdk-php.yml
1 year ago
phpdoc.dist.xml
1 year ago
phpstan.neon
1 year ago
phpunit.xml
1 year ago
CONTRIBUTING.md
38 lines
| 1 | # Contributing to the Microsoft Graph PHP SDK |
| 2 | Thanks for considering making a contribution! Read over our guidelines and we will do our best to see your PRs merged successfully. |
| 3 | |
| 4 | **NOTE**: A signed a contribution license agreement is required for all contributions and is checked automatically on new pull requests. You will be asked to read and sign the agreement https://cla.microsoft.com/ after submitting a request to this repository. |
| 5 | |
| 6 | There are a few different recommended paths to get contributions into the released version of this library. |
| 7 | |
| 8 | ## File issues |
| 9 | The best way to get started with a contribution is to start a dialog with us. Sometimes features will be under development or out of scope for this library and it's best to check before starting work on contribution, especially for large work items. |
| 10 | |
| 11 | ## Pull requests |
| 12 | If you are making documentation changes, feel free to submit a pull request against the **master** branch. All other pull requests should be submitted against the **dev** branch or a specific feature branch. The master branch is intended to represent the code released in the most-recent composer package. |
| 13 | |
| 14 | When a new package is about to be released, changes in dev will be merged into master. The package will be generated from master. |
| 15 | |
| 16 | Some things to note about this project: |
| 17 | |
| 18 | ### How the library is built |
| 19 | The PHP SDK has a handwritten set of core files and a folder of autogenerated models. These models are generated using the [](https://github.com/microsoftgraph/MSGraph-SDK-Code-GeneratorMSGraph SDK Code Generator](https://github.com/microsoftgraph/MSGraph-SDK-Code-Generator](https://github.com/microsoftgraph/MSGraph-SDK-Code-Generator). **Changes made to the ```Models``` folder will be overwritten** the next time the generator is run. |
| 20 | |
| 21 | If you would like to make changes to the models, you can either file an issue or make a PR in the [](https://github.com/microsoftgraph/MSGraph-SDK-Code-GeneratorMSGraph SDK Code Generator](https://github.com/microsoftgraph/MSGraph-SDK-Code-Generator](https://github.com/microsoftgraph/MSGraph-SDK-Code-Generator) to the [](https://github.com/microsoftgraph/MSGraph-SDK-Code-Generator/tree/master/Templates/PHP/Modeltemplates](https://github.com/microsoftgraph/MSGraph-SDK-Code-Generator/tree/master/Templates/PHP/Model](https://github.com/microsoftgraph/MSGraph-SDK-Code-Generator/tree/master/Templates/PHP/Model). Although there is a lot of logic in the generator, the code used for PHP is fairly minimal. |
| 22 | |
| 23 | ### How the generator works |
| 24 | You can view the [](https://github.com/microsoftgraph/MSGraph-SDK-Code-Generator/blob/master/README.mdREADME](https://github.com/microsoftgraph/MSGraph-SDK-Code-Generator/blob/master/README.md](https://github.com/microsoftgraph/MSGraph-SDK-Code-Generator/blob/master/README.md) for a full run-through of its capabilities. |
| 25 | |
| 26 | For the purposes of the PHP library, the generator runs through an OData-compliant metadata file published by Microsoft Graph (https://graph.microsoft.com/v1.0/$metadata) and builds up a list of models. These models are converted into PHP code using T4 templates, which use C# to programmatically define what PHP code is written to the file. |
| 27 | |
| 28 | ### When new features are added to the library |
| 29 | Generation happens as part of a manual process that occurs once a significant change or set of changes has been added to the Graph. This may include: |
| 30 | - A new workload comes to v1.0 of Graph (Microsoft Teams, Batching, etc.) |
| 31 | - There is significant addition of functionality (Delta Queries, etc.) |
| 32 | |
| 33 | However, this is evaluated on a case-by-case basis. If the library is missing v1.0 Graph functionality that you wish to utilize, please [](https://github.com/microsoftgraph/msgraph-sdk-php/issuesfile an issue](https://github.com/microsoftgraph/msgraph-sdk-php/issues](https://github.com/microsoftgraph/msgraph-sdk-php/issues). |
| 34 | |
| 35 | We do our best to prevent breaking changes from being introduced into the library during this process. If you find a breaking change, please file an issue and we will work to get this resolved ASAP. |
| 36 | |
| 37 | |
| 38 |