briefcase 0.4.2__tar.gz → 0.4.4__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (795) hide show
  1. {briefcase-0.4.2 → briefcase-0.4.4}/.github/dependabot.yml +8 -0
  2. briefcase-0.4.4/.github/workflows/check-pr-template.yml +10 -0
  3. {briefcase-0.4.2 → briefcase-0.4.4}/.github/workflows/ci.yml +8 -8
  4. briefcase-0.4.4/.github/workflows/new-issue.yml +18 -0
  5. {briefcase-0.4.2 → briefcase-0.4.4}/.github/workflows/release.yml +1 -1
  6. {briefcase-0.4.2 → briefcase-0.4.4}/.gitignore +3 -0
  7. {briefcase-0.4.2 → briefcase-0.4.4}/.pre-commit-config.yaml +1 -1
  8. {briefcase-0.4.2 → briefcase-0.4.4}/AGENTS.md +37 -0
  9. {briefcase-0.4.2 → briefcase-0.4.4}/CONTRIBUTING.md +1 -1
  10. {briefcase-0.4.2/src/briefcase.egg-info → briefcase-0.4.4}/PKG-INFO +2 -2
  11. {briefcase-0.4.2 → briefcase-0.4.4}/README.md +1 -1
  12. {briefcase-0.4.2 → briefcase-0.4.4}/automation/pyproject.toml +2 -2
  13. {briefcase-0.4.2 → briefcase-0.4.4}/automation/src/automation/bootstraps/pyside6.py +1 -1
  14. {briefcase-0.4.2 → briefcase-0.4.4}/debugger/pyproject.toml +4 -4
  15. {briefcase-0.4.2 → briefcase-0.4.4}/docs/config.yml +1 -0
  16. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/about/releases.md +50 -3
  17. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/about/success.md +1 -1
  18. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/code-signing/windows.md +24 -0
  19. briefcase-0.4.4/docs/en/how-to/contribute/first-time-contributors.md +3 -0
  20. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/contribute/how/branches.md +1 -1
  21. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/contribute/how/build-docs.md +3 -3
  22. briefcase-0.4.4/docs/en/how-to/contribute/how/change-note.md +3 -0
  23. briefcase-0.4.4/docs/en/how-to/contribute/how/dev-environment.md +3 -0
  24. briefcase-0.4.4/docs/en/how-to/contribute/how/new-issue.md +3 -0
  25. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/contribute/how/propose-feature.md +1 -1
  26. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/contribute/how/reproduce-issue.md +2 -2
  27. briefcase-0.4.4/docs/en/how-to/contribute/how/review-pr.md +3 -0
  28. briefcase-0.4.4/docs/en/how-to/contribute/how/scope-creep.md +3 -0
  29. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/contribute/how/submit-pr.md +3 -3
  30. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/contribute/how/write-code.md +3 -3
  31. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/contribute/how/write-docs.md +3 -3
  32. briefcase-0.4.4/docs/en/how-to/contribute/index.md +3 -0
  33. briefcase-0.4.4/docs/en/how-to/contribute/next/pr-review.md +3 -0
  34. briefcase-0.4.4/docs/en/how-to/contribute/next/release.md +3 -0
  35. briefcase-0.4.4/docs/en/how-to/contribute/policies/ai-policy.md +3 -0
  36. briefcase-0.4.4/docs/en/how-to/contribute/style/code-style-guide.md +3 -0
  37. briefcase-0.4.4/docs/en/how-to/contribute/style/docs-style-guide.md +3 -0
  38. briefcase-0.4.4/docs/en/how-to/contribute/what/fix-issue.md +3 -0
  39. briefcase-0.4.4/docs/en/how-to/contribute/what/implement-feature.md +3 -0
  40. briefcase-0.4.4/docs/en/how-to/contribute/what/propose-feature.md +3 -0
  41. briefcase-0.4.4/docs/en/how-to/contribute/what/review-pr.md +3 -0
  42. briefcase-0.4.4/docs/en/how-to/contribute/what/triage.md +3 -0
  43. briefcase-0.4.4/docs/en/how-to/contribute/what/use-tools.md +3 -0
  44. briefcase-0.4.4/docs/en/how-to/contribute/what/write-docs.md +3 -0
  45. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/index.md +1 -1
  46. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/configuration.md +1 -1
  47. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/platforms/index.md +2 -2
  48. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/platforms/linux/system.md +11 -1
  49. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/platforms/macOS/index.md +35 -1
  50. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/platforms/windows/index.md +11 -1
  51. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/platforms/windows/visualstudio.md +5 -4
  52. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/stylesheets/briefcase.css +6 -0
  53. {briefcase-0.4.2 → briefcase-0.4.4}/docs/spelling_wordlist +2 -0
  54. {briefcase-0.4.2 → briefcase-0.4.4}/pyproject.toml +7 -7
  55. briefcase-0.4.4/src/briefcase/__init__.py +7 -0
  56. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/bootstraps/pygame.py +1 -1
  57. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/bootstraps/pyside6.py +1 -1
  58. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/bootstraps/toga.py +3 -16
  59. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/cmdline.py +5 -0
  60. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/commands/base.py +78 -39
  61. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/commands/convert.py +26 -17
  62. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/commands/create.py +6 -61
  63. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/commands/dev.py +10 -49
  64. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/commands/new.py +5 -11
  65. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/commands/package.py +60 -32
  66. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/config.py +140 -125
  67. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/console.py +52 -25
  68. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/integrations/base.py +2 -2
  69. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/integrations/cookiecutter.py +5 -0
  70. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/integrations/docker.py +36 -44
  71. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/integrations/file.py +55 -0
  72. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/integrations/flatpak.py +40 -37
  73. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/integrations/java.py +51 -72
  74. briefcase-0.4.4/src/briefcase/integrations/virtual_environment/__init__.py +11 -0
  75. briefcase-0.4.4/src/briefcase/integrations/virtual_environment/base.py +202 -0
  76. briefcase-0.4.4/src/briefcase/integrations/virtual_environment/noop.py +74 -0
  77. briefcase-0.4.4/src/briefcase/integrations/virtual_environment/std_venv.py +113 -0
  78. briefcase-0.4.4/src/briefcase/integrations/virtual_environment/tool.py +66 -0
  79. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/integrations/visualstudio.py +2 -1
  80. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/integrations/xcode.py +44 -61
  81. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/platforms/android/gradle.py +21 -25
  82. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/platforms/iOS/xcode.py +37 -21
  83. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/platforms/linux/__init__.py +1 -2
  84. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/platforms/linux/appimage.py +33 -43
  85. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/platforms/linux/flatpak.py +19 -0
  86. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/platforms/linux/system.py +45 -38
  87. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/platforms/macOS/__init__.py +359 -66
  88. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/platforms/macOS/filters.py +4 -2
  89. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/platforms/windows/__init__.py +64 -38
  90. {briefcase-0.4.2 → briefcase-0.4.4/src/briefcase.egg-info}/PKG-INFO +2 -2
  91. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase.egg-info/SOURCES.txt +31 -24
  92. briefcase-0.4.4/src/briefcase.egg-info/scm_file_list.json +742 -0
  93. briefcase-0.4.4/src/briefcase.egg-info/scm_version.json +8 -0
  94. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/base/test_paths.py +45 -0
  95. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/convert/test_input_app_name.py +32 -8
  96. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/create/test_generate_app_template.py +1 -1
  97. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/create/test_install_app_requirements.py +0 -23
  98. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/dev/test_call.py +4 -4
  99. briefcase-0.4.4/tests/commands/dev/test_install_dev_requirements.py +113 -0
  100. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/new/test_build_gui_context.py +5 -18
  101. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/new/test_validate_app_name.py +3 -1
  102. {briefcase-0.4.2 → briefcase-0.4.4}/tests/config/test_AppConfig.py +19 -11
  103. {briefcase-0.4.2 → briefcase-0.4.4}/tests/config/test_parse_config.py +84 -22
  104. {briefcase-0.4.2 → briefcase-0.4.4}/tests/console/Console/test_selection_question.py +19 -0
  105. {briefcase-0.4.2 → briefcase-0.4.4}/tests/console/test_Log.py +13 -0
  106. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/cookiecutter/test_PythonVersionExtension.py +24 -0
  107. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/docker/test_Docker__verify.py +8 -2
  108. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/file/test_File__archives.py +5 -0
  109. briefcase-0.4.4/tests/integrations/file/test_File__is_local_path.py +43 -0
  110. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/flatpak/test_Flatpak__verify.py +2 -4
  111. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/flatpak/test_Flatpak__verify_runtime.py +21 -0
  112. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/java/test_JDK__verify.py +1 -1
  113. briefcase-0.4.4/tests/integrations/virtual_environment/base/test_VirtualEnvironment.py +11 -0
  114. briefcase-0.4.4/tests/integrations/virtual_environment/base/test_VirtualEnvironment__Popen.py +34 -0
  115. briefcase-0.4.4/tests/integrations/virtual_environment/base/test_VirtualEnvironment__check_output.py +34 -0
  116. briefcase-0.4.4/tests/integrations/virtual_environment/base/test_VirtualEnvironment__install_requirements.py +129 -0
  117. briefcase-0.4.4/tests/integrations/virtual_environment/base/test_VirtualEnvironment__run.py +34 -0
  118. briefcase-0.4.4/tests/integrations/virtual_environment/conftest.py +87 -0
  119. briefcase-0.4.4/tests/integrations/virtual_environment/noop/test_NoOpEnvManager.py +97 -0
  120. briefcase-0.4.4/tests/integrations/virtual_environment/noop/test_NoOpEnvManager__build_env.py +7 -0
  121. briefcase-0.4.4/tests/integrations/virtual_environment/noop/test_NoOpEnvManager__clean.py +14 -0
  122. briefcase-0.4.4/tests/integrations/virtual_environment/noop/test_NoOpEnvManager__properties.py +14 -0
  123. briefcase-0.4.4/tests/integrations/virtual_environment/noop/test_NoOpEnvManager__rewrite_args.py +7 -0
  124. briefcase-0.4.4/tests/integrations/virtual_environment/std_venv/conftest.py +8 -0
  125. briefcase-0.4.4/tests/integrations/virtual_environment/std_venv/test_VenvEnvManager.py +152 -0
  126. briefcase-0.4.4/tests/integrations/virtual_environment/std_venv/test_VenvEnvManager__build_env.py +121 -0
  127. briefcase-0.4.4/tests/integrations/virtual_environment/std_venv/test_VenvEnvManager__clean.py +16 -0
  128. briefcase-0.4.4/tests/integrations/virtual_environment/std_venv/test_VenvEnvManager__properties.py +41 -0
  129. briefcase-0.4.4/tests/integrations/virtual_environment/std_venv/test_VenvEnvManager__rewrite_args.py +60 -0
  130. briefcase-0.4.4/tests/integrations/virtual_environment/test_VirtualEnvironmentManager.py +31 -0
  131. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/wix/conftest.py +4 -0
  132. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/android/gradle/test_create.py +1 -1
  133. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/iOS/xcode/test_run.py +77 -44
  134. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/appimage/test_dev.py +3 -3
  135. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/flatpak/test_build.py +48 -0
  136. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/flatpak/test_create.py +4 -0
  137. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/flatpak/test_dev.py +3 -3
  138. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/system/test_build.py +28 -0
  139. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/app/package/test_notarize.py +71 -2
  140. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/app/package/test_package.py +57 -0
  141. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/app/package/test_package_dmg.py +1 -0
  142. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/app/package/test_package_pkg.py +121 -0
  143. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/app/package/test_package_zip.py +2 -0
  144. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/app/package/test_resume_notarization.py +667 -5
  145. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/app/test_dev.py +3 -3
  146. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/app/test_run.py +48 -18
  147. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/test_macOS_log_clean_filter.py +22 -2
  148. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/xcode/test_dev.py +3 -3
  149. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/xcode/test_run.py +32 -12
  150. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/web/static/test_dev.py +4 -4
  151. briefcase-0.4.4/tests/platforms/windows/app/__init__.py +0 -0
  152. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/windows/app/conftest.py +2 -0
  153. briefcase-0.4.4/tests/platforms/windows/app/create/__init__.py +0 -0
  154. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/windows/app/create/test_create.py +59 -1
  155. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/windows/app/test_dev.py +3 -3
  156. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/windows/app/test_package.py +14 -1
  157. briefcase-0.4.4/tests/platforms/windows/visualstudio/__init__.py +0 -0
  158. briefcase-0.4.4/tests/platforms/windows/visualstudio/conftest.py +24 -0
  159. briefcase-0.4.4/tests/platforms/windows/visualstudio/test_create.py +81 -0
  160. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/windows/visualstudio/test_dev.py +3 -3
  161. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/windows/visualstudio/test_package.py +8 -1
  162. {briefcase-0.4.2 → briefcase-0.4.4}/tox.ini +6 -3
  163. briefcase-0.4.2/.github/workflows/pre-commit-update.yml +0 -15
  164. briefcase-0.4.2/docs/en/how-to/contribute/first-time-contributors.md +0 -3
  165. briefcase-0.4.2/docs/en/how-to/contribute/how/change-note.md +0 -3
  166. briefcase-0.4.2/docs/en/how-to/contribute/how/dev-environment.md +0 -3
  167. briefcase-0.4.2/docs/en/how-to/contribute/how/new-issue.md +0 -3
  168. briefcase-0.4.2/docs/en/how-to/contribute/how/review-pr.md +0 -3
  169. briefcase-0.4.2/docs/en/how-to/contribute/how/scope-creep.md +0 -3
  170. briefcase-0.4.2/docs/en/how-to/contribute/index.md +0 -3
  171. briefcase-0.4.2/docs/en/how-to/contribute/next/pr-review.md +0 -3
  172. briefcase-0.4.2/docs/en/how-to/contribute/next/release.md +0 -3
  173. briefcase-0.4.2/docs/en/how-to/contribute/policies/ai-policy.md +0 -3
  174. briefcase-0.4.2/docs/en/how-to/contribute/style/code-style-guide.md +0 -3
  175. briefcase-0.4.2/docs/en/how-to/contribute/style/docs-style-guide.md +0 -3
  176. briefcase-0.4.2/docs/en/how-to/contribute/what/fix-issue.md +0 -3
  177. briefcase-0.4.2/docs/en/how-to/contribute/what/implement-feature.md +0 -3
  178. briefcase-0.4.2/docs/en/how-to/contribute/what/propose-feature.md +0 -3
  179. briefcase-0.4.2/docs/en/how-to/contribute/what/review-pr.md +0 -3
  180. briefcase-0.4.2/docs/en/how-to/contribute/what/triage.md +0 -3
  181. briefcase-0.4.2/docs/en/how-to/contribute/what/use-tools.md +0 -3
  182. briefcase-0.4.2/docs/en/how-to/contribute/what/write-docs.md +0 -3
  183. briefcase-0.4.2/src/briefcase/__init__.py +0 -20
  184. briefcase-0.4.2/src/briefcase/integrations/virtual_environment.py +0 -322
  185. briefcase-0.4.2/tests/commands/dev/test_install_dev_requirements.py +0 -278
  186. briefcase-0.4.2/tests/integrations/virtual_environment/conftest.py +0 -77
  187. briefcase-0.4.2/tests/integrations/virtual_environment/test_NoOpEnvironment.py +0 -116
  188. briefcase-0.4.2/tests/integrations/virtual_environment/test_NoOpVenvContext__Popen.py +0 -45
  189. briefcase-0.4.2/tests/integrations/virtual_environment/test_NoOpVenvContext__check_output.py +0 -50
  190. briefcase-0.4.2/tests/integrations/virtual_environment/test_NoOpVenvContext__clean.py +0 -32
  191. briefcase-0.4.2/tests/integrations/virtual_environment/test_NoOpVenvContext__create.py +0 -93
  192. briefcase-0.4.2/tests/integrations/virtual_environment/test_NoOpVenvContext__exists.py +0 -10
  193. briefcase-0.4.2/tests/integrations/virtual_environment/test_NoOpVenvContext__run.py +0 -45
  194. briefcase-0.4.2/tests/integrations/virtual_environment/test_VenvContext__Popen.py +0 -78
  195. briefcase-0.4.2/tests/integrations/virtual_environment/test_VenvContext__bin_dir.py +0 -63
  196. briefcase-0.4.2/tests/integrations/virtual_environment/test_VenvContext__check_output.py +0 -76
  197. briefcase-0.4.2/tests/integrations/virtual_environment/test_VenvContext__clean.py +0 -35
  198. briefcase-0.4.2/tests/integrations/virtual_environment/test_VenvContext__create.py +0 -58
  199. briefcase-0.4.2/tests/integrations/virtual_environment/test_VenvContext__executable.py +0 -39
  200. briefcase-0.4.2/tests/integrations/virtual_environment/test_VenvContext__exists.py +0 -23
  201. briefcase-0.4.2/tests/integrations/virtual_environment/test_VenvContext__full_env.py +0 -200
  202. briefcase-0.4.2/tests/integrations/virtual_environment/test_VenvContext__recreate.py +0 -38
  203. briefcase-0.4.2/tests/integrations/virtual_environment/test_VenvContext__rewrite_head.py +0 -90
  204. briefcase-0.4.2/tests/integrations/virtual_environment/test_VenvContext__run.py +0 -75
  205. briefcase-0.4.2/tests/integrations/virtual_environment/test_VenvContext__update_core_tools.py +0 -37
  206. briefcase-0.4.2/tests/integrations/virtual_environment/test_VenvEnvironment.py +0 -105
  207. briefcase-0.4.2/tests/integrations/virtual_environment/test_VirtualEnvironment.py +0 -48
  208. briefcase-0.4.2/tests/integrations/virtual_environment/utils.py +0 -22
  209. briefcase-0.4.2/tests/platforms/windows/visualstudio/test_create.py +0 -24
  210. {briefcase-0.4.2 → briefcase-0.4.4}/.git-blame-ignore-revs +0 -0
  211. {briefcase-0.4.2 → briefcase-0.4.4}/.github/workflows/dependabot-changenote.yml +0 -0
  212. {briefcase-0.4.2 → briefcase-0.4.4}/.github/workflows/publish.yml +0 -0
  213. {briefcase-0.4.2 → briefcase-0.4.4}/.pyspelling.yml +0 -0
  214. {briefcase-0.4.2 → briefcase-0.4.4}/.readthedocs.yaml +0 -0
  215. {briefcase-0.4.2 → briefcase-0.4.4}/.specify/memory/constitution.md +0 -0
  216. {briefcase-0.4.2 → briefcase-0.4.4}/AUTHORS +0 -0
  217. {briefcase-0.4.2 → briefcase-0.4.4}/CODE_OF_CONDUCT.md +0 -0
  218. {briefcase-0.4.2 → briefcase-0.4.4}/LICENSE +0 -0
  219. {briefcase-0.4.2 → briefcase-0.4.4}/automation/README.md +0 -0
  220. {briefcase-0.4.2 → briefcase-0.4.4}/automation/src/automation/__init__.py +0 -0
  221. {briefcase-0.4.2 → briefcase-0.4.4}/automation/src/automation/bootstraps/__init__.py +0 -0
  222. {briefcase-0.4.2 → briefcase-0.4.4}/automation/src/automation/bootstraps/console.py +0 -0
  223. {briefcase-0.4.2 → briefcase-0.4.4}/automation/src/automation/bootstraps/pygame.py +0 -0
  224. {briefcase-0.4.2 → briefcase-0.4.4}/automation/src/automation/bootstraps/toga.py +0 -0
  225. {briefcase-0.4.2 → briefcase-0.4.4}/changes/.gitignore +0 -0
  226. {briefcase-0.4.2 → briefcase-0.4.4}/changes/template.md +0 -0
  227. {briefcase-0.4.2 → briefcase-0.4.4}/debugger/LICENSE +0 -0
  228. {briefcase-0.4.2 → briefcase-0.4.4}/debugger/README.md +0 -0
  229. {briefcase-0.4.2 → briefcase-0.4.4}/debugger/setup.py +0 -0
  230. {briefcase-0.4.2 → briefcase-0.4.4}/debugger/src/briefcase_debugger/__init__.py +0 -0
  231. {briefcase-0.4.2 → briefcase-0.4.4}/debugger/src/briefcase_debugger/config.py +0 -0
  232. {briefcase-0.4.2 → briefcase-0.4.4}/debugger/src/briefcase_debugger/debugpy.py +0 -0
  233. {briefcase-0.4.2 → briefcase-0.4.4}/debugger/src/briefcase_debugger/pdb.py +0 -0
  234. {briefcase-0.4.2 → briefcase-0.4.4}/debugger/tests/test_base.py +0 -0
  235. {briefcase-0.4.2 → briefcase-0.4.4}/debugger/tests/test_debugpy.py +0 -0
  236. {briefcase-0.4.2 → briefcase-0.4.4}/debugger/tests/test_debugpy_path_mappings.py +0 -0
  237. {briefcase-0.4.2 → briefcase-0.4.4}/debugger/tests/test_pdb.py +0 -0
  238. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/SUMMARY.md +0 -0
  239. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/_snippets/available-channels.md +0 -0
  240. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/about/faq.md +0 -0
  241. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/about/index.md +0 -0
  242. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/building/ci.md +0 -0
  243. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/building/cli-apps.md +0 -0
  244. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/building/external-apps.md +0 -0
  245. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/building/workflow.yaml +0 -0
  246. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/code-signing/android.md +0 -0
  247. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/code-signing/images/AppleID.png +0 -0
  248. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/code-signing/images/Certificates_Identifiers_Profiles.png +0 -0
  249. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/code-signing/images/Choose_developerID_application.png +0 -0
  250. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/code-signing/images/Create_certificate.png +0 -0
  251. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/code-signing/images/Download_certificate.png +0 -0
  252. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/code-signing/images/Keychain_request1.png +0 -0
  253. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/code-signing/images/Keychain_request2.png +0 -0
  254. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/code-signing/images/Upload_certificate_request.png +0 -0
  255. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/code-signing/images/Valid_certificate.png +0 -0
  256. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/code-signing/images/WWDR_certificate.png +0 -0
  257. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/code-signing/macOS.md +0 -0
  258. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/debugging/pdb.md +0 -0
  259. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/debugging/vscode.md +0 -0
  260. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/index.md +0 -0
  261. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/internal/release.md +0 -0
  262. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/publishing/android.md +0 -0
  263. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/publishing/iOS.md +0 -0
  264. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/publishing/macOS.md +0 -0
  265. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/testing/x11passthrough.md +0 -0
  266. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/how-to/upgrading/upgrade-from-v0.2.md +0 -0
  267. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/images/briefcase.png +0 -0
  268. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/commands/build.md +0 -0
  269. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/commands/convert.md +0 -0
  270. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/commands/create.md +0 -0
  271. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/commands/dev.md +0 -0
  272. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/commands/index.md +0 -0
  273. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/commands/new.md +0 -0
  274. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/commands/package.md +0 -0
  275. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/commands/publish.md +0 -0
  276. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/commands/run.md +0 -0
  277. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/commands/update.md +0 -0
  278. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/commands/upgrade.md +0 -0
  279. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/environment.md +0 -0
  280. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/index.md +0 -0
  281. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/platforms/android/gradle.md +0 -0
  282. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/platforms/iOS/xcode.md +0 -0
  283. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/platforms/linux/appimage.md +0 -0
  284. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/platforms/linux/docker_build_options.md +0 -0
  285. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/platforms/linux/flatpak.md +0 -0
  286. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/platforms/macOS/app.md +0 -0
  287. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/platforms/macOS/xcode.md +0 -0
  288. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/platforms/web/static.md +0 -0
  289. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/platforms/windows/app.md +0 -0
  290. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/reference/plugins.md +0 -0
  291. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/topics/access-packaging-metadata.md +0 -0
  292. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/topics/index.md +0 -0
  293. {briefcase-0.4.2 → briefcase-0.4.4}/docs/en/tutorial/index.md +0 -0
  294. {briefcase-0.4.2 → briefcase-0.4.4}/docs/mkdocs.en.yml +0 -0
  295. {briefcase-0.4.2 → briefcase-0.4.4}/setup.cfg +0 -0
  296. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/__main__.py +0 -0
  297. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/bootstraps/__init__.py +0 -0
  298. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/bootstraps/base.py +0 -0
  299. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/bootstraps/console.py +0 -0
  300. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/bootstraps/empty.py +0 -0
  301. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/channels/__init__.py +0 -0
  302. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/channels/appstore.py +0 -0
  303. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/channels/base.py +0 -0
  304. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/channels/playstore.py +0 -0
  305. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/commands/__init__.py +0 -0
  306. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/commands/build.py +0 -0
  307. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/commands/open.py +0 -0
  308. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/commands/publish.py +0 -0
  309. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/commands/run.py +0 -0
  310. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/commands/update.py +0 -0
  311. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/commands/upgrade.py +0 -0
  312. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/constants.py +0 -0
  313. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/debuggers/__init__.py +0 -0
  314. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/debuggers/base.py +0 -0
  315. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/debuggers/debugpy.py +0 -0
  316. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/debuggers/pdb.py +0 -0
  317. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/exceptions.py +0 -0
  318. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/integrations/__init__.py +0 -0
  319. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/integrations/android_sdk.py +0 -0
  320. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/integrations/git.py +0 -0
  321. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/integrations/linuxdeploy.py +0 -0
  322. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/integrations/rcedit.py +0 -0
  323. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/integrations/subprocess.py +0 -0
  324. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/integrations/windows_sdk.py +0 -0
  325. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/integrations/wix.py +0 -0
  326. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/platforms/__init__.py +0 -0
  327. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/platforms/android/__init__.py +0 -0
  328. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/platforms/iOS/__init__.py +0 -0
  329. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/platforms/linux/snap.py +0 -0
  330. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/platforms/macOS/app.py +0 -0
  331. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/platforms/macOS/utils.py +0 -0
  332. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/platforms/macOS/xcode.py +0 -0
  333. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/platforms/tvOS/__init__.py +0 -0
  334. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/platforms/tvOS/xcode.py +0 -0
  335. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/platforms/watchOS/__init__.py +0 -0
  336. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/platforms/watchOS/xcode.py +0 -0
  337. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/platforms/wearos/__init__.py +0 -0
  338. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/platforms/wearos/gradle.py +0 -0
  339. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/platforms/web/__init__.py +0 -0
  340. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/platforms/web/static.py +0 -0
  341. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/platforms/windows/app.py +0 -0
  342. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase/platforms/windows/visualstudio.py +0 -0
  343. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase.egg-info/dependency_links.txt +0 -0
  344. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase.egg-info/entry_points.txt +0 -0
  345. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase.egg-info/requires.txt +0 -0
  346. {briefcase-0.4.2 → briefcase-0.4.4}/src/briefcase.egg-info/top_level.txt +0 -0
  347. {briefcase-0.4.2 → briefcase-0.4.4}/tests/__init__.py +0 -0
  348. {briefcase-0.4.2 → briefcase-0.4.4}/tests/bootstraps/__init__.py +0 -0
  349. {briefcase-0.4.2 → briefcase-0.4.4}/tests/bootstraps/test_base.py +0 -0
  350. {briefcase-0.4.2 → briefcase-0.4.4}/tests/channels/__init__.py +0 -0
  351. {briefcase-0.4.2 → briefcase-0.4.4}/tests/channels/test_base.py +0 -0
  352. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/__init__.py +0 -0
  353. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/base/__init__.py +0 -0
  354. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/base/conftest.py +0 -0
  355. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/base/test_app_module_path.py +0 -0
  356. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/base/test_cookiecutter_logging.py +0 -0
  357. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/base/test_end_of_life.py +0 -0
  358. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/base/test_finalize.py +0 -0
  359. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/base/test_full_options.py +0 -0
  360. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/base/test_get_git_config_value.py +0 -0
  361. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/base/test_parse_config.py +0 -0
  362. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/base/test_parse_config_overrides.py +0 -0
  363. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/base/test_parse_options.py +0 -0
  364. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/base/test_properties.py +0 -0
  365. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/base/test_resolve_apps.py +0 -0
  366. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/base/test_update_cookiecutter_cache.py +0 -0
  367. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/base/test_validate_locale.py +0 -0
  368. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/base/test_verify_host.py +0 -0
  369. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/base/test_verify_requires_python.py +0 -0
  370. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/base/test_verify_template.py +0 -0
  371. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/base/test_verify_tools.py +0 -0
  372. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/build/__init__.py +0 -0
  373. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/build/conftest.py +0 -0
  374. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/build/test_call.py +0 -0
  375. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/conftest.py +0 -0
  376. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/convert/__init__.py +0 -0
  377. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/convert/conftest.py +0 -0
  378. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/convert/test__find_changelog_filename.py +0 -0
  379. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/convert/test_build_app_context.py +0 -0
  380. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/convert/test_call.py +0 -0
  381. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/convert/test_convert_app.py +0 -0
  382. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/convert/test_get_source_dir_hint.py +0 -0
  383. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/convert/test_input_app_type.py +0 -0
  384. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/convert/test_input_author.py +0 -0
  385. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/convert/test_input_bundle.py +0 -0
  386. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/convert/test_input_description.py +0 -0
  387. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/convert/test_input_email.py +0 -0
  388. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/convert/test_input_formal_name.py +0 -0
  389. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/convert/test_input_license.py +0 -0
  390. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/convert/test_input_source_dir.py +0 -0
  391. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/convert/test_input_test_source_dir.py +0 -0
  392. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/convert/test_input_url.py +0 -0
  393. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/convert/test_merge_or_copy_pyproject.py +0 -0
  394. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/convert/test_migrate_necessary_files.py +0 -0
  395. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/convert/test_pyproject.py +0 -0
  396. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/convert/test_validate_app_name.py +0 -0
  397. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/convert/test_validate_pyproject_file.py +0 -0
  398. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/convert/test_validate_source_dir.py +0 -0
  399. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/convert/test_validate_test_source_dir.py +0 -0
  400. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/create/__init__.py +0 -0
  401. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/create/conftest.py +0 -0
  402. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/create/test_call.py +0 -0
  403. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/create/test_cleanup_app_content.py +0 -0
  404. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/create/test_cleanup_app_support_package.py +0 -0
  405. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/create/test_cleanup_stub_binary.py +0 -0
  406. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/create/test_cookiecutter_cache_path.py +0 -0
  407. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/create/test_create_app.py +0 -0
  408. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/create/test_install_app_code.py +0 -0
  409. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/create/test_install_app_resources.py +0 -0
  410. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/create/test_install_app_support_package.py +0 -0
  411. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/create/test_install_image.py +0 -0
  412. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/create/test_install_stub_binary.py +0 -0
  413. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/create/test_properties.py +0 -0
  414. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/dev/__init__.py +0 -0
  415. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/dev/conftest.py +0 -0
  416. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/dev/test_get_environment.py +0 -0
  417. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/dev/test_run_dev_app.py +0 -0
  418. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/dev/test_venv_name.py +0 -0
  419. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/new/__init__.py +0 -0
  420. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/new/conftest.py +0 -0
  421. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/new/test_build_app_context.py +0 -0
  422. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/new/test_call.py +0 -0
  423. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/new/test_make_app_name.py +0 -0
  424. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/new/test_make_author_email.py +0 -0
  425. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/new/test_make_domain.py +0 -0
  426. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/new/test_make_module_name.py +0 -0
  427. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/new/test_make_project_url.py +0 -0
  428. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/new/test_new_app.py +0 -0
  429. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/new/test_parse_project_overrides.py +0 -0
  430. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/new/test_select_bootstrap.py +0 -0
  431. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/new/test_validate_bundle.py +0 -0
  432. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/new/test_validate_email.py +0 -0
  433. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/new/test_validate_formal_name.py +0 -0
  434. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/open/__init__.py +0 -0
  435. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/open/conftest.py +0 -0
  436. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/open/test__open_app.py +0 -0
  437. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/open/test_call.py +0 -0
  438. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/package/__init__.py +0 -0
  439. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/package/conftest.py +0 -0
  440. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/package/test_call.py +0 -0
  441. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/package/test_properties.py +0 -0
  442. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/publish/__init__.py +0 -0
  443. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/publish/conftest.py +0 -0
  444. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/publish/test_call.py +0 -0
  445. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/run/__init__.py +0 -0
  446. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/run/conftest.py +0 -0
  447. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/run/test_LogFilter.py +0 -0
  448. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/run/test_LogFilter__test_filter.py +0 -0
  449. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/run/test__stream_app_logs.py +0 -0
  450. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/run/test_call.py +0 -0
  451. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/update/__init__.py +0 -0
  452. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/update/conftest.py +0 -0
  453. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/update/test_call.py +0 -0
  454. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/update/test_update_app.py +0 -0
  455. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/upgrade/__init__.py +0 -0
  456. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/upgrade/conftest.py +0 -0
  457. {briefcase-0.4.2 → briefcase-0.4.4}/tests/commands/upgrade/test_call.py +0 -0
  458. {briefcase-0.4.2 → briefcase-0.4.4}/tests/config/__init__.py +0 -0
  459. {briefcase-0.4.2 → briefcase-0.4.4}/tests/config/test_BaseConfig.py +0 -0
  460. {briefcase-0.4.2 → briefcase-0.4.4}/tests/config/test_GlobalConfig.py +0 -0
  461. {briefcase-0.4.2 → briefcase-0.4.4}/tests/config/test_is_reserved_keyword.py +0 -0
  462. {briefcase-0.4.2 → briefcase-0.4.4}/tests/config/test_is_uti_core_type.py +0 -0
  463. {briefcase-0.4.2 → briefcase-0.4.4}/tests/config/test_is_valid_app_name.py +1 -1
  464. {briefcase-0.4.2 → briefcase-0.4.4}/tests/config/test_is_valid_bundle_identifier.py +0 -0
  465. {briefcase-0.4.2 → briefcase-0.4.4}/tests/config/test_make_class_name.py +0 -0
  466. {briefcase-0.4.2 → briefcase-0.4.4}/tests/config/test_merge_config.py +0 -0
  467. {briefcase-0.4.2 → briefcase-0.4.4}/tests/config/test_merge_pep621_config.py +0 -0
  468. {briefcase-0.4.2 → briefcase-0.4.4}/tests/config/test_mime_type_to_uti.py +0 -0
  469. {briefcase-0.4.2 → briefcase-0.4.4}/tests/config/test_parse_boolean.py +0 -0
  470. {briefcase-0.4.2 → briefcase-0.4.4}/tests/config/test_validate_document_type_config.py +0 -0
  471. {briefcase-0.4.2 → briefcase-0.4.4}/tests/config/test_validate_install_options_config.py +0 -0
  472. {briefcase-0.4.2 → briefcase-0.4.4}/tests/config/test_validate_url.py +0 -0
  473. {briefcase-0.4.2 → briefcase-0.4.4}/tests/conftest.py +0 -0
  474. {briefcase-0.4.2 → briefcase-0.4.4}/tests/console/Console/__init__.py +0 -0
  475. {briefcase-0.4.2 → briefcase-0.4.4}/tests/console/Console/conftest.py +0 -0
  476. {briefcase-0.4.2 → briefcase-0.4.4}/tests/console/Console/test_boolean_question.py +0 -0
  477. {briefcase-0.4.2 → briefcase-0.4.4}/tests/console/Console/test_input.py +0 -0
  478. {briefcase-0.4.2 → briefcase-0.4.4}/tests/console/Console/test_input_boolean.py +0 -0
  479. {briefcase-0.4.2 → briefcase-0.4.4}/tests/console/Console/test_input_selection.py +0 -0
  480. {briefcase-0.4.2 → briefcase-0.4.4}/tests/console/Console/test_input_text.py +0 -0
  481. {briefcase-0.4.2 → briefcase-0.4.4}/tests/console/Console/test_is_color_enabled.py +0 -0
  482. {briefcase-0.4.2 → briefcase-0.4.4}/tests/console/Console/test_primitives.py +0 -0
  483. {briefcase-0.4.2 → briefcase-0.4.4}/tests/console/Console/test_progress_bar.py +0 -0
  484. {briefcase-0.4.2 → briefcase-0.4.4}/tests/console/Console/test_properties.py +0 -0
  485. {briefcase-0.4.2 → briefcase-0.4.4}/tests/console/Console/test_release_console_control.py +0 -0
  486. {briefcase-0.4.2 → briefcase-0.4.4}/tests/console/Console/test_text_question.py +0 -0
  487. {briefcase-0.4.2 → briefcase-0.4.4}/tests/console/Console/test_textwrap.py +0 -0
  488. {briefcase-0.4.2 → briefcase-0.4.4}/tests/console/Console/test_wait_bar.py +0 -0
  489. {briefcase-0.4.2 → briefcase-0.4.4}/tests/console/Console/test_warning_banner.py +0 -0
  490. {briefcase-0.4.2 → briefcase-0.4.4}/tests/console/__init__.py +0 -0
  491. {briefcase-0.4.2 → briefcase-0.4.4}/tests/console/test_NotDeadYet.py +0 -0
  492. {briefcase-0.4.2 → briefcase-0.4.4}/tests/console/test_sanitize_text.py +0 -0
  493. {briefcase-0.4.2 → briefcase-0.4.4}/tests/debuggers/__init__.py +0 -0
  494. {briefcase-0.4.2 → briefcase-0.4.4}/tests/debuggers/test_base.py +0 -0
  495. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/__init__.py +0 -0
  496. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/ADB/__init__.py +0 -0
  497. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/ADB/adb_errors/arbitrary-adb-error-unknown-command.out +0 -0
  498. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/ADB/adb_errors/arbitrary-adb-error-unknown-command.returncode +0 -0
  499. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/ADB/adb_errors/device-not-found.out +0 -0
  500. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/ADB/adb_errors/device-not-found.returncode +0 -0
  501. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/ADB/conftest.py +0 -0
  502. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/ADB/test_avd_name.py +0 -0
  503. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/ADB/test_datetime.py +0 -0
  504. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/ADB/test_force_stop_app.py +0 -0
  505. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/ADB/test_forward_reverse.py +0 -0
  506. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/ADB/test_has_booted.py +0 -0
  507. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/ADB/test_install_apk.py +0 -0
  508. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/ADB/test_kill.py +0 -0
  509. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/ADB/test_logcat.py +0 -0
  510. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/ADB/test_logcat_tail.py +0 -0
  511. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/ADB/test_pid_exists.py +0 -0
  512. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/ADB/test_pidof.py +0 -0
  513. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/ADB/test_revoke_permissions.py +0 -0
  514. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/ADB/test_run.py +0 -0
  515. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/ADB/test_start_app.py +0 -0
  516. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/AndroidSDK/__init__.py +0 -0
  517. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/AndroidSDK/devices/daemon_start.out +0 -0
  518. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/AndroidSDK/devices/multiple_devices.out +0 -0
  519. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/AndroidSDK/devices/no_devices.out +0 -0
  520. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/AndroidSDK/devices/no_model.out +0 -0
  521. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/AndroidSDK/devices/no_permissions.out +0 -0
  522. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/AndroidSDK/devices/one_emulator.out +0 -0
  523. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/AndroidSDK/devices/physical_device_macOS.out +0 -0
  524. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/AndroidSDK/test__create_emulator.py +0 -0
  525. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/AndroidSDK/test_avd_config.py +0 -0
  526. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/AndroidSDK/test_create_emulator.py +0 -0
  527. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/AndroidSDK/test_devices.py +0 -0
  528. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/AndroidSDK/test_emulators.py +0 -0
  529. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/AndroidSDK/test_list_installed_images.py +0 -0
  530. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/AndroidSDK/test_list_packages.py +0 -0
  531. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/AndroidSDK/test_properties.py +0 -0
  532. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/AndroidSDK/test_select_target_device.py +0 -0
  533. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/AndroidSDK/test_start_emulator.py +0 -0
  534. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/AndroidSDK/test_update_emulator_config.py +0 -0
  535. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/AndroidSDK/test_upgrade.py +0 -0
  536. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/AndroidSDK/test_verify.py +0 -0
  537. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/AndroidSDK/test_verify_avd.py +0 -0
  538. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/AndroidSDK/test_verify_emulator.py +0 -0
  539. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/AndroidSDK/test_verify_emulator_skin.py +0 -0
  540. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/AndroidSDK/test_verify_license.py +0 -0
  541. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/AndroidSDK/test_verify_system_image.py +0 -0
  542. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/__init__.py +0 -0
  543. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/android_sdk/conftest.py +0 -0
  544. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/base/__init__.py +0 -0
  545. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/base/conftest.py +0 -0
  546. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/base/test_ManagedTool.py +0 -0
  547. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/base/test_Tool.py +0 -0
  548. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/base/test_ToolCache.py +0 -0
  549. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/base/test_tool_registry.py +0 -0
  550. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/conftest.py +0 -0
  551. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/cookiecutter/__init__.py +0 -0
  552. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/cookiecutter/test_GradleEscape.py +0 -0
  553. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/cookiecutter/test_PListExtension.py +0 -0
  554. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/cookiecutter/test_RGBExtension.py +0 -0
  555. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/cookiecutter/test_TOMLEscape.py +0 -0
  556. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/cookiecutter/test_UUIDExtension.py +0 -0
  557. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/cookiecutter/test_XMLExtension.py +0 -0
  558. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/docker/__init__.py +0 -0
  559. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/docker/conftest.py +0 -0
  560. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/docker/test_DockerAppContext__Popen.py +0 -0
  561. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/docker/test_DockerAppContext__check_output.py +0 -0
  562. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/docker/test_DockerAppContext__dockerize_args.py +0 -0
  563. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/docker/test_DockerAppContext__prepare.py +0 -0
  564. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/docker/test_DockerAppContext__run.py +0 -0
  565. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/docker/test_DockerAppContext__run_app_context.py +0 -0
  566. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/docker/test_DockerAppContext__verify.py +0 -0
  567. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/docker/test_Docker__cache_image.py +0 -0
  568. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/docker/test_Docker__check_output.py +0 -0
  569. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/docker/test_Docker__dockerize_args.py +0 -0
  570. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/docker/test_Docker__dockerize_path.py +0 -0
  571. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/docker/test_Docker__subprocess_env.py +0 -0
  572. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/docker/test_Docker__x11_passthrough.py +0 -0
  573. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/file/__init__.py +0 -0
  574. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/file/test_File__download.py +0 -0
  575. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/file/test_File__sorted_depth_first.py +0 -0
  576. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/file/test_File__sorted_depth_first_groups.py +0 -0
  577. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/file/test_File__ssl_context.py +0 -0
  578. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/file/test_File__verify.py +0 -0
  579. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/file/test_Files__rename.py +0 -0
  580. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/flatpak/__init__.py +0 -0
  581. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/flatpak/conftest.py +0 -0
  582. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/flatpak/test_Flatpak__build.py +0 -0
  583. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/flatpak/test_Flatpak__bundle.py +0 -0
  584. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/flatpak/test_Flatpak__run.py +0 -0
  585. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/flatpak/test_Flatpak__verify_repo.py +0 -0
  586. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/git/__init__.py +0 -0
  587. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/git/test_Git__verify.py +0 -0
  588. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/java/__init__.py +0 -0
  589. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/java/conftest.py +0 -0
  590. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/java/test_JDK__uninstall.py +0 -0
  591. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/java/test_JDK__upgrade.py +0 -0
  592. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/linuxdeploy/__init__.py +0 -0
  593. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/linuxdeploy/conftest.py +0 -0
  594. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/linuxdeploy/test_LinuxDeployBase__patch_elf_binary.py +0 -0
  595. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/linuxdeploy/test_LinuxDeployBase__upgrade.py +0 -0
  596. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/linuxdeploy/test_LinuxDeployBase__verify.py +0 -0
  597. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/linuxdeploy/test_LinuxDeployGtkPlugin__properties.py +0 -0
  598. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/linuxdeploy/test_LinuxDeployLocalFilePlugin__properties.py +0 -0
  599. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/linuxdeploy/test_LinuxDeployLocalFilePlugin__verify.py +0 -0
  600. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/linuxdeploy/test_LinuxDeployQtPlugin__properties.py +0 -0
  601. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/linuxdeploy/test_LinuxDeployURLPlugin__properties.py +0 -0
  602. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/linuxdeploy/test_LinuxDeployURLPlugin__verify.py +0 -0
  603. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/linuxdeploy/test_LinuxDeploy__is_elf_file.py +0 -0
  604. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/linuxdeploy/test_LinuxDeploy__properties.py +0 -0
  605. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/linuxdeploy/test_LinuxDeploy__verify_plugins.py +0 -0
  606. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/linuxdeploy/utils.py +0 -0
  607. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/rcedit/__init__.py +0 -0
  608. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/rcedit/conftest.py +0 -0
  609. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/rcedit/test_RCEdit__properties.py +0 -0
  610. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/rcedit/test_RCEdit__upgrade.py +0 -0
  611. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/rcedit/test_RCEdit__verify.py +0 -0
  612. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/subprocess/__init__.py +0 -0
  613. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/subprocess/conftest.py +0 -0
  614. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/subprocess/test_NativeAppContext__verify.py +0 -0
  615. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/subprocess/test_PopenOutputStreamer.py +0 -0
  616. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/subprocess/test_Subprocess__Popen.py +0 -0
  617. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/subprocess/test_Subprocess__check_output.py +0 -0
  618. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/subprocess/test_Subprocess__cleanup.py +0 -0
  619. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/subprocess/test_Subprocess__final_kwargs.py +0 -0
  620. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/subprocess/test_Subprocess__parse_output.py +0 -0
  621. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/subprocess/test_Subprocess__prepare.py +0 -0
  622. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/subprocess/test_Subprocess__run__controlled_console.py +0 -0
  623. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/subprocess/test_Subprocess__run__stream_output__False.py +0 -0
  624. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/subprocess/test_Subprocess__run__stream_output__True.py +0 -0
  625. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/subprocess/test_Subprocess__run_app_context.py +0 -0
  626. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/subprocess/test_Subprocess__stream_output.py +0 -0
  627. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/subprocess/test_Subprocess__stream_output_non_blocking.py +0 -0
  628. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/subprocess/test_Subprocess__verify.py +0 -0
  629. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/subprocess/test_creationflag_constants.py +0 -0
  630. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/subprocess/test_ensure_console_is_safe.py +0 -0
  631. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/subprocess/test_ensure_str.py +0 -0
  632. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/subprocess/test_get_process_id_by_command.py +0 -0
  633. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/subprocess/test_is_process_dead.py +0 -0
  634. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/subprocess/test_json_parser.py +0 -0
  635. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/virtual_environment/__init__.py +0 -0
  636. {briefcase-0.4.2/tests/integrations/visualstudio → briefcase-0.4.4/tests/integrations/virtual_environment/base}/__init__.py +0 -0
  637. {briefcase-0.4.2/tests/integrations/windows_sdk → briefcase-0.4.4/tests/integrations/virtual_environment/noop}/__init__.py +0 -0
  638. {briefcase-0.4.2/tests/integrations/wix → briefcase-0.4.4/tests/integrations/virtual_environment/std_venv}/__init__.py +0 -0
  639. {briefcase-0.4.2/tests/integrations/xcode → briefcase-0.4.4/tests/integrations/visualstudio}/__init__.py +0 -0
  640. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/visualstudio/conftest.py +0 -0
  641. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/visualstudio/test_VisualStudio__properties.py +0 -0
  642. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/visualstudio/test_VisualStudio__verify.py +0 -0
  643. {briefcase-0.4.2/tests/platforms → briefcase-0.4.4/tests/integrations/windows_sdk}/__init__.py +0 -0
  644. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/windows_sdk/conftest.py +0 -0
  645. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/windows_sdk/test_WindowsSDK___is_supported_version.py +0 -0
  646. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/windows_sdk/test_WindowsSDK___sdk_versions_from_bin.py +0 -0
  647. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/windows_sdk/test_WindowsSDK___verify_signtool.py +0 -0
  648. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/windows_sdk/test_WindowsSDK__properties.py +0 -0
  649. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/windows_sdk/test_WindowsSDK__verify.py +0 -0
  650. {briefcase-0.4.2/tests/platforms/android → briefcase-0.4.4/tests/integrations/wix}/__init__.py +0 -0
  651. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/wix/test_WiX__upgrade.py +0 -0
  652. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/wix/test_WiX__verify.py +0 -0
  653. {briefcase-0.4.2/tests/platforms/android/gradle → briefcase-0.4.4/tests/integrations/xcode}/__init__.py +0 -0
  654. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/xcode/conftest.py +0 -0
  655. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/xcode/security/multiple-identities.out +0 -0
  656. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/xcode/security/no-identities.out +0 -0
  657. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/xcode/security/one-identity.out +0 -0
  658. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/xcode/simctl/README +0 -0
  659. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/xcode/simctl/alternate-format.json +0 -0
  660. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/xcode/simctl/iOS-13.2-only.json +0 -0
  661. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/xcode/simctl/multiple-iOS-versions.json +0 -0
  662. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/xcode/simctl/no-devices.json +0 -0
  663. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/xcode/simctl/no-runtimes.json +0 -0
  664. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/xcode/simctl/single-device-booted.json +0 -0
  665. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/xcode/simctl/single-device-shutdown.json +0 -0
  666. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/xcode/simctl/single-device-shutting-down.json +0 -0
  667. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/xcode/simctl/single-device-unknown.json +0 -0
  668. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/xcode/test_XcodeCLITools__verify.py +0 -0
  669. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/xcode/test_Xcode__verify.py +0 -0
  670. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/xcode/test_confirm_xcode_license_accepted.py +0 -0
  671. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/xcode/test_ensure_command_line_tools_are_installed.py +0 -0
  672. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/xcode/test_ensure_xcode_is_installed.py +0 -0
  673. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/xcode/test_get_device_state.py +0 -0
  674. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/xcode/test_get_identities.py +0 -0
  675. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/xcode/test_get_simulators.py +0 -0
  676. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/xcode/test_verify_command_line_tools_install.py +0 -0
  677. {briefcase-0.4.2 → briefcase-0.4.4}/tests/integrations/xcode/test_verify_xcode_install.py +0 -0
  678. {briefcase-0.4.2/tests/platforms/iOS → briefcase-0.4.4/tests/platforms}/__init__.py +0 -0
  679. {briefcase-0.4.2/tests/platforms/iOS/xcode → briefcase-0.4.4/tests/platforms/android}/__init__.py +0 -0
  680. {briefcase-0.4.2/tests/platforms/linux → briefcase-0.4.4/tests/platforms/android/gradle}/__init__.py +0 -0
  681. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/android/gradle/conftest.py +0 -0
  682. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/android/gradle/test_android_log_clean_filter.py +0 -0
  683. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/android/gradle/test_build.py +0 -0
  684. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/android/gradle/test_open.py +0 -0
  685. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/android/gradle/test_package.py +0 -0
  686. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/android/gradle/test_package__aab.py +0 -0
  687. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/android/gradle/test_package__apk.py +0 -0
  688. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/android/gradle/test_package__debug_apk.py +0 -0
  689. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/android/gradle/test_run.py +0 -0
  690. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/android/gradle/test_safe_formal_name.py +0 -0
  691. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/conftest.py +0 -0
  692. {briefcase-0.4.2/tests/platforms/linux/appimage → briefcase-0.4.4/tests/platforms/iOS}/__init__.py +0 -0
  693. {briefcase-0.4.2/tests/platforms/linux/flatpak → briefcase-0.4.4/tests/platforms/iOS/xcode}/__init__.py +0 -0
  694. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/iOS/xcode/conftest.py +0 -0
  695. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/iOS/xcode/mixin/test_select_target_device.py +0 -0
  696. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/iOS/xcode/test_build.py +0 -0
  697. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/iOS/xcode/test_create.py +0 -0
  698. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/iOS/xcode/test_mixin.py +0 -0
  699. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/iOS/xcode/test_open.py +0 -0
  700. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/iOS/xcode/test_package.py +0 -0
  701. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/iOS/xcode/test_update.py +0 -0
  702. {briefcase-0.4.2/tests/platforms/linux/system → briefcase-0.4.4/tests/platforms/linux}/__init__.py +0 -0
  703. {briefcase-0.4.2/tests/platforms/macOS → briefcase-0.4.4/tests/platforms/linux/appimage}/__init__.py +0 -0
  704. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/appimage/test_build.py +0 -0
  705. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/appimage/test_create.py +0 -0
  706. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/appimage/test_mixin.py +0 -0
  707. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/appimage/test_package.py +0 -0
  708. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/appimage/test_run.py +0 -0
  709. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/conftest.py +0 -0
  710. {briefcase-0.4.2/tests/platforms/macOS/app → briefcase-0.4.4/tests/platforms/linux/flatpak}/__init__.py +0 -0
  711. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/flatpak/test_mixin.py +0 -0
  712. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/flatpak/test_open.py +0 -0
  713. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/flatpak/test_package.py +0 -0
  714. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/flatpak/test_run.py +0 -0
  715. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/os_release.py +0 -0
  716. {briefcase-0.4.2/tests/platforms/macOS/app/package → briefcase-0.4.4/tests/platforms/linux/system}/__init__.py +0 -0
  717. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/system/conftest.py +0 -0
  718. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/system/test_create.py +0 -0
  719. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/system/test_dev.py +0 -0
  720. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/system/test_mixin___deb_devirtualize.py +0 -0
  721. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/system/test_mixin__finalize_app_config.py +0 -0
  722. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/system/test_mixin__properties.py +0 -0
  723. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/system/test_mixin__target_glibc_version.py +0 -0
  724. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/system/test_mixin__verify.py +0 -0
  725. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/system/test_mixin__verify_python.py +0 -0
  726. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/system/test_mixin__verify_system_packages.py +0 -0
  727. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/system/test_mixin__verify_system_python.py +0 -0
  728. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/system/test_package.py +0 -0
  729. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/system/test_package__deb.py +0 -0
  730. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/system/test_package__pkg.py +0 -0
  731. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/system/test_package__rpm.py +0 -0
  732. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/system/test_run.py +0 -0
  733. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/test_DockerOpenCommand.py +0 -0
  734. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/test_LinuxMixin__support_package_url.py +0 -0
  735. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/test_LinuxMixin__vendor_details.py +0 -0
  736. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/test_LocalRequirementsMixin.py +0 -0
  737. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/linux/test_parse_freedesktop_os_release.py +0 -0
  738. {briefcase-0.4.2/tests/platforms/macOS/xcode → briefcase-0.4.4/tests/platforms/macOS}/__init__.py +0 -0
  739. {briefcase-0.4.2/tests/platforms/web → briefcase-0.4.4/tests/platforms/macOS/app}/__init__.py +0 -0
  740. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/app/conftest.py +0 -0
  741. {briefcase-0.4.2/tests/platforms/web/static → briefcase-0.4.4/tests/platforms/macOS/app/package}/__init__.py +0 -0
  742. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/app/package/conftest.py +0 -0
  743. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/app/package/test_ditto.py +0 -0
  744. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/app/test_build.py +0 -0
  745. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/app/test_create.py +0 -0
  746. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/app/test_mixin.py +0 -0
  747. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/app/test_open.py +0 -0
  748. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/app/test_signing.py +0 -0
  749. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/conftest.py +0 -0
  750. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/test_AppPackagesMergeMixin__ensure_thin_binary.py +0 -0
  751. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/test_AppPackagesMergeMixin__find_binary_packages.py +0 -0
  752. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/test_AppPackagesMergeMixin__lipo_dylib.py +0 -0
  753. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/test_AppPackagesMergeMixin__merge_app_packages.py +0 -0
  754. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/test_AppPackagesMergeMixin__thin_app_packages.py +0 -0
  755. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/test_SigningIdentity.py +0 -0
  756. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/test_XcodeBuildFilter.py +0 -0
  757. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/test_macOSMixin__verify_not_on_icloud.py +0 -0
  758. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/test_macOSMixin_verify_tools.py +0 -0
  759. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/test_sha256_file_digest.py +0 -0
  760. {briefcase-0.4.2/tests/platforms/windows → briefcase-0.4.4/tests/platforms/macOS/xcode}/__init__.py +0 -0
  761. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/xcode/conftest.py +0 -0
  762. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/xcode/test_build.py +0 -0
  763. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/xcode/test_mixin.py +0 -0
  764. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/xcode/test_open.py +0 -0
  765. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/macOS/xcode/test_package.py +0 -0
  766. {briefcase-0.4.2/tests/platforms/windows/app → briefcase-0.4.4/tests/platforms/web}/__init__.py +0 -0
  767. {briefcase-0.4.2/tests/platforms/windows/app/create → briefcase-0.4.4/tests/platforms/web/static}/__init__.py +0 -0
  768. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/web/static/conftest.py +0 -0
  769. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/web/static/test_build.py +0 -0
  770. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/web/static/test_build__handle_insert.py +0 -0
  771. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/web/static/test_build__handle_legacy_css.py +0 -0
  772. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/web/static/test_build__process_wheel.py +0 -0
  773. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/web/static/test_build_extract_pyscript_config.py +0 -0
  774. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/web/static/test_build_write_inserts.py +0 -0
  775. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/web/static/test_create.py +0 -0
  776. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/web/static/test_mixin.py +0 -0
  777. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/web/static/test_package.py +0 -0
  778. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/web/static/test_run.py +0 -0
  779. {briefcase-0.4.2/tests/platforms/windows/visualstudio → briefcase-0.4.4/tests/platforms/windows}/__init__.py +0 -0
  780. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/windows/app/create/conftest.py +0 -0
  781. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/windows/app/create/test_install_app_resources.py +0 -0
  782. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/windows/app/create/test_install_license.py +0 -0
  783. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/windows/app/create/test_txt_to_rtf.py +0 -0
  784. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/windows/app/test_build.py +0 -0
  785. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/windows/app/test_mixin.py +0 -0
  786. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/windows/app/test_open.py +0 -0
  787. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/windows/app/test_run.py +0 -0
  788. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/windows/conftest.py +0 -0
  789. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/windows/visualstudio/test_build.py +0 -0
  790. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/windows/visualstudio/test_mixin.py +0 -0
  791. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/windows/visualstudio/test_open.py +0 -0
  792. {briefcase-0.4.2 → briefcase-0.4.4}/tests/platforms/windows/visualstudio/test_run.py +0 -0
  793. {briefcase-0.4.2 → briefcase-0.4.4}/tests/test_cmdline.py +0 -0
  794. {briefcase-0.4.2 → briefcase-0.4.4}/tests/test_mainline.py +0 -0
  795. {briefcase-0.4.2 → briefcase-0.4.4}/tests/utils.py +0 -0
@@ -32,3 +32,11 @@ updates:
32
32
  interval: "weekly"
33
33
  day: "sunday"
34
34
  time: "20:00"
35
+
36
+ - package-ecosystem: "pre-commit"
37
+ directory: "/"
38
+ schedule:
39
+ # Check for updates on Sunday, 8PM UTC
40
+ interval: "weekly"
41
+ day: "sunday"
42
+ time: "20:00"
@@ -0,0 +1,10 @@
1
+ name: PR Checklist
2
+
3
+ on:
4
+ pull_request:
5
+ types: [opened, edited, reopened, synchronize]
6
+
7
+ jobs:
8
+ check-pr-template:
9
+ name: Check PR template
10
+ uses: beeware/.github/.github/workflows/pr-checklist.yml@main
@@ -40,10 +40,10 @@ jobs:
40
40
  continue-on-error: true
41
41
  steps:
42
42
  - name: Checkout
43
- uses: actions/checkout@v6.0.2
43
+ uses: actions/checkout@v7.0.0
44
44
 
45
45
  - name: Set up Python
46
- uses: actions/setup-python@v6.2.0
46
+ uses: actions/setup-python@v6.3.0
47
47
  with:
48
48
  python-version: "3.13"
49
49
 
@@ -83,12 +83,12 @@ jobs:
83
83
  timeout-minutes: 5
84
84
  steps:
85
85
  - name: Checkout
86
- uses: actions/checkout@v6.0.2
86
+ uses: actions/checkout@v7.0.0
87
87
  with:
88
88
  fetch-depth: 1
89
89
 
90
90
  - name: Set up Python
91
- uses: actions/setup-python@v6.2.0
91
+ uses: actions/setup-python@v6.3.0
92
92
  with:
93
93
  python-version: "3.X"
94
94
  cache: pip
@@ -132,12 +132,12 @@ jobs:
132
132
  # experimental: true
133
133
  steps:
134
134
  - name: Checkout
135
- uses: actions/checkout@v6.0.2
135
+ uses: actions/checkout@v7.0.0
136
136
  with:
137
137
  fetch-depth: 0
138
138
 
139
139
  - name: Set up Python
140
- uses: actions/setup-python@v6.2.0
140
+ uses: actions/setup-python@v6.3.0
141
141
  with:
142
142
  python-version: ${{ matrix.python-version }}
143
143
  allow-prereleases: true
@@ -186,12 +186,12 @@ jobs:
186
186
  if: always() && contains('success,failure', needs.unit-tests.result)
187
187
  steps:
188
188
  - name: Checkout
189
- uses: actions/checkout@v6.0.2
189
+ uses: actions/checkout@v7.0.0
190
190
  with:
191
191
  fetch-depth: 0
192
192
 
193
193
  - name: Setup Python
194
- uses: actions/setup-python@v6.2.0
194
+ uses: actions/setup-python@v6.3.0
195
195
  with:
196
196
  # Use minimum version of python for coverage to avoid phantom branches
197
197
  # https://github.com/nedbat/coveragepy/issues/1572#issuecomment-1522546425
@@ -0,0 +1,18 @@
1
+ name: New issue
2
+
3
+ on:
4
+ issues:
5
+ types:
6
+ - opened
7
+ - reopened
8
+ - transferred
9
+
10
+ jobs:
11
+ add-to-project:
12
+ name: Add issue to BeeWare project
13
+ runs-on: ubuntu-latest
14
+ steps:
15
+ - uses: actions/add-to-project@v2.0.0
16
+ with:
17
+ project-url: https://github.com/orgs/beeware/projects/1
18
+ github-token: ${{ secrets.BRUTUS_PAT_TOKEN }}
@@ -34,7 +34,7 @@ jobs:
34
34
  echo "VERSION=${GITHUB_REF_NAME#v}" | tee -a $GITHUB_ENV
35
35
 
36
36
  - name: Set up Python
37
- uses: actions/setup-python@v6.2.0
37
+ uses: actions/setup-python@v6.3.0
38
38
  with:
39
39
  python-version: "3.x"
40
40
 
@@ -50,8 +50,11 @@ logs/
50
50
  .specify/templates
51
51
  .specify/extensions.yml
52
52
  .specify/extensions
53
+ .specify/feature.json
53
54
  .specify/init-options.json
54
55
  .specify/integration.json
55
56
  .specify/integrations
56
57
  .specify/workflows
57
58
  .specify/workflow.yml
59
+ /specs/
60
+ /docs/superpowers/
@@ -14,7 +14,7 @@ repos:
14
14
  - id: docformatter
15
15
  args: [--in-place, --black]
16
16
  - repo: https://github.com/astral-sh/ruff-pre-commit
17
- rev: v0.15.12
17
+ rev: v0.15.20
18
18
  hooks:
19
19
  - id: ruff-format
20
20
  - id: ruff-check
@@ -10,6 +10,7 @@ Briefcase converts Python projects into standalone native applications for macOS
10
10
  ## Quick Reference
11
11
 
12
12
  - **Language**: Python >= 3.10 (3.10–3.14 supported)
13
+ - **Docstrings**: Sphinx style with Markdown content
13
14
  - **Dev environment**: Python 3.13 virtualenv with `dev` dependency group
14
15
  - **License**: BSD-3-Clause
15
16
  - **Entry point**: `briefcase` via `src/briefcase/__main__.py:main()`
@@ -247,6 +248,8 @@ Types: `feature`, `bugfix`, `removal`, `doc`, `misc`.
247
248
 
248
249
  Fragment text must describe user-facing impact, not implementation details. Use `misc` for housekeeping, minor changes, or changes to features not yet in a formal release.
249
250
 
251
+ Fragment content must use Markdown syntax.
252
+
250
253
  ## Documentation Style
251
254
 
252
255
  Markdown files in this project (including `AGENTS.md`, `docs/en/`, and `changes/` fragments) must **not** use hard line breaks to enforce an 80-character column limit. Each paragraph or list item must be written as a single unbroken line, regardless of its length. Let the reader's editor or renderer handle wrapping.
@@ -295,3 +298,37 @@ When writing or editing any `.md` file, do not insert newlines mid-sentence or m
295
298
  second_argument,
296
299
  )
297
300
  ```
301
+
302
+ ### Docstring formatting
303
+
304
+ Docstrings in code must use Sphinx style with Markdown content. Use the `:param:` and `:returns:` syntax, with Markdown formatting for all docstring content:
305
+
306
+ ```console
307
+ """Construct a valid class name from a formal name.
308
+
309
+ `formal_name` is used here.
310
+
311
+ :param formal_name: The formal name
312
+ :returns: The app's class name
313
+ """
314
+ ```
315
+
316
+ ## Pull request template
317
+
318
+ When submitting a pull request, you must include all information requested in the pull request template:
319
+
320
+ ```console
321
+ <!--- Describe your changes in detail -->
322
+ <!--- What problem does this change solve? -->
323
+ <!--- If this PR relates to an issue, include Refs #XXX or Fixes #XXX -->
324
+
325
+ ## PR Checklist:
326
+ <!--- Go over all the following points, and put an `x` in all the boxes that apply. -->
327
+ - [ ] I will abide by the BeeWare Code of Conduct
328
+ - [ ] I have read and have followed the **CONTRIBUTING.md** file
329
+ - [ ] This PR was generated or assisted using an AI tool
330
+ <!-- update or delete the next line to reflect your usage -->
331
+ Assisted-by:
332
+ ```
333
+
334
+ The details of the change, and linking any related issue should come first. The PR checklist at the end must be present, and filled out appropriately; all three boxes must be checked, and `Assisted-by:` must be followed by the assisting model.
@@ -34,4 +34,4 @@ We require that all new features have full user documentation. We have a [docume
34
34
 
35
35
  ### Pull Requests
36
36
 
37
- We have a [process for submitting a PR](https://briefcase.beeware.org/en/latest/how-to/contribute/how/submit-pr/) that all contributions must follow.
37
+ We have a [process for submitting a PR](https://briefcase.beeware.org/en/latest/how-to/contribute/how/submit-pr/) that all contributions must follow. This includes the use of a [pull request template](https://github.com/beeware/.github/blob/main/.github/pull_request_template.md) that *all* pull requests must include and complete as appropriate.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: briefcase
3
- Version: 0.4.2
3
+ Version: 0.4.4
4
4
  Summary: Tools to support converting a Python project into a standalone native application.
5
5
  Author-email: Russell Keith-Magee <russell@keith-magee.com>
6
6
  Maintainer-email: BeeWare Team <team@beeware.org>
@@ -99,7 +99,7 @@ Briefcase is part of the [BeeWare suite](https://beeware.org). You can talk to t
99
99
  - [Discord](https://beeware.org/bee/chat/)
100
100
  - The Briefcase [GitHub Discussions forum](https://github.com/beeware/briefcase/discussions)
101
101
 
102
- We foster a welcoming and respectful community as described in our [BeeWare Community Code of Conduct](https://beeware.org/community/behavior/).
102
+ We foster a welcoming and respectful community as described in our [BeeWare Community Code of Conduct](https://beeware.org/community/code-of-conduct/).
103
103
 
104
104
  ## Contributing
105
105
 
@@ -50,7 +50,7 @@ Briefcase is part of the [BeeWare suite](https://beeware.org). You can talk to t
50
50
  - [Discord](https://beeware.org/bee/chat/)
51
51
  - The Briefcase [GitHub Discussions forum](https://github.com/beeware/briefcase/discussions)
52
52
 
53
- We foster a welcoming and respectful community as described in our [BeeWare Community Code of Conduct](https://beeware.org/community/behavior/).
53
+ We foster a welcoming and respectful community as described in our [BeeWare Community Code of Conduct](https://beeware.org/community/code-of-conduct/).
54
54
 
55
55
  ## Contributing
56
56
 
@@ -1,8 +1,8 @@
1
1
  [build-system]
2
2
  requires = [
3
3
  # keep versions in sync with ../pyproject.toml
4
- "setuptools==82.0.1",
5
- "setuptools_scm==10.0.5",
4
+ "setuptools==83.0.0",
5
+ "setuptools_scm==10.2.0",
6
6
  "setuptools_dynamic_dependencies @ git+https://github.com/beeware/setuptools_dynamic_dependencies",
7
7
  ]
8
8
  build-backend = "setuptools.build_meta"
@@ -61,6 +61,6 @@ universal_build = true
61
61
  min_os_version = "13.0"
62
62
  requires = [
63
63
  "PySide6-Addons~=6.8",
64
- "std-nslog~=1.0.3",
64
+ "std-nslog~=2.0.0",
65
65
  ]
66
66
  """
@@ -1,8 +1,8 @@
1
1
  [build-system]
2
2
  requires = [
3
3
  # keep versions in sync with automation/pyproject.toml and ../pyproject.toml
4
- "setuptools==82.0.1",
5
- "setuptools_scm==10.0.5",
4
+ "setuptools==83.0.0",
5
+ "setuptools_scm==10.2.0",
6
6
  ]
7
7
  build-backend = "setuptools.build_meta"
8
8
 
@@ -23,8 +23,8 @@ debugpy = ["debugpy>=1.8.17,<2.0.0"]
23
23
 
24
24
  [dependency-groups]
25
25
  test = [
26
- "coverage[toml] == 7.13.5",
27
- "pytest == 9.0.3",
26
+ "coverage[toml] == 7.15.0",
27
+ "pytest == 9.1.1",
28
28
  "pytest-xdist == 3.8.0",
29
29
  ]
30
30
 
@@ -20,6 +20,7 @@ extra:
20
20
  min_python_version_tag: "310" # The tag version of the minimum python version
21
21
  recent_python_version: "3.13" # The newest Python version known to work on all platforms
22
22
  docs_python_version: "3.13" # The version of Python required to build the documentation
23
+ contribution_guide_root: how-to/contribute
23
24
  social:
24
25
  - icon: fontawesome/brands/github
25
26
  link: https://github.com/beeware
@@ -2,13 +2,60 @@
2
2
 
3
3
  <!-- towncrier release notes start -->
4
4
 
5
+ ## 0.4.4 (2026-07-08)
6
+
7
+ ### Bugfixes
8
+
9
+ * The Toga bootstrap now enforces a dependency on `libgirepository 2.0`. This is required by changes introduced in Toga 0.5.5. ([#2919](https://github.com/beeware/briefcase/issues/2919))
10
+
11
+ ### Backward Incompatible Changes
12
+
13
+ * The Toga app generated by Briefcase is no longer compatible with Debian 12 or Ubuntu 22.04. ([#2919](https://github.com/beeware/briefcase/issues/2919))
14
+
15
+ ### Misc
16
+
17
+ * [#2920](https://github.com/beeware/briefcase/issues/2920), [#2921](https://github.com/beeware/briefcase/issues/2921), [#2922](https://github.com/beeware/briefcase/issues/2922), [#2923](https://github.com/beeware/briefcase/issues/2923), [#2924](https://github.com/beeware/briefcase/issues/2924), [#2925](https://github.com/beeware/briefcase/issues/2925), [#2926](https://github.com/beeware/briefcase/issues/2926)
18
+
19
+ ## 0.4.3 (2026-07-02)
20
+
21
+ ### Features
22
+
23
+ * Linux system packages can now define a custom man page by setting `man_page` in `pyproject.toml`. ([#2545](https://github.com/beeware/briefcase/issues/2545))
24
+ * macOS PKG installers can now include additional installer resources, configured with the `installer_resources` setting. ([#2561](https://github.com/beeware/briefcase/issues/2561))
25
+ * MSI post-install and pre-uninstall scripts can now identify if they are running unattended. ([#2781](https://github.com/beeware/briefcase/issues/2781))
26
+ * MSI installers now provide the user the ability to check disk space requirements prior to install. ([#2783](https://github.com/beeware/briefcase/issues/2783))
27
+ * Windows MSIs with a post-install or pre-uninstall script will no longer display a console window when running in quiet mode. Script output will be captured by the installer log. ([#2789](https://github.com/beeware/briefcase/issues/2789))
28
+ * The minimum supported Windows build number can now be specified using the `min_os_version` option. ([#2855](https://github.com/beeware/briefcase/issues/2855))
29
+ * When a selection prompt provides a single option, it is now automatically selected as the default. ([#2856](https://github.com/beeware/briefcase/issues/2856))
30
+ * MSI installers will now check that the app is not running or has open files before uninstalling. ([#2862](https://github.com/beeware/briefcase/issues/2862))
31
+ * macOS PKG installers can now run a post-install script, configured with the `post_install_script` setting. ([#2865](https://github.com/beeware/briefcase/issues/2865))
32
+ * macOS notarization state is now persisted automatically during briefcase package. If notarization is interrupted, rerunning the same package command will detect the interrupted notarization and resume it without requiring the `--resume` flag. ([#2883](https://github.com/beeware/briefcase/issues/2883))
33
+ * The macOS notarization auto-resume workflow now allows for resuming notarization with only the distribution artefact - usually the contents of the `dist` directory. ([#2887](https://github.com/beeware/briefcase/issues/2887))
34
+ * The macOS `package` command now accepts a `--no-wait` option that will submit an app for notarization without waiting for the notarization to complete. The submission can be finalized later by re-running `briefcase package`. ([#2888](https://github.com/beeware/briefcase/issues/2888))
35
+
36
+ ### Bugfixes
37
+
38
+ * Briefcase now rejects project paths that contain commas or invisible left-to-right marks before project generation starts. ([#2580](https://github.com/beeware/briefcase/issues/2580))
39
+ * Bundle identifiers with 2 parts are no longer rejected by the validation process. ([#2824](https://github.com/beeware/briefcase/issues/2824))
40
+ * Briefcase now warns when an app's `description` is longer than 80 characters, as overly long descriptions can be truncated by some packaging formats (such as Windows MSI shortcut icons). ([#2864](https://github.com/beeware/briefcase/issues/2864))
41
+ * Briefcase is now able to display application logs when running apps under macOS 26. If you are experiencing this problem, you will also need to either (a) upgrade `std-nslog` to 2.0.0+, or target your application at Python 3.14 (or newer). ([#2877](https://github.com/beeware/briefcase/issues/2877))
42
+ * If a Linux Flatpak project specifies the use of a base image, Briefcase now verifies that base is installed and available. ([#2905](https://github.com/beeware/briefcase/issues/2905))
43
+
44
+ ### Documentation
45
+
46
+ * The Windows code signing guide now describes how to generate a self-signed certificate for testing. ([#2899](https://github.com/beeware/briefcase/issues/2899))
47
+
48
+ ### Misc
49
+
50
+ * [#2127](https://github.com/beeware/briefcase/issues/2127), [#2559](https://github.com/beeware/briefcase/issues/2559), [#2820](https://github.com/beeware/briefcase/issues/2820), [#2821](https://github.com/beeware/briefcase/issues/2821), [#2822](https://github.com/beeware/briefcase/issues/2822), [#2823](https://github.com/beeware/briefcase/issues/2823), [#2826](https://github.com/beeware/briefcase/issues/2826), [#2827](https://github.com/beeware/briefcase/issues/2827), [#2829](https://github.com/beeware/briefcase/issues/2829), [#2830](https://github.com/beeware/briefcase/issues/2830), [#2837](https://github.com/beeware/briefcase/issues/2837), [#2845](https://github.com/beeware/briefcase/issues/2845), [#2849](https://github.com/beeware/briefcase/issues/2849), [#2850](https://github.com/beeware/briefcase/issues/2850), [#2851](https://github.com/beeware/briefcase/issues/2851), [#2852](https://github.com/beeware/briefcase/issues/2852), [#2854](https://github.com/beeware/briefcase/issues/2854), [#2857](https://github.com/beeware/briefcase/issues/2857), [#2858](https://github.com/beeware/briefcase/issues/2858), [#2859](https://github.com/beeware/briefcase/issues/2859), [#2860](https://github.com/beeware/briefcase/issues/2860), [#2866](https://github.com/beeware/briefcase/issues/2866), [#2872](https://github.com/beeware/briefcase/issues/2872), [#2874](https://github.com/beeware/briefcase/issues/2874), [#2875](https://github.com/beeware/briefcase/issues/2875), [#2876](https://github.com/beeware/briefcase/issues/2876), [#2879](https://github.com/beeware/briefcase/issues/2879), [#2880](https://github.com/beeware/briefcase/issues/2880), [#2881](https://github.com/beeware/briefcase/issues/2881), [#2882](https://github.com/beeware/briefcase/issues/2882), [#2885](https://github.com/beeware/briefcase/issues/2885), [#2892](https://github.com/beeware/briefcase/issues/2892), [#2893](https://github.com/beeware/briefcase/issues/2893), [#2894](https://github.com/beeware/briefcase/issues/2894), [#2895](https://github.com/beeware/briefcase/issues/2895), [#2896](https://github.com/beeware/briefcase/issues/2896), [#2897](https://github.com/beeware/briefcase/issues/2897), [#2898](https://github.com/beeware/briefcase/issues/2898), [#2902](https://github.com/beeware/briefcase/issues/2902), [#2904](https://github.com/beeware/briefcase/issues/2904), [#2906](https://github.com/beeware/briefcase/issues/2906), [#2907](https://github.com/beeware/briefcase/issues/2907), [#2908](https://github.com/beeware/briefcase/issues/2908), [#2909](https://github.com/beeware/briefcase/issues/2909), [#2910](https://github.com/beeware/briefcase/issues/2910), [#2911](https://github.com/beeware/briefcase/issues/2911), [#2912](https://github.com/beeware/briefcase/issues/2912), [#2913](https://github.com/beeware/briefcase/issues/2913), [#2916](https://github.com/beeware/briefcase/issues/2916)
51
+
5
52
  ## 0.4.2 (2026-05-06)
6
53
 
7
54
  ### Features
8
55
 
9
56
  * Dynamic PEP 621 metadata in `pyproject.toml` will now be resolved by invoking the PEP 517 `[build-system]` interface. ([#474](https://github.com/beeware/briefcase/issues/474))
10
57
  * Briefcase can now build Windows apps and installers for ARM64 devices. ([#1887](https://github.com/beeware/briefcase/issues/1887))
11
- * License metadata in ``pyproject.toml`` is now parsed and validated using PEP 639 format (i.e., `license = "<SPDX expression>"` and `license-files = [...]`). ([#2146](https://github.com/beeware/briefcase/issues/2146))
58
+ * License metadata in `pyproject.toml` is now parsed and validated using PEP 639 format (i.e., `license = "<SPDX expression>"` and `license-files = [...]`). ([#2146](https://github.com/beeware/briefcase/issues/2146))
12
59
  * The new project wizard now provides more detailed information about community bootstraps that are available. ([#2342](https://github.com/beeware/briefcase/issues/2342))
13
60
  * Error messages for macOS and iOS wheel compatibility now include the Python version. ([#2658](https://github.com/beeware/briefcase/issues/2658))
14
61
  * Android apps can now specify the ABIs that they target. ([#2723](https://github.com/beeware/briefcase/issues/2723))
@@ -23,7 +70,7 @@
23
70
 
24
71
  * (CVE-2026-33430) When a Windows MSI is installed for All Users, the installation folder no longer inherits the permissions of the parent folder. The fix for this issue has been backported to the templates for Briefcase v0.4.1, v0.4.0 and v0.3.26. ([#2759](https://github.com/beeware/briefcase/issues/2759))
25
72
  * Briefcase has been made more resilient to permission errors when renaming recently created directories on Windows. ([#1780](https://github.com/beeware/briefcase/issues/1780))
26
- * Android system image verification now uses ``sdkmanager --list_installed`` to confirm the image is fully installed, rather than only checking if the directory exists. If the image is not installed, it will be downloaded automatically. ([#1895](https://github.com/beeware/briefcase/issues/1895))
73
+ * Android system image verification now uses `sdkmanager --list_installed` to confirm the image is fully installed, rather than only checking if the directory exists. If the image is not installed, it will be downloaded automatically. ([#1895](https://github.com/beeware/briefcase/issues/1895))
27
74
  * MSI pre/post install scripts now run with elevated privileges when installed for "All Users". ([#2722](https://github.com/beeware/briefcase/issues/2722))
28
75
  * Briefcase will now prevent the user from using an x86_64 Python interpreter on an Apple Silicon machine. ([#2736](https://github.com/beeware/briefcase/issues/2736))
29
76
  * On macOS, any wheel that doesn't contain a tag ending `-any` will now be identified as binary content that requires a merge. Previously, the `Root-Is-Purelib` wheel metadata was used to determine if a package was "pure"; this flag has proven to be unreliable under some circumstances. ([#2753](https://github.com/beeware/briefcase/issues/2753))
@@ -31,7 +78,7 @@
31
78
 
32
79
  ### Backward Incompatible Changes
33
80
 
34
- * Apps now require a valid PEP 639 license configuration. Apps in legacy formats — PEP 621 ``license.file``, ``license.text``, and bare free-text strings — are automatically coerced to PEP 639 format on a best-effort basis, with warnings raised about any automated conversion that has occurred. Apps with no license definition can still be built, but a placeholder license file and a `LicenseRef-UnknownLicense` license expression will be used. ([#2146](https://github.com/beeware/briefcase/issues/2146))
81
+ * Apps now require a valid PEP 639 license configuration. Apps in legacy formats — PEP 621 `license.file`, `license.text`, and bare free-text strings — are automatically coerced to PEP 639 format on a best-effort basis, with warnings raised about any automated conversion that has occurred. Apps with no license definition can still be built, but a placeholder license file and a `LicenseRef-UnknownLicense` license expression will be used. ([#2146](https://github.com/beeware/briefcase/issues/2146))
35
82
  * New PySide6 apps now default PySide 6.10. This adds support for Python 3.14, but also enforces a minimum supported macOS version of 13.0 (Ventura). ([#2658](https://github.com/beeware/briefcase/issues/2658))
36
83
 
37
84
  ### Misc
@@ -2,7 +2,7 @@
2
2
 
3
3
  Want to see examples of Briefcase in use? Here's some:
4
4
 
5
- - [Travel Tips](https://github.com/freakboy3742/traveltips) is an app in the [iOS App Store](https://apps.apple.com/au/app/travel-tips/id1336372310) that was packaged for distribution using Briefcase.
5
+ - [Travel Tips](https://github.com/freakboy3742/traveltips) is an app in the [iOS App Store](https://apps.apple.com/au/app/travel-tips/id1336372310) and [Google Play Store](https://play.google.com/store/apps/details?id=com.keith_magee.traveltips) that was packaged for distribution using Briefcase.
6
6
  - [Mu](https://codewith.mu) is a simple code editor for beginner programmers. It uses Briefcase to prepare a macOS installer.
7
7
  - [Napari](https://napari.org/) is a multidimensional image viewer for python. It uses Briefcase to prepare bundled Windows, macOS, and Linux installers.
8
8
  - [Patent Toolkit](https://patenttk.com/) is a suite of tools for patent professionals. It uses Briefcase to prepare Windows and macOS builds.
@@ -14,6 +14,30 @@ Of note, a certificate for code signing is different from a certificate for othe
14
14
 
15
15
  Additionally, it is possible to create a code signing certificate directly within Windows. However, when you create a certificate yourself, it will likely be considered "self-signed". Using such a certificate to code sign an application will not imbue it with the trust that a certificate from a Certificate Authority provides. Therefore, a self-signed certificate should not be used to code sign applications for distribution.
16
16
 
17
+ ### Creating a self-signed certificate
18
+
19
+ Although a self-signed certificate is not suitable for distribution, it can be useful for testing the code signing process. The following commands, issued at a PowerShell prompt, will create a self-signed code signing certificate and install it in the `Personal` certificate store of `Current User`:
20
+
21
+ ```pwsh-session
22
+ PS C:\> $cert = New-SelfSignedCertificate -Subject "My self-signed certificate" -Type CodeSigningCert -Certstorelocation Cert:\CurrentUser\My
23
+ PS C:\> Export-Certificate -Cert $cert -FilePath my-self-signed-certificate.crt
24
+ ```
25
+
26
+ Once you've done this, you can get the identity of the certificate by running:
27
+
28
+ ```pwsh-session
29
+ PS C:\> $cert.Thumbprint
30
+ ```
31
+
32
+ This will output the 40-character hexadecimal identity that is used by Briefcase to identify the certificate.
33
+
34
+ The certificate can be converted into a password-protected PFX file using:
35
+
36
+ ```pwsh-session
37
+ PS C:\> $password = ConvertTo-SecureString -String "<your password>" -Force -AsPlainText
38
+ PS C:\> Export-PfxCertificate -Cert "Cert:\CurrentUser\My\$($cert.Thumbprint)" -FilePath my-self-signed-certificate.pfx -Password $password
39
+ ```
40
+
17
41
  ## Install the Certificate
18
42
 
19
43
  Once a code signing certificate is requested, Certificate Authorities may vary is how the certificate is actually delivered to you. In general, though, you'll likely receive an encrypted file containing both the certificate and its private key. Depending on the exact nature of the file format, Windows provides several commands to import certificates in to one of its certificate stores.
@@ -0,0 +1,3 @@
1
+ # First-time contributors
2
+
3
+ {% extends "_shared/contribute/first-time-contributors.md" %}
@@ -1,3 +1,3 @@
1
1
  # Work from a feature branch, not your `main` branch
2
2
 
3
- {% extends "contribute/how/branches.md" %}
3
+ {% extends "_shared/contribute/how/branches.md" %}
@@ -1,15 +1,15 @@
1
1
  # Building documentation
2
2
 
3
- {% extends "contribute/how/build-docs.md" %}
3
+ {% extends "_shared/contribute/how/build-docs.md" %}
4
4
 
5
5
  {% block front_matter %}
6
6
 
7
- Before you build the documentation, and have a [development environment](dev-environment.md) set up.
7
+ Before you build the documentation, and have a [development environment](../how/dev-environment.md) set up.
8
8
 
9
9
  {% endblock %}
10
10
 
11
11
  {% block end_matter %}
12
12
 
13
- Once you have successfully built the docs, you are ready to [write documentation](write-docs.md).
13
+ Once you have successfully built the docs, you are ready to [write documentation](../how/write-docs.md).
14
14
 
15
15
  {% endblock %}
@@ -0,0 +1,3 @@
1
+ # Adding change information for release notes
2
+
3
+ {% extends "_shared/contribute/how/change-note.md" %}
@@ -0,0 +1,3 @@
1
+ # Setting up a development environment
2
+
3
+ {% extends "_shared/contribute/how/dev-environment.md" %}
@@ -0,0 +1,3 @@
1
+ # Submitting a new issue
2
+
3
+ {% extends "_shared/contribute/how/new-issue.md" %}
@@ -1,6 +1,6 @@
1
1
  # Proposing a new feature
2
2
 
3
- {% extends "contribute/how/propose-feature.md" %}
3
+ {% extends "_shared/contribute/how/propose-feature.md" %}
4
4
 
5
5
  {% block end_matter %}
6
6
 
@@ -1,10 +1,10 @@
1
1
  # Reproducing an issue
2
2
 
3
- {% extends "contribute/how/reproduce-issue.md" %}
3
+ {% extends "_shared/contribute/how/reproduce-issue.md" %}
4
4
 
5
5
  {% block front_matter %}
6
6
 
7
- To begin reproducing an issue, you will need a [development environment](dev-environment.md) set up.
7
+ To begin reproducing an issue, you will need a [development environment](../how/dev-environment.md) set up.
8
8
 
9
9
  {% endblock %}
10
10
 
@@ -0,0 +1,3 @@
1
+ # Providing a pull request review
2
+
3
+ {% extends "_shared/contribute/how/review-pr.md" %}
@@ -0,0 +1,3 @@
1
+ # Avoiding scope creep
2
+
3
+ {% extends "_shared/contribute/how/scope-creep.md" %}
@@ -1,16 +1,16 @@
1
1
  # Submitting a pull request
2
2
 
3
- {% extends "contribute/how/submit-pr.md" %}
3
+ {% extends "_shared/contribute/how/submit-pr.md" %}
4
4
 
5
5
  {% block end_matter %}
6
6
 
7
7
  {% if config.extra.website %}
8
8
 
9
- Your pull request may require additional content, such as a [change note](change-note.md), before it can be [reviewed](../next/pr-review.md).
9
+ Your pull request may require additional content, such as a [change note](../how/change-note.md), before it can be [reviewed](../next/pr-review.md).
10
10
 
11
11
  {% else %}
12
12
 
13
- As part of submitting a pull request, you'll need to include a [change note](change-note.md) before it can be [reviewed](../next/pr-review.md).
13
+ As part of submitting a pull request, you'll need to include a [change note](../how/change-note.md) before it can be [reviewed](../next/pr-review.md).
14
14
 
15
15
  {% endif %}
16
16
 
@@ -1,10 +1,10 @@
1
1
  # Writing, running, and testing code
2
2
 
3
- {% extends "contribute/how/write-code.md" %}
3
+ {% extends "_shared/contribute/how/write-code.md" %}
4
4
 
5
5
  {% block front_matter %}
6
6
 
7
- To begin working on code, ensure you have a [development environment](dev-environment.md) set up, and you are [working on a branch](branches.md)
7
+ To begin working on code, ensure you have a [development environment](../how/dev-environment.md) set up, and you are [working on a branch](../how/branches.md)
8
8
 
9
9
  {% endblock %}
10
10
 
@@ -91,6 +91,6 @@ This directs the template tests to use a branch of Briefcase for testing. This s
91
91
 
92
92
  {% block end_matter %}
93
93
 
94
- Once you have everything working, you can [submit a pull request](submit-pr.md) with your changes.
94
+ Once you have everything working, you can [submit a pull request](../how/submit-pr.md) with your changes.
95
95
 
96
96
  {% endblock %}
@@ -1,15 +1,15 @@
1
1
  # Writing documentation
2
2
 
3
- {% extends "contribute/how/write-docs.md" %}
3
+ {% extends "_shared/contribute/how/write-docs.md" %}
4
4
 
5
5
  {% block front_matter %}
6
6
 
7
- Before you begin writing documentation, ensure you are able to [build the documentation](build-docs.md), and you are [working on a branch](branches.md).
7
+ Before you begin writing documentation, ensure you are able to [build the documentation](../how/build-docs.md), and you are [working on a branch](../how/branches.md).
8
8
 
9
9
  {% endblock %}
10
10
 
11
11
  {% block end_matter %}
12
12
 
13
- Once you are happy with your new documentation, you can [submit a pull request](submit-pr.md) with your proposed changes.
13
+ Once you are happy with your new documentation, you can [submit a pull request](../how/submit-pr.md) with your proposed changes.
14
14
 
15
15
  {% endblock %}
@@ -0,0 +1,3 @@
1
+ # Contributing to {{ formal_name }}
2
+
3
+ {% extends "_shared/contribute/index.md" %}
@@ -0,0 +1,3 @@
1
+ # Receiving a pull request review
2
+
3
+ {% extends "_shared/contribute/next/pr-review.md" %}
@@ -0,0 +1,3 @@
1
+ # The release process
2
+
3
+ {% extends "_shared/contribute/next/release.md" %}
@@ -0,0 +1,3 @@
1
+ <!-- rumdl-disable-file MD041 -->
2
+
3
+ {% extends "_shared/contribute/policies/ai-policy.md" %}
@@ -0,0 +1,3 @@
1
+ # Code style guide
2
+
3
+ {% extends "_shared/contribute/style/code-style-guide.md" %}
@@ -0,0 +1,3 @@
1
+ # Documentation style guide
2
+
3
+ {% extends "_shared/contribute/style/docs-style-guide.md" %}
@@ -0,0 +1,3 @@
1
+ # Fixing an issue
2
+
3
+ {% extends "_shared/contribute/what/fix-issue.md" %}
@@ -0,0 +1,3 @@
1
+ # Implementing a new feature
2
+
3
+ {% extends "_shared/contribute/what/implement-feature.md" %}
@@ -0,0 +1,3 @@
1
+ # Proposing a new feature
2
+
3
+ {% extends "_shared/contribute/what/propose-feature.md" %}
@@ -0,0 +1,3 @@
1
+ # Providing a pull request review
2
+
3
+ {% extends "_shared/contribute/what/review-pr.md" %}
@@ -0,0 +1,3 @@
1
+ # Triaging an issue
2
+
3
+ {% extends "_shared/contribute/what/triage.md" %}
@@ -0,0 +1,3 @@
1
+ # Using the tools
2
+
3
+ {% extends "_shared/contribute/what/use-tools.md" %}
@@ -0,0 +1,3 @@
1
+ # Adding documentation
2
+
3
+ {% extends "_shared/contribute/what/write-docs.md" %}