-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Revise deletion of terms and goups from multi-level complex expressions #63
Comments
|
Implemented a check so the invalid rule doesn't go undetected. |
@RealRaven2000: Note that in Issue #62 we implemented balancing begin and end of groups, that is the number of Rules that were created previously where one term terminated multiple groups will now be flagged as error. |
Good to know - that would be an edge case as they would only be created with the previous beta versions anyway. |
This is not correct. Since we first shipped the feature in BB 91.9.0 at the end of April 2022, multi-level groups can be created.
now it is stored as
Editing the former will now produce an error although rule execution still works. |
Maybe the law of distributivity could help making things easier: ∨ (logical or) In particular, I was thinking that even very complex filters could be replaced by ones that arguably are still very complex, but might have less problems with left over braces after deletion. A change of state would need to be replicated across multiple sub-formulas, but it can be done and is definitely logically sound. An example for this can be seen in the following screenshot: Here are some more examples:
Nevertheless, regardless of syntax, to detect a change of state, making use of identity elements could be worth a shot?
Another method to detect a change of state could maybe be based on truth tables: Additional related literature: https://en.wikipedia.org/w/index.php?title=Boolean_algebra&oldid=1098861709 |
Reminder for myself about Filter Syntax:Syntax for Thunderbird 91.12 / 102 (apparently?): Brainstorming about parsing and transformations:Simply better parsing of filter-rules and automatically converting erroneous rules to better ones in the background of course could work too. So I was thinking a little bit and maybe the following helps for brainstorming: The following one is probably the most interesting one, since this is the one that refers to the first screenshot in #63 (comment) trigger deletion of Additional: trigger deletion of trigger deletion of trigger deletion of trigger deletion of Of course, there are a lot more examples one could come up with... |
Thanks for your enthusiasm. Three things:
|
Don't worry, have a blast :-) There needs to be some you time too :-) |
Hi @Betterbird ! Newcomer here. I came 'coz i'd like to install Thunderbird (i'm using FireFox since ...forever, as I was under Netscape, but never switched my mail client, still gmail)... And I think i'll switch to Betterbird ! So whatever, long story short, after having read pages and pages of your website and different bug reports (including this one), I think that, as long as version 91 seems to be deprecated, it seems that it doesn't need to be on hold anymore. But you're the boss 😅, I'm just a random user passing by. Bye. |
Well, "we might" is conditional tense. Yes, we're at 102 now. We haven't heard any complaints about this edge case, so we're following "biggest bang for the buck" and focussing our efforts elsewhere. |
👍 |
Hi, I'm your friendly neighborhood edge case complainant. I just tripped over this and it nearly caused such a bad catastrophe that I'm now afraid to open Betterbird at all because of how weird and unpredictible finding this kind of behavior makes the program seem. I had to do this about 4 times before I was sure Betterbird was doing it and thought to take some screenshots. I entered this filter: I don't know at what point it stopped saving properly, but I closed the filter editing window and immediately reopened it, and it had silently changed to this: Fortunately, at the last minute I thought to set the action to tag matched messages, not delete them, out of an abundance of caution. Not that it matters, as the filter appears to be completely broken, it looks like it has never matched anything anyway. But this is a frighteningly close call to accidentally creating a filter that deletes all my email without my even knowing it, totally different from the logic I specified. To me this is terrifying showstopper bug that completely rules out even having a copy of Betterbird on my computer, lest I accidentally open it, because it opens up the question of what other destructive things it might be doing that I have no idea at all about. Besides which, complex filters were the primary reason I switched to Betterbird. With them not working reliably, for my own purposes there's not really any advantage to using Betterbird. Now I'm wondering how many other filters are changed from what I entered and not relishing having to comb through them all by hand, I didn't think I needed to keep notes on what I changed when I got Betterbird. I had way higher hopes from Betterbird than tripping on a behavior this unpredictable in my first week of using it. Sorry, I'm really not trying to disparage you folks' very obvious dedication and efforts, but the fact that this might have brought me within a hair's breadth of silently deleting 15 years' worth of emails without my even realizing it is seriously scary. EDIT: As an experiment, disconnected from the internet (to prevent any possible data loss on the server), opened and quit Thunderbird, then opened Betterbird again. That's all I've done since the last screenshot. Now, the filter has changed again. Attempting to edit it gives this error: It's like it knew I posted here. Either way, I'm... er... nonplussed... by filters repeatedly changing on their own. Dismissing the error and opening the rule editing view, it has indeed changed again: EDIT 2: This has nothing to do with editing an existing filter. It appears Betterbird fundamentally does not save filters nested more than one level deep correctly, in any case. I re-entered the entire filter by hand, without deleting any rows, closed the filters window and reopened it, and when I went back in it had once again shuffled everything around and changed the top AND term to OR. Several repeated tests confirmed this. So even entering things carefully the first time and not editing them does not avoid this bug, at least sometimes. I thought about just editing the filter file in a text editor, but I can't make sense of the combination of backets and parentheses. I couldn't create a filter that way that Betterbird even understood, it just disabled the rule and when I tried to enable it gave me an error saying it couldn't understand it. Respectfully, I would suggest prohibiting entering second-level nested terms at all, rather than continuing to allow them to be entered but then silently changing the logic on save without the user being alerted in any way. Just one fellow developer's opinion... unpredictably changing the logic of filter criteria without the user's knowledge strikes me as potentially dangerous. Thanks. EDIT 3: Oops, perhaps this belongs under #62. Not sure. It's late. |
Thanks for the report. It's off-topic for this ticket which is about deletion of terms from complex expressions. BTW, opening TB on the BB rules will surely cause complete havoc, which is also stated in the "compatibility notes": We've created a new Issue #256 for the problem you've reported. |
See #62 (comment).
The text was updated successfully, but these errors were encountered: