10 years ago, someone wrote a test for servo that included an expiry in 2026

mastodon.social

71 points

luu

20 hours ago


29 comments

andai 11 minutes ago

Interesting, from the title I thought it was intentional, as a "forced code review." Apparently not, but now I really like that idea!

Alupis 30 minutes ago

Just skimmed the PR, I'm sure the author knows more than I - but why hard code a date at all? Why not do something like `today + 1 year`?

  • johanvts 18 minutes ago

    That introduces dependency of a clock which might be undesirable, just had a similar problem where i also went for hardcoding for that reason.

    • rcxdude 6 minutes ago

      Arguably you should have a fixed start date for any given test, but time is quite hard to abstract out like that (there's enough time APIs you'd want OS support, but linux for example doesn't support clock namespaces for the realtime clock, only a few monotonic clocks)

  • whynotmaybe 18 minutes ago

    Because it should be `today + 1 year + randomInt(1,42) days`.

    Always include some randomness in test values.

    • rcxdude 10 minutes ago

      Not a good idea for CI tests. It will just make things flaky and gum up your PR/release process. Randomness or any form of nondeterminism should be in a different set of fuzzing tests (if you must use an RNG, a deterministic one is fine for CI).

    • devin 11 minutes ago

      Are you joking? This is the kind of thing that leads to flaky tests. I was always counseled against the use of randomness in my tests, unless we're talking generative testing like quickcheck.

    • andai 12 minutes ago

      Interesting, haven't heard this before (I don't know much about testing). Is this kind of like fuzzing?

bombcar 2 hours ago

Any time constant will be exceeded someday.

An impossibly short period of time after the heat death of the universe on a system that shouldn’t even exist: ERROR TIME_TEST FAILURE

  • unkl_ an hour ago

    Posted on HN in 2126: 100 years ago, someone wrote a test for servo that included an expiry in 2126

    • jerf an hour ago

      I've got some tests in active code bases that are using the end of 32-bit Unix time as "we'll never get there". That's not because the devs were lazy, these tests date from when that was the best they could possibly do. They're on track to be cycled out well before then (hopefully this year), so, hopefully, they'll be right that their code "won't get there"... but then there's the testing and code that assumes this that I don't know about that may still be a problem.

      "End of Unix time" is under 12 years now, so, a bit longer than the time frame of this test, but we're coming up on it.

    • yetihehe an hour ago

      Now I feel bad for using (system foundation timestamp)+100 years as end of "forever" ownership relations in one of my systems. Looking now, it's only 89 years left. I think I should use nulls instead.

  • fny an hour ago

    Who here remembers the fud of Y2K?

    • philipallstar an hour ago

      I remember the reality of all the work needed to avoid issues.

    • gom_jabbar an hour ago

      Made me think of Mark Fisher's Y2K Positive text:

      > At the Great Midnight at the century's end, signifying culture will flip over into a number-based counterculture, retroprocessing the last 100 years. Whether global disaster ensues or not, Y2K is a singularity for cybernetic culture. It's time to get Y2K positive.

      Mark Fisher (2004). Y2K Positive in Mute.

    • LocalPCGuy an hour ago

      While there was a lot of FUD in the media, there were also a lot of scenarios that were actually possible but were averted due to a LOT of work and attention ahead of time. It should be looked at, IMO, as a success of communication, warnings, and a lot of effort that nothing of major significance happened.

      • tejohnso an hour ago
        4 more

        Yes, Y2K is a success story, similar to the alert and response related to ozone layer and CFCs.

        Dissimilar to the global climate catastrophe, unfortunately.

        ---

        The 2024 state of the climate report: Perilous times on planet Earth

        https://academic.oup.com/bioscience/article/74/12/812/780859...

        "Tragically, we are failing to avoid serious impacts"

        "We have now brought the planet into climatic conditions never witnessed by us or our prehistoric relatives within our genus, Homo"

        "Despite six IPCC reports, 28 COP meetings, hundreds of other reports, and tens of thousands of scientific papers, the world has made only very minor headway on climate change"

        "projections paint a bleak picture of the future, with many scientists envisioning widespread famines, conflicts, mass migration, and increasing extreme weather that will surpass anything witnessed thus far, posing catastrophic consequences for both humanity and the biosphere"

        • timschmidt an hour ago
          3 more

          I don't mean to lessen the impact of that statement. I think climate change is a serious problem. But also most of the geologic time that genus Homo has existed, Earth has been in an ice age. Much of which we'd consider a "snowball Earth". The last warm interglacial period, the Eemian, was 120,000 years ago.

          • john_strinlai a few seconds ago

            this is the same style comment as "no offense, but <offensive thing>"

            if you didnt intend to lessen the impact of that statement, why say something that is specifically meant to lessen the impact of the statement?

    • NetOpWibby an hour ago

      Exciting times with an anticlimactic end; I was in middle school, relishing the chaos of the adult world.

    • myself248 an hour ago

      Another victim of the preparedness paradox.

kristofferR 31 minutes ago

Ain't Mastadon supposed to be the good guys compared to X?

What's with purposefully breaking the browser back button to redirect to the front page? Spammy behavior

  • andai 9 minutes ago

    It was started by people who thought Twitter didn't have enough censorship (back when it had a lot more).

    I guess that's a matter of personal sensibilities, but it's pretty funny to me.

    (Note: this is the only fact I know about it, happy to learn more.)

db48x 18 hours ago

Classic!

But before you judge the fix too hashly, I bet it’s just a quick and easy fix that will suffice while a proper fix (to avoid depending on external state) is written.

  • pavel_lishin 37 minutes ago

    I'll bet you one US Dollar that this is a scenario where the temporary fix becomes the permanent one. (Well, at least, permanent for a hundred years.)

    Some day, Pham Nuwen is going to be bitching about this test suite between a pair of star systems.

  • em-bee 22 minutes ago

    of course it is just an easy fix. it's the kind of solution that even someone like me could write who has no understanding of the code a all. (i am not trying to imply that the submitter of the PR doesn't understand the code, just that understanding it is unlikely to be necessary, thus the change bears no risk.

    but, the solution now hides the problem. if i wanted to get someone to solve the problem i'd set the new date in the near future until someone gets annoyed enough to fix it for real.

    and i have to ask, why is this a hardcoded date at all? why not "now plus one week"?