Skip to content

Commit b8df80a

Browse files
committed
✨ document and restore all actions, use windowed build
1 parent ecf8d4e commit b8df80a

File tree

2 files changed

+74
-24
lines changed

2 files changed

+74
-24
lines changed

.github/workflows/cdci.yml

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,7 @@ jobs:
1414
runs-on: ubuntu-latest
1515
strategy:
1616
matrix:
17-
# python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
18-
python-version: ["3.11"]
17+
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
1918
steps:
2019
- uses: actions/checkout@v4
2120
- uses: psf/black@stable
@@ -44,8 +43,7 @@ jobs:
4443
runs-on: ubuntu-latest
4544
strategy:
4645
matrix:
47-
# python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
48-
python-version: ["3.11"]
46+
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
4947
steps:
5048
- uses: actions/checkout@v4
5149
- name: Set up Python ${{ matrix.python-version }}
@@ -126,18 +124,18 @@ jobs:
126124
build-executable:
127125
name: Build-exe-${{ matrix.os.label }}
128126
runs-on: ${{ matrix.os.runner }}
129-
# needs:
130-
# - test
131-
# - other-reports
127+
needs:
128+
- test
129+
- other-reports
132130
strategy:
133131
matrix:
134132
python-version: ["3.12"]
135133
os:
136134
# https://docs.github.com/en/actions/writing-workflows/choosing-what-your-workflow-does/running-variations-of-jobs-in-a-workflow#example-using-a-multi-dimension-matrix
137-
# - runner: "ubuntu-latest"
138-
# label: "ubuntu-latest_LTS-x64"
139-
# - runner: "macos-13"
140-
# label: "macos-13-x64"
135+
- runner: "ubuntu-latest"
136+
label: "ubuntu-latest_LTS-x64"
137+
- runner: "macos-13"
138+
label: "macos-13-x64"
141139
- runner: "macos-15"
142140
label: "macos-15-arm64"
143141
- runner: "windows-latest"
@@ -157,7 +155,7 @@ jobs:
157155
- name: Build executable
158156
run: |
159157
cd gui
160-
pyinstaller -n vuegen_gui --collect-all pyvis --collect-all streamlit --collect-all st_aggrid --collect-all customtkinter --collect-all quarto_cli --collect-all plotly --collect-all _plotly_utils --collect-all traitlets --collect-all referencing --collect-all rpds --collect-all tenacity --collect-all pyvis --collect-all pandas --collect-all numpy --collect-all matplotlib --collect-all openpyxl --collect-all xlrd --collect-all nbformat --collect-all nbclient --collect-all altair --collect-all itables --collect-all kaleido --collect-all pyarrow --collect-all dataframe_image --collect-all narwhals --collect-all PIL --collect-all vl_convert --add-data ../docs/example_data/Basic_example_vuegen_demo_notebook:example_data/Basic_example_vuegen_demo_notebook --add-data ../docs/images/vuegen_logo.png:. app.py
158+
pyinstaller -n vuegen_gui --windowed --collect-all pyvis --collect-all streamlit --collect-all st_aggrid --collect-all customtkinter --collect-all quarto_cli --collect-all plotly --collect-all _plotly_utils --collect-all traitlets --collect-all referencing --collect-all rpds --collect-all tenacity --collect-all pyvis --collect-all pandas --collect-all numpy --collect-all matplotlib --collect-all openpyxl --collect-all xlrd --collect-all nbformat --collect-all nbclient --collect-all altair --collect-all itables --collect-all kaleido --collect-all pyarrow --collect-all dataframe_image --collect-all narwhals --collect-all PIL --collect-all vl_convert --add-data ../docs/example_data/Basic_example_vuegen_demo_notebook:example_data/Basic_example_vuegen_demo_notebook --add-data ../docs/images/vuegen_logo.png:. app.py
161159
# --windowed only for mac, see:
162160
# https://pyinstaller.org/en/stable/usage.html#building-macos-app-bundles
163161
# 'Under macOS, PyInstaller always builds a UNIX executable in dist.'

gui/README.md

Lines changed: 64 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,18 @@ Windows and macOS specific options:
6767
6868
## test shipping a python virtual environment with vuegen installed
6969
70+
- [ ] can we ship a python environment with the app which can be used to launch a kernel?
71+
72+
## Features of the GUI
73+
74+
- select a directory via a file dialog button
75+
- specify the distination of a config file manually
76+
- select a report
77+
- select if streamlit app should be started - has no effect for quarto reports
78+
- show set PATH
79+
- select a Python environment for starting jupyter kernels for quarto reports which is cached
80+
- some message boxes
81+
7082
## Bundled PyInstaller execution (current status)
7183
7284
1. Can be executed. Streamlit apps can be run (although sometimes not easily terminated)
@@ -78,16 +90,10 @@ Windows and macOS specific options:
7890
7991
## Using bundle vuegen release
8092
81-
## On Windows
82-
83-
- global quarto and python installations can be used
84-
- quarto can be shipped with app, but maybe it can be deactivated
85-
86-
## On MacOs
87-
88-
- on MacOs the default paths are not set
93+
This should both work on Windows and MacOs, but the paths for environments can be different
94+
dependent on the system.
8995
90-
#### Create environment using conda
96+
### Create environment using conda
9197
9298
```bash
9399
conda create -n vuegen_gui -c conda-forge python=3.12 jupyter
@@ -106,12 +112,58 @@ In the app, set the python environment path to this location, but to the `bin` f
106112
/Users/user/miniforge3/envs/vuegen_gui/bin
107113
```
108114
109-
#### virtualenv
115+
### virtualenv
110116
111-
- tbc
117+
Following the
118+
[Python Packaging User Guide's instructions](https://packaging.python.org/en/latest/guides/installing-using-pip-and-virtual-environments/#create-a-new-virtual-environment)
119+
you can run the following command to create a new virtual environment.
112120

113-
[virutalenv documentation](https://docs.python.org/3/library/venv.html)
121+
Install an offical Python version from [python.org/downloads/](https://www.python.org/downloads/)
122+
123+
#### On MacOs
114124

115125
```bash
126+
# being in the folder you want to create the environment
127+
python -m venv .venv
128+
# if that does not work, try
129+
# python3 -m venv .venv
130+
source .venv/bin/activate
131+
pip install jupyter
132+
```
133+
134+
#### On Windows
135+
136+
```powershell
137+
# being in the folder you want to create the environment
138+
python -m venv .venv
139+
# if that does not work, try
140+
# py -m venv .venv
141+
.venv\Scripts\activate
142+
```
143+
144+
#### Troubleshooting venv
145+
146+
For more information on the options, see also the
147+
[virutalenv documentation](https://docs.python.org/3/library/venv.html) in the Python
148+
standard library documentation.
149+
150+
```
116151
python -m venv .venv --copies --clear --prompt vuegenvenv
117152
```
153+
154+
### On Windows
155+
156+
On windows the default Paths is available in the application. This would allow to use
157+
the default python installation and a global quarto installation.
158+
159+
to test, one could
160+
161+
- use global quarto and python installations can be used
162+
- add a deactivate button into app for bundled quarto (so path is not set)
163+
164+
### On MacOs
165+
166+
- on MacOs the default paths are not set, but only the minimal one `/usr/bin:/bin:/usr/sbin:/sbin`,
167+
see pyinstaller hints
168+
[on path manipulations](https://pyinstaller.org/en/stable/common-issues-and-pitfalls.html#macos)
169+
- requires to add path to python environment manually

0 commit comments

Comments
 (0)