You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
What was happening: Venus compiles a notebook's imports and type definitions into a shared venus_universe crate, and each cell is compiled as its own crate that links the universe and glob-imports it (use venus_universe::*;). Your use statements were being emitted into that crate as privateuse items, so the imported names (like DataFrame) were never re-exported and stayed invisible to the cells — hence not found in this scope. It only affected the interactive paths (venus run, venus serve); the standalone venus build inlines imports, so it was unaffected.
The fix (#4): definition-cell use statements are now re-exported as pub use, and top-level definitions (structs, enums, helper fns, etc.) are promoted to pub, so everything a notebook declares is visible to its cells. Your original example now compiles and runs:
use plotlars::polars::prelude::DataFrame;#[venus::cell]pubfnnew_cell_1() -> DataFrame{/* ... */}
Grab v0.1.2 and let us know if you hit anything else. 🙏
Activity
farhan-syah commentedon Jul 15, 2026
Alright, thank your for creating this issue, I'll take a look.
farhan-syah commentedon Jul 15, 2026
@Keshi — this is fixed and released in v0.1.2.
What was happening: Venus compiles a notebook's imports and type definitions into a shared
venus_universecrate, and each cell is compiled as its own crate that links the universe and glob-imports it (use venus_universe::*;). Yourusestatements were being emitted into that crate as privateuseitems, so the imported names (likeDataFrame) were never re-exported and stayed invisible to the cells — hencenot found in this scope. It only affected the interactive paths (venus run,venus serve); the standalonevenus buildinlines imports, so it was unaffected.The fix (#4): definition-cell
usestatements are now re-exported aspub use, and top-level definitions (structs, enums, helper fns, etc.) are promoted topub, so everything a notebook declares is visible to its cells. Your original example now compiles and runs:Grab
v0.1.2and let us know if you hit anything else. 🙏