Problems with JulianDates in distant past or far future.
- Dominant language
- JavaScript
- Stars
- 15.7k
- Forks
- 3.9k
- Avg merge
- 4d 6h
- Merged PRs (30d)
- 34
Description
We currently don't define minimum or maximum values for `JulianDate`instances. I'm actually pretty sure that minimum and maximum values don't actually exist and the date itself is always valid (obviously still limited by JavaScript Number bounds).
Where we run into problems is trying to actually format really old or far future dates as gregorian strings. For example, zooming out really far on the timeline starts to show `undefined` labels for dates before 4713 BCE. This may only be a problem for Timeline and Animation, I'm not sure if we display times anywhere else.
We should test our conversion to Gregorian for the far off dates and see if it's the conversion itself that presents a problem or simply how we turn that into a formatted string. I don't have a good solution for now, and I doubt this is a pressing issue anytime soon, but I wanted to write up the issue so that we don't forget about it.
Found while working on #4595
Contributor guide
Research direction
Start by reproducing the undefined labels for dates before 4713 BCE while zooming out on the Timeline, and check whether Animation shows the same behavior. Compare JulianDate-to-Gregorian conversion with the subsequent formatted string handling. Done means identifying the failing stage and adding coverage for far-past and far-future dates.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- frontend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100