Skip to content
Permalink
Branch: master
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
80 lines (68 sloc) 2.24 KB

IDE planning minutes

IntelliJ

  • Get in touch re edition

code completion

  • re edition, ensure path completion continues to work
  • not happening soon
  • what about Racer?
    • get commit access for Xanewok + nrc
    • move to nursery? - yes
  • can we have a partial solution?
    • impl info first
    • dot completion vs free text completion
    • where do we need to be perfect vs approximate
  • how do we prioritise vs feature work, etc.
  • what does the long term solution look like?
    • can we work towards that and provide short-term wins?

post 1.0

features, performance, stability, tech-debt, maintenance

  • testing
    • compiler
    • rls-analysis
    • rls
      • need more
      • declarative framework
        • message ordering
        • comments for spans
        • handle multiple files
        • for codegen etc. have before and after text
        • IntelliJ found easier to have rust files as inline files rather than one file each like in compiler; keeps everything in memory, not using Cargo, etc.
  • stability
    • single file support
    • edition transition
    • debug mode
      • ring buffer of requests/responses
      • select what is most useful logging
      • backtrace when we crash
      • dump to file
      • emit issue template
      • auto crash reporting?
        • integrate with compiler telemtry?
      • more warnings/error messages to users?
        • just short warning, no why
        • no backtrace
        • show command line
  • features
    • symbol tree in VSCode?
    • use LSP goto impl
    • single file support
    • code generation
      • generate match
      • generate function stub in an impl
      • generate impl for trait (p-high) (full or partial)
    • refactoring
      • extract local var
      • extract module (or crate)
        • create module (including convert file to directory)
    • auto imports (without errors)
      • mass import rather than clicking multiple lightbulbs
      • auto-remove unused imports
    • selection by AST node (does LSP have support) aka extend selection
    • new nested error support
    • test support in RLS or client?
      • run a single test (need to query RLS for the package)

Prioritisation

  • test infrastructure
  • debug mode
  • Racer is OK, so maybe not so important to do code completion - also the good solution is hard work
  • pick low-hanging feature work
You can’t perform that action at this time.