December has been a short month due to end-of-year holidays, but BeeWare has still made some important progress.
What we've done
- PEP730, formalizing the introduction of iOS as a Tier 3 platform in CPython, has been ratified by the CPython Steering Council.
- The first patch to CPython that explicitly mentions iOS has been merged. This is a relatively minor change that is required for building cross-platform binary modules; we'll start submitting more substantial patches in the new year.
- PEP738, formalizing the introduction of Android as a Tier 3 platform in CPython, has been drafted, and is currently under discussion.
- Chaquopy 15 was released, adding support for Python 3.12 on Android. This release also improves compatibility with Android Studio's transition away from Groovy, towards Kotlin for configuration.
- An implementation of OptionContainer was added for iOS.
- A number of improvements were made to image handling, including optimizations when creating images from internal APIs, and a correction to flexible image resizing behavior.
- A long standing bug that would cause macOS tables to crash was resolved.
- The ability to define platform-specific icons was added to Toga.
- Toga 0.4.1 was released, incorporating the features and bug fixes from the last 2 months.
- Work has begun on a cross-platform Camera API . This currently works on iOS, with a draft implementation on macOS. Before this work can land, we need to add support in Briefcase for declaring permissions; a design for this has been proposed, and will be implemented early in the new year.
What's next?
When we return from the end-of-year break, we'll be back into developing Toga. In the near future, you should see an OptionContainer on Android, and permission support in Briefcase; once that work is wrapped, we'll start looking at more more hardware APIs and missing widgets. You should also start to see more patches land in CPython to support iOS, and the finalisation of PEP 738.
Want to get involved?
Want to get involved? Here are some open issues that would be a great place to get started with contributing to a BeeWare project. They're all relatively minor changes, but would provide a big improvement to the lives of BeeWare users:
- Update the Toga testbed test suite to use Pixel 7 Pro device sizes
- Filter out a message generated after Xcode updates
- Add the ability to configure the ABIs built by an Android project
- Rationalise the application of adhoc signing on macOS
- Add support for custom PyPI repositories
- Document how to debug an application in popular IDEs
- Correctly handle incomplete project deletions
- Add an option to select the Android base image when creating new emulators
- Print notarisation log failures when building macOS apps
- Add an API to replace a child of a widget
- Add an API to entirely replace the style of a widget
- Add the ability to define content when creating a window
Pick one of these tickets, drop a comment on the ticket to let others know you're looking at it, and try your hand at a PR! We have a guide on setting up a Briefcase development environment; but if you need any additional assistance or guidance, you can ask on the ticket, or join us on the BeeWare Discord server.
- Następny wpis
- 2024Q1 Roadmap
- Poprzedni wpis
- November 2023 Status Update