{"action":"created","issue":{"url":"https://api.github.com/repos/salesagility/SuiteCRM/issues/2840","repository_url":"https://api.github.com/repos/salesagility/SuiteCRM","labels_url":"https://api.github.com/repos/salesagility/SuiteCRM/issues/2840/labels{/name}","comments_url":"https://api.github.com/repos/salesagility/SuiteCRM/issues/2840/comments","events_url":"https://api.github.com/repos/salesagility/SuiteCRM/issues/2840/events","html_url":"https://github.com/salesagility/SuiteCRM/pull/2840","id":197911220,"number":2840,"title":"Add PHPMailer, composer-custom-directory-installer","user":{"login":"chris001","id":259416,"avatar_url":"https://avatars.githubusercontent.com/u/259416?v=3","gravatar_id":"","url":"https://api.github.com/users/chris001","html_url":"https://github.com/chris001","followers_url":"https://api.github.com/users/chris001/followers","following_url":"https://api.github.com/users/chris001/following{/other_user}","gists_url":"https://api.github.com/users/chris001/gists{/gist_id}","starred_url":"https://api.github.com/users/chris001/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chris001/subscriptions","organizations_url":"https://api.github.com/users/chris001/orgs","repos_url":"https://api.github.com/users/chris001/repos","events_url":"https://api.github.com/users/chris001/events{/privacy}","received_events_url":"https://api.github.com/users/chris001/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2016-12-28T20:25:25Z","updated_at":"2016-12-28T20:52:35Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/salesagility/SuiteCRM/pulls/2840","html_url":"https://github.com/salesagility/SuiteCRM/pull/2840","diff_url":"https://github.com/salesagility/SuiteCRM/pull/2840.diff","patch_url":"https://github.com/salesagility/SuiteCRM/pull/2840.patch"},"body":"This update to `composer.json` allows for effortless automatic security updates to third party libraries, such as `PHPMailer`.\r\n\r\n\r\n<!--- Provide a general summary of your changes in the Title above -->\r\n\r\n## Description\r\n<!--- Describe your changes in detail -->\r\n<!--- If fixing a bug, there should be an issue describing it with steps to reproduce -->\r\n<!--- Please link to the issue here unless your commit contains the issue number -->\r\nThis should fix #2831 and #2512 and greatly reduce issues related to bugs in outdated 3rd party libraries, because of the easy update, which should be set on a daily `cron` job on linux or `scheduled task` on windows.\r\n\r\nAdd `phpmailer` requirement to composer.\r\nAdd `composer-customer-directory-installer` requirement to composer.\r\nAdd correct path to update, the `phpmailer` folder within SuiteCRM `include` folder.\r\n\r\n## Motivation and Context\r\n<!--- Why is this change required? What problem does it solve? -->\r\nFrom time to time, serious bugs are reported in third party libraries, and it's critical to get the fixed library version onto the user's production instance as quickly and automatically as possible.\r\nUntil now, when you ran `composer update`, this `composer.json` configuration file was effectively empty, so it was not updating any of the SuiteCRM application third party libraries.\r\nUntil now.\r\nNow, updates will happen.  Composer will download and install the latest updated bug fixed and security fixed code libraries, directly from the author's online `packagist.org` repository, as soon as the user or the system executes the one line `composer update` command.\r\n\r\n## How To Test This\r\n<!--- Please describe in detail how to test your changes. -->\r\nInstall `composer` on the system.  On linux, typically the command is either `yum install composer` or `apt-get install composer`\r\nInstall this file `composer.json` in the main folder of the SuiteCRM application.\r\nFrom the main folder of the SuiteCRM application, run:\r\n `composer update`\r\nThe new version of PHPMailer will download and install into the correct folder.\r\n\r\nOptional:\r\nrun `composer self-update` to update composer itself to the current version.\r\n\r\n## Types of changes\r\n<!--- What types of changes does your code introduce? Put an `x` in all the boxes that apply: -->\r\n- [x] Bug fix (non-breaking change which fixes an issue)\r\n- [x] New feature (non-breaking change which adds functionality)\r\n- [ ] Breaking change (fix or feature that would cause existing functionality to change)\r\n\r\n### Final checklist\r\n<!--- Go over all the following points and check all the boxes that apply. --->\r\n<!--- If you're unsure about any of these, don't hesitate to ask. We're here to help! --->\r\n- [x] My code follows the code style of this project found [here](https://suitecrm.com/wiki/index.php/Coding_Standards).\r\n- [x] My change requires a change to the documentation.\r\n- [x] I have read the [**How to Contribute**](https://suitecrm.com/wiki/index.php/Contributing_to_SuiteCRM) guidelines.\r\n\r\n<!--- Your pull request will be tested via Travis CI to automatically indicate that your changes do not prevent compilation. --->\r\n\r\n<!--- If it reports back that there are problems, you can log into the Travis system and check the log report for your pull request to see what the problem was. --->"},"comment":{"url":"https://api.github.com/repos/salesagility/SuiteCRM/issues/comments/269539172","html_url":"https://github.com/salesagility/SuiteCRM/pull/2840#issuecomment-269539172","issue_url":"https://api.github.com/repos/salesagility/SuiteCRM/issues/2840","id":269539172,"user":{"login":"mattlorimer","id":6449723,"avatar_url":"https://avatars.githubusercontent.com/u/6449723?v=3","gravatar_id":"","url":"https://api.github.com/users/mattlorimer","html_url":"https://github.com/mattlorimer","followers_url":"https://api.github.com/users/mattlorimer/followers","following_url":"https://api.github.com/users/mattlorimer/following{/other_user}","gists_url":"https://api.github.com/users/mattlorimer/gists{/gist_id}","starred_url":"https://api.github.com/users/mattlorimer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mattlorimer/subscriptions","organizations_url":"https://api.github.com/users/mattlorimer/orgs","repos_url":"https://api.github.com/users/mattlorimer/repos","events_url":"https://api.github.com/users/mattlorimer/events{/privacy}","received_events_url":"https://api.github.com/users/mattlorimer/received_events","type":"User","site_admin":false},"created_at":"2016-12-28T20:52:35Z","updated_at":"2016-12-28T20:52:35Z","body":"that an interesting approach, but I think we should just start moving 3rd party components to the standard  vendor folder in a upcoming release."}}
{"actor":{"display_login":"mattlorimer"}}