-
-
Notifications
You must be signed in to change notification settings - Fork 365
Roadmap for UserFrosting 4.2
Main goals : New Migrator, NPM fix, Locale fix and Social Login. And drop the Alpha!
Status: Implemented in develop
branch
Related Milestone: 4.2.0
- Allow null group assignment for users
- Factor out password rehash from
User::onLogin
intoHasher
class and create an interface for devs to implement their own legacy hash detection - Switch over from Slim's
NotFoundException
to our ownUserFrosting\Support\Exception\NotFoundException
- Factor out user creation logic from
AccountController
Currently the frontend vendor asset system in UserFrosting faces several issues:
- Bower has been deprecated (#737)
- Duplicate frontend vendor libraries are downloaded (#727)
- Conflicts between dependencies in different Sprinkles go completely unnoticed
Fixing (1) is at face value, simple. Just add support for npm. Except that node and npm don't every have to deal with dependency conflicts, since in such a case 2 versions are downloaded. Thankfully a npm alternative called yarn addresses this via a dependency flattening mechanism triggered by "flat": true
.
(2) is a little more tricky. One solution is to produce a package.json
that references each sprinkle, but this results in significant garbage data being copied. The solution instead is to make a node package (merge-package-dependencies) that creates a new package.json
based on the result of dependency merging.
Which leaves (3), the hardest issue to tackle. The best place to handle this is inside the package mentioned in (2). Having complete dependency tree conflict detection would be extremely difficult to achieve, and so the conflict detection should be kept to just the directly included dependencies, leaving yarn to pick up what remains. This lack will likely be addressed in the future however (merge-package-dependencies#6).
These improvements will have a consequence however. UserFrosting/assets does not handle using assets at different tree depths well. While possible to fix, breaking changes would be introduced. Changing the directory depth to fix this is one solution, but a poor one. Since the opportunity has presented itself, this project includes the following UserFrosting/Assets related issues:
- Locked to
gulp-bundle-assets
as the only bundling tool - Library cannot be used in non-UserFrosting projects due to customization
- UserFrosting's development asset server functionality is tightly coupled with UserFrosting/Assets
In a nut shell, (4), (5), and (6) all lead in to modularity improvements.
Not sure if this is safe for a minor release.
Status: Implemented in feature-with-aggregates
branch
These include withSum
, withAvg
, etc. Very useful for Sprunjing aggregates on related entities (total hours, for example).
This would outsource a significant amount of maintenance and feature development. See https://github.com/jquery-form/form/blob/master/src/jquery.form.js. Issues related to file uploading (#717) and filtering (#834) would be partially or completely solved by integrating this plugin. Our extra features (validation, submit button locking, checkbox transformation) could still be part of our wrapper.