posit-dev / posit-dev/positron

python: Enhance startup script experience

Open
#6,473 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement lang: python
Dominant language
TypeScript
Stars
4.3k
Forks
184
Avg merge
1d 11h
Merged PRs (30d)
206

Description

Currently, users can create scripts that run at startup of a Python session by placing them in ~/.ipython/profile_default/startup/. There are some pain points with this process.

(See https://www.rdocumentation.org/packages/base/versions/3.6.2/topics/Startup for inspiration.)

  • The scripts' output should be printed to the Console
  • Non-hidden variables that are defined should be shown in the Variables pane without having to add an ipython config setting
  • We could search default locations for the scripts, including at the Positron user and project levels. (Using the ~/.ipython directory means it's not just Positron that reads the scripts, and today there's no project-level customization)
  • If that's insufficient, we could add a dedicated setting where users can select their custom startup scripts

Originally posted by @dani-f in https://github.com/posit-dev/positron/discussions/6376#discussioncomment-12313912

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing how Python session startup scripts in ~/.ipython/profile_default/startup/ are discovered and executed. Review the Console and Variables pane behavior, then determine how Positron user- and project-level locations would fit. Done means the intended startup locations or setting are defined, script output reaches the Console, and non-hidden variables appear in the Variables pane.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
developer-experience
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.