Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

OpenAPI: Remove deprecated TrueExpression and FalseExpression

Open Beginner friendly
#18,351 3 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

@zhang-arvin is already working on this.

Since Oct 9, 2026.

  • #18431 by @zhang-arvin — open

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
78/100
Issue type
Refactor
Clarity
Clearly specified
Activity status
Active
Tech stack
java, openapi
Domain
api

Research direction

Start with rest-catalog-open-api.yaml and inspect the Predicate definition, then compare it with Appendix B of format/expressions-spec.md and the behavior described for Java's ExpressionParser.fromJson. Remove the two deprecated alternatives while retaining the bare boolean form, and verify that the schema matches the expressions specification and reference parser behavior.

Written by the indexing model from the issue text.

Description

improvement
Feature Request / Improvement

rest-catalog-open-api.yaml still lists TrueExpression and FalseExpression ({"type":"true"} / {"type":"false"}) as deprecated alternatives in Predicate, after apache/iceberg#17138.

These forms don't match the rest of the project:

  • format/expressions-spec.md Appendix B doesn't include them. PREDICATE allows bare true/false, and DEPRECATED_PREDICATE lists only the term-based forms.
  • Java's ExpressionParser.fromJson rejects them. {"type":"true"} resolves to the TRUE operation, has no case in the switch, and falls through to predicate parsing, which requires term.

So the reference implementation (and iceberg-go) rejects a form the OpenAPI schema says is valid.

Proposal: remove TrueExpression and FalseExpression from Predicate, leaving the bare boolean. This makes OpenAPI match the expressions spec and the reference implementation.

Happy to open the PR.

Query engine

None

Willingness to contribute
  • I can contribute this improvement/feature independently
  • I would be willing to contribute this improvement/feature with guidance from the Iceberg community
  • I cannot contribute this improvement/feature at this time
Dominant language
Java
Stars
9.3k
Forks
3.6k
Avg merge
2d 5h
Merged PRs (30d)
135

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from apache/iceberg

All issues in apache/iceberg

Similar issues

More Java issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.