Skip to content

Unify time handling around jiff #9317

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

Open
teh-cmc opened this issue Mar 19, 2025 · 5 comments · May be fixed by #9536
Open

Unify time handling around jiff #9317

teh-cmc opened this issue Mar 19, 2025 · 5 comments · May be fixed by #9536
Labels
dependencies concerning crates, pip packages etc enhancement New feature or request good first issue Good for newcomers 🚜 refactor Change the code, not the functionality

Comments

@teh-cmc
Copy link
Member

teh-cmc commented Mar 19, 2025

We have 3 time libraries right now (maybe more, actually?), and we know how that ends.

TODO:

  • Ban chrono
  • Ban time
  • Use jiff everywhere

@teh-cmc teh-cmc added dependencies concerning crates, pip packages etc enhancement New feature or request good first issue Good for newcomers 🚜 refactor Change the code, not the functionality labels Mar 19, 2025
@NiharP31
Copy link

NiharP31 commented Apr 1, 2025

Hey @teh-cmc, I'd like to work on this! But also want to know, what is the related issue, as it is "404-Not found"

@Wumpf
Copy link
Member

Wumpf commented Apr 1, 2025

@NiharP31 Awesome that you want to contribute! :) The linked issue is the same issue mirrored on our upcoming closed-source/commercial product so same story and just linked for convenience for Rerun employees.
A good start would to get a sense of all usages of chrono and time each, for starters just direct dependencies of Rerun crates. That should already go in one or more separate PRs. Once you're through with that you can have a look at the entire tree using cargo tree and see if we can get rid of transitives and then finally adjust cargo.deny accordingly, if need to be with some exceptions.

@NiharP31
Copy link

NiharP31 commented Apr 2, 2025

@Wumpf got your point. Would attach a PR soon.

@NiharP31
Copy link

NiharP31 commented Apr 3, 2025

Hey @Wumpf, I migrated files from Time to Jiff. Test runs fine.

But, while building from root, I get Persistent Web Viewer Build Error After Migration

Context: Migrated dependency from time to jiff crate. Followed build instructions but still get:

thread 'main' panicked at build.rs:11:9:  
Web viewer not found, run `pixi run rerun-build-web` to build it!

Steps Taken:

  1. Ran pixi run rerun-build-web successfully:
    • ✅ Created rerun/web_viewer/re_viewer_bg.wasm (1.8s build)
    • ✅ Generated JS bindings (rerun/web_viewer/e_viewer.js)
  2. Verified files exist in \rerun\web_viewer\
  3. Ran cargo build → Same panic about missing web viewer

Key Contradiction:

Build system claims web viewer is missing
But files exist at expected path:
rerun/web_viewer/{re_viewer.js, re_viewer_bg.wasm}
Noticed that crates/viewer/re_web_viewer_server/build.rs has paths setup

Also, I cleaned and rebuild from scratch, but same error occurs. Are the paths needs to be modified? Can you guide me here

Error Snippet

Image

@Wumpf
Copy link
Member

Wumpf commented Apr 3, 2025

@NiharP31 maybe the symlink at crates/viewer/re_web_viewer_server/web_viewer is broken? Symlinks in git used to be a problem on Windows, but nowadays it mostly just works. But maybe your git install isn't configured correctly, see https://stackoverflow.com/questions/5917249/git-symbolic-links-in-windows/59761201#59761201
The check that gives you that error is looking for ./crates/viewer/re_web_viewer_server/web_viewer/re_viewer.js which should redirect to ./web_viewer/re_viewer.js. Might be worth removing the link and running git restore on re_web_viewer_server then

@NiharP31 NiharP31 linked a pull request Apr 8, 2025 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies concerning crates, pip packages etc enhancement New feature or request good first issue Good for newcomers 🚜 refactor Change the code, not the functionality
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants