View Single Post
Old 12-29-2018, 02:43 PM   #3175
JimmXinu
Plugin Developer
JimmXinu ought to be getting tired of karma fortunes by now.JimmXinu ought to be getting tired of karma fortunes by now.JimmXinu ought to be getting tired of karma fortunes by now.JimmXinu ought to be getting tired of karma fortunes by now.JimmXinu ought to be getting tired of karma fortunes by now.JimmXinu ought to be getting tired of karma fortunes by now.JimmXinu ought to be getting tired of karma fortunes by now.JimmXinu ought to be getting tired of karma fortunes by now.JimmXinu ought to be getting tired of karma fortunes by now.JimmXinu ought to be getting tired of karma fortunes by now.JimmXinu ought to be getting tired of karma fortunes by now.
 
JimmXinu's Avatar
 
Posts: 7,024
Karma: 4604635
Join Date: Dec 2011
Location: Midwest USA
Device: Kobo Clara Colour running KOReader
New Test Version Posted (again)

2018-12-29
- Allow animated gifs through Calibre Image proc
- Additional metadata edit recursion proofing.
- Allow ==, !=, =~ and !~ in replace_metadata conditionals like in/exclude_metadata.
- Add conditionals_use_lists(default:true) setting for replace_metadata & Include/Exclude metadata conditionals. Might change existing behavior for some users.

Note: Users with complex replace_metadata / n/exclude_metadata may want to hold off on this one for a bit.

A while back, somebody asked why they couldn't use ==, !=, =~ and !~ in replace_metadata conditionals like in/exclude_metadata. The answer was basically because they were added at different times and I never standardized between them.

I was revisiting that when I also found some other issues. I've fixed a couple more infinite recursion cases, and changed how conditionals work to operate on lists instead of strings so a == conditional will work more intuitively, for example. Otherwise, category='DC','Worm' would not have been matched by &&category==Worm.

However, that change might affect some users, particularly if they are deliberately looking for the list string. For individual cases, you use category_LIST to see the whole list as one string for example.

Or you can get the old behavior back with the setting conditionals_use_lists:false

EDIT:

In/exclude_metadata_pre/post still don't work quite as even I intuitively expect them to. However, I don't think I can 'correct' that without a) writing the whole metadata thing and b) breaking existing behavior for people with complex in/exclude setups. Probably. I'm still thinking about it.

2nd EDIT:

BTW, the impetus for adding ==, !=, =~ and !~ to replace_metadata conditionals is primarily to get !~ for "NOT matching".

The impetus for conditionals_use_lists is so that == will work 'as I expected it to'.

Last edited by JimmXinu; 12-29-2018 at 02:51 PM. Reason: added note
JimmXinu is offline   Reply With Quote