owned this note changed 10 months ago
Published Linked with GitHub

Nushell core team meeting 2024-06-05

Attendees

  • Jack
  • Wind
  • Devyn
  • Jakub
  • Antoine
  • Andy
  • Filip
  • Michael

Agenda

  • Sophia's leaving
    • Should we move https://github.com/sophiajt/new-nu-parser under the nushell organization for more control over the repo?
    • Permissions
      • Is everyone ok with Darren having admin perms?
      • Should we distribute GitHub owner perms to others?
      • Should we add more admins to Discord? Will need wycats help for this.
  • Whether or not to handle panics in plugins.

Discussed Topics

Sophia

  • Jakub will ask Sophia if she is ok to move new parser to the nushell org
  • Everyone is fine with Darren having admin permissions
  • As long as we have two people with Discord permissions then we are fine
  • This assumes Yehuda will continue to be around and available just in case Darren is on vacation
  • If there comes a time when Yehuda is not around or no longer wants to be involved then someone else should eventually have Discord permissions as well.

New parser

  • Sophia said she'd be happy to answer questions
  • There's still some stuff not finished yet
  • Would it be a breaking change?
    • Definitely to some extent from an API perspective
    • Potentially unknown surprises that our tests won't cover
  • Do we still want to make it a target for 1.0?
    • Easier to understand - 3 phases
    • Are we in a hurry to hit 1.0?
      • we probably should try to hit 1.0 sooner than 10 years in the future
      • Andy - smooth out the papercuts, if stabilization wouldn't let us do that we should hold off
  • Try to start integrating things early, even if behind a feature flag. If we can get a minimal evaluator going that uses the new parser, that would be great
  • Old evaluator is very tightly coupled to the parser, runs directly on AST, what should we do about that?
    • Jakub: abstract the way AST nodes are retrieved so the evaluator is compatible with both
    • Devyn: or perhaps some kind of stack machine or SSA intermediate form that we can compile to, and then evaluate that
  • What changes are necessary to EngineState, StateWorkingSet?
  • Trait object API for accessing engine internals and call arguments from Command to abstract differences between runtime and const evaluation, perhaps even plugins

Panics in plugins

  • Panics are a bit hairy but it should be safe if the closure only works on owned data and isn't trying to keep using some kind of reference from outside of the closure after a panic
  • In general we don't really want to use panic handlers but with polars we kind of have to
  • Just make sure there's no shared mutable state affected

Meeting ended on time after 1 hour

Issues

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →
the issues which needs-core-team-attention

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →
Note
to list all the PRs currently opened in nushell/nushell:

gh pr list --json url,number,author,title
| from json
| each {|i|
    $"- [($i.number)]\(($i.url)\) ($i.title) \(@($i.author.login)\)"
}
| reverse
| to text
Select a repo