{"push_id":577789634,"size":41,"distinct_size":41,"ref":"refs/heads/development","head":"185f4bcaa1b84bbd6539f1cf672485a9733eb60c","before":"04805da369ae3b6e32be22f096c8e0171c227513","commits":[{"sha":"2d18bdd9ed5a7f729796c7657cd808044b1185a3","author":{"email":"e8d64b3fb70bbf20488c781f8b7e8a1cbd32e08d@namelesscoder.net","name":"Claus Due"},"message":"[DOC] Update contribution guide link","distinct":true,"url":"https://api.github.com/repos/featdd/flux/commits/2d18bdd9ed5a7f729796c7657cd808044b1185a3"},{"sha":"37402ee5db28cf3da0b0d2dbfce121bffa7a0e41","author":{"email":"e8d64b3fb70bbf20488c781f8b7e8a1cbd32e08d@namelesscoder.net","name":"Claus Due"},"message":"[TASK] Re-enable a few disabled tests","distinct":true,"url":"https://api.github.com/repos/featdd/flux/commits/37402ee5db28cf3da0b0d2dbfce121bffa7a0e41"},{"sha":"1cbc6eb8825ac9a0ff7d7c665bf7c50ac08a3dbf","author":{"email":"e8d64b3fb70bbf20488c781f8b7e8a1cbd32e08d@namelesscoder.net","name":"Claus Due"},"message":"[DOC] Regenerate XSD schema","distinct":true,"url":"https://api.github.com/repos/featdd/flux/commits/1cbc6eb8825ac9a0ff7d7c665bf7c50ac08a3dbf"},{"sha":"d350cbbe0e5387c23ad54f4e0f7144223b7ae131","author":{"email":"e8d64b3fb70bbf20488c781f8b7e8a1cbd32e08d@namelesscoder.net","name":"Claus Due"},"message":"[TASK] Update testing strategy","distinct":true,"url":"https://api.github.com/repos/featdd/flux/commits/d350cbbe0e5387c23ad54f4e0f7144223b7ae131"},{"sha":"85bd324518eae0e847dd9db91e4a5b1bc5de8e8f","author":{"email":"e8d64b3fb70bbf20488c781f8b7e8a1cbd32e08d@namelesscoder.net","name":"Claus Due"},"message":"[TASK] Update dependencies","distinct":true,"url":"https://api.github.com/repos/featdd/flux/commits/85bd324518eae0e847dd9db91e4a5b1bc5de8e8f"},{"sha":"9c04b7d3414e748d7938f94da6b0d92b1462dcb1","author":{"email":"e8d64b3fb70bbf20488c781f8b7e8a1cbd32e08d@namelesscoder.net","name":"Claus Due"},"message":"[DOC] Brand README.md with logo","distinct":true,"url":"https://api.github.com/repos/featdd/flux/commits/9c04b7d3414e748d7938f94da6b0d92b1462dcb1"},{"sha":"384a9a5d68cdeddf86562264febd3da5c8e105ed","author":{"email":"e8d64b3fb70bbf20488c781f8b7e8a1cbd32e08d@namelesscoder.net","name":"Claus Due"},"message":"[BUGFIX] White/blacklist from parent instead of sibling\n\nSee: https://github.com/FluidTYPO3/fluidcontent/issues/211","distinct":true,"url":"https://api.github.com/repos/featdd/flux/commits/384a9a5d68cdeddf86562264febd3da5c8e105ed"},{"sha":"043b4dbda2719f7cb700f194d6d6001769a6f7d7","author":{"email":"e8d64b3fb70bbf20488c781f8b7e8a1cbd32e08d@namelesscoder.net","name":"Claus Due"},"message":"[TASK] Refactor WizardItemsHookSubscriber to improve sharing\n\nAllows the class to be used as base class for other, custom implementations which use variables from page or relative content elements to determine allowed/disallowed content types.","distinct":true,"url":"https://api.github.com/repos/featdd/flux/commits/043b4dbda2719f7cb700f194d6d6001769a6f7d7"},{"sha":"a11d0e680779975c1fd45f23ee3fa30917500a3d","author":{"email":"e8d64b3fb70bbf20488c781f8b7e8a1cbd32e08d@namelesscoder.net","name":"Claus Due"},"message":"[BUGFIX] Avoid setting Form option if form is NULL\n\nThis fixes an issue when attempting to read an invalid template file (e.g. one that does not contain a Flux form configuration). The returned Form instance is checked because it is potentially NULL and if NULL, any calls to methods on that NULL value is prevented.","distinct":true,"url":"https://api.github.com/repos/featdd/flux/commits/a11d0e680779975c1fd45f23ee3fa30917500a3d"},{"sha":"9880a83c364df0eae57e507dcc5249a5c7eb6061","author":{"email":"e8d64b3fb70bbf20488c781f8b7e8a1cbd32e08d@namelesscoder.net","name":"Claus Due"},"message":"[TASK] Make automatic icon resolving more resilient\n\nThis change modifies the way template paths are analysed to determine which icon file locations to check for the presence of icons. Before, paths were incorrectly trimmed if path contained dots. Now, only path separators are taken into consideration and the file path is treated from the end of the string only.","distinct":true,"url":"https://api.github.com/repos/featdd/flux/commits/9880a83c364df0eae57e507dcc5249a5c7eb6061"},{"sha":"ea63294db12ed7b9416437546a7cece4044b6f8a","author":{"email":"e8d64b3fb70bbf20488c781f8b7e8a1cbd32e08d@namelesscoder.net","name":"Claus Due"},"message":"[TASK] Update dependencies","distinct":true,"url":"https://api.github.com/repos/featdd/flux/commits/ea63294db12ed7b9416437546a7cece4044b6f8a"},{"sha":"211022a97f2270f862d3a8945e3c793615aaa028","author":{"email":"e8d64b3fb70bbf20488c781f8b7e8a1cbd32e08d@namelesscoder.net","name":"Claus Due"},"message":"[BUGFIX] Avoid processing already absolute paths in ResolveUtility","distinct":true,"url":"https://api.github.com/repos/featdd/flux/commits/211022a97f2270f862d3a8945e3c793615aaa028"},{"sha":"61cdb0d770b39a1c6902d7d0695feea467d4c8c4","author":{"email":"e8d64b3fb70bbf20488c781f8b7e8a1cbd32e08d@namelesscoder.net","name":"Claus Due"},"message":"[TASK] Temporarily set $this->view in Controller\n\nThis change makes initializeView() start by setting the $view that is passed. The property on the controller is usually set by the initializeViewObject method, but this patch allows that method to *not* set any View instance (for example when it is mocked) and still result in a workable state.","distinct":true,"url":"https://api.github.com/repos/featdd/flux/commits/61cdb0d770b39a1c6902d7d0695feea467d4c8c4"},{"sha":"9f519ae743628ee795059c38823301ea4f4b5354","author":{"email":"e8d64b3fb70bbf20488c781f8b7e8a1cbd32e08d@namelesscoder.net","name":"Claus Due"},"message":"[FEATURE] Display icon of Form associated with record","distinct":true,"url":"https://api.github.com/repos/featdd/flux/commits/9f519ae743628ee795059c38823301ea4f4b5354"},{"sha":"1cd93f599d4beb64836ffe44a3723002acb80fa4","author":{"email":"ebfcc529edbfcca140cd2d207e40f0a3e9171a1e@xwissen.info","name":"Xaver Maierhofer"},"message":"Merge pull request #681 from NamelessCoder/recordicons\n\n[FEATURE] Display icon of Form associated with record","distinct":true,"url":"https://api.github.com/repos/featdd/flux/commits/1cd93f599d4beb64836ffe44a3723002acb80fa4"},{"sha":"a2f42897da44c332aaf4e920a9229a1c7f69624f","author":{"email":"e8d64b3fb70bbf20488c781f8b7e8a1cbd32e08d@namelesscoder.net","name":"Claus Due"},"message":"[FEATURE] Implement ViewContext and TemplatePaths objects\n\nThese objects are used as containers to define a context (extension key, variables, controller name, format etc) for rendering a view, and a collection of template paths (root paths for partials, layouts and templates) which are automatically parsed from all supported input structures to a single structure; the new templateRootPaths etc. (plural paths) approach.\n\nImplementation can still be cleaned further but the new classes themselves are in a proper, working and fully test covered state.","distinct":true,"url":"https://api.github.com/repos/featdd/flux/commits/a2f42897da44c332aaf4e920a9229a1c7f69624f"},{"sha":"92b0c4ec8755812a95e630c6fc7383a3cb8a6c67","author":{"email":"ab43a7c9cb5b2380afc4ddf8b3e2583169b39a02@46halbe.de","name":"Göran Bodenschatz"},"message":"Merge pull request #758 from NamelessCoder/templatepathsobject\n\n[FEATURE] Implement ViewContext and TemplatePaths objects","distinct":true,"url":"https://api.github.com/repos/featdd/flux/commits/92b0c4ec8755812a95e630c6fc7383a3cb8a6c67"},{"sha":"720da8eeeb1aa31bcbaf905f2a129be22d0ed5b8","author":{"email":"e8d64b3fb70bbf20488c781f8b7e8a1cbd32e08d@namelesscoder.net","name":"Claus Due"},"message":"[FEATURE] Allow custom Form subclasses without custom Provider\n\nThis allows any registered Provider which resolves a controller extension key from a record to also resolve a package name, which in turn allows a class name to be constructed and detected. If the class exists, it is loaded and used as Form instance, allowing the template file to be bypassed completely.\n\nIf the Provider is for a `Content` controller and the controller action the Provider returns is `default` and the controller extension that was registed is `MyVendor.MyKey`, then the expected Form class name for that record is `MyVendor\\MyKey\\Form\\Content\\DefaultForm` and the class file should of course be placed in the expected location. The `initializeObject` method can then be created on that class to add any fields, sheets etc. via the PHP API of Flux.","distinct":true,"url":"https://api.github.com/repos/featdd/flux/commits/720da8eeeb1aa31bcbaf905f2a129be22d0ed5b8"},{"sha":"044a1eaaaafd17161d760567d53cf95b55ca409f","author":{"email":"e8d64b3fb70bbf20488c781f8b7e8a1cbd32e08d@namelesscoder.net","name":"Claus Due"},"message":"[TASK] Remove use of $this->packageName in AbstractProvider\n\nSame purpose is served much more dynamically by resolving the controller extension key (which may be a Vendor.ExtensionName format) and analysing the value to return the appropriate ExtensionName or Vendor.ExtensionName format.","distinct":true,"url":"https://api.github.com/repos/featdd/flux/commits/044a1eaaaafd17161d760567d53cf95b55ca409f"},{"sha":"86b200f109a6246a2452c97b9bfc7dd7fdf2d588","author":{"email":"e8d64b3fb70bbf20488c781f8b7e8a1cbd32e08d@namelesscoder.net","name":"Claus Due"},"message":"[TASK] Refactor cleaning of XML source to MiscellaneousUtility","distinct":true,"url":"https://api.github.com/repos/featdd/flux/commits/86b200f109a6246a2452c97b9bfc7dd7fdf2d588"}]}