-
Notifications
You must be signed in to change notification settings - Fork 1
Changelog
Ryan Fischbach edited this page Aug 31, 2016
·
43 revisions
- Output to ICS (vCalendar format) now available.
- SetupDb moved into PropCloset so a website can descend from it.
- Move configs folder out from [site]/app/configs to just [site]/configs for new sites.
- Remove the "no_sessions" workaround which just causes more trouble than it is worth.
- Updated PasswordReset feature.
- Updated SqlBuilder to handle paged queries easier.
- Added UserParameterException.
- Updated CLI with a -h param to specify which config to use.
- Allow CLI to operate from any folder, not just from the app/cli subfolder.
- CLI capability introduced.
- getModel()/getProp() can now accept the full class name as its parameter.
- Saving list of configuration settings now returns those that were changed.
- AuthGroups & BitsGroups refactored to ensure protection from SQL Injection. Admins were the only ones capable of introducing such SQL Injection, so the threat for earlier versions is quite low.
- "Action" configuration setting introduced so that Buttons are now an option.
- Traits for various classes have been introduced.
- CSRF tokens now take advantage of the AuthBasic token mechanism, if available.
- The hidden input companion field for checkboxes now has its value default to "0".
- Actor refactored so the SEO URL transformation can be tweaked on an Actor-by-Actor basis now.
- The base Actor public methods cannot be called via URL by default.
- BrokenLeg converts Exceptions more completely so that more information is passed to the caller.
- Actor names are now converted to class names using the standard function instead of relying on PHP's case insensitive nature.
- Several ancestor class names changed so they did not share the same name as their descendant as website installation was starting to get confused about which class to load.
- Many new API endpoints exist so that framework features that used to require page renders to accomplish can now be done via a JavaScript front-end calling API routines in the background.
- Install now provides an API endpoint to accomplish the entire install process in one call. This allows automation such as Ansible to install a website entirely without human interaction.
- Boolean website settings that employed a checkbox widget now work properly when unchecking them.
- "Auth" website settings now editable by a non-titan group admin.
- PHP 5.5 deprecated code fixed.
- Strings::wordWrap() greatly improved to attempt to break on word boundaries.
- Improved security for permission related endpoints.
- Cookie management updated to allow HTTPOnly flag
- getProp() smarter in that lower case class names figured out just like Actor class names
- Registration cap website option added
- Costumes with toJson() methods respected if passed to the "results_as_json" view
- CommonMySql costume created to help simplify common model tasks.
- Newly introduced CSRF protection mechanism debugged
- Admin> Settings page now protected by CSRF protection mechanism
- Introduced login auto-lockout after X failed attempts per hour.
- Introduced CSRF protection for API's using "ajaj" prefix.
- Introduced non-cached-auth for API's using "api" prefix.
- Created a standardized API response object, if desired.
- Shutdown code that helps debugging Out of Memeory errors.
- Features introduced, version numbers can be displayed and now have meaning.
- The CSS classes
data-*have been renamed todb-*to avoid HTML5 class conflicts. - SqlBuilder costume class can now handle filters and orderby clauses as well as convert
"="operations into" IN ()"operations if the parameter data is an array. - Actor views will now additionally check
app/views/*for their named view PHP file before giving a 404 error so that site-wide views can be re-used rather than copied everywhere. The check is done after checking for the actor/action-specific view and the framework-included site-wide view file in use is theresults_as_json.phpview. - The base class object now contains
debugLog()which does not depend on debug settings in case you want to log something regardless of any of the "is debugging" const or vars such as logging a specific db error.
This version and anything prior was not versioned.