Commit graph

7 commits

Author SHA1 Message Date
Andre Miras
f082919a90 Uses contextlib.suppress to ignore exceptions
Shorter, yet more meaningful way to ignore exceptions.
Also note it can prevent race conditions in the `if exists()` case.
2020-05-06 22:38:25 +02:00
Andre Miras
04b82d8c85 DRY via the find_xcodeproj() helper method
Also removes try/except on `pbxproj` imports. This is now part of
the `setup.py` dependencies and installed automatically.
Users bypassing the `setup.py` should know what they're doing, hence
they should be able to read an `ImportError` exception.
2020-05-06 20:28:54 +02:00
Andre Miras
2c0a79a817 Uses Python 3 syntax
This is a follow up for #482, uses Python 3 syntax:
- Simplifies `super()` calls
- Removes some unused `super()` (no parent class)
- Removes `object` inheritance
- Drops `IS_PY2` logic
- Drops Python 2 imports
2020-05-06 18:59:20 +02:00
Andre Miras
e29d6aa256 Removed Python 2 support
Drops system, host and target Python 2 support.
Note a lot of recipes were having hardcoded reference to
`lib/python2.7/site-packages/` directory. I suspect most
of theses were not working, but the reference has been updated
to `lib/python3.7/site-packages/` following the same hardcoding
pattern. In follow up work we would do a walkthrough each recipes
to fix at least compilation time issues.
Also note the `rebuild_updated_recipes.py` is expected to fail as
this is touching many recipes including recipes that were already
broken.
2020-05-06 15:46:34 +02:00
Andre Miras
30cca1ed62 Takes ToolchainCL definition outside the main
I can't justify why it would need to be inside the main.
Let's take it out and see what breaks ;)
2020-05-05 23:53:22 +02:00
Andre Miras
66fd9fae2b Uses a couple of syntax shortcuts
- shutil.rmtree() with ignore_errors=True
- os.makedirs() with exist_ok=True
- str.endswith() using extension list

Also moves `sh` with other imports and removes unnecessary super() call
2020-05-05 23:22:33 +02:00
Andre Miras
56431b6922 Moving to dedicated kivy_ios/ package directory
- updates all imports to prefix kivy_ios
- adds basic `setup.py` file
- adds a simple `toolchain.py` to the root folder for compat

Makes it possible to install kivy-ios from PyPI:
```
pip install kivy-ios
toolchain --help
```
Note the `rebuild_updated_recipes.py` is expected to fail as we
moved all the recipes.

This is a working, but unperfect iteration that come with limitations
we would address in subsequent pull requests, such as:
- the new usage is not yet documented
- CI is not testing the source distribution creation and install
- Continuous Delivery to PyPI is not in place
- `toolchain` binary is a bit too generic name
- we're still vendoring things under `tools/`
2020-05-03 23:29:41 +02:00