Skip to content

Commit a67169d

Browse files
authored
Merge pull request #571 from freakboy3742/may-2024-status
Add May 2024 status update blog post.
2 parents 8ceed5c + 3de52d7 commit a67169d

File tree

1 file changed

+67
-0
lines changed

1 file changed

+67
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
title: May 2024 Status Update
2+
---
3+
author: Russell Keith-Magee
4+
---
5+
body:
6+
7+
BeeWare activity in May was dominated by preparing for and attending PyCon US in Pittsburgh. That event generated a lot of activity in the BeeWare project - but we've also added some other significant improvements.
8+
9+
What we've done
10+
----------------
11+
12+
* We attended PyCon US. We presented on the `state of mobile support in CPython to the Language Summit <https://us.pycon.org/2024/events/language-summit/>`__; we `presented a tutorial <https://us.pycon.org/2024/schedule/presentation/41/>`__ to over 30 attendees; we ran a booth in Community Row; we `presented a talk <https://us.pycon.org/2024/schedule/presentation/40/>`__ on writing a data visualisation app with BeeWare tools; and we ran an extremely successful sprint. At the peak, we had over 30 people sprinting on BeeWare projects; and we handed out over 20 challenge coins to first time contributors. Many of the new features in this status update can be attributed to contributions from sprint participants.
13+
14+
* We modified Toga's Window API to allow `setting the content of the window when the window is constructed <https://github.com/beeware/toga/pull/2314>`__, and `improved the APIs for replacing children in an existing window layout <https://github.com/beeware/toga/pull/2591>`__.
15+
16+
* We modified how validation of TextInput widgets are handled so that `change handlers aren't invoked until validation has been performed <https://github.com/beeware/toga/pull/2596>`__.
17+
18+
* We modified how the DetailedList is created on Android so that `the dependency on the native SwipeRefreshLayout widget only exists if your app actually uses a DetailedList widget <https://github.com/beeware/toga/pull/2595>`__.
19+
20+
* We `improved the error handling around camera permissions on macOS <https://github.com/beeware/toga/pull/2590>`__, and ensured that `Briefcase will generate the right permissions for macOS Sonoma <https://github.com/beeware/briefcase/pull/1820>`__.
21+
22+
* We diagnosed some issues associated with code signing on macOS `when running on iCloud-mirrored drives <https://github.com/beeware/briefcase/issues/1808>`__, and when `Git has been configured to preserve Windows newlines <https://github.com/beeware/briefcase/issues/1831>`__. We also `improved the error handling when notarisation fails <https://github.com/beeware/briefcase/pull/1825>`__.
23+
24+
* We `formally documented the plugin extension points that Briefcase provides <https://github.com/beeware/briefcase/pull/1807>`__. With this formally documented interface, Pygame-CE and `PPB <https://github.com/beeware/briefcase/pull/1834>`__, have taken formal ownership of their Briefcase bootstraps.
25+
26+
* We `formally adopted PEP 621 format for specifying license files in Briefcase <https://github.com/beeware/briefcase/pull/1812>`__.
27+
28+
* We `loosened the restrictions on bundle identifiers <https://github.com/beeware/briefcase/pull/1824>`__, and `improved handling of applications with special characters in their formal names <https://github.com/beeware/briefcase/pull/1811>`__.
29+
30+
* We developed a draft implementation of a change that will `allow Briefcase to package console applications <https://github.com/beeware/briefcase/pull/1781>`__. We expect this change will land in the next week or so, and be released soon after that.
31+
32+
* We started work on `removing binary stubs from the macOS and Windows app templates <https://github.com/beeware/briefcase/pull/1849>`__. This was starting to become a significant performance issue for first-time Briefcase users.
33+
34+
* We improved the mechanism for invoking methods in Rubicon ObjC, making it possible to `invoke methods with repeated argument names <https://github.com/beeware/rubicon-objc/pull/462>`__.
35+
36+
What's next?
37+
--------------
38+
39+
In June, we're expecting to see progress in three main areas.
40+
41+
Firstly, we'll be finalising the work on packaging console applications. We expect to see a Briefcase release by mid month that will incorporate this, and all the other improvements that have landed over the last month.
42+
43+
Secondly, we'll be working on the APIs for the Toga App and Window classes. We've already done `a lot of prototyping work in this area <https://github.com/beeware/toga/pull/2244>`__; once this work is complete, Toga should have support for apps without a menubar in their main window, support for status bar apps without a main window, vastly improved abilities to customise standard menu items, and a stable API for document-based apps.
44+
45+
Thirdly, we'll start looking at the broader CPython binary packaging ecosystem. The work we've done so far this year has led to CPython 3.13 formally supporting iOS and Android as Tier 3 supported platforms; the next step is ensuring that the rest of the community can build iOS and Android packages. This will involve improvements to tools like ``pip``, ``cibuildwheel``, ``meson-python`` and more. We expect that this work will take much longer than a month to complete, but we hope to be able to share some progress in June.
46+
47+
Want to get involved?
48+
-----------------------
49+
50+
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:
51+
52+
1. `Update the Toga testbed test suite to use Pixel 7 Pro device sizes <https://github.com/beeware/toga/issues/2251>`__
53+
2. `Filter out a message generated after Xcode updates <https://github.com/beeware/briefcase/issues/780>`__
54+
3. `Add the ability to configure the ABIs built by an Android project <https://github.com/beeware/briefcase/issues/808>`__
55+
4. `Rationalise the application of adhoc signing on macOS <https://github.com/beeware/briefcase/issues/1099>`__
56+
5. `Add support for custom PyPI repositories <https://github.com/beeware/briefcase/issues/1270>`__
57+
6. `Document how to debug an application in popular IDEs <https://github.com/beeware/briefcase/issues/1393>`__
58+
7. `Correctly handle incomplete project deletions <https://github.com/beeware/briefcase/issues/394>`__
59+
8. `Add an option to select the Android base image when creating new emulators <https://github.com/beeware/briefcase/issues/737>`__
60+
9. `Add an API to entirely replace the style of a widget <https://github.com/beeware/toga/issues/2305>`__
61+
62+
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 <https://briefcase.readthedocs.io/en/latest/how-to/contribute-code.html>`__; but if you need any additional assistance or guidance, you can ask on the ticket, or join us on the `BeeWare Discord server <https://beeware.org/bee/chat/>`__.
63+
64+
---
65+
mastodon_handle: @freakboy3742@cloudisland.nz
66+
---
67+
pub_date: 2024-06-03

0 commit comments

Comments
 (0)