Project

General

Profile

Actions

Feature #4939

open

List of tasks filtered as OR and not AND

Added by Alain V. over 14 years ago. Updated 2 months ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
Issues filter
Target version:
-
Start date:
2010-02-26
Due date:
% Done:

0%

Estimated time:
Resolution:

Description

Hello

Up to now in the list of task you can filter upon some values but the list of filters are
List of tasks that has
filter1=value1 AND filter2=value2 AND filter3=value3

I think it could be interesting to have the possibility of
List of tasks that has
filter1=value1 OR filter2=value2 OR filter3=value3

Do you think it is possible? thank you


Files

Redmine using OR.zip (11.5 KB) Redmine using OR.zip Quan VN, 2013-09-19 11:45
_query.zip (3.56 KB) _query.zip Plugins version, better than the patch version above Quan VN, 2015-11-20 02:49
_query.0.0.3.rm34.zip (4.38 KB) _query.0.0.3.rm34.zip Quan VN, 2017-10-27 04:20
_query.0.0.4.redmine4x.tar.gz (3.17 KB) _query.0.0.4.redmine4x.tar.gz _query plugin supports Redmine 4.x Emanuel Reisinger, 2019-09-25 09:50
_query.0.0.5.redmine4x.tar.gz (3.75 KB) _query.0.0.5.redmine4x.tar.gz _query plugin supports Redmine 4.x with match operators Emanuel Reisinger, 2019-09-26 18:56
issue4939_orfilter.patch (9.64 KB) issue4939_orfilter.patch patch for the or filters Emanuel Reisinger, 2019-10-07 17:51
issue4939_match_operators.patch (6.21 KB) issue4939_match_operators.patch Patch for match operators; patch file based on orfilter patch Emanuel Reisinger, 2019-10-07 17:51
README.txt (2.72 KB) README.txt howto or-filters an match operators behave Emanuel Reisinger, 2019-10-07 17:51
screencapture_matchop_match-complex.jpg (25.3 KB) screencapture_matchop_match-complex.jpg A complex match operator example Emanuel Reisinger, 2019-12-03 09:53
screencapture_matchop_match-simple.jpg (33.1 KB) screencapture_matchop_match-simple.jpg A simple match operator example Emanuel Reisinger, 2019-12-03 09:53
screencapture_matchop_notmatch-simple.jpg (31.9 KB) screencapture_matchop_notmatch-simple.jpg A simple not match operator example Emanuel Reisinger, 2019-12-03 09:53
screencapture_orfilter.jpg (72.3 KB) screencapture_orfilter.jpg One or filter in action Emanuel Reisinger, 2019-12-03 09:53
screencapture_matchop_all-issues.jpg (55.5 KB) screencapture_matchop_all-issues.jpg All issues to compare match examples Emanuel Reisinger, 2019-12-03 10:03
Redmine5.0.1-or-query-patch.patch (16 KB) Redmine5.0.1-or-query-patch.patch Tilman Klaeger, 2022-05-27 20:17
or-query-patch-for-Redmine-5.1.0.patch (15.9 KB) or-query-patch-for-Redmine-5.1.0.patch Yasu Saku, 2023-11-12 14:01

Related issues

Related to Redmine - Feature #10999: Ticket list filter: More flexible filter conditionsNew

Actions
Related to Redmine - Feature #41214: Allow the 'OR' Logical Operator in QueryNew

Actions
Has duplicate Redmine - Feature #7641: Issue filter with OR semantic additional to current AND semanticClosed2011-02-17

Actions
Has duplicate Redmine - Feature #12970: Implement the "OR" operator in queriesClosed

Actions
Has duplicate Redmine - Feature #6332: "OR" filter and not only "AND" filterClosed2010-09-08

Actions
Has duplicate Redmine - Feature #10421: Filter with OR conditionsClosed

Actions
Has duplicate Redmine - Feature #21532: Adding OR and XOR request to REST API and issue filtersClosed

Actions
Has duplicate Redmine - Feature #23211: Issue filter menu should have different logical operators like "AND", "OR", ...Closed

Actions
Has duplicate Redmine - Feature #23216: Issues List, Enhanced Filtering - Allowing Multiple Queries & "OR"-type constraintsClosed

Actions
Has duplicate Redmine - Feature #34793: Filter OR / AND for issues and repeated columns in filter settingsClosed

Actions
Has duplicate Redmine - Feature #13356: Disjunction for issues filtersClosed

Actions
Actions #1

Updated by Jean-Philippe Lang over 14 years ago

  • Category set to Issues
Actions #2

Updated by Andrew Sherman over 14 years ago

+1. This would be useful for some filters I have tried to make as well.

Actions #3

Updated by Jeremy Walker over 14 years ago

+1 I would love it if Redmine had this functionality. Perhaps the easiest/most powerful way to implement this would be to make a way for users to create filters out of combinations of other filters. In other words, if I could define filters A, B, and C, and then say something like "Give me all the issues that are in A OR B, but not in C", I could get any issue list I could ever want. And that would be awesome.

Actions #4

Updated by Jeremy Walker over 14 years ago

Jeremy Walker wrote:

+1 I would love it if Redmine had this functionality. Perhaps the easiest/most powerful way to implement this would be to make a way for users to create filter sets out of combinations of other filter sets. In other words, if I could define filter sets A, B, and C, and then say something like "Give me all the issues that are in A OR B, but not in C", I could get any issue list I could ever want. And that would be awesome.

Actions #5

Updated by Alain V. over 14 years ago

Any progress on this subject guys? ;o)

Actions #6

Updated by Matthias Neubert almost 14 years ago

+1
Thats nearly what I ment with #7641, but I'd like to combine AND and OR freely.

e.g. A AND B OR C AND D

should list all issues which fullfill both, A and B

plus the issue which fillfill both, C and D

Basically it should be read like disjunctive normal form

Actions #7

Updated by Matthias Neubert almost 14 years ago

also this could be interesting when one wants to list all issues
assigned to me, and also all which aren't assigned yet.

for this feature a filtercriteria must be usable more than one time

or other solution: the list of possible assignees contains a special element "Not assigned" at the top of the list, so one can select (by multiple selection) me and "Not assigned"

Actions #8

Updated by Gurvan Le Dromaguet almost 12 years ago

It looks like it is implemented in "Trac": http://trac.edgewall.org/query, see the "OR" at the bottom right of the filters box

Actions #9

Updated by Francesco V over 11 years ago

Gurvan Le Dromaguet wrote:

It looks like it is implemented in "Trac": http://trac.edgewall.org/query, see the "OR" at the bottom right of the filters box

I like it

Actions #10

Updated by Daniel Felix over 11 years ago

Yes this would be a good improvement. It won't be easy but a really cool addition to the current filter-system.

Actions #11

Updated by Christian Baus over 11 years ago

+1

any workaround here? we need a filter like "is autor or observer"

Actions #12

Updated by Dani Leni over 11 years ago

+1

Need Assignee or Watcher.

Actions #14

Updated by Quan VN about 11 years ago

Here is my quick and dirty solution. I am not a RoR developer and this is my very first attempt so that I can use Redmine for my job.
I hope that someone can make this into a full plugin. If you have any idea or find problem, please let me know. I will see if I can do anything. Thanks

Actions #15

Updated by Christian Baus about 11 years ago

Thanks for your patch! i look forward to implement that in our redmine!!

Actions #16

Updated by Zbynek Drlik almost 11 years ago

+1

Actions #17

Updated by Lu Su over 10 years ago

+1

Actions #18

Updated by Antoine Pichon over 10 years ago

+1 (thanks for your excellent work)

Actions #19

Updated by Toshi MARUYAMA over 10 years ago

Actions #20

Updated by Toshi MARUYAMA over 10 years ago

Actions #21

Updated by Toshi MARUYAMA over 10 years ago

Actions #22

Updated by James H over 10 years ago

+1

Actions #23

Updated by Sebastian Paluch almost 10 years ago

Matthias Neubert wrote:

+1
Thats nearly what I ment with #7641, but I'd like to combine AND and OR freely.

e.g. A AND B OR C AND D

should list all issues which fullfill both, A and B

plus the issue which fillfill both, C and D

Basically it should be read like disjunctive normal form

+1

so important feature and no progress for 5 years :(

Actions #24

Updated by Jan Niggemann (redmine.org team member) almost 10 years ago

so important feature and no progress for 5 years :(

We only have 2 programmers working in their spare time, plus contributions from a few other volunteers.

If you send patches that apply cleanly against current trunk (together with tests) we'd happily test and apply those.

Actions #25

Updated by Istvan Heckl about 9 years ago

+1

Actions #26

Updated by Quan VN about 9 years ago

I have made this patch into a plugins here (with some improvement). It works with redmine 2.6.x and 3.1.1 or less. Please use the plugin instead of this patch

http://www.redmine.org/plugins/zquery

Actions #27

Updated by Jānis Elmeris about 9 years ago

+1

Actions #28

Updated by Quan VN about 9 years ago

Actions #29

Updated by Toshi MARUYAMA almost 9 years ago

  • Has duplicate Feature #21532: Adding OR and XOR request to REST API and issue filters added
Actions #30

Updated by Fred B over 8 years ago

What is the difference between zquery and _query?

Did someone tested one with Redmine 2.4?

Actions #31

Updated by Quan VN over 8 years ago

Fred B wrote:

What is the difference between zquery and _query?

Did someone tested one with Redmine 2.4?

Dear Fred
1. They are the same but I renamed zquery to _query so it is loaded first. _query is now the "official" version :-) (I have replace zquery attachment with _query but the name is still in the link)
2. I think it should work with 2.3 upward since I developed it based on 2.3 version
Quan

Actions #32

Updated by Toshi MARUYAMA over 8 years ago

  • Has duplicate Feature #23211: Issue filter menu should have different logical operators like "AND", "OR", ... added
Actions #33

Updated by Toshi MARUYAMA over 8 years ago

  • Category changed from Issues to Issues filter
Actions #34

Updated by Toshi MARUYAMA over 8 years ago

  • Has duplicate Feature #23216: Issues List, Enhanced Filtering - Allowing Multiple Queries & "OR"-type constraints added
Actions #35

Updated by Anonymous over 8 years ago

+1

Actions #36

Updated by Iwadara I over 7 years ago

+1

Actions #37

Updated by Reto Stamm over 7 years ago

+1

Actions #38

Updated by Yuuki NARA over 7 years ago

+1

Actions #39

Updated by Santiago Torres over 7 years ago

+1

Actions #40

Updated by Shaun Gilroy about 7 years ago

So is there any chance that the _query plugin getting updated to function with Redmine 3.4? I tried to figure out how to update it, but it's not clear to me what needs to be changed to make it compatible.

It gives me the following error in 3.4 as is:

Showing /opt/redmine/app/views/queries/_filters.html.erb where line #4 raised:

undefined method `remote' for #<Hash:0x007fe319fa1de8>
Extracted source (around line #464):
462
463
464
465
466
467

    available_filters.each do |field, filter|
      options = {:type => filter[:type], :name => filter[:name]}
      options[:remote] = true if filter.remote

      if has_filter?(field) || !filter.remote
        options[:values] = filter.values

Trace of template inclusion: app/views/queries/_query_form.html.erb, app/views/issues/index.html.erb

Rails.root: /Users/noysh/projects/farview/farview-devlink-3.4-stable

Application Trace | Framework Trace | Full Trace
app/models/query.rb:464:in `block in available_filters_as_json'
app/models/query.rb:462:in `each'
app/models/query.rb:462:in `available_filters_as_json'
app/views/queries/_filters.html.erb:4:in `block in _app_views_queries__filters_html_erb__941875204378063440_70306769152520'
app/views/queries/_filters.html.erb:1:in `_app_views_queries__filters_html_erb__941875204378063440_70306769152520'
app/views/queries/_query_form.html.erb:10:in `_app_views_queries__query_form_html_erb___1924681068357817272_70306752298920'
app/views/issues/index.html.erb:11:in `block in _app_views_issues_index_html_erb___4300101081652184242_70306752230600'
app/views/issues/index.html.erb:10:in `_app_views_issues_index_html_erb___4300101081652184242_70306752230600'
app/controllers/issues_controller.rb:51:in `block (2 levels) in index'
app/controllers/issues_controller.rb:46:in `index'
lib/redmine/sudo_mode.rb:63:in `sudo_mode'
Request

Parameters:

{"project_id"=>"project_name"}
Toggle session dump
Toggle env dump
Response

Headers:

None

Actions #41

Updated by Quan VN about 7 years ago

Shaun Gilroy wrote:

So is there any chance that the _query plugin getting updated to function with Redmine 3.4? I tried to figure out how to update it, but it's not clear to me what needs to be changed to make it compatible.

It gives me the following error in 3.4 as is:
[...]

Dear Shaun
I am sorry. This version of plugin is too old. I create a separate entry for this plugin and put the update here and it works with redmine 3.4
https://www.redmine.org/plugins/boolean_query
Unfortunately I cannot find way to delete this old attachment
Quan

Actions #42

Updated by Quan VN about 7 years ago

For redmine 3.4, please use the version at
https://www.redmine.org/plugins/boolean_query
Or use new version attached here _query.0.0.3.rm34.zip

Actions #43

Updated by Shaun Gilroy about 7 years ago

Quan VN wrote:

For redmine 3.4, please use the version at
https://www.redmine.org/plugins/boolean_query
Or use new version attached here _query.0.0.3.rm34.zip

Excellent! Thank you!

Actions #44

Updated by Roman Yagodin almost 7 years ago

+1

It could be great to allow filters with multiple conditions by same field (e.g. status is "open" AND status is not feedback) also.

Actions #45

Updated by name zero over 6 years ago

+1 :}

Actions #46

Updated by name zero over 6 years ago

Would it be possible to select the same field twice, so I can query "Due in the next 14 days or due date none" ?
Seems like the field is greyed out once it is selected.

Actions #47

Updated by mouson chen over 6 years ago

+1

Actions #48

Updated by Jérôme BATAILLE over 5 years ago

Hi, I have developed this feature in my company, I will try to bring it as a plugin.

Actions #49

Updated by Andreas M over 5 years ago

is there an plugin version for 4.0? On the plugin site itself it tells me an 404?

Both https://www.redmine.org/plugins/boolean_query
and https://www.redmine.org/plugins/_query deliver 404

Actions #50

Updated by Tobias Schmidt over 5 years ago

As far as I know there is no version for 4.0 available. But you could keep an eye on mbideau/redmine_zquery. There even is an issue for redmine 4.xx support.

Andreas Michel wrote:

is there an plugin version for 4.0?

Actions #51

Updated by Emanuel Reisinger about 5 years ago

Tobias Schmidt wrote:

As far as I know there is no version for 4.0 available. But you could keep an eye on mbideau/redmine_zquery. There even is an issue for redmine 4.xx support.

Andreas Michel wrote:

is there an plugin version for 4.0?

But mbideau/redmine_zquery is an older version and does not suppport Redmine 3.4 as _query version 0.0.3 posted in #42 by Quan VN.

Actions #52

Updated by Emanuel Reisinger about 5 years ago

We are using OR filter in our work heavily and I have to upgrade our Ubuntu server and Redmine periodically.
With the last Ubuntu upgrade to 18.04 LTS Ruby 2.5 and Rails 5.2 was introduced. This versions are supported by Redmine 4.x only and I don't want maintain old versions of Ruby and Rails on our system.
So I have upgrade to Redmine 4.x.

I'm not a Ruby and Ruby on Rails developer but these are my first steps and with help of article https://www.justinweiss.com/articles/rails-5-module-number-prepend-and-the-end-of-alias-method-chain/ I could modify the plugin to work with Redmine 4.x because alias_method_chain and other methods has been removed with Rails 5.
I don't know how to integrate the new Query.operators match and not match in the new plugin implementation because there is no initializer/method for that.
So I removed these new operators because they are not required for the OR filters and are subjects for a separate plugin or patch to Query.statement. The latter is to prefer.
The second reason why I removed the new operators is that it's not clear where they come from.

Further I've changed the names of the or filters for a better understandability and moved the text into translation files and added german translations.
  • Any follow (AND) -> AND any following
  • Any follow (OR) -> OR any following
  • All follow (OR) -> OR all following

You can easily change the names by updating plugins/_query/config/locals/en.yml or adding further translations if you desire.

So I offer a plugin update for Redmine 4, see _query.0.0.4.redmine4x.tar.gz. Tested on Ubuntu 18.04 with Redmine 4.0.4.

I don't think that the plugin works with Redmine 3.4 because of the modifications besides alias_method_chain. I havn't tested it with Redmine 3.4.

By the way the implementation is really a quick and dirty hack because it overwrites the Query.statement method. Any changes in the core Query.statement implementation won't be considered by this plugin unless an update is made.
I'll try to create a patch to Redmine core with functionality as this plugin provides, so that this plugin is not required any longer.

Actions #53

Updated by giorgio rossi about 5 years ago

Thanks for Your work.

Unfortunately the two methods match and not match introduce the logical operators inside the string fields. For example, if I want to search for a more then a string in a field in OR:

Description match string1 ~ string2 ~ string3 ~ string4

I obtain as result all issues that contain at least one of the four strings in field Description

Actions #54

Updated by Emanuel Reisinger about 5 years ago

giorgio rossi wrote:

Thanks for Your work.

Unfortunately the two methods match and not match introduce the logical operators inside the string fields. For example, if I want to search for a more then a string in a field in OR:

Description match string1 ~ string2 ~ string3 ~ string4

I obtain as result all issues that contain at least one of the four strings in field Description

I've read the readme and now understand what the operators match and not match do.
They have nothing to do with the or filters but are useful extensions for the queries. But I still don't know how to implement the new operators in the _query plugin. Sorry.

Actions #55

Updated by Emanuel Reisinger about 5 years ago

I've found a simple solution to get match operators implemented in _query plugin.
So container _query.0.0.5.redmine4x.tar.gz includes or filters and match operators that works with Redmine 4.x.

Actions #56

Updated by Emanuel Reisinger about 5 years ago

I've made patches to integrate the or filters and match operators into redmine core.
So the _query plugin is obsolete with this patches.

The provided patch files has to be applied in the correct order and are based on svn revision 18620. First, issue4339_orfilter.patch and then issue4939_match_operators.patch.

The usage of or-filter and match operators should be added to the Redmine wiki [[https://www.redmine.org/projects/redmine/wiki/RedmineIssueList]] because without an usage descriptions the full power of the match operators are unknown. Therefore I added the README.txt of _query plugin which describes it.

Actions #57

Updated by giorgio rossi about 5 years ago

Fantastic job!!
Thanks You

Actions #58

Updated by Jochen Kuehner almost 5 years ago

Is anybody in contact with Jean-Philippe Lang so this has a change to get merged?

The filter options need to be much more poerfull...

Actions #59

Updated by Jérôme BATAILLE almost 5 years ago

Hi,

Can you put some screen captures to be able to see how it works and how it changes the native behavior ?

Actions #60

Updated by Emanuel Reisinger almost 5 years ago

All issues

All issues to compare the examples:
All issues to compare match examples

Or filter example

One of the or filter (AND any following) in action. In the Add filter dropdown they are grouped in section OR filters.
In the filter section Author and Assignee are added to the or filter AND any following (AND (Author OR Assignee)). The result shows the issues where Dave Lopper is either Assignee or Author.
One or filter in action

Match operator examples

Please see README.txt that describes the usage of or filter and match operators.

A simple example that uses the match filter:
A simple match operator example

A simple example that uses the not match filter, the opposite of simple match filter example:
A simple not match operator example

A more complex example that uses the match filter:
A complex match operator example

I hope this screen captures helps.

Actions #61

Updated by Jérôme BATAILLE almost 5 years ago

Thanks Emanuel

Actions #62

Updated by Jérôme BATAILLE almost 5 years ago

+1

Actions #63

Updated by name zero almost 5 years ago

I second that, JPL (or someone with equivalent competency) should review and merge.
This is extremely useful!

Actions #64

Updated by Yuuki NARA almost 5 years ago

Thanks for useful patch.
http://www.redmine.org/issues/4939#note-56

I hope a lot of people have confirmed that this feature works and get it incorporated into RedmineCore as soon as possible.

However, the latest trunk rev19405 could not apply this patch.
To make it easier to try, I created a branch on my repository and patched it.

https://github.com/y503unavailable/redmine/tree/feature-patch4939

https://github.com/redmine/redmine/compare/master...y503unavailable:feature-patch4939.patch

In this code, I checked the operation of the or-filter function.

I added a Japanese term file patch.
But,created Tentatively.


The following branch publishes the 4.2-stable with this issue and the patch of issue 5358 applied.
I update every month for the latest trunk.

https://github.com/y503unavailable/redmine/tree/feature-unofficialcooking

Share Issues Categories for sub-projects
https://www.redmine.org/issues/5358

Actions #65

Updated by Robert Röttger over 4 years ago

+1 for this feature

Actions #66

Updated by Martin Erler over 4 years ago

+1 for this feature (to create a simple filter: assignee OR watcher)

Actions #67

Updated by Pawel Orzechowski about 4 years ago

Yes, yes, yes +1 :-) ;-)

Actions #68

Updated by Johannes Heymann about 4 years ago

Being able to set the boolean operators would be very useful
+1 for this feature

Actions #69

Updated by Ray Cheung about 4 years ago

Johannes Heymann wrote:

Being able to set the boolean operators would be very useful
+1 for this feature

+1 for this feature

Actions #70

Updated by Txinto Vaz about 4 years ago

+1 too

Actions #71

Updated by Alexandr Chernyaev about 4 years ago

+1

Actions #72

Updated by Michael Aram about 4 years ago

+1

Actions #73

Updated by Sunding Wei almost 4 years ago

+1, I want this feature too!

2021-02-04:
I merge the patch into latest Redmine 4.x with a branch called logical-filters, check it out here
https://github.com/sweihub/redmine/tree/logical-filters

But still pity for each filter can only be used once.

Actions #74

Updated by Holger Just over 3 years ago

  • Has duplicate Feature #34793: Filter OR / AND for issues and repeated columns in filter settings added
Actions #75

Updated by Micael Broun over 3 years ago

https://www.redmine.org/issues/4939#note-56
for this patch really need ability to use the same column more than once
for be able to use simple filter like
Target OR Target

And espessially for OR in Tags - really can't use this feature for full without deep filtration

Actions #76

Updated by Fabrizio Sebastiani over 3 years ago

+1

Not clear to me whether this feature have been incorporated into the RedmineCore or not (?)

Actions #77

Updated by txemi M about 3 years ago

+1
+1
+1

Actions #78

Updated by Andrea Valle almost 3 years ago

+1

Actions #79

Updated by Erik S. almost 3 years ago

+1 for this but more logical operators for filters in general also multiple conditions for the same field.

How can this basic functionality not have been prioritized after all these years (11 years!)?

I'm trying to create filters to create a simple Eisenhower Matrix: [[https://todoist.com/productivity-methods/eisenhower-matrix]] with the help of

tags
but I fail since cannot create the condition:
tag is "Important" AND tag is "Urgent"
for a logical AND. But I can only create a logical OR.

Please prioritize!

Actions #80

Updated by Jannis Hübl almost 3 years ago

+1
+1

Actions #81

Updated by Igor M over 2 years ago

+1

Actions #82

Updated by Peter ILLETSCHKO over 2 years ago

+1

Actions #83

Updated by Mr. Míng over 2 years ago

+1

Actions #84

Updated by stéphane plaissy over 2 years ago

+1

Actions #85

Updated by Vladimir Bocharov over 2 years ago

+1

Actions #86

Updated by Vito Marolda over 2 years ago

+1

Actions #87

Updated by hagay go over 2 years ago

Hi everyone,

Tried/tested an upgrade to redmine 5.0.1.

The _query.0.0* plugins does not seem to work on redmine 5.0.X (at least for me) :

/usr/local/bundle/gems/zeitwerk-2.5.4/lib/zeitwerk/loader/callbacks.rb:25:in `on_file_autoloaded': expected file /usr/src/redmine/plugins/_query/lib/query_patch4.rb to define constant QueryPatch4, but didn't (Zeitwerk::NameError)

      raise Zeitwerk::NameError.new("expected file #{file} to define constant #{cpath}, but didn't", cref.last)
      ^^^^^
        from /usr/local/bundle/gems/zeitwerk-2.5.4/lib/zeitwerk/kernel.rb:28:in `require'
        from /usr/local/bundle/gems/zeitwerk-2.5.4/lib/zeitwerk/loader/helpers.rb:95:in `const_get'
        from /usr/local/bundle/gems/zeitwerk-2.5.4/lib/zeitwerk/loader/helpers.rb:95:in `cget'
        from /usr/local/bundle/gems/zeitwerk-2.5.4/lib/zeitwerk/loader.rb:237:in `block (2 levels) in eager_load'
        from /usr/local/bundle/gems/zeitwerk-2.5.4/lib/zeitwerk/loader/helpers.rb:26:in `block in ls'
        from /usr/local/bundle/gems/zeitwerk-2.5.4/lib/zeitwerk/loader/helpers.rb:18:in `each_child'
        from /usr/local/bundle/gems/zeitwerk-2.5.4/lib/zeitwerk/loader/helpers.rb:18:in `ls'
        from /usr/local/bundle/gems/zeitwerk-2.5.4/lib/zeitwerk/loader.rb:232:in `block in eager_load'
        from /usr/local/bundle/gems/zeitwerk-2.5.4/lib/zeitwerk/loader.rb:217:in `synchronize'
        from /usr/local/bundle/gems/zeitwerk-2.5.4/lib/zeitwerk/loader.rb:217:in `eager_load'
        from /usr/local/bundle/gems/zeitwerk-2.5.4/lib/zeitwerk/loader.rb:317:in `each'
        from /usr/local/bundle/gems/zeitwerk-2.5.4/lib/zeitwerk/loader.rb:317:in `eager_load_all'
        from /usr/local/bundle/gems/railties-6.1.6/lib/rails/application/finisher.rb:133:in `block in <module:Finisher>'
        from /usr/local/bundle/gems/railties-6.1.6/lib/rails/initializable.rb:32:in `instance_exec'
        from /usr/local/bundle/gems/railties-6.1.6/lib/rails/initializable.rb:32:in `run'
        from /usr/local/bundle/gems/railties-6.1.6/lib/rails/initializable.rb:61:in `block in run_initializers'
        from /usr/local/lib/ruby/3.1.0/tsort.rb:228:in `block in tsort_each'
        from /usr/local/lib/ruby/3.1.0/tsort.rb:350:in `block (2 levels) in each_strongly_connected_component'
        from /usr/local/lib/ruby/3.1.0/tsort.rb:431:in `each_strongly_connected_component_from'
        from /usr/local/lib/ruby/3.1.0/tsort.rb:349:in `block in each_strongly_connected_component'
        from /usr/local/lib/ruby/3.1.0/tsort.rb:347:in `each'
        from /usr/local/lib/ruby/3.1.0/tsort.rb:347:in `call'
        from /usr/local/lib/ruby/3.1.0/tsort.rb:347:in `each_strongly_connected_component'
        from /usr/local/lib/ruby/3.1.0/tsort.rb:226:in `tsort_each'
        from /usr/local/lib/ruby/3.1.0/tsort.rb:205:in `tsort_each'
        from /usr/local/bundle/gems/railties-6.1.6/lib/rails/initializable.rb:60:in `run_initializers'
        from /usr/local/bundle/gems/railties-6.1.6/lib/rails/application.rb:391:in `initialize!'
        from /usr/src/redmine/config/environment.rb:16:in `<top (required)>'
        from /usr/local/bundle/gems/zeitwerk-2.5.4/lib/zeitwerk/kernel.rb:35:in `require'
        from /usr/local/bundle/gems/zeitwerk-2.5.4/lib/zeitwerk/kernel.rb:35:in `require'
        from /usr/local/bundle/gems/activesupport-6.1.6/lib/active_support/dependencies.rb:332:in `block in require'
        from /usr/local/bundle/gems/activesupport-6.1.6/lib/active_support/dependencies.rb:299:in `load_dependency'
        from /usr/local/bundle/gems/activesupport-6.1.6/lib/active_support/dependencies.rb:332:in `require'
        from config.ru:3:in `block in <main>'
        from /usr/local/bundle/gems/rack-2.2.3/lib/rack/builder.rb:116:in `eval'
        from /usr/local/bundle/gems/rack-2.2.3/lib/rack/builder.rb:116:in `new_from_string'
        from /usr/local/bundle/gems/rack-2.2.3/lib/rack/builder.rb:105:in `load_file'
        from /usr/local/bundle/gems/rack-2.2.3/lib/rack/builder.rb:66:in `parse_file'
        from /usr/local/bundle/gems/rack-2.2.3/lib/rack/server.rb:349:in `build_app_and_options_from_config'
        from /usr/local/bundle/gems/rack-2.2.3/lib/rack/server.rb:249:in `app'
        from /usr/local/bundle/gems/rack-2.2.3/lib/rack/server.rb:422:in `wrapped_app'
        from /usr/local/bundle/gems/rack-2.2.3/lib/rack/server.rb:312:in `block in start'
        from /usr/local/bundle/gems/rack-2.2.3/lib/rack/server.rb:379:in `handle_profiling'
        from /usr/local/bundle/gems/rack-2.2.3/lib/rack/server.rb:311:in `start'
        from /usr/local/bundle/gems/railties-6.1.6/lib/rails/commands/server/server_command.rb:39:in `start'
        from /usr/local/bundle/gems/railties-6.1.6/lib/rails/commands/server/server_command.rb:144:in `block in perform'
        from <internal:kernel>:90:in `tap'
        from /usr/local/bundle/gems/railties-6.1.6/lib/rails/commands/server/server_command.rb:135:in `perform'
        from /usr/local/bundle/gems/thor-1.2.1/lib/thor/command.rb:27:in `run'
        from /usr/local/bundle/gems/thor-1.2.1/lib/thor/invocation.rb:127:in `invoke_command'
        from /usr/local/bundle/gems/thor-1.2.1/lib/thor.rb:392:in `dispatch'
        from /usr/local/bundle/gems/railties-6.1.6/lib/rails/command/base.rb:69:in `perform'
        from /usr/local/bundle/gems/railties-6.1.6/lib/rails/command.rb:48:in `invoke'
        from /usr/local/bundle/gems/railties-6.1.6/lib/rails/commands.rb:18:in `<top (required)>'
        from bin/rails:4:in `require'
        from bin/rails:4:in `<main>'

Any chance to create/point to an updated version of the plugin ?

Thanks in advance.

Actions #88

Updated by Tilman Klaeger over 2 years ago

Hello, i tried to apply the patch proposed by Sunding Wei in #4939-73 to the latest Redmine (5.0.1) and it looks like working. I’m not a Ruby pro though.
This seems to be the latest version of what used to be a plugin. And at least on Redmine 4.1 this worked very well. Thanks to everyone for former contributions!!!

See the patch (exported with git format-patch) attached: Redmine5.0.1-or-query-patch.patch

Actions #89

Updated by hagay go over 2 years ago

Hi , thanks for the info.

If i understand you correctly , the patch is "fixing" redmine to work with old redmine version of the plugin ?

While this might be usable for others , for me at least , I cant use patches on redmine itself and need to wait for an updated plugin version.

Actions #90

Updated by Tilman Klaeger over 2 years ago

hagay go wrote:

If i understand you correctly , the patch is "fixing" redmine to work with old redmine version of the plugin ?

The patch inserts the functionality of the older plugin right into Redmine, no plugin needed at all afterwards.

While this might be usable for others , for me at least , I cant use patches on redmine itself and need to wait for an updated plugin version.

I’m afraid I can’t help on this one. But maybe someone else can chime in and help.

Actions #91

Updated by John Wang about 2 years ago

+1

I need it sooo much.

Actions #92

Updated by thuruk thuruk almost 2 years ago

+1 ! Redmine has some glaringly missing functionalities, and this is one of them.

Actions #94

Updated by Yasu Saku about 1 year ago

+1
I attempted to update the or-query-path based on post #4939-88 for Redmine 5.1.0.
I hope it proves helpful.

Actions #95

Updated by Holger Just 8 months ago

Actions #96

Updated by Cécile Ichard 7 months ago

Could you please clarify if this feature is now integrated in redmine-core ? If yes which version ?
In the contrary, could you please indicate what is the procedure to follow ?

Actions #97

Updated by Ammar Hakim 4 months ago

Cécile Ichard wrote in #note-96:

Could you please clarify if this feature is now integrated in redmine-core ? If yes which version ?
In the contrary, could you please indicate what is the procedure to follow ?

This feature is not integrated with the core installation.

I was able to get it working on version 5.1.2 by doing the following:

1. Downloading and untar _query.0.0.4.redmine4x.tar.gz attachment into redmine/plugins
2. Download the patch file or-query-patch-for-Redmine-5.1.0.patch
3. Patch the plugin using the following command while remaining in the redmine directory

patch -p1 < or-query-patch-for-Redmine-5.1.0.patch 

4. Create a new directory called redmine_or_filter under redmine/plugin/_query/lib
5. Move the query_patch4.rb file from redmine/lib into the new redmine_or_filter directory.
6. Replace any module definitions within the query_patch4.rb file from QueryPatch to QueryPatch4
7. Run your server

Also you may have to migrate your db for the menu to show correctly as in the image from the original post. I used the following 2 commands for the development instance (not production), not sure entirely why/what it does do it at your own risk I am not a Rails or Redmine professional.

RAILS_ENV=development rake db:migrate
bundle exec rake redmine:plugins:migrate

More info here:
https://www.redmine.org/projects/redmine/wiki/Plugins

Actions #98

Updated by Takenori TAKAKI 3 months ago

Allowing users to use the OR logical operator will let them filter issues under more varied conditions.
I respect the code proposals and discussions in this issue.
To support this goal, I’ve proposed a patch in a new issue, #41214,
that directly addresses the OR condition written in this issue's description ( filter1=value1 OR filter2=value2 OR filter3=value3 ).
Please take a look if you're interested.

Actions #99

Updated by Go MAEDA 3 months ago

  • Related to Feature #41214: Allow the 'OR' Logical Operator in Query added
Actions #100

Updated by Jakob Schlanstedt 2 months ago

Filters without the `OR` operator are inherently limited. Every logical formula can be expressed in Disjunctive Normal Form (DNF), which means combining multiple conditions using `OR`.

For instance, a logical expression like (A ^ B ^ C) V (D ^ E ^ F ^ G) V (H ...)\) showcases how `OR` is used to combine various statements.

Without `OR`, you can’t represent such combinations. Imagine you need a filter that passes items if Condition A, Condition B, or Condition C is true. This is expressed as (A V B V C). Without the `OR` operator, it’s impossible to create this filter, severely limiting the complexity and effectiveness of the filtering mechanisms.

I think this should be implemented in Base Redmine just because of that.

Actions

Also available in: Atom PDF