Skip to content
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

Describe developer setup in more detail #1859

Open
wants to merge 9 commits into
base: main
Choose a base branch
from

Conversation

mccalluc
Copy link
Contributor

The most useful part here is an explicit instruction to download and install Quarto. I was confused for a bit why quarto render still wasn't working for me even when I had run pip install quarto.

I've also added uv to the dependencies: Since there weren't other instructions, I was looking at the github actions to see what the next step should be, and many of them depend on uv... but maybe I shouldn't have been using those? It looks like they come in pairs: install-deps and ci-install-deps, for example.

Take this more as a suggestion of the connections that weren't immediately clear to me, but this might not be the best way to make them more clear.

Copy link
Collaborator

@gadenbuie gadenbuie left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oops, I meant to comment to say thank you for the suggestions! I've answered some of your questions above with a few more suggestions. Overall I do think this will be helpful to others!

@mccalluc mccalluc requested a review from gadenbuie February 26, 2025 18:48
# Rather than
# pip install shiny
# run:
pip install -e ../py-shiny --config-settings editable_mode=compat
Copy link
Collaborator

@gadenbuie gadenbuie Feb 26, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like this section! But is it still required? We moved from setup.cfg to pyproject.toml between when the linked issue was opened and now and the situation may have changed.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There might be something else wrong with my local setup, but plain pip install -e ../py-shiny didn't work for me, and this did.

$ pip uninstall shiny -y -q && pip install -e ../../mccalluc/py-shiny -q --config-settings editable_mode=compat && python -c "import shiny; print(dir(shiny))"
['App', 'Inputs', 'Outputs', 'Session', '__all__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__path__', '__spec__', '__version__', '_app', '_autoreload', '_connection', '_datastructures', '_deprecated', '_docstring', '_error', '_fileupload', '_hostenv', '_is_pyodide', '_main', '_namespaces', '_shinyenv', '_static', '_typing_extensions', '_utils', '_validation', '_version', '_versions', 'event', 'express', 'html_dependencies', 'http_staticfiles', 'input_handler', 'module', 'quarto', 'reactive', 'render', 'render_image', 'render_plot', 'render_text', 'render_ui', 'req', 'run_app', 'session', 'types', 'ui']

$ pip uninstall shiny -y -q && pip install -e ../../mccalluc/py-shiny -q && python -c "import shiny; print(dir(shiny))"
['__doc__', '__file__', '__loader__', '__name__', '__package__', '__path__', '__spec__']

$ pip uninstall shiny -y -q && pip install shiny -q && python -c "import shiny; print(dir(shiny))"
['App', 'Inputs', 'Outputs', 'Session', '__all__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__path__', '__spec__', '__version__', '_app', '_autoreload', '_connection', '_datastructures', '_deprecated', '_docstring', '_error', '_fileupload', '_hostenv', '_is_pyodide', '_main', '_namespaces', '_shinyenv', '_static', '_typing_extensions', '_utils', '_validation', '_version', '_versions', 'event', 'express', 'html_dependencies', 'http_staticfiles', 'input_handler', 'module', 'quarto', 'reactive', 'render', 'render_image', 'render_plot', 'render_text', 'render_ui', 'req', 'run_app', 'session', 'types', 'ui']

With compat or regular install from pypi everything works, but with just -e it didn't, at least for me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants