From 8a8f1a5fda4e91f220d0fd6d16ef36fa49b5a26e Mon Sep 17 00:00:00 2001 From: Russell Keith-Magee Date: Wed, 31 Jan 2024 10:37:58 +0800 Subject: [PATCH 1/2] Add Jan 2024 status update. --- .../january-2024-status-update/contents.lr | 58 +++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 content/news/buzz/january-2024-status-update/contents.lr diff --git a/content/news/buzz/january-2024-status-update/contents.lr b/content/news/buzz/january-2024-status-update/contents.lr new file mode 100644 index 0000000000..1157372285 --- /dev/null +++ b/content/news/buzz/january-2024-status-update/contents.lr @@ -0,0 +1,58 @@ +title: January 2024 Status Update +--- +author: Russell Keith-Magee +--- +body: + +January has seen some long awaited and high profile features added to BeeWare. + +What we've done +---------------- + +* `PEP738 `__, formalizing the introduction of Android as a Tier 3 platform in CPython, has been formally accepted as a draft. We're now revising the draft following community feedback, in anticipation of submitting the PEP for formal approval in the near future. + +* We added a cross-platform Camera API to Toga. This API has been `implemented for iOS and macOS `__; the `implementation for Android `__ is in final review. + +* We added an `OptionContainer widget for Android `__. This now means that OptionContainer is available on every desktop and mobile platform. + +* We added the ability to `define a button with an Icon `__. In addition, we've added some `major clarifications to the documentation about the difference between an Icon and an Image `__. + +* We `reworked the way that widget IDs are handled `__. This change was required due to a bug caused by the interaction of Python's garbage collector and the widget registry that prevented the re-used of widget IDs in some situations. The new implementation means that the widget registry behaves a lot more like a browsers DOM - a widget can only be discovered by ID when it is actually part of a widget layout. + +* We added Briefcase support for `Python 3.12 on Android `__. + +* We added a mechanism for `defining app permissions `__ in your Briefcase project. + +* We added the ability for Android projects to `declare the native Android libraries that they depend on `__. + +* We've been polishing the CPython patches necessary to support iOS and Android, in anticipation of submitting these patches upstream. To follow progress on this work, subscribe to the CPython tickets for `iOS support `__ and `Android support `__. + +What's next? +-------------- + +In February, we'll be focussing on the iOS and Android patches to CPython, and the finalisation of `PEP 738 `__. While we're waiting for CPython patches to be reviewed, we'll be looking into geolocation and mapping functionality. + +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: + +1. `Update the Toga testbed test suite to use Pixel 7 Pro device sizes `__ +2. `Filter out a message generated after Xcode updates `__ +3. `Add the ability to configure the ABIs built by an Android project `__ +4. `Rationalise the application of adhoc signing on macOS `__ +5. `Add support for custom PyPI repositories `__ +6. `Document how to debug an application in popular IDEs `__ +7. `Correctly handle incomplete project deletions `__ +8. `Add an option to select the Android base image when creating new emulators `__ +9. `Print notarisation log failures when building macOS apps `__ +10. `Add an API to replace a child of a widget `__ +11. `Add an API to entirely replace the style of a widget `__ +12. `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 `__. + +--- +mastodon_handle: @freakboy3742@cloudisland.nz +--- +pub_date: 2024-02-01 From d2c14bab730ec2656b93c0c10899cab653e3a14c Mon Sep 17 00:00:00 2001 From: Russell Keith-Magee Date: Thu, 1 Feb 2024 05:39:24 +0800 Subject: [PATCH 2/2] Apply suggestions from code review Co-authored-by: Russell Martin Co-authored-by: Malcolm Smith --- content/news/buzz/january-2024-status-update/contents.lr | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/content/news/buzz/january-2024-status-update/contents.lr b/content/news/buzz/january-2024-status-update/contents.lr index 1157372285..7e8e02b303 100644 --- a/content/news/buzz/january-2024-status-update/contents.lr +++ b/content/news/buzz/january-2024-status-update/contents.lr @@ -9,7 +9,7 @@ January has seen some long awaited and high profile features added to BeeWare. What we've done ---------------- -* `PEP738 `__, formalizing the introduction of Android as a Tier 3 platform in CPython, has been formally accepted as a draft. We're now revising the draft following community feedback, in anticipation of submitting the PEP for formal approval in the near future. +* `PEP 738 `__, formalizing the introduction of Android as a Tier 3 platform in CPython, has been formally accepted as a draft. We're now revising the draft following community feedback, in anticipation of submitting the PEP for formal approval in the near future. * We added a cross-platform Camera API to Toga. This API has been `implemented for iOS and macOS `__; the `implementation for Android `__ is in final review. @@ -17,7 +17,7 @@ What we've done * We added the ability to `define a button with an Icon `__. In addition, we've added some `major clarifications to the documentation about the difference between an Icon and an Image `__. -* We `reworked the way that widget IDs are handled `__. This change was required due to a bug caused by the interaction of Python's garbage collector and the widget registry that prevented the re-used of widget IDs in some situations. The new implementation means that the widget registry behaves a lot more like a browsers DOM - a widget can only be discovered by ID when it is actually part of a widget layout. +* We `reworked the way that widget IDs are handled `__. This change was required due to a bug caused by the interaction of Python's garbage collector and the widget registry that prevented the re-use of widget IDs in some situations. The new implementation means that the widget registry behaves a lot more like a browser's DOM - a widget can only be discovered by ID when it is actually part of a widget layout. * We added Briefcase support for `Python 3.12 on Android `__. @@ -30,7 +30,7 @@ What we've done What's next? -------------- -In February, we'll be focussing on the iOS and Android patches to CPython, and the finalisation of `PEP 738 `__. While we're waiting for CPython patches to be reviewed, we'll be looking into geolocation and mapping functionality. +In February, we'll be focusing on the iOS and Android patches to CPython, and the finalisation of `PEP 738 `__. While we're waiting for CPython patches to be reviewed, we'll be looking into geolocation and mapping functionality. Want to get involved? -----------------------