From abe9efa13c8ddc3d3740ad329f42157233fd859d Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Tue, 11 Mar 2025 10:41:20 -0400 Subject: [PATCH 01/11] Add Android Workgroup --- _data/android-workgroup/members.yml | 45 +++++++++++++++++ _data/navigation.yml | 2 + android-workgroup/index.md | 77 +++++++++++++++++++++++++++++ community/index.md | 1 + 4 files changed, 125 insertions(+) create mode 100644 _data/android-workgroup/members.yml create mode 100644 android-workgroup/index.md diff --git a/_data/android-workgroup/members.yml b/_data/android-workgroup/members.yml new file mode 100644 index 000000000..1e4520cfc --- /dev/null +++ b/_data/android-workgroup/members.yml @@ -0,0 +1,45 @@ +- name: Abe White + handle: aabewhite + github: aabewhite + affiliation: + +- name: Andrew Druk + handle: andriydruk + github: andriydruk + affiliation: + +- name: Finagolfin + handle: finagolfin + github: finagolfin + affiliation: + +- name: Jason Foreman + handle: threeve + github: threeve + affiliation: + +- name: Joannis Orlandos + handle: Joannis_Orlandos + github: Joannis + affiliation: + +- name: Luke Howard + handle: lukeh + github: lhoward + affiliation: + +- name: Marc Prud’hommeaux + handle: Marc_Prud_hommeaux + github: marcprux + affiliation: + +- name: Robbert Brandsma + handle: obbut + github: obbut + affiliation: + +- name: Saleem Abdulrasool + handle: compnerd + github: compnerd + affiliation: + diff --git a/_data/navigation.yml b/_data/navigation.yml index 68ae2a049..338e42af0 100644 --- a/_data/navigation.yml +++ b/_data/navigation.yml @@ -139,6 +139,8 @@ url: /foundation-workgroup/ - title: Testing url: /testing-workgroup/ + - title: Android + url: /android-workgroup/ - section: Governance - title: Code of Conduct url: /code-of-conduct/ diff --git a/android-workgroup/index.md b/android-workgroup/index.md new file mode 100644 index 000000000..5419a7834 --- /dev/null +++ b/android-workgroup/index.md @@ -0,0 +1,77 @@ +--- +layout: page +title: Android Workgroup +--- + +The Android Workgroup is a team that promotes the use of Swift for developing Android applications. + +## Charter + +The main goal of the Android Workgroup is to add and maintain Android as an officially supported platform for the Swift language. + +The Android Workgroup will: + +* Coordinate the development of a reference Swift Android SDK +* Improve and maintain Android support for the official Swift distribution, eliminating the need for out-of-tree or downstream forks +* Recommend enhancements to core Swift packages such as Foundation and Dispatch to work better with Android idioms +* Work with the PSG to officially define platform support levels generally, and then working towards achieving official support of a particular level for Android +* Determine the range of supported Android API levels and architectures for Swift integration +* Develop [continuous integration](https://www.swift.org/documentation/continuous-integration/) for the [main Swift repository](https://ci-external.swift.org/job/oss-swift-RA-linux-ubuntu-24.04-android-arm64/) that adds Android checks for pull requests +* Identify and recommend best practices for bridging between Swift and Android's Java SDK and packaging Swift libraries with Android apps +* Develop support for debugging Swift applications on Android +* Advise and assist with adding support for Android to various community Swift packages + +## Communication + +The Swift Android workgroup uses the [Swift Android forum](https://forums.swift.org/c/development/android) for general discussions. It can also be contacted privately by messaging [@android-workgroup](https://forums.swift.org/g/android-workgroup) on the Swift Forums. + +If any significant decisions are reached during one of the workgroup’s regular meetings, a member will post about them in the Forums within one week. The outcome of each proposal review will be announced by its review manager in a separate thread dedicated to that proposal. + +## Membership + +Membership in the Android Workgroup is contribution-based and expected to evolve over time. Adding new members and removing inactive ones is subject to a vote by the existing members and requires unanimous agreement. Membership is limited to ten members in total to keep the group small enough to be effective. A cap of two members per company is in place to avoid over-representation. + +The Core Team selects one member of the workgroup as the chair. The chair has no special authority over the workgroup, but they are responsible for ensuring its smooth functioning, including by: + +* organizing and leading regular meetings, +* ensuring that the workgroup communicates effectively with the community, and +* coordinating meetings between workgroup representatives and other Swift workgroups or teams when necessary. + +If you would like to join the workgroup, send a message to [@android-workgroup](https://forums.swift.org/new-message?groupname=android-workgroup) on the Forums and you will be invited to the next available group meeting to discuss it more. See Community participation for examples of ways to contribute and demonstrate your interest to the group. + +Workgroup members will try to make a decision independently by consensus whenever possible, and will raise issues to the Core Team when there are particular challenges with reaching consensus on significant decisions. + +The current members of the Android Workgroup are: + +{% assign people = site.data['android-workgroup'].members | sort: "name" %} + + +## Meetings + +The Android Workgroup meets biweekly on Wednesday at 2:00PM ET (US Eastern Time). The meetings take place in the weeks with the [odd week numbers](http://www.whatweekisit.org/). + +Many workgroup meetings are meant for open discussion and any Swift community member may attend by sending a message to [@android-workgroup](https://forums.swift.org/new-message?groupname=testing-workgroup) beforehand to request an invite. Some meetings are reserved for private discussion by group members, for example to make a decision on a proposal under review. + +## Community Participation + +Everyone is welcome to contribute in the following ways: + +* Participating in design discussions. +* Asking or answering questions on the forums. +* Reporting or triaging bugs. +* Submitting pull requests to any of the Android support library projects. +* Discuss ideas on the Swift Forums. You can create new topics in the [Android](https://forums.swift.org/c/development/android/115) category, or add the android tag to any topic. +* Develop new tools to aid the Android experience or improve existing ones. +* Provide feedback to the members of the Android Workgroup directly by sending a message to [@android-workgroup](https://forums.swift.org/new-message?groupname=android-workgroup) on the Forums. The workgroup chair brings outstanding issues and topics to the workgroup to discuss during regular meetings. The workgroup decides the actions for the issues. +* Join the Android Workgroup’s regular video meetings. Send a message to [@android-workgroup](https://forums.swift.org/new-message?groupname=android-workgroup) to request access, since calls are easier to manage when kept to a relatively small number of participants. diff --git a/community/index.md b/community/index.md index 5e92c4072..94ceaa387 100644 --- a/community/index.md +++ b/community/index.md @@ -31,6 +31,7 @@ Advancing the Swift programming language with a coherent, clear view of its evol * __[Language](#language-steering-group)__ is a small group of experts that drive the Swift language forward in a coherent direction. * __[Platforms](/platform-steering-group)__ is a small group of experts that enables the Swift language and its tools to be used in new environments. * __Workgroups__ + * __[Android](/android-workgroup)__ is a team that works on the use of Swift for developing Android applications. * __[C++ Interoperability](/cxx-interop-workgroup)__ is a team that works on adding the support for the bidirectional interoperability between Swift and C++. * __[Contributor Experience](/contributor-experience-workgroup)__ is a team that supports contributors to the Swift project, including contributions on the Swift Forums. * __[Documentation](/documentation-workgroup)__ is a team that helps guide the documentation experience for Swift. From 93b1c906332408a9d103878ab729e2364ea4cf9e Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Wed, 12 Mar 2025 05:19:14 -0400 Subject: [PATCH 02/11] Update username --- _data/android-workgroup/members.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_data/android-workgroup/members.yml b/_data/android-workgroup/members.yml index 1e4520cfc..c799871c2 100644 --- a/_data/android-workgroup/members.yml +++ b/_data/android-workgroup/members.yml @@ -29,7 +29,7 @@ affiliation: - name: Marc Prud’hommeaux - handle: Marc_Prud_hommeaux + handle: marcprux github: marcprux affiliation: From 468279c9024e0ecd3ca88c81176349ffadf677f4 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Fri, 14 Mar 2025 19:24:30 -0400 Subject: [PATCH 03/11] Change "forks" to "patches" --- android-workgroup/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/android-workgroup/index.md b/android-workgroup/index.md index 5419a7834..e7e1592a1 100644 --- a/android-workgroup/index.md +++ b/android-workgroup/index.md @@ -12,7 +12,7 @@ The main goal of the Android Workgroup is to add and maintain Android as an offi The Android Workgroup will: * Coordinate the development of a reference Swift Android SDK -* Improve and maintain Android support for the official Swift distribution, eliminating the need for out-of-tree or downstream forks +* Improve and maintain Android support for the official Swift distribution, eliminating the need for out-of-tree or downstream patches * Recommend enhancements to core Swift packages such as Foundation and Dispatch to work better with Android idioms * Work with the PSG to officially define platform support levels generally, and then working towards achieving official support of a particular level for Android * Determine the range of supported Android API levels and architectures for Swift integration From 99968c92c70e2c0943a945ab71c5ff02a97e6bf6 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sat, 29 Mar 2025 10:07:23 -0400 Subject: [PATCH 04/11] Add @etcwilde to the WG members list --- _data/android-workgroup/members.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/_data/android-workgroup/members.yml b/_data/android-workgroup/members.yml index c799871c2..c90fb5ff6 100644 --- a/_data/android-workgroup/members.yml +++ b/_data/android-workgroup/members.yml @@ -8,6 +8,11 @@ github: andriydruk affiliation: +- name: Evan Wilde + handle: etcwilde + github: etcwilde + affiliation: + - name: Finagolfin handle: finagolfin github: finagolfin From 276ce32d575cfff9cf0fd2f61a4204e3a895072b Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Mon, 2 Jun 2025 10:09:47 -0400 Subject: [PATCH 05/11] Update android-workgroup/index.md Co-authored-by: Alastair Houghton --- android-workgroup/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/android-workgroup/index.md b/android-workgroup/index.md index e7e1592a1..47ba3a217 100644 --- a/android-workgroup/index.md +++ b/android-workgroup/index.md @@ -14,7 +14,7 @@ The Android Workgroup will: * Coordinate the development of a reference Swift Android SDK * Improve and maintain Android support for the official Swift distribution, eliminating the need for out-of-tree or downstream patches * Recommend enhancements to core Swift packages such as Foundation and Dispatch to work better with Android idioms -* Work with the PSG to officially define platform support levels generally, and then working towards achieving official support of a particular level for Android +* Work with the Platform Steering Group to officially define platform support levels generally, and then work towards achieving official support of a particular level for Android * Determine the range of supported Android API levels and architectures for Swift integration * Develop [continuous integration](https://www.swift.org/documentation/continuous-integration/) for the [main Swift repository](https://ci-external.swift.org/job/oss-swift-RA-linux-ubuntu-24.04-android-arm64/) that adds Android checks for pull requests * Identify and recommend best practices for bridging between Swift and Android's Java SDK and packaging Swift libraries with Android apps From 6744c26ddfb73e08f2e718b1518f57b559a37b51 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Mon, 2 Jun 2025 10:45:21 -0400 Subject: [PATCH 06/11] Update to harmonize with C++ Interop charter; remove membership constraints and decision-making authority; make apitalizaton of "workgroup" consistent --- android-workgroup/index.md | 26 ++++++++++++-------------- 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/android-workgroup/index.md b/android-workgroup/index.md index 47ba3a217..b40584796 100644 --- a/android-workgroup/index.md +++ b/android-workgroup/index.md @@ -3,13 +3,13 @@ layout: page title: Android Workgroup --- -The Android Workgroup is a team that promotes the use of Swift for developing Android applications. +The Android workgroup is a team that promotes the use of Swift for developing Android applications. ## Charter -The main goal of the Android Workgroup is to add and maintain Android as an officially supported platform for the Swift language. +The main goal of the Android workgroup is to add and maintain Android as an officially supported platform for the Swift language. -The Android Workgroup will: +The Android workgroup will: * Coordinate the development of a reference Swift Android SDK * Improve and maintain Android support for the official Swift distribution, eliminating the need for out-of-tree or downstream patches @@ -25,23 +25,21 @@ The Android Workgroup will: The Swift Android workgroup uses the [Swift Android forum](https://forums.swift.org/c/development/android) for general discussions. It can also be contacted privately by messaging [@android-workgroup](https://forums.swift.org/g/android-workgroup) on the Swift Forums. -If any significant decisions are reached during one of the workgroup’s regular meetings, a member will post about them in the Forums within one week. The outcome of each proposal review will be announced by its review manager in a separate thread dedicated to that proposal. - ## Membership -Membership in the Android Workgroup is contribution-based and expected to evolve over time. Adding new members and removing inactive ones is subject to a vote by the existing members and requires unanimous agreement. Membership is limited to ten members in total to keep the group small enough to be effective. A cap of two members per company is in place to avoid over-representation. +Membership in the Android workgroup is open to anyone who wishes to contribute. Members communicate with each other over regular video calls and on the Swift forums. Community members interested in participating in the workgroup should reach out to a current member of the workgroup, or request to be added to the [Android workgroup](https://forums.swift.org/g/android-workgroup) directly. + +The Android workgroup adheres to the Swift code of conduct. If community members have any concerns about the adherence of the workgroup or one of its members to the code of conduct, they should contact a member of the Swift Core Team. -The Core Team selects one member of the workgroup as the chair. The chair has no special authority over the workgroup, but they are responsible for ensuring its smooth functioning, including by: +The Android workgroup selects one member of the workgroup as the chair. The chair has no special authority over the workgroup, but they are responsible for ensuring its smooth functioning, including by: * organizing and leading regular meetings, * ensuring that the workgroup communicates effectively with the community, and * coordinating meetings between workgroup representatives and other Swift workgroups or teams when necessary. -If you would like to join the workgroup, send a message to [@android-workgroup](https://forums.swift.org/new-message?groupname=android-workgroup) on the Forums and you will be invited to the next available group meeting to discuss it more. See Community participation for examples of ways to contribute and demonstrate your interest to the group. - Workgroup members will try to make a decision independently by consensus whenever possible, and will raise issues to the Core Team when there are particular challenges with reaching consensus on significant decisions. -The current members of the Android Workgroup are: +The current members of the Android workgroup are: {% assign people = site.data['android-workgroup'].members | sort: "name" %}
    @@ -59,9 +57,9 @@ The current members of the Android Workgroup are: ## Meetings -The Android Workgroup meets biweekly on Wednesday at 2:00PM ET (US Eastern Time). The meetings take place in the weeks with the [odd week numbers](http://www.whatweekisit.org/). +The Android workgroup meets biweekly on Wednesday at noon ET (US Eastern Time). The meetings take place in the weeks with the [odd week numbers](http://www.whatweekisit.org/). -Many workgroup meetings are meant for open discussion and any Swift community member may attend by sending a message to [@android-workgroup](https://forums.swift.org/new-message?groupname=testing-workgroup) beforehand to request an invite. Some meetings are reserved for private discussion by group members, for example to make a decision on a proposal under review. +Workgroup meetings are meant for open discussion and any Swift community member may attend by sending a message to [@android-workgroup](https://forums.swift.org/new-message?groupname=android-workgroup) beforehand to request an invite. ## Community Participation @@ -73,5 +71,5 @@ Everyone is welcome to contribute in the following ways: * Submitting pull requests to any of the Android support library projects. * Discuss ideas on the Swift Forums. You can create new topics in the [Android](https://forums.swift.org/c/development/android/115) category, or add the android tag to any topic. * Develop new tools to aid the Android experience or improve existing ones. -* Provide feedback to the members of the Android Workgroup directly by sending a message to [@android-workgroup](https://forums.swift.org/new-message?groupname=android-workgroup) on the Forums. The workgroup chair brings outstanding issues and topics to the workgroup to discuss during regular meetings. The workgroup decides the actions for the issues. -* Join the Android Workgroup’s regular video meetings. Send a message to [@android-workgroup](https://forums.swift.org/new-message?groupname=android-workgroup) to request access, since calls are easier to manage when kept to a relatively small number of participants. +* Provide feedback to the members of the Android workgroup directly by sending a message to [@android-workgroup](https://forums.swift.org/new-message?groupname=android-workgroup) on the Forums. The workgroup chair brings outstanding issues and topics to the workgroup to discuss during regular meetings. The workgroup decides the actions for the issues. +* Join the Android workgroup’s regular video meetings. Send a message to [@android-workgroup](https://forums.swift.org/new-message?groupname=android-workgroup) to request access. From 2b8db54151bbac5c3de9aac44e8f65eef2e58666 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Mon, 2 Jun 2025 12:26:12 -0400 Subject: [PATCH 07/11] Issues with decision-making will be escalated to PSG rather than Core Team --- android-workgroup/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/android-workgroup/index.md b/android-workgroup/index.md index b40584796..dc57d2c65 100644 --- a/android-workgroup/index.md +++ b/android-workgroup/index.md @@ -37,7 +37,7 @@ The Android workgroup selects one member of the workgroup as the chair. The chai * ensuring that the workgroup communicates effectively with the community, and * coordinating meetings between workgroup representatives and other Swift workgroups or teams when necessary. -Workgroup members will try to make a decision independently by consensus whenever possible, and will raise issues to the Core Team when there are particular challenges with reaching consensus on significant decisions. +Workgroup members will try to make a decision independently by consensus whenever possible, and will raise issues to the Platform Steering Group when there are particular challenges with reaching consensus on significant decisions. The current members of the Android workgroup are: From 8f6f0fa2d26d370ae39ce9eedcf1b5167bf96cd9 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Tue, 3 Jun 2025 13:14:32 -0400 Subject: [PATCH 08/11] Update android-workgroup/index.md Co-authored-by: Alastair Houghton --- android-workgroup/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/android-workgroup/index.md b/android-workgroup/index.md index dc57d2c65..c656f7cb9 100644 --- a/android-workgroup/index.md +++ b/android-workgroup/index.md @@ -37,7 +37,7 @@ The Android workgroup selects one member of the workgroup as the chair. The chai * ensuring that the workgroup communicates effectively with the community, and * coordinating meetings between workgroup representatives and other Swift workgroups or teams when necessary. -Workgroup members will try to make a decision independently by consensus whenever possible, and will raise issues to the Platform Steering Group when there are particular challenges with reaching consensus on significant decisions. +Where the Workgroup is uncertain of or unable to agree on the way forward, members may raise issues to the relevant Steering Group(s) for consideration. Significant decisions should be made following the usual Swift Evolution process to allow for community participation and Steering Group oversight. The current members of the Android workgroup are: From 6aa1856d4060e586c04cc0ec80947f18374470e5 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Wed, 18 Jun 2025 13:49:33 -0400 Subject: [PATCH 09/11] Update android-workgroup/index.md Co-authored-by: Mishal Shah --- android-workgroup/index.md | 1 - 1 file changed, 1 deletion(-) diff --git a/android-workgroup/index.md b/android-workgroup/index.md index c656f7cb9..2d440dc87 100644 --- a/android-workgroup/index.md +++ b/android-workgroup/index.md @@ -11,7 +11,6 @@ The main goal of the Android workgroup is to add and maintain Android as an offi The Android workgroup will: -* Coordinate the development of a reference Swift Android SDK * Improve and maintain Android support for the official Swift distribution, eliminating the need for out-of-tree or downstream patches * Recommend enhancements to core Swift packages such as Foundation and Dispatch to work better with Android idioms * Work with the Platform Steering Group to officially define platform support levels generally, and then work towards achieving official support of a particular level for Android From c5f82ef98bcf5e5bb53dd138ed117b3e033ee673 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Wed, 18 Jun 2025 13:49:48 -0400 Subject: [PATCH 10/11] Update android-workgroup/index.md Co-authored-by: Mishal Shah --- android-workgroup/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/android-workgroup/index.md b/android-workgroup/index.md index 2d440dc87..9e9fba525 100644 --- a/android-workgroup/index.md +++ b/android-workgroup/index.md @@ -15,7 +15,7 @@ The Android workgroup will: * Recommend enhancements to core Swift packages such as Foundation and Dispatch to work better with Android idioms * Work with the Platform Steering Group to officially define platform support levels generally, and then work towards achieving official support of a particular level for Android * Determine the range of supported Android API levels and architectures for Swift integration -* Develop [continuous integration](https://www.swift.org/documentation/continuous-integration/) for the [main Swift repository](https://ci-external.swift.org/job/oss-swift-RA-linux-ubuntu-24.04-android-arm64/) that adds Android checks for pull requests +* Develop [continuous integration](https://www.swift.org/documentation/continuous-integration/) for the Swift project that includes Android testing in pull request checks. * Identify and recommend best practices for bridging between Swift and Android's Java SDK and packaging Swift libraries with Android apps * Develop support for debugging Swift applications on Android * Advise and assist with adding support for Android to various community Swift packages From 8516e09f3c9a46a6303585706785dc42394dcd6f Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Wed, 18 Jun 2025 13:52:48 -0400 Subject: [PATCH 11/11] Platform Steering Group selects the Android workgroup chair --- android-workgroup/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/android-workgroup/index.md b/android-workgroup/index.md index 9e9fba525..a4a07a3e8 100644 --- a/android-workgroup/index.md +++ b/android-workgroup/index.md @@ -30,7 +30,7 @@ Membership in the Android workgroup is open to anyone who wishes to contribute. The Android workgroup adheres to the Swift code of conduct. If community members have any concerns about the adherence of the workgroup or one of its members to the code of conduct, they should contact a member of the Swift Core Team. -The Android workgroup selects one member of the workgroup as the chair. The chair has no special authority over the workgroup, but they are responsible for ensuring its smooth functioning, including by: +The Platform Steering Group selects one member of the Android workgroup as the chair. The chair has no special authority over the workgroup, but they are responsible for ensuring its smooth functioning, including by: * organizing and leading regular meetings, * ensuring that the workgroup communicates effectively with the community, and