{"action":"created","issue":{"url":"https://api.github.com/repos/friendica/friendica/issues/5295","repository_url":"https://api.github.com/repos/friendica/friendica","labels_url":"https://api.github.com/repos/friendica/friendica/issues/5295/labels{/name}","comments_url":"https://api.github.com/repos/friendica/friendica/issues/5295/comments","events_url":"https://api.github.com/repos/friendica/friendica/issues/5295/events","html_url":"https://github.com/friendica/friendica/pull/5295","id":336460463,"node_id":"MDExOlB1bGxSZXF1ZXN0MTk3OTA4MTI2","number":5295,"title":"Move configuration to config/","user":{"login":"MrPetovan","id":925415,"node_id":"MDQ6VXNlcjkyNTQxNQ==","avatar_url":"https://avatars1.githubusercontent.com/u/925415?v=4","gravatar_id":"","url":"https://api.github.com/users/MrPetovan","html_url":"https://github.com/MrPetovan","followers_url":"https://api.github.com/users/MrPetovan/followers","following_url":"https://api.github.com/users/MrPetovan/following{/other_user}","gists_url":"https://api.github.com/users/MrPetovan/gists{/gist_id}","starred_url":"https://api.github.com/users/MrPetovan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MrPetovan/subscriptions","organizations_url":"https://api.github.com/users/MrPetovan/orgs","repos_url":"https://api.github.com/users/MrPetovan/repos","events_url":"https://api.github.com/users/MrPetovan/events{/privacy}","received_events_url":"https://api.github.com/users/MrPetovan/received_events","type":"User","site_admin":false},"labels":[{"id":739003526,"node_id":"MDU6TGFiZWw3MzkwMDM1MjY=","url":"https://api.github.com/repos/friendica/friendica/labels/Enhancement","name":"Enhancement","color":"40ce79","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":51,"created_at":"2018-06-28T03:31:10Z","updated_at":"2018-07-12T11:50:14Z","closed_at":null,"author_association":"COLLABORATOR","pull_request":{"url":"https://api.github.com/repos/friendica/friendica/pulls/5295","html_url":"https://github.com/friendica/friendica/pull/5295","diff_url":"https://github.com/friendica/friendica/pull/5295.diff","patch_url":"https://github.com/friendica/friendica/pull/5295.patch"},"body":"Closes #4889\r\n\r\n/!\\ THIS ISN'T THOROOGHLY TESTED! /!\\\r\n\r\nI'm at it again with a massive PR to move Friendica's confiiguration out of the `.htconfig.php` file and into the 20th century.\r\n\r\nThis PR is in line with my previous efforts to centralize initialization into the `\\Friendica\\App` class.\r\n\r\nInstead of including `.htconfig.php` every time a script needs to access the DB, the configuration and database loading is done when creating a new `App` instance.\r\n\r\nI finally opted for the INI format that PHP natively supports but I'm planning on using the current plain PHP structure when I move the DBStructure definition out of the `DBStructure` class into the same `config/` folder.\r\n\r\nThis code is supposed to handle a new install as well as an update but I didn't perform a full install or a full upgrade yet. I'm offering this PR to get a first review and feedback.\r\n\r\nCurrent caveats:\r\n- [x] The unavailable error page isn't different between DB connection issue and load throttling\r\n- [x] There's no workaround for `$lang`, I discovered its existence tonight and I'm aghast at the use of this global variable. I have to refactor yet another initialization step.\r\n- [x] I forgot the `load_config` documentation\r\n- [x] Unit tests are failing\r\n- [x] The minimum PHP version is now 5.6.1 to get typed values when parsing the INI configuration strings but it isn't reflected in the doc yet."},"comment":{"url":"https://api.github.com/repos/friendica/friendica/issues/comments/404485730","html_url":"https://github.com/friendica/friendica/pull/5295#issuecomment-404485730","issue_url":"https://api.github.com/repos/friendica/friendica/issues/5295","id":404485730,"node_id":"MDEyOklzc3VlQ29tbWVudDQwNDQ4NTczMA==","user":{"login":"nupplaphil","id":379654,"node_id":"MDQ6VXNlcjM3OTY1NA==","avatar_url":"https://avatars3.githubusercontent.com/u/379654?v=4","gravatar_id":"","url":"https://api.github.com/users/nupplaphil","html_url":"https://github.com/nupplaphil","followers_url":"https://api.github.com/users/nupplaphil/followers","following_url":"https://api.github.com/users/nupplaphil/following{/other_user}","gists_url":"https://api.github.com/users/nupplaphil/gists{/gist_id}","starred_url":"https://api.github.com/users/nupplaphil/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nupplaphil/subscriptions","organizations_url":"https://api.github.com/users/nupplaphil/orgs","repos_url":"https://api.github.com/users/nupplaphil/repos","events_url":"https://api.github.com/users/nupplaphil/events{/privacy}","received_events_url":"https://api.github.com/users/nupplaphil/received_events","type":"User","site_admin":false},"created_at":"2018-07-12T11:50:14Z","updated_at":"2018-07-12T11:50:14Z","author_association":"NONE","body":"With the next release 2018.08 I'll change the docker configuration as well :-) . now with the own `config/` , I maybe can optimize the installation :-)"}}
{"actor":{"display_login":"nupplaphil"}}