DST times not showing dm: times with 2 AM

Discussion related to "Everything" 1.5 Alpha.
Post Reply
anmac1789
Posts: 623
Joined: Mon Aug 24, 2020 1:16 pm

DST times not showing dm: times with 2 AM

Post by anmac1789 »

Everything isn't viewing DST times properly. For example, in 2024, EST switches to EDT in East Coast North America at March 10, 2024 @ 2 AM (second Sunday of the month)

image.png
image.png (194.35 KiB) Viewed 227 times

The results show date modified times with 1 AM when it should show times with 2 AM. How to fix this ? What is going on here ?

Also, how can I show files with date modified times of (1st sunday, 2nd sunday of x month) ?
void
Developer
Posts: 16428
Joined: Fri Oct 16, 2009 11:31 pm

Re: DST times not showing dm: times with 2 AM

Post by void »

Does Everything match the date modified timestamp from Windows Explorer?

To find date modified on the first Sunday:
WEEKDAY($dm:)+(((DAY($dm:)-1)/7)*7)==0


To find date modified on the second Sunday:
WEEKDAY($dm:)+(((DAY($dm:)-1)/7)*7)==7
anmac1789
Posts: 623
Joined: Mon Aug 24, 2020 1:16 pm

Re: DST times not showing dm: times with 2 AM

Post by anmac1789 »

void wrote: Sun Sep 29, 2024 10:51 pm Does Everything match the date modified timestamp from Windows Explorer?

To find date modified on the first Sunday:
WEEKDAY($dm:)+(((DAY($dm:)-1)/7)*7)==0


To find date modified on the second Sunday:
WEEKDAY($dm:)+(((DAY($dm:)-1)/7)*7)==7
How do I find any windows explorer files with date modified around 2 AM on March 10 when I use everything to find those types of files ? lol
void
Developer
Posts: 16428
Joined: Fri Oct 16, 2009 11:31 pm

Re: DST times not showing dm: times with 2 AM

Post by void »

2am-3am doesn't exist on this day.
Windows converts 2am-3am to 1am-2am


Everything converts your search dm:2024-03-10T02 to a filetime for comparison.
The date modified search starts at 2024-03-10T02 with a one-hour range.
However, due to the filetime conversion, this ends up searching for:
dm:>=2024-03-10T01 with a one-hour range



Please try the following search instead:

dm:2024-03-10 dmhour:2


This shouldn't match anything as this hour doesn't exist on this day.



-or-


Search for a larger range and sort by date modified:

dm:2024-03-10T01..2024-03-10T04
anmac1789
Posts: 623
Joined: Mon Aug 24, 2020 1:16 pm

Re: DST times not showing dm: times with 2 AM

Post by anmac1789 »

void wrote: Sun Sep 29, 2024 10:51 pm Does Everything match the date modified timestamp from Windows Explorer?

To find date modified on the first Sunday:
WEEKDAY($dm:)+(((DAY($dm:)-1)/7)*7)==0


To find date modified on the second Sunday:
WEEKDAY($dm:)+(((DAY($dm:)-1)/7)*7)==7
What does the
==0
and
==7
do?
void
Developer
Posts: 16428
Joined: Fri Oct 16, 2009 11:31 pm

Re: DST times not showing dm: times with 2 AM

Post by void »

== means compare

0 is the first Sunday.
7 is the second Sunday.
anmac1789
Posts: 623
Joined: Mon Aug 24, 2020 1:16 pm

Re: DST times not showing dm: times with 2 AM

Post by anmac1789 »

void wrote: Mon Sep 30, 2024 3:40 am == means compare

0 is the first Sunday.
7 is the second Sunday.
== does this make the expression equal to 0 or 7 ? How does that function work ? whats the logic?

Also, is there an easier way to combine all these searches:

"beginning of the year until 2nd Sunday of March of any given x year" = EST (standard time) (DST off)

"From 2nd Sunday of March until 1st Sunday of November of any given x year" = EDT (daylight time) (DST on)

"1st Sunday of November until the end of any given x year" = EST (standard time) (DST off)
Herkules97
Posts: 56
Joined: Tue Oct 08, 2019 6:42 am

Re: DST times not showing dm: times with 2 AM

Post by Herkules97 »

It's somewhat been covered already, but EBV uses filetime internally if I understand it correctly.
This is then converted to a user-friendly version or..something.
You can see this in Everything by looking at a time range of say 01-03. It may jump from 01 to 02 or 01 to 03.
It will jump back around October, I believe 27th but I cba to look it up again.
Something similar happened in my foobar2000, I think it also uses the same filetime system internally. At least Playback Statistics exports in it.

Fun? fact, it currently starts with 1337.
anmac1789
Posts: 623
Joined: Mon Aug 24, 2020 1:16 pm

Re: DST times not showing dm: times with 2 AM

Post by anmac1789 »

Herkules97 wrote: Mon Sep 30, 2024 9:16 am It's somewhat been covered already, but EBV uses filetime internally if I understand it correctly.
This is then converted to a user-friendly version or..something.
You can see this in Everything by looking at a time range of say 01-03. It may jump from 01 to 02 or 01 to 03.
It will jump back around October, I believe 27th but I cba to look it up again.
Something similar happened in my foobar2000, I think it also uses the same filetime system internally. At least Playback Statistics exports in it.

Fun? fact, it currently starts with 1337.
I'm sorry I'm a bit lost. Could you explain in easier terms for a 5 year old lol
void
Developer
Posts: 16428
Joined: Fri Oct 16, 2009 11:31 pm

Re: DST times not showing dm: times with 2 AM

Post by void »

Everything will evaluate the expression when using $dm: in your search.

When the expression evaluates as true the result is added.
When the expression evaluates as false the result is not added.

The following will evaluate as true:
1==1
7==7
( == is equal to )

The following will evaluate as false:
1==0
0==7
1==7



It might be easier to see how
WEEKDAY($dm:)+(((DAY($dm:)-1)/7)*7)==0
works by showing these values in a temporary column.

Please try including the following search:

addcolumn:a a:=WEEKDAY($dm:)


The week day as a number is shown in column A
(Everything is incorrectly using the Windows week day numbers 0=Sunday, I will switch this to Excel format 1=Sunday in the next alpha update)



To view the week, please try including the following in your search:

addcolumn:a a:=((DAY($dm:)-1)/7)


The first week will be 0, then second week 1, etc...



If you multiply the week by 7 and add the weekday you can work out the first Sunday, second Sunday etc..

addcolumn:a a:=WEEKDAY($dm:)+(((DAY($dm:)-1)/7)*7)
Post Reply