AcademySoftwareFoundation / AcademySoftwareFoundation/OpenTimelineIO
RationalTime repr switches to scientific notation for large numbers
- Dominant language
- C++
- Stars
- 2k
- Forks
- 351
- Avg merge
- 1d 12h
- Merged PRs (30d)
- 1
Description
When the value gets large enough on a RationalTime, the repr switches to scientific notation. This can make debugging output less exact than needed in common debugging situations:
For instance, in the following example the repr appears to be three frames forward in time:
```
>>> otio.opentime.from_timecode("11:58:01:13", rate=24)
otio.opentime.RationalTime(value=1.03396e+06, rate=24)
>>> otio.opentime.from_timecode("11:58:01:13", rate=24).value
1033957.0
>>> otio.opentime.RationalTime(1033957, rate=24)
otio.opentime.RationalTime(value=1.03396e+06, rate=24)
```
Contributor guide
Research direction
Start by reproducing the RationalTime repr shown in the issue, including the large value 1033957 at rate 24, and locate the representation entry point used by the otio Python API. Done means large values retain exact decimal output instead of switching to scientific notation, while the existing value and rate remain visible.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- developer-experience
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100