Skip to content

Conversation

@craigtaverner
Copy link
Contributor

@craigtaverner craigtaverner commented Dec 19, 2025

This is still using the old format. There is also an operators/cast.json file which could be extended to provide the same information in a more consistent way with the rest of the operators. But for now this was the simplest change to get kibana unblocked.

The reason it was disabled was just that it used the wrong path, after the change to DocsV3. So this fix just wires it into the DocsV3Support class, so it will use the right paths going forward. A better change would be to get the operators/cast.json file to add all this information into the parameters list. But that is more work (both for us and for Kibana).

This is still using the old format. There is also an operators/cast.json file which could be extended to provide the same information in a more consistent way with the rest of the operators.
@craigtaverner craigtaverner added >docs General docs changes Team:Analytics Meta label for analytical engine team (ESQL/Aggs/Geo) :Analytics/ES|QL AKA ESQL labels Dec 19, 2025
@elasticsearchmachine elasticsearchmachine added Team:Docs Meta label for docs team v9.4.0 labels Dec 19, 2025
@elasticsearchmachine
Copy link
Collaborator

Pinging @elastic/es-analytical-engine (Team:Analytics)

@elasticsearchmachine
Copy link
Collaborator

Pinging @elastic/core-docs (Team:Docs)

@github-actions
Copy link
Contributor

ℹ️ Important: Docs version tagging

👋 Thanks for updating the docs! Just a friendly reminder that our docs are now cumulative. This means all 9.x versions are documented on the same page and published off of the main branch, instead of creating separate pages for each minor version.

We use applies_to tags to mark version-specific features and changes.

Expand for a quick overview

When to use applies_to tags:

✅ At the page level to indicate which products/deployments the content applies to (mandatory)
✅ When features change state (e.g. preview, ga) in a specific version
✅ When availability differs across deployments and environments

What NOT to do:

❌ Don't remove or replace information that applies to an older version
❌ Don't add new information that applies to a specific version without an applies_to tag
❌ Don't forget that applies_to tags can be used at the page, section, and inline level

🤔 Need help?

Copy link
Contributor

@ivancea ivancea left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks Craig! Looks good. The comments are minor nits, so feel free to treat them as such!

"geohash" : "to_geohash",
"geohex" : "to_geohex",
"geotile" : "to_geotile",
"int" : "TO_INTEGER",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: Can we normalize them to lowercase? I know you're not touching its generation here, but I wonder if there's some hidden issue behind that

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I also was surprised by this, but as you said I'm not touching the actual generating code, so I thought to leave this alone for now.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A quick investigation, and this seems to come from the EsqlFunctionRegistry.nameSurrogates, which uses upper-case for TO_IP, TO_LONG and TO_INTEGER. We could fix that, but it seems out of scope for this PR.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I just threw in an extra toLowerCase

try (XContentBuilder report = new XContentBuilder(JsonXContent.jsonXContent, Files.newOutputStream(file))) {
report.humanReadable(true).prettyPrint();
report.startObject();
try (XContentBuilder report = JsonXContent.contentBuilder().humanReadable(true).prettyPrint().lfAtEnd().startObject()) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: Can we have the startObject() out of the try? To make it more readable. Same for endObject() at the end.
Even if every method returns the same object this feels like a misuse of the chaining.
The humanReadable() and prettyPrint() could too, but they're not structurally relevant for the json, so whatever

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I actually inherited this pattern from the existing code for generating kibana definition files, but changed it to your suggestion because I agree with the improved visual balance of things.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

:Analytics/ES|QL AKA ESQL >docs General docs changes Team:Analytics Meta label for analytical engine team (ESQL/Aggs/Geo) Team:Docs Meta label for docs team v9.4.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants