Skip to content

Conversation

@clarktsiory
Copy link
Contributor

@clarktsiory clarktsiory commented Oct 16, 2025

https://issues.rudder.io/issues/27737

Allow to parse a "date" (yyyy-MM-dd) and a "datetime" (ISO8601 format, without the milliseconds i.e. yyyy-MM-ddTHH:mm:ssZ) at the same time in a date comparator :

  • in the backend, it's about adding the support and the mapping to the LDAP filters is straightforward,
  • in the frontend, there is some simplification because of the limitations of the date picker : the timezone is always set to Z (it could be edited by hand though)
  • in the doc, we now have explicit examples about the supported format

Screenshot :
image

It also extends the format of the following fields (there is still backward compatibility for dates) :

  • bios > release date
  • software > license expiration date

Note : it's still using our default joda-time parser, without the support of millis. Later we could imagine using explicit Java time formatters (as in the unit tests), which support both

TODO: add clear examples in the API doc of the datetime formats

@clarktsiory
Copy link
Contributor Author

PR updated with a new commit

@clarktsiory
Copy link
Contributor Author

PR rebased

@clarktsiory clarktsiory force-pushed the enh_27737/add_the_possibility_to_get_all_inventory_where_lastinventorydate_is_after_a_given_datetime branch from de60f8f to f26e99d Compare October 21, 2025 09:53
…astInventoryDate is after a given datetime

Fixes #27737: Add the possibility to get all inventory where lastInventoryDate is after a given datetime
@clarktsiory
Copy link
Contributor Author

PR updated with a new commit

…where lastInventoryDate is after a given datetime

Fixes #27737: Add the possibility to get all inventory where lastInventoryDate is after a given datetime
@clarktsiory
Copy link
Contributor Author

PR updated with a new commit

…entory where lastInventoryDate is after a given datetime

Fixes #27737: Add the possibility to get all inventory where lastInventoryDate is after a given datetime
@clarktsiory
Copy link
Contributor Author

PR updated with a new commit

@clarktsiory clarktsiory requested review from P4uline and fanf October 23, 2025 15:05
case (false, LesserEq) => LTEQ(attributeName, dateString)
// case Regex => HAS(attributeName) //"default, non interpreted regex
case _ => HAS(attributeName) // default to Exists
case _ => HAS(attributeName) // default to Exists
Copy link
Member

Choose a reason for hiding this comment

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

Something feels strange, because IIRC, the inventory date is in CoreNodeFact, so it's the memory checker that is used, not the old LDAP one for that part. But you didn't seem to have changed NodeCriterionMatcherDate or other matcher.

Perhaps I'm just not remember correctly how things work.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

indeed, it's addressed in 287f7d7
And I left this code there, since it's an enhancement that applies to any "date" fields (I mentioned them in the PR description)

…all inventory where lastInventoryDate is after a given datetime

Fixes #27737: Add the possibility to get all inventory where lastInventoryDate is after a given datetime
@clarktsiory
Copy link
Contributor Author

PR updated with a new commit

…to get all inventory where lastInventoryDate is after a given datetime

Fixes #27737: Add the possibility to get all inventory where lastInventoryDate is after a given datetime
@clarktsiory
Copy link
Contributor Author

PR updated with a new commit

@clarktsiory clarktsiory marked this pull request as ready for review October 30, 2025 18:29
@clarktsiory clarktsiory requested a review from fanf October 30, 2025 18:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants