[CrystalBall] Fix IN/NOT_IN filter operators

Also add special handling for boolean operators

Demo: https://20353-0cda3bc-tainted-yasinsonui-in-not-in-dot-luci-milo-dev.appspot.com/ui/crystal-ball

Bug:b/503451200
Change-Id: I60fbf6847bef68b15976a91f6d8520600cdf9170
Reviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-go/+/7794086
Commit-Queue: Yasin Sonui <yasinsonui@google.com>
Reviewed-by: Kyle Bridgemohansingh <kbridge@google.com>
3 files changed
tree: 97c549c9b67663c9937e6f480f8388e1c7a39068
  1. analysis/
  2. appengine/
  3. auth/
  4. auth_service/
  5. bisection/
  6. build/
  7. buildbucket/
  8. casviewer/
  9. cipd/
  10. cipkg/
  11. client/
  12. common/
  13. config/
  14. config_service/
  15. crystal_ball/
  16. cv/
  17. deploy/
  18. examples/
  19. gae/
  20. gce/
  21. grpc/
  22. hardcoded/
  23. led/
  24. logdog/
  25. luci_notify/
  26. lucicfg/
  27. lucictx/
  28. luciexe/
  29. mailer/
  30. milo/
  31. mmutex/
  32. provenance/
  33. recipes_py/
  34. resultai/
  35. resultdb/
  36. scheduler/
  37. scripts/
  38. server/
  39. source_index/
  40. standalone/
  41. starlark/
  42. swarming/
  43. teams/
  44. third_party/
  45. tokenserver/
  46. tools/
  47. tree_status/
  48. turboci/
  49. vpython/
  50. web/
  51. .gitallowed
  52. .gitignore
  53. .go-lintable
  54. AUTHORS
  55. codereview.settings
  56. CONTRIBUTING.md
  57. CONTRIBUTORS
  58. GEMINI.md
  59. go.mod
  60. go.sum
  61. LICENSE
  62. lucichecker.py
  63. OWNERS
  64. PRESUBMIT.py
  65. README.md
  66. SECURITY_OWNERS
  67. staticcheck.conf
  68. tools.go
  69. WATCHLISTS
README.md

luci-go: LUCI services and tools in Go

GoReference

Installing

LUCI Go code is meant to be worked on from an Chromium infra.git checkout, which enforces packages versions and Go toolchain version. First get fetch via depot_tools.git then run:

fetch infra
cd infra/go
eval `./env.py`
cd src/go.chromium.org/luci

It is now possible to directly install tools with go install:

go install go.chromium.org/luci/auth/client/cmd/...@latest
go install go.chromium.org/luci/buildbucket/cmd/...@latest
go install go.chromium.org/luci/cipd/client/cmd/...@latest
go install go.chromium.org/luci/client/cmd/...@latest
go install go.chromium.org/luci/cv/cmd/...@latest
go install go.chromium.org/luci/gce/cmd/...@latest
go install go.chromium.org/luci/grpc/cmd/...@latest
go install go.chromium.org/luci/logdog/client/cmd/...@latest
go install go.chromium.org/luci/luci_notify/cmd/...@latest
go install go.chromium.org/luci/lucicfg/cmd/...@latest
go install go.chromium.org/luci/luciexe/legacy/cmd/...@latest
go install go.chromium.org/luci/mailer/cmd/...@latest
go install go.chromium.org/luci/mmutex/cmd/...@latest
go install go.chromium.org/luci/resultdb/cmd/...@latest
go install go.chromium.org/luci/server/cmd/...@latest
go install go.chromium.org/luci/swarming/cmd/...@latest
go install go.chromium.org/luci/tokenserver/cmd/...@latest
go install go.chromium.org/luci/tools/cmd/...@latest

Contributing

Contributing uses the same flow as Chromium contributions.