Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

HPCC-29403 Allow disabling time zone adjustments in ECLWatch #17655

Open
wants to merge 1 commit into
base: candidate-9.2.x
Choose a base branch
from

Conversation

kunalaswani
Copy link
Contributor

Toggle Button added to switch between Local and UTC timezones.

Type of change:

  • This change is a bug fix (non-breaking change which fixes an issue).
  • This change is a new feature (non-breaking change which adds functionality).
  • This change improves the code (refactor or other change that does not change the functionality)
  • This change fixes warnings (the fix does not alter the functionality or the generated code)
  • This change is a breaking change (fix or feature that will cause existing behavior to change).
  • This change alters the query API (existing queries will have to be recompiled)

Checklist:

  • My code follows the code style of this project.
    • My code does not create any new warnings from compiler, build system, or lint.
  • The commit message is properly formatted and free of typos.
    • The commit message title makes sense in a changelog, by itself.
    • The commit is signed.
  • My change requires a change to the documentation.
    • I have updated the documentation accordingly, or...
    • I have created a JIRA ticket to update the documentation.
    • Any new interfaces or exported functions are appropriately commented.
  • I have read the CONTRIBUTORS document.
  • The change has been fully tested:
    • I have added tests to cover my changes.
    • All new and existing tests passed.
    • I have checked that this change does not introduce memory leaks.
    • I have used Valgrind or similar tools to check for potential issues.
  • I have given due consideration to all of the following potential concerns:
    • Scalability
    • Performance
    • Security
    • Thread-safety
    • Cloud-compatibility
    • Premature optimization
    • Existing deployed queries will not be broken
    • This change fixes the problem, not just the symptom
    • The target branch of this pull request is appropriate for such a change.
  • There are no similar instances of the same problem that should be addressed
    • I have addressed them here
    • I have raised JIRA issues to address them separately
  • This is a user interface / front-end modification
    • I have tested my changes in multiple modern browsers
    • The component(s) render as expected

Smoketest:

  • Send notifications about my Pull Request position in Smoketest queue.
  • Test my draft Pull Request.

Testing:

@github-actions
Copy link

github-actions bot commented Aug 8, 2023

@kunalaswani
Copy link
Contributor Author

@jeclrsg having some trouble with

const currentTime = uiState.isUTC ? Utility.convertToUTCTime(WsDfu.DFUInfo.Modified) : Utility.convertToLocalTime(WsDfu.DFUInfo.Modified);

Can you advise... then i can apply to the other pages this is needed on.

Copy link
Contributor

@jeclrsg jeclrsg left a comment

Choose a reason for hiding this comment

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

@kunalaswani Added an example that should fix the error you were getting w/ the time conversion formatter

esp/src/src-react/components/Files.tsx Outdated Show resolved Hide resolved
esp/src/src-react/components/Files.tsx Outdated Show resolved Hide resolved
esp/src/src-react/components/Files.tsx Outdated Show resolved Hide resolved
esp/src/src-react/components/Files.tsx Outdated Show resolved Hide resolved
export function convertToLocalTime(dateString) {
const modifiedDate = new Date(dateString);
return modifiedDate.toLocaleString();
Copy link
Contributor

Choose a reason for hiding this comment

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

These conversion functions may have to be slightly more complicated unfortunately. Using the Date.toLocaleString() and .toUTCString() functions as is would also change the formatting of the timestamps from something like 2023-07-21 01:14:44 to Fri, 21 Jul 2023 01:14:44 GMT. Which might be an improvement, actually... But just something to consider.

Copy link
Contributor

Choose a reason for hiding this comment

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

This was what I was talking about in my previous review. Seems like these should just be formatted one way or the other, so that they're consistent.

image

@ghalliday
Copy link
Member

@kunalaswani this looks like it has stalled. Is it because you didn't ask for a re-review? (I have now done that.)

export function convertToLocalTime(dateString) {
const modifiedDate = new Date(dateString);
return modifiedDate.toLocaleString();
Copy link
Contributor

Choose a reason for hiding this comment

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

This was what I was talking about in my previous review. Seems like these should just be formatted one way or the other, so that they're consistent.

image

@@ -201,7 +220,7 @@ export const Files: React.FunctionComponent<FilesProps> = ({
MaxSkew: {
label: nlsHPCC.MaxSkew, width: 60, formatter: React.useCallback((value, row) => value ? `${Utility.formatDecimal(value / 100)}%` : "", [])
},
Modified: { label: nlsHPCC.ModifiedUTCGMT },
Modified: { label: nlsHPCC.ModifiedUTCGMT, formatter: currentTime },
Copy link
Contributor

Choose a reason for hiding this comment

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

Missed this before, but you'd probably have to change the label here depending on which TZ is selected, so it doesn't always say "UTC"

@jeclrsg
Copy link
Contributor

jeclrsg commented Apr 5, 2024

@kunalaswani You'll need to rebase to the latest 9.2.x to take care of the conflicts GitHub is noting below. Hopefully there won't be too many conflicts that make it difficult.

Also, something like this could address several of my previous comments about the timestamps not actually changing in the grid and the modified column's label not reflecting whether or not UTC was being used jeclrsg@a79880f?diff=unified&w=1 Or you might could use it as a reference at least.

I should've mentioned, I did already rebase that branch of mine to latest 9.2. So the line numbers probably don't exactly match up to your branch now.

Toggle Button added to switch between Local and UTC timezones.

Signed-off-by: Kunal Aswani <[email protected]>
@jeclrsg
Copy link
Contributor

jeclrsg commented Jul 30, 2024

Also, something like this could address several of my previous comments about the timestamps not actually changing in the grid and the modified column's label not reflecting whether or not UTC was being used jeclrsg@a79880f?diff=unified&w=1 Or you might could use it as a reference at least.

@kunalaswani GH Actions noted some lint issues, after rebasing. Also, there were still some pending comments from my last review. The main issue I was seeing while testing just now was that the state of the UTC isn't properly tracked, so the grid rows aren't updating. Might've been some artifact of rebasing; merge collisions or whatnot.

But that branch I'd linked to in a previous comment showed one way you could fix it, by moving the UTC status into it's own state variable. And the "currentTime" callback also made the way the datetimes were printed be consistent regardless of the timezone being used in the grid.

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.

3 participants