Skip to content

Conversation

@kilfoyle
Copy link
Contributor

@kilfoyle kilfoyle commented Oct 27, 2025

This refreshes the Painless reference docs based on the revamp project done with the Kibernum team. All changes can be previewed in this Painless section. Sorry about the large size!

Related:

@github-actions
Copy link
Contributor

github-actions bot commented Oct 27, 2025

🔍 Preview links for changed docs

More links …

@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?

@elasticsearchmachine elasticsearchmachine added the needs:triage Requires assignment of a team area label label Nov 26, 2025
@kilfoyle kilfoyle requested a review from a team November 26, 2025 20:40
@kilfoyle kilfoyle changed the title [DRAFT] Painless docs overhaul (reference) Painless docs overhaul (reference) Nov 26, 2025
@kilfoyle kilfoyle added >docs General docs changes Team:Docs Meta label for docs team labels Nov 26, 2025
@elasticsearchmachine elasticsearchmachine removed the needs:triage Requires assignment of a team area label label Nov 26, 2025
@elasticsearchmachine
Copy link
Collaborator

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

@kilfoyle
Copy link
Contributor Author

kilfoyle commented Dec 8, 2025

@jdconrad When you have some time would you mind taking a look through this one? The most significant changes are to the examples in the Painless contexts section, since those now use the Kibana eCommerce sample data.

There are also some new troubleshooting pages in this PR, if you don't mind checking that one too.

No rush, by the way. I'll be out of office from Friday until end of year and merging this can wait until after I return. Thanks!

@jdconrad
Copy link
Contributor

jdconrad commented Jan 9, 2026

@kilfoyle Just wanted to let you know I am working my way through this. Should be done early next week at the latest.

Copy link
Contributor

@jdconrad jdconrad left a comment

Choose a reason for hiding this comment

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

LGTM! I left a bunch of minor comments.


Before diving into the dispatch process, here a brief definition of the main concepts:

* **Receiver:** The object or class on which the method is called. For example, in `s.foo(a, b)` the variable `s` is the receiver
Copy link
Contributor

Choose a reason for hiding this comment

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

May want to include something about the type s is as well as that's the important part.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@jdconrad Would you have a suggestion for what we can say here? This isn't familiar territory for me so I'm not sure.

Copy link
Contributor

Choose a reason for hiding this comment

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

So the method foo that will be called depends on the type that the variable s is. For example if s is a List then foo will be called on the List type.

Copy link
Contributor

@yetanothertw yetanothertw left a comment

Choose a reason for hiding this comment

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

👍

@kilfoyle
Copy link
Contributor Author

kilfoyle commented Jan 16, 2026

@jdconrad Thanks so much for the thorough review on this giant set of docs! 🙏

I've resolved most of your comments. I've opened issues for a few of the items:


One last thing: Can you please help with a couple of remaining items? For your two comments here and here I'm not sure exactly what change to make (since I'm not really familiar with Painless nor Java scripting)? Would you have suggestions?

@kilfoyle
Copy link
Contributor Author

The last remaining items are fixed. Thanks again for all of your help on this @jdconrad! 🙏

@kilfoyle kilfoyle merged commit 6d100d9 into elastic:main Jan 21, 2026
12 checks passed
szybia added a commit to szybia/elasticsearch that referenced this pull request Jan 21, 2026
…-tests

* upstream/main: (104 commits)
  Partition time-series source (elastic#140475)
  Mute org.elasticsearch.xpack.esql.heap_attack.HeapAttackSubqueryIT testManyRandomKeywordFieldsInSubqueryIntermediateResultsWithSortManyFields elastic#141083
  Reindex relocation: skip nodes marked for shutdown (elastic#141044)
  Make fails on fixture caching not fail image building (elastic#140959)
  Add multi-project tests for get and list reindex (elastic#140980)
  Painless docs overhaul (reference) (elastic#137211)
  Panama vector implementation of codePointCount (elastic#140693)
  Enable PromQL in release builds (elastic#140808)
  Update rest-api-spec for Jina embedding task (elastic#140696)
  [CI] ShardSearchPhaseAPMMetricsTests testUniformCanMatchMetricAttributesWhenPlentyOfDocumentsInIndex failed (elastic#140848)
  Combine hash computation with bloom filter writes/reads (elastic#140969)
  Refactor posting iterators to provide more information (elastic#141058)
  Wait for cluster to recover to yellow before checking index health (elastic#141057) (elastic#141065)
  Fix repo analysis read count assertions (elastic#140994)
  Fixed a bug in logsdb rolling upgrade sereverless tests involving par… (elastic#141022)
  Fix readiness edge case on startup (elastic#140791)
  PromQL: fix quantile function (elastic#141033)
  ignore `mmr` command for check (in development) (elastic#140981)
  Use Double.compare to compare doubles in tdigest.Sort (elastic#141049)
  Migrate third party module tests using legacy test clusters framework (elastic#140991)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

>docs General docs changes Team:Docs Meta label for docs team v9.4.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants