{"push_id":1216087869,"size":7,"distinct_size":7,"ref":"refs/heads/dev","head":"3550c3e2258667323182d85cff9565682c94825d","before":"5a5745e91da7d77b8d4f4fdf93721cec431c5350","commits":[{"sha":"97ece34c9e9fd058b5337fff5383afcfbc3cfc68","author":{"name":"CI","email":"e4e79418dff9a2968f856a9b6b91a8687d7627dd@openproject.com"},"message":"Update reference to OpenProject-Translations","distinct":true,"url":"https://api.github.com/repos/opf/openproject-ce/commits/97ece34c9e9fd058b5337fff5383afcfbc3cfc68"},{"sha":"43539536053234c473d233e32a6aa8f30e717da9","author":{"name":"Oliver Günther","email":"3b8e10480754ba93523db5dc4626a5f001e54bb7@oliverguenther.de"},"message":"Improve stored settings as a whole\n\nCurrently, settings are cached on a per-name basis, but that cache is\nexpired everytime *any* attribute is written.\n\nEven when a week-old attribute is still valid, its cache is expired as\nsoon another setting is updated due to the max settings cache key.\n\nInstead of caching a single attribute, I suggest to cache the entire\nsettings (the total number with plugins is less than 120 and 4KiB in\nsize) and retrieve and deserialize a single value from that hash.\n\nThat saves us the time to:\n\n1. Locating a single element from database\n2. Instantiate a setting object just for deserializing\n3. Requesting settings several times by using RequestStore","distinct":true,"url":"https://api.github.com/repos/opf/openproject-ce/commits/43539536053234c473d233e32a6aa8f30e717da9"},{"sha":"616ec628b5197c9af6ecd66930eda14ec062582e","author":{"name":"Oliver Günther","email":"3b8e10480754ba93523db5dc4626a5f001e54bb7@oliverguenther.de"},"message":"Rewrite with_setting specs\n\nAnd fix tests that do not expect settings to be\ncached during the request with RequestStore.","distinct":true,"url":"https://api.github.com/repos/opf/openproject-ce/commits/616ec628b5197c9af6ecd66930eda14ec062582e"},{"sha":"98ae0b89039bb76cb490ee83643fd407f4b67b14","author":{"name":"Markus Kahl","email":"7bb2d506e0ecd101cae2c9a2c8f661f3c187c628@googlemail.com"},"message":"Merge pull request #4702 from oliverguenther/performance/settings-caching\n\n[23034] Improve settings caching","distinct":true,"url":"https://api.github.com/repos/opf/openproject-ce/commits/98ae0b89039bb76cb490ee83643fd407f4b67b14"},{"sha":"95c1167071f68596686e79798354e3130b5e4de0","author":{"name":"Oliver Günther","email":"3b8e10480754ba93523db5dc4626a5f001e54bb7@oliverguenther.de"},"message":"Fix announcement flash type","distinct":true,"url":"https://api.github.com/repos/opf/openproject-ce/commits/95c1167071f68596686e79798354e3130b5e4de0"},{"sha":"aa51ef9c0715aacd6f6fa96663751fe5aac7bd10","author":{"name":"Oliver Günther","email":"3b8e10480754ba93523db5dc4626a5f001e54bb7@oliverguenther.de"},"message":"Merge pull request #4704 from oliverguenther/fix/announcement-flash\n\nFix announcement flash type","distinct":true,"url":"https://api.github.com/repos/opf/openproject-ce/commits/aa51ef9c0715aacd6f6fa96663751fe5aac7bd10"},{"sha":"3550c3e2258667323182d85cff9565682c94825d","author":{"name":"CI","email":"e4e79418dff9a2968f856a9b6b91a8687d7627dd@openproject.com"},"message":"Merged opf/openproject/dev into opf/openproject-ce/dev","distinct":true,"url":"https://api.github.com/repos/opf/openproject-ce/commits/3550c3e2258667323182d85cff9565682c94825d"}]}
{"actor":{"display_login":"openprojectci"}}