Wherever a unit test asserts that an error should be raised, specify the erro...
Recent rspec versions issue a warning if the following is done without passing an error class: expect {...}.to raise_error The reason is that this way any error is captured, which can mask programming...
View ArticleWhen moving a feed to a new folder during acceptance testing, introduce a...
When moving a feed to a new folder during acceptance testing, introduce a small delay between the popup appearing and entering the new folder name. This is necessary to give the client time enough to...
View ArticleUpdated jquery-rails gem 4.0.3 -> 4.0.4
It includes fix for vulnerability CVE-2015-1840: https://groups.google.com/forum/#!msg/rubyonrails-security/XIZPbobuwaY/fqnzzpuOlA4J
View ArticleAdded Net::HTTPBadResponse to the list of expected errors that can be raised...
Added Net::HTTPBadResponse to the list of expected errors that can be raised during a scheduled feed update. If this error is raised, it is rescued so that the job itself does not fail, preventing...
View ArticleHighlighting entries only works for desktop-sized and larger screens.
Smaller screens are usually touchscreens (tablets and phones), for which highlighting doesn't really work because it's related to hovering the mouse.
View ArticleHighlighting sidebar links only works for desktop-sized and larger screens.
Smaller screens are usually touchscreens (tablets and phones), for which highlighting doesn't really work because it's related to hovering the mouse.
View ArticleAdded "on delete cascade" to all foreign key definitions.
In all cases we want dependent records to be deleted when the master record is deleted.
View ArticleRun before_destroy callbacks before any other AR callbacks.
It's not vitally important for the moment, but it's generally a good idea to run before_destroy first, so that any dependent records still exist when the callback runs (e.g. in case we want to stop...
View ArticleDemo user cannot be deleted if the demo user flag is enabled.
This commit adds a control at the model level so that the app does not enqueue a delete job for the demo user nor does it try to lock it as soon as the user requests a profile deletion. There are...
View ArticleImproved sanity check.
The improvement affects the code that checks at the end of an ImportSubscriptionWorker if the OpmlImportJobState for the whole OPML import exists and is in state RUNNING. The old code could raise an...
View ArticleMake the uniqueness constraint on the guid attribute of Entry and DeletedEntr...
It makes sense that the guid is case-sensitive; often the guid has the same value as the entry URL, and URLs are case sensitive. This means that e.g. an entry with guid "AAA" and another with guid...
View ArticleAdded theme-color meta tag to HTML header.
This will colorize the address bar with the same orange color as the current app icon, at least for android lollipop and above. For more details about this meta tag:...
View Article