Comments (5)
I get toga 0.2.0 and, as this version does not provides [ios], it automatically install toga-cocoa.
I have to use 'toga[ios]==0.2.0.dev1' instead.
from briefcase.
AFAIK, this should have been addressed by the 0.2.0 release. @phildini's patch predates that release; I can't reproduce what you're describing with the current releases on PyPI:
(testbed3)hammer:tutorial2 rkm$ pip install toga[iOS]
Collecting toga[iOS]
Using cached toga-0.2.0-py2.py3-none-any.whl
toga 0.2.0 does not provide the extra 'iOS'
Collecting toga-cocoa; sys_platform == "darwin" (from toga[iOS])
Using cached toga_cocoa-0.2.0-py2.py3-none-any.whl
Collecting rubicon-objc (from toga-cocoa; sys_platform == "darwin"->toga[iOS])
Using cached rubicon_objc-0.2.2-py2.py3-none-any.whl
Collecting toga-core (from toga-cocoa; sys_platform == "darwin"->toga[iOS])
Using cached toga_core-0.2.0-py2.py3-none-any.whl
Collecting colosseum (from toga-core->toga-cocoa; sys_platform == "darwin"->toga[iOS])
Using cached colosseum-0.1.2-py2.py3-none-any.whl
Installing collected packages: rubicon-objc, colosseum, toga-core, toga-cocoa, toga
Successfully installed colosseum-0.1.2 rubicon-objc-0.2.2 toga-0.2.0 toga-cocoa-0.2.0 toga-core-0.2.0
Can you provide a reproduction case?
from briefcase.
Ah - sorry - now I read all of your report, I see the problem :-)
This is effectively a documentation problem for a subtle change in how Toga is installed. toga[iOS]
is no longer a meaningful target; you either install:
toga-ios
if you want Toga for iOS and it's dependencies, ortoga
if you want Toga for your current platform.
If you can point me at the documentation that led you down the wrong path, that is what needs to be corrected (or if you want, a PR for a fix to those docs would be fantastic!)
This change had to be made because of the difference between the development platform and the deployment platform when dealing with mobile. The setup.py configuration for toga
attempts to auto detect the "current" platform - which is wherever setup.py is running, not the platform that setup.py is running for. So, as a result, you end up accidentally installing toga-cocoa whenever you are writing for iOS.
Ideally, I'd like to re-enable the toga[iOS] option, or be able to specify a "deployment platform" in setup.py that setup.py will honour (so that python setup.py ios
will install toga-ios just by putting toga in install_requires
). However, it isn't clear to me that this is possible without modifications to setuptools/distutils.
from briefcase.
The README.rst is the document to update. I included a proposal in a PR that I sent with a couple of basic tutorials:
#16
from briefcase.
Closing due to merge of #16.
from briefcase.
Related Issues (20)
- Add support for "start app on login" as part of packaging HOT 8
- Test suite doesn't run on Windows 11 HOT 1
- Dragging app window from Stage Manager to Desktop in Dev Mode prompts warning in Terminal HOT 1
- Code signing fails when running on an iCloud mounted drive HOT 4
- Giving a formal name with a character such as ', /, \, causes briefcase new to crash HOT 2
- Cannot code sign on Big Sur MacOS HOT 7
- RPM and PKG packages need license information HOT 1
- briefcase build not working even after checking XCode and iCloud Drive HOT 2
- Android application floating windows and barrier-free controls
- Icon path specified in pyproject.toml is not recognized when building Xcode format HOT 2
- Add a --skip-signing option when building macos / ios apps HOT 4
- Local package dependency HOT 7
- Prevent cookiecutter from using `~/.cookiecutter_replay` HOT 1
- Add a progress bar for Git actions
- "briefcase clean" command to delete all build artifacts HOT 7
- cleanup_paths doesn't behave the same way when building 'macos Xcode' and 'macos app' (and maybe doesn't behave like the documentation implies) HOT 9
- Allow configuration of custom build params for macos Xcode builds in pyproject.toml HOT 17
- Add a packaging option to minify or otherwise obfuscate the python code in the distribution package HOT 1
- Add console app builds/testing to CI HOT 1
- Add ability to override resources in application HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from briefcase.