Skip to content

Releases: Schlaefer/Saito

4.0.0

29 May 08:48
Compare
Choose a tag to compare

What's new

All changes of 4.0.0-RC - 4.0.0-RC3 and

  • ✓ Inline Answering not working with SecurityComponent enabled #261
  • ✓ blob → mediumblob conversion for ecaches table was not applied in installer
  • Δ changes default cookie encryption to AES
  • Δ deactivates form autofill in login and registration form

Full change-log

4.0.0-RC3

18 May 13:09
Compare
Choose a tag to compare
4.0.0-RC3 Pre-release
Pre-release

What's new

  • ✓ fixes logout not working
  • ✓ fixes non collapsing back links in responsive design
  • Δ Updates CakePHP to 2.5.1

See full change-log.

4.0.0-RC2

16 May 16:17
Compare
Choose a tag to compare
4.0.0-RC2 Pre-release
Pre-release

What's new

  • ✓ thread cache isn't checked appropriately and reads/saves wrong output
  • ✓ skip not implemented and failing pgsql simple search test case
  • Δ code refactoring

Links

4.0.0-RC

29 May 09:01
Compare
Choose a tag to compare
4.0.0-RC Pre-release
Pre-release

What's new

  • + Don't update view counter on search engine robots #243
  • + extended crawler/robots detection
  • + improves autolinking of URLs next to punctuation marks
  • + shows used cache engines in system info admin panel
  • + add doc link and "where to edit" info to /users/map #247
  • + sort threads by last answer is default now
  • + /users/index is always sorted alphabetically after primary sort parameter
  • + PostgreSQL support #259 (except for simple search)
  • ✓ show date on older shoutbox entries #251
  • ✓ absolute date in mobile view is gobbled #170
  • ✓ limit map boundaries and minimum zoom-level
  • ✓ [bbcode] urls are not parsed in lists #256
  • ✓ theme error on /users/edit on validation error #244
  • ✓ deleting last bookmark should show "no bookmarks" message #75
  • ✓ installation creates BLOB instead of MEDIUMBLOB field in ecaches table
  • ✓ global help button is not activated on answering form
  • ✓ i18n decimal divider in generation time
  • ✓ fixes no pointer cursor on .btn-strip hover
  • ✓ Double entries in UserOnline slidebar #157
  • ✓ accession 1 entries-url should not be in sitemap
  • Δ rewritten user login #254
    • + shows info if user account is not activated yet
    • + autofill username on failing login in login-form
    • + autofocus/select username in login-form
    • + log failing logins
  • Δ rewritten user registration #253
    • + shows info if sending of confirmation email failed
    • + log if sending of confirmation email failed
    • + shows info if confirmation link failed
    • + shows info if account was already activated
    • + adds navigation back-links to registration views
    • Δ l10n changes
    • !confirmation-URL in activation-email changed
  • Δ rewritten user change password #255
    • + log change attempts for non-existing users
    • + log change attempts by non-authorized users
  • Δ refactors bookmark edit
    • + log edit attempts by non-authorized users
  • Δ refactors contact messaging
    • + advanced email address configuration #223
    • + show disclaimer on global contact form
    • + adds navigation back-link
    • + logs if sending of contact email failed
  • + CakePHP dummy_data shell to generate artificial content for development
  • Δ changes disclaimer l10n strings
  • Δ Update to CakePHP 2.5.0 #246
  • Δ replaces underscore.js with lo-dash
  • Δ activate CakePHP's SecurityComponent by default
  • Δ renames log file auth.log to saito-auth.log
  • Δ add staticPage layout for all pages esp. TOS #257
  • Δ consolidates database field types
  • Δ consolidates database index names
  • Δ removes unused database fields

Other bugfixes and improvements. This updates includes important security enhancements.

Migration Notes

DB Changes

Note: If you use a table prefix you have to prepend it to the table name.

Note: Depending on DB-size these may run some time. Make a DB backup and apply separately.

DROP TABLE IF EXISTS `useronline`;

CREATE TABLE `useronline` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `uuid` varchar(32) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
  `user_id` int(11) DEFAULT NULL,
  `logged_in` tinyint(1) NOT NULL,
  `time` int(14) NOT NULL DEFAULT '0',
  `created` datetime DEFAULT NULL,
  `modified` datetime DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `useronline_uuid` (`uuid`),
  KEY `useronline_userId` (`user_id`),
  KEY `useronline_loggedIn` (`logged_in`)
) ENGINE=MEMORY AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

ALTER TABLE `bookmarks` DROP INDEX `entry_id-user_id`;
ALTER TABLE `bookmarks` ADD INDEX `bookmarks_entryId_userId` (`entry_id`, `user_id`);

ALTER TABLE `bookmarks` DROP INDEX `user_id`;
ALTER TABLE `bookmarks` ADD INDEX `bookmarks_userId` (`user_id`);

ALTER TABLE `entries` DROP INDEX `user_id`;
ALTER TABLE `entries` ADD INDEX `entries_userId` (`user_id`);

ALTER TABLE `entries` DROP INDEX `user_id-time`;
ALTER TABLE `entries` ADD INDEX `entries_userId_time` (`time`, `user_id`);

ALTER TABLE `entries` CHANGE `last_answer` `last_answer` TIMESTAMP  NULL  DEFAULT NULL;
UPDATE `entries` SET last_answer=NULL WHERE last_answer='0000-00-00 00:00:00';

ALTER TABLE `entries` CHANGE `edited` `edited` TIMESTAMP  NULL  DEFAULT NULL;
UPDATE `entries` SET edited=NULL WHERE edited='0000-00-00 00:00:00';

ALTER TABLE `users` CHANGE `last_login` `last_login` TIMESTAMP  NULL  DEFAULT NULL;
UPDATE `users` SET last_login=NULL WHERE last_login='0000-00-00 00:00:00';

ALTER TABLE `users` CHANGE `registered` `registered` TIMESTAMP  NULL DEFAULT NULL;

ALTER TABLE `users` CHANGE `last_refresh` `last_refresh` TIMESTAMP  NULL DEFAULT NULL;
UPDATE `users` SET last_refresh=NULL WHERE last_refresh='0000-00-00 00:00:00';

ALTER TABLE `users` CHANGE `last_refresh_tmp` `last_refresh_tmp` TIMESTAMP  NULL DEFAULT NULL;
UPDATE `users` SET last_refresh_tmp=NULL WHERE last_refresh_tmp='0000-00-00 00:00:00';

ALTER TABLE `users` CHANGE `personal_messages` `personal_messages` TINYINT(1)  NOT NULL  DEFAULT '1';
ALTER TABLE `users` CHANGE `user_lock` `user_lock` TINYINT(1)  NOT NULL  DEFAULT '0';
ALTER TABLE `users` CHANGE `user_signatures_hide` `user_signatures_hide` TINYINT(1)  NOT NULL  DEFAULT '0';
ALTER TABLE `users` CHANGE `user_automaticaly_mark_as_read` `user_automaticaly_mark_as_read` TINYINT(1)  NOT NULL  DEFAULT '1';
ALTER TABLE `users` CHANGE `user_sort_last_answer` `user_sort_last_answer` TINYINT(1)  NOT NULL  DEFAULT '1';
ALTER TABLE `users` CHANGE `show_recententries` `show_recententries` TINYINT(1)  NOT NULL  DEFAULT '0';
ALTER TABLE `users` CHANGE `user_category_custom` `user_category_custom` VARCHAR(512)  CHARACTER SET utf8  COLLATE utf8_unicode_ci  NULL  DEFAULT NULL;

ALTER TABLE `users` CHANGE `activate_code` `activate_code` INT(7)  NOT NULL  DEFAULT '0';

ALTER TABLE `entries` DROP `uniqid`;
ALTER TABLE `users` DROP `last_logout`;
ALTER TABLE `users` DROP `hide_email`;
ALTER TABLE `users` DROP `user_show_own_signature`;

INSERT INTO `settings` (`name`, `value`) VALUES ('email_contact', NULL);
INSERT INTO `settings` (`name`, `value`) VALUES ('email_register', NULL);
INSERT INTO `settings` (`name`, `value`) VALUES ('email_system', NULL);

If you're using MySQL and the field value in the ecaches table is of type BLOB change it to MEDIUMBLOB:

ALTER TABLE `ecaches` CHANGE `value` `value` MEDIUMBLOB  NOT NULL;

Links

3.5.1

12 Apr 21:42
Compare
Choose a tag to compare

What's new

  • [fix] link to /users/map in /users/* area even if maps are not activated #245
  • [fix] map location validation is limited to ([0-90],[0-90]) #249

Links

3.5.0

12 Apr 06:18
Compare
Choose a tag to compare

What's new

  • [new] Community Map #238
  • [task] consolidates paginator navigation
  • [task] updates CakePHP to 2.4.7 #241
  • [task] updates Marionette, Backbone, Underscore to AMD versions
  • [task] updates JS test frameworks, but disables CLI tests (see #242)

Migration Notes

The new map feature utilizes MapQuest to render maps. You have to enter a MapQuest API-key in the admin area which you can issue for free at http://developer.mapquest.com/.

DB Changes

Note: If you use a table prefix you have to prepend it to the table name.

ALTER TABLE `users` ADD `user_place_lat` FLOAT  NULL  DEFAULT NULL  AFTER `user_place`;
ALTER TABLE `users` ADD `user_place_lng` FLOAT  NULL  DEFAULT NULL  AFTER `user_place_lat`;
ALTER TABLE `users` ADD `user_place_zoom` TINYINT(4)  NULL  DEFAULT NULL  AFTER `user_place_lng`;

INSERT INTO `settings` (`name`, `value`) VALUES ('map_enabled', '0');
INSERT INTO `settings` (`name`, `value`) VALUES ('map_api_key', '');

Links

3.4.1

06 Apr 13:44
Compare
Choose a tag to compare

What's new

  • [fix] internal error on /users/index in 3.4.0 #239
  • [fix] error pages don't have theme applied #240

Links

3.4.0

05 Apr 07:53
Compare
Choose a tag to compare

What's new

  • [new] improves entry semantic page structure
  • [new] show entry view counter only for logged in users
  • [new] show category title on every view and mix subentry
  • [new] exclude all /users/… pages from robots.txt
  • [new] detects protocol-less absolute urls in [url] BBCode-tag
  • [fix] FE notification messages are not localized
  • [fix] sitemap entries improved timing
  • [fix] sitemap entries lastmod ignores edits
  • [fix] missing l10n
  • [fix] Paz CSS tweaks
  • [task] removes unused database fields

Overall refactoring and performance improvements.

Migration Notes

DB Changes

Note: If you use a table prefix you have to prepend it to the table name.

ALTER TABLE `users` DROP `new_posting_notify`;
ALTER TABLE `users` DROP `new_user_notify`;
ALTER TABLE `users` DROP `time_difference`;
ALTER TABLE `users` DROP `user_view`;
ALTER TABLE `users` DROP `pwf_code`;
ALTER TABLE `users` DROP `user_forum_hr_ruler`;

Links

3.3.0

30 Mar 10:36
Compare
Choose a tag to compare

What's new

  • [new] Show number of helpful answers in user-profile #222
  • [new] admin-panel: performance improvements in user list
  • [new] Saito installable via composer #232
  • [new] Create sitemap.xml for Entries #20 ]
  • [new] additional admin statistics #233
  • [fix] Admin setting Thread Indent Depth is not applied #234
  • [fix] Notification emails are not send #236 (regression from 3.2.0)
  • [task] Switch user table from MyISAM to InnoDB #228
  • [task] Update CakePHP to 2.4.6 #231
  • [task] updates robots.txt #235
  • [task] automated dev setup (see docs/) #225, #209

Migration Notes

DB Changes

Note: If you use a table prefix you have to prepend it to the table name.

For MySQL databases the user table default engine is InnoDB now:

ALTER TABLE `users` ENGINE = InnoDB;

Links

3.2.1

22 Mar 10:09
Compare
Choose a tag to compare

What's new

  • [fix] Renaming user doesn't empty (thread) cache #221
  • [fix] Don't show prerequisite error on browser prefetch #220

Links