Changes for version 1.1000 - 2019-09-11
- Finally rollup extensive unreleased changes into an offcial new release
- Note: This is an official release, but due to the drawn out dev cycle, there may be more bugs than a normal maintenance release. This release es expected to be following up with a more stable minor release shortly
- Require RapidApp 1.3104
- New Rapi::Blog::CatalystApp API hooks (core refactors and improvements)
- New schema version and migration. Adds 'user'disabled' column
- Preliminary implementation of "user_reset_tokens" subsustem
- Refactror and pull out separate dedicated 'Scaffold' class
- Further abstract Scaffold::Config class
- Major refactor and integration of AccessStore class logic with new Scaffold object/classes, futher/better separation of concerns
- Implementation of "layed scaffolds" -- this is a major additional layer of logic and abstraction
- Many, many fixes and refactors to address myriad breakages from these\ very significant refactors. Most seem address, but there may be additional edge cases and bugs
- Lots of cleanup and removal of old, no longer active code, post refactoring
- Further expand Scaffold design into additional "Dispatcher" module
- Refactor and generalize 'preauth_action" tables and design
- firther expand and modularaize with new "Actor" superclass
- Add preauth_action_event_type table and design/concept
- Add 'ScaffoldSet' concept/design
- Delegate more power and control to scaffolds, including control of the login teamplte
- Expose 'BlogCfg' hash across application for various introspective functions
- Implement 'forgot_password' (built on top of the extensive refactors above)
- Fixes to URL auth/redirect + autofocus for login pages
- Add self-signup functionality
- Support new RapidApp 'error' template feature
- auth_wrapper template more flexible
- Add PRIVILEGED template directive 'ensure_logged_out'
- Implement Mailer componentand related structure - support password reset with sent e-mails
- Add new preauth action 'login' which allows direct logic via single use, time limited direct link (typically e-mailed)
- Fully wotrking login via e-mail
- Support configuration mailer/transport configs. Default is sendmail, can can be set to sasl to a provider such as Sendgrid
- Many, many, many fixes and improvements to all the stuff that broke along the way. There is probably more bugs that will hopefully be found and resolved quickly
Documentation
Rapi::Blog user and developer manual
Rapi::Blog Utility Script
Modules
Plack-compatible, RapidApp-based blog engine
General-purpose controller actions
Pre-Authorized Actions Controller
Common "ListAPI" interface
Post row object
Section row object
User row object
Catalyst/RapidApp DBIC Schema Model
Common interface for sending E-Mails
Base class for preauth Actors
Base action error class
Invalid error class
Not found error class
Single-use user login
Handles password_reset
General mailer object with defaults
Base class for rabl.pl modules
Create/bootstrap new Rapi::Blog site
Asking the user for a password
Provides
in lib/Rapi/Blog/CatalystApp.pm
in lib/Rapi/Blog/DB.pm
in lib/Rapi/Blog/DB/Component/SafeResult.pm
in lib/Rapi/Blog/DB/Result/Category.pm
in lib/Rapi/Blog/DB/Result/Comment.pm
in lib/Rapi/Blog/DB/Result/Hit.pm
in lib/Rapi/Blog/DB/Result/PostCategory.pm
in lib/Rapi/Blog/DB/Result/PostTag.pm
in lib/Rapi/Blog/DB/Result/PreauthAction.pm
in lib/Rapi/Blog/DB/Result/PreauthActionEvent.pm
in lib/Rapi/Blog/DB/Result/PreauthActionType.pm
in lib/Rapi/Blog/DB/Result/PreauthEventType.pm
in lib/Rapi/Blog/DB/Result/Tag.pm
in lib/Rapi/Blog/DB/Result/TrkSectionPost.pm
in lib/Rapi/Blog/DB/Result/TrkSectionSection.pm
in lib/Rapi/Blog/DB/ResultSet/Category.pm
in lib/Rapi/Blog/DB/ResultSet/Hit.pm
in lib/Rapi/Blog/DB/ResultSet/Post.pm
in lib/Rapi/Blog/DB/ResultSet/PreauthAction.pm
in lib/Rapi/Blog/DB/ResultSet/PreauthActionEvent.pm
in lib/Rapi/Blog/DB/ResultSet/Section.pm
in lib/Rapi/Blog/DB/ResultSet/Tag.pm
in lib/Rapi/Blog/DB/ResultSet/User.pm
in lib/Rapi/Blog/Module/GridBase.pm
in lib/Rapi/Blog/Module/PageBase.pm
in lib/Rapi/Blog/Module/PostPage.pm
in lib/Rapi/Blog/Module/SectionTree.pm
in lib/Rapi/Blog/Scaffold.pm
in lib/Rapi/Blog/Scaffold/Config.pm
in lib/Rapi/Blog/Scaffold/Set.pm
in lib/Rapi/Blog/Scaffold/ViewWrapper.pm
in lib/Rapi/Blog/Template/AccessStore.pm
in lib/Rapi/Blog/Template/Dispatcher.pm
in lib/Rapi/Blog/Template/Dispatcher/NotFound.pm
in lib/Rapi/Blog/Template/Dispatcher/Post.pm
in lib/Rapi/Blog/Template/Dispatcher/ScaffoldFile.pm
in lib/Rapi/Blog/Template/Dispatcher/Unclaimed.pm
in lib/Rapi/Blog/Template/Dispatcher/ViewWrapper.pm
in lib/Rapi/Blog/Template/Postprocessor/MarkdownElement.pm
in lib/Rapi/Blog/Util.pm