Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/check-pr-template.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,4 @@ permissions:
jobs:
check-pr-template:
name: Check PR template
uses: beeware/.github/.github/workflows/pr-checklist.yml@741cc5a311012ee0ee195938889a337449d01eeb # main
uses: beeware/.github/.github/workflows/pr-checklist.yml@04ef7a6aca716616670c1ce5232d4aa3061f5c5e # main
10 changes: 5 additions & 5 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ permissions:
jobs:
pre-commit:
name: Pre-commit checks
uses: beeware/.github/.github/workflows/pre-commit-run.yml@741cc5a311012ee0ee195938889a337449d01eeb # main
uses: beeware/.github/.github/workflows/pre-commit-run.yml@04ef7a6aca716616670c1ce5232d4aa3061f5c5e # main
with:
pre-commit-source: "--group pre-commit"

Expand All @@ -60,7 +60,7 @@ jobs:

towncrier:
name: Check towncrier
uses: beeware/.github/.github/workflows/towncrier-run.yml@741cc5a311012ee0ee195938889a337449d01eeb # main
uses: beeware/.github/.github/workflows/towncrier-run.yml@04ef7a6aca716616670c1ce5232d4aa3061f5c5e # main
permissions:
contents: read
pull-requests: write
Expand All @@ -79,7 +79,7 @@ jobs:
- "" # root briefcase package
- "debugger"
- "automation"
uses: beeware/.github/.github/workflows/python-package-create.yml@741cc5a311012ee0ee195938889a337449d01eeb # main
uses: beeware/.github/.github/workflows/python-package-create.yml@04ef7a6aca716616670c1ce5232d4aa3061f5c5e # main
with:
build-subdirectory: ${{ matrix.subdir }}
attest: ${{ inputs.attest-package }}
Expand Down Expand Up @@ -238,7 +238,7 @@ jobs:
verify-projects:
name: Verify project
needs: [ package, unit-tests ]
uses: beeware/.github/.github/workflows/app-create-verify.yml@741cc5a311012ee0ee195938889a337449d01eeb # main
uses: beeware/.github/.github/workflows/app-create-verify.yml@04ef7a6aca716616670c1ce5232d4aa3061f5c5e # main
with:
runner-os: ${{ matrix.runner-os }}
framework: ${{ matrix.framework }}
Expand All @@ -251,7 +251,7 @@ jobs:
verify-apps:
name: Build app
needs: [ package, unit-tests ]
uses: beeware/.github/.github/workflows/app-build-verify.yml@741cc5a311012ee0ee195938889a337449d01eeb # main
uses: beeware/.github/.github/workflows/app-build-verify.yml@04ef7a6aca716616670c1ce5232d4aa3061f5c5e # main
with:
# Builds on Linux must use System Python; otherwise, fall back to version all GUI toolkits support
python-version: ${{ startsWith(matrix.runner-os, 'ubuntu') && 'system' || '3.12' }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/dependabot-changenote.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ permissions:
jobs:
changenote:
name: Dependabot Change Note
uses: beeware/.github/.github/workflows/dependabot-changenote.yml@741cc5a311012ee0ee195938889a337449d01eeb # main
uses: beeware/.github/.github/workflows/dependabot-changenote.yml@04ef7a6aca716616670c1ce5232d4aa3061f5c5e # main
secrets:
BRUTUS_PAT_TOKEN: ${{ secrets.BRUTUS_PAT_TOKEN }}
with:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
permissions:
contents: read
name: Verify Docs Build
uses: beeware/.github/.github/workflows/docs-build-verify.yml@741cc5a311012ee0ee195938889a337449d01eeb # main
uses: beeware/.github/.github/workflows/docs-build-verify.yml@04ef7a6aca716616670c1ce5232d4aa3061f5c5e # main
secrets:
RTD_API_TOKEN: ${{ secrets.RTD_API_TOKEN }}
with:
Expand Down
1 change: 1 addition & 0 deletions changes/2967.feature.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Apps now use an isolated environment when installing requirements. This removes a source of error where the environment running Briefcase could have an impact the packages installed into a standalone app.
1 change: 1 addition & 0 deletions changes/2967.removal.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Windows apps now enforce the use of binary artefacts when installing Python dependencies. If you have a dependency that is only available as a source tarball, ask the upstream maintainer to publish a wheel on PyPI; alternatively, you can build a wheel locally (using `pip wheel`), and then add the directory that contains the wheel to your requirements using `requirement_installer_args`.
13 changes: 7 additions & 6 deletions docs/en/reference/configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ The contact email address for the person or organization responsible for the pro

#### `env_manager`

**EXPERIMENTAL** This is an experimental feature. It is currently only used by developer mode.
**EXPERIMENTAL** This is an experimental feature.

The environment manager to use when creating isolated Python environments and installing requirements. Must be one of:

Expand Down Expand Up @@ -179,7 +179,7 @@ cleanup_paths = [
"path/to/unneeded_file.txt",
"path/to/unneeded_directory",
"path/**/*.exe",
"{app.formal_name}/content/extra.doc"
"{app.formal_name}/content/extra.doc",
]
```

Expand Down Expand Up @@ -330,23 +330,24 @@ Any PEP 508 version specifier is legal. For example:
```python
requires = [
"pillow==9.1.0",
"--no-binary", "pillow",
"--no-binary",
"pillow",
Comment on lines 331 to +334

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Suggest changing this example to userequirement_installer_args, and moving it to that option's section, because it doesn't currently have any examples except for those involving path transformation.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Agreed this example needs to be updated; I was planning to tweak these docs as part of the uv update (since that's the point where requires strictly stops being a "you can pass in any installer arg" option.

]
```

- Git repository:
```python
requires=["git+https://github.com/beeware/briefcase.git"]
requires = ["git+https://github.com/beeware/briefcase.git"]
```

- Local directory:
```python
requires=["mysrc/myapp"]
requires = ["mysrc/myapp"]
```

- Local wheel file:
```python
requires=["fullpath/wheelfile.whl"]
requires = ["fullpath/wheelfile.whl"]
```

#### `revision`
Expand Down
Loading