From d0d70d870ed5630e32f65fb12b53df89f44a752f Mon Sep 17 00:00:00 2001 From: Leah Wasser Date: Thu, 26 Oct 2023 17:11:34 -0600 Subject: [PATCH 01/12] Fix: update archive package text --- our-process/policies.md | 79 +++++++++++++++++++++++------------------ 1 file changed, 45 insertions(+), 34 deletions(-) diff --git a/our-process/policies.md b/our-process/policies.md index 925c256a..e388f2ba 100644 --- a/our-process/policies.md +++ b/our-process/policies.md @@ -24,8 +24,8 @@ When submitting a package, please make sure that your GitHub notification settin We strongly suggest submitting your package for review with pyOpenSci before: -* publishing on `PyPI` or `conda`; -* submitting a software paper describing the package to a journal. +- publishing on `PyPI` or `conda`; +- submitting a software paper describing the package to a journal. Review feedback may result in major improvements and updates to your package, including changes that could be break package functionality. @@ -34,19 +34,22 @@ We do not consider previous publication on `PyPI` or `conda` or in other venues sufficient reason to not adopt reviewer or editor recommendations provided in our review. ->Please do not submit your package for review while it or an associated manuscript is +> Please do not submit your package for review while it or an associated manuscript is > also under review at another venue, as this may result on conflicting requests > for changes from two sets of reviewers. ### Publication with Journal of Open Source Software (JOSS) + If you have previously published your software package with JOSS, you can still submit it to pyOpenSci for review. This provides: -* Increased visibility of your package as a vetted tool within the scientific python ecosystem -* We will also keep in touch with you as a maintainer to support long term maintenance. If you need to step down from maintaining your package we will help find a new maintainer and/or help sunset the tool. +- Increased visibility of your package as a vetted tool within the scientific python ecosystem +- We will also keep in touch with you as a maintainer to support long term maintenance. If you need to step down from maintaining your package we will help find a new maintainer and/or help sunset the tool. (coi)= + ### Conflict of interest for reviews and editors + Following criteria are meant to be a guide for what constitutes a conflict of interest for an editor or reviewer. The potential editor or reviewer has a conflict of interest if: @@ -65,41 +68,50 @@ external guest editor will be recruited to lead the package review. ## After Acceptance: Package Ownership and Maintenance -Authors of contributed packages essentially maintain the same ownership they -had prior to their package joining the pyOpenSci suite. Package authors will -continue to maintain -and develop their software after acceptance into pyOpenSci. Unless explicitly added as -collaborators, the pyOpenSci team will not interfere with day to day operations. +Package authors are expected to maintain and develop their software and retain +ownership of it after acceptance into pyOpenSci, as per the peer review agreement +acknowledged upon submission. This maintenance commitment should last for at +least two years. The pyOpenSci team will not interfere with day-to-day tool +maintenance unless explicitly added as collaborators. If you need to step down from maintaining your accepted pyOpenSci package, please -please notify the EiC / software review lead of this as soon as you can. We -will talk with you about your tool and work together to either find a new maintainer or sunset the tool depending upon what makes the most sense. +promptly notify the pyOpenSci Editor-in-Chief or Software Review Lead. pyOpenSci +will collaborate with you to either: + +- Find a new maintainer or +- Archive the tool, depending on what best suits your specific scientific Python + package. -We will reach out to our package maintainers each year to check in on how -maintenance is going. +We will reach out to our package maintainers each year to assess the status of +maintenance and to see if there are any updates we can highlight through our social channels. -### Maintainer Responsiveness -If package maintainers do not respond in a timely manner to requests for -package fixes, we will remind the maintainer a number of times. After 3 months -(or shorter time frame, depending on how critical the fix is) we will discuss -the future of the package as a part of our pyOpenSci ecosystem. +### Maintenance Tracking -* If a package becomes completely un-maintained we will highlight that fact and -remove it as a vetted tool in our ecosystem. -* If a sub-community decides to fork and maintain that package we are open to working with the new maintainers to keep the package within our ecosystem. +pyOpenSci is building a system to track package metrics, including issues, pull requests, and dates of +the last release and commits to the package repository. Based on activity in +the repository: - +- Packages not updated within 6 months will receive a flag on the website in the form of a small icon. +- After a year of no updates, the package will be flagged as potentially + archived. At this point, a member of the pyOpenSci team will contact the + package maintainers to assess the maintenance status and their intentions + regarding the tool. +## Package Maintenance and Maintainer Responsiveness -```{note} -Note from the Executive Director: Please note that we are reviewing the text -below and will be updating our policy -surrounding package quality and long term maintenance in the upcoming weeks -(Fall 2022). -``` +If, after one year, package maintainers are unresponsive to requests for package +fixes or messages from the pyOpenSci team, we will initiate discussions about +the package's future within the pyOpenSci ecosystem. + +In cases where a package is heavily used by the community, we may collaborate +with the community to identify a new maintainer. Otherwise, the package will be +archived within the pyOpenSci ecosystem. + +If a sub-community decides to fork and maintain the package, we are open to +working with the new maintainers to keep the package within our ecosystem. ### Quality Commitment + pyOpenSci strives to develop and promote high quality research software. To ensure that your software meets our criteria, we review all of our submissions as part of the Software Peer Review process. We expect that you will continue to maintain a @@ -110,9 +122,8 @@ of individual maintainers. Buggy, unmaintained software may be removed from our any time. We also ask maintainers that they get in touch with us if they do need to step down from maintaining a tool. +### Requesting package removal from the pyOpenSci ecosystem - -### Requesting Package Removal In the unlikely scenario that a contributor of a package requests removal of their -package from the suite, we retain the right to maintain a version of the package in our -suite for archival purposes. +package from our ecosystem, we retain the right to archive a version of the package in our +ecosystem for archival purposes only. From bdf26ddcb4a5d922b58c91b4597ad4c012d259dd Mon Sep 17 00:00:00 2001 From: Leah Wasser Date: Tue, 12 Dec 2023 12:47:13 -0700 Subject: [PATCH 02/12] Fix: text edit from @willingc Co-authored-by: Carol Willing --- our-process/policies.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/our-process/policies.md b/our-process/policies.md index e388f2ba..c7631d37 100644 --- a/our-process/policies.md +++ b/our-process/policies.md @@ -82,7 +82,7 @@ will collaborate with you to either: - Archive the tool, depending on what best suits your specific scientific Python package. -We will reach out to our package maintainers each year to assess the status of +We will reach out to our package maintainers each year to verify the package is actively maintained maintenance and to see if there are any updates we can highlight through our social channels. ### Maintenance Tracking From 157f296c1ce066d6afa9de81332d3120a5387b14 Mon Sep 17 00:00:00 2001 From: Leah Wasser Date: Tue, 12 Dec 2023 12:47:29 -0700 Subject: [PATCH 03/12] Fix: text edit from @willingc Co-authored-by: Carol Willing --- our-process/policies.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/our-process/policies.md b/our-process/policies.md index c7631d37..382deac8 100644 --- a/our-process/policies.md +++ b/our-process/policies.md @@ -83,7 +83,7 @@ will collaborate with you to either: package. We will reach out to our package maintainers each year to verify the package is actively maintained -maintenance and to see if there are any updates we can highlight through our social channels. +and to see if there are any updates we can highlight through our social channels. ### Maintenance Tracking From 94f81d142de767dc9794da3e8795912193477677 Mon Sep 17 00:00:00 2001 From: Leah Wasser Date: Tue, 12 Dec 2023 12:47:44 -0700 Subject: [PATCH 04/12] Fix: text edit from @willingc Co-authored-by: Carol Willing --- our-process/policies.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/our-process/policies.md b/our-process/policies.md index 382deac8..b5bac80a 100644 --- a/our-process/policies.md +++ b/our-process/policies.md @@ -88,7 +88,7 @@ and to see if there are any updates we can highlight through our social channels ### Maintenance Tracking pyOpenSci is building a system to track package metrics, including issues, pull requests, and dates of -the last release and commits to the package repository. Based on activity in +the last release and last commit to the package repository. Based on activity in the repository: - Packages not updated within 6 months will receive a flag on the website in the form of a small icon. From 508066edc25e8203e109721c6e1a52b223a44880 Mon Sep 17 00:00:00 2001 From: Leah Wasser Date: Tue, 12 Dec 2023 12:56:17 -0700 Subject: [PATCH 05/12] Fix: edits from @willingc Co-authored-by: Carol Willing --- our-process/policies.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/our-process/policies.md b/our-process/policies.md index b5bac80a..49789158 100644 --- a/our-process/policies.md +++ b/our-process/policies.md @@ -108,7 +108,7 @@ with the community to identify a new maintainer. Otherwise, the package will be archived within the pyOpenSci ecosystem. If a sub-community decides to fork and maintain the package, we are open to -working with the new maintainers to keep the package within our ecosystem. +working with the new maintainers to register the newly forked package within our ecosystem. The original package will be archived with a link to the new fork. ### Quality Commitment From b5167cb64a10e1b6cf6916ad44cb4df7bebdf235 Mon Sep 17 00:00:00 2001 From: Leah Wasser Date: Tue, 12 Dec 2023 12:56:43 -0700 Subject: [PATCH 06/12] Fix: edits from @willingc Co-authored-by: Carol Willing --- our-process/policies.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/our-process/policies.md b/our-process/policies.md index 49789158..d5be3ab2 100644 --- a/our-process/policies.md +++ b/our-process/policies.md @@ -104,7 +104,7 @@ fixes or messages from the pyOpenSci team, we will initiate discussions about the package's future within the pyOpenSci ecosystem. In cases where a package is heavily used by the community, we may collaborate -with the community to identify a new maintainer. Otherwise, the package will be +with the community to identify reasonable next steps, such as assisting in finding a new maintainer. If a solution for ongoing package maintenance is not found, the package will be archived within the pyOpenSci ecosystem. If a sub-community decides to fork and maintain the package, we are open to From cbaf3eeb4ca894f463fa43ef783662f7deb22858 Mon Sep 17 00:00:00 2001 From: Leah Wasser Date: Tue, 12 Dec 2023 12:57:07 -0700 Subject: [PATCH 07/12] Fix: edits from @willingc Co-authored-by: Carol Willing --- our-process/policies.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/our-process/policies.md b/our-process/policies.md index d5be3ab2..275281cb 100644 --- a/our-process/policies.md +++ b/our-process/policies.md @@ -92,7 +92,7 @@ the last release and last commit to the package repository. Based on activity in the repository: - Packages not updated within 6 months will receive a flag on the website in the form of a small icon. -- After a year of no updates, the package will be flagged as potentially +- Packages with low activity (no new commits or releases) for the past 12 months will be flagged for potential archive. archived. At this point, a member of the pyOpenSci team will contact the package maintainers to assess the maintenance status and their intentions regarding the tool. From 6dc67c4dfe4492215928bfa1dcea608f157ee97a Mon Sep 17 00:00:00 2001 From: Leah Wasser Date: Tue, 12 Dec 2023 12:57:22 -0700 Subject: [PATCH 08/12] Fix: edits from @willingc Co-authored-by: Carol Willing --- our-process/policies.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/our-process/policies.md b/our-process/policies.md index 275281cb..68afae2f 100644 --- a/our-process/policies.md +++ b/our-process/policies.md @@ -93,7 +93,7 @@ the repository: - Packages not updated within 6 months will receive a flag on the website in the form of a small icon. - Packages with low activity (no new commits or releases) for the past 12 months will be flagged for potential archive. - archived. At this point, a member of the pyOpenSci team will contact the + A pyOpenSci team member will contact the package maintainers to assess the maintenance status and their intentions regarding the tool. From 05fd1e9b4498aeab4575aedda8d36fc1d1c57f21 Mon Sep 17 00:00:00 2001 From: Leah Wasser Date: Tue, 12 Dec 2023 13:56:52 -0700 Subject: [PATCH 09/12] Fix: edit from @willingc Co-authored-by: Carol Willing --- our-process/policies.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/our-process/policies.md b/our-process/policies.md index 68afae2f..8689087d 100644 --- a/our-process/policies.md +++ b/our-process/policies.md @@ -101,7 +101,7 @@ the repository: If, after one year, package maintainers are unresponsive to requests for package fixes or messages from the pyOpenSci team, we will initiate discussions about -the package's future within the pyOpenSci ecosystem. +the package's ongoing inclusion within the pyOpenSci ecosystem. In cases where a package is heavily used by the community, we may collaborate with the community to identify reasonable next steps, such as assisting in finding a new maintainer. If a solution for ongoing package maintenance is not found, the package will be From f1275715dd7d4dfa9128c19aee8130ba149e33ea Mon Sep 17 00:00:00 2001 From: Leah Wasser Date: Tue, 12 Dec 2023 14:08:10 -0700 Subject: [PATCH 10/12] Fix: finess archive process and flagging packages --- our-process/policies.md | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/our-process/policies.md b/our-process/policies.md index 8689087d..63e58afc 100644 --- a/our-process/policies.md +++ b/our-process/policies.md @@ -22,15 +22,15 @@ When submitting a package, please make sure that your GitHub notification settin ## Submitting your package for review in other venues -We strongly suggest submitting your package for review with pyOpenSci before: +We recommend submitting your package for review with pyOpenSci before: -- publishing on `PyPI` or `conda`; +- publishing to a package repository, such as `PyPI` and `conda-forge`; - submitting a software paper describing the package to a journal. Review feedback may result in major improvements and updates to your package, including changes that could be break package functionality. -We do not consider previous publication on `PyPI` or `conda` or in other venues +We do not consider previous publication on `PyPI` or `conda-forge` or in other venues sufficient reason to not adopt reviewer or editor recommendations provided in our review. @@ -87,15 +87,13 @@ and to see if there are any updates we can highlight through our social channels ### Maintenance Tracking -pyOpenSci is building a system to track package metrics, including issues, pull requests, and dates of -the last release and last commit to the package repository. Based on activity in -the repository: +pyOpenSci is building a system to track package metrics and activity, including issues, pull requests, and dates of +the last release and last commit to the package repository. Activity is defined as a repository commit, pull request or release. -- Packages not updated within 6 months will receive a flag on the website in the form of a small icon. -- Packages with low activity (no new commits or releases) for the past 12 months will be flagged for potential archive. - A pyOpenSci team member will contact the - package maintainers to assess the maintenance status and their intentions - regarding the tool. +We will flag packages that haven't been updated on a 6-12 month time period based on activity as follows: + +- Packages with no activity for at least 6 months will receive a green flag on the website indicating that the package is still potentially maintained but no activity has been recorded in that time frame. +- Packages with no activity after 12 months will be flagged. At that time, pyOpenSci editorial team member will contact the package maintainers to evaluate the maintenance status of their package. ## Package Maintenance and Maintainer Responsiveness From 4c47e65c6d30596f21588f2cd4a2091c3561e2a5 Mon Sep 17 00:00:00 2001 From: Leah Wasser Date: Tue, 12 Dec 2023 14:15:42 -0700 Subject: [PATCH 11/12] Fix: update policy for archiving --- our-process/policies.md | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/our-process/policies.md b/our-process/policies.md index 63e58afc..255f4d3d 100644 --- a/our-process/policies.md +++ b/our-process/policies.md @@ -90,10 +90,7 @@ and to see if there are any updates we can highlight through our social channels pyOpenSci is building a system to track package metrics and activity, including issues, pull requests, and dates of the last release and last commit to the package repository. Activity is defined as a repository commit, pull request or release. -We will flag packages that haven't been updated on a 6-12 month time period based on activity as follows: - -- Packages with no activity for at least 6 months will receive a green flag on the website indicating that the package is still potentially maintained but no activity has been recorded in that time frame. -- Packages with no activity after 12 months will be flagged. At that time, pyOpenSci editorial team member will contact the package maintainers to evaluate the maintenance status of their package. +We will flag packages that haven't been updated within a 1 year/ 12 month time period based on activity. Packages with no activity after 12 months will be flagged. At that time, pyOpenSci editorial team member will contact the package maintainers to evaluate the maintenance status of their package. ## Package Maintenance and Maintainer Responsiveness @@ -123,5 +120,4 @@ to step down from maintaining a tool. ### Requesting package removal from the pyOpenSci ecosystem In the unlikely scenario that a contributor of a package requests removal of their -package from our ecosystem, we retain the right to archive a version of the package in our -ecosystem for archival purposes only. +package from our ecosystem, we retain the right offer the last / most recently released version of that package in our ecosystem for archival purposes only. From 5ffffb00c5d12ad2896d3580214785dcf332136d Mon Sep 17 00:00:00 2001 From: Leah Wasser Date: Fri, 15 Dec 2023 10:49:41 -0700 Subject: [PATCH 12/12] Final edits from reviews --- our-process/policies.md | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/our-process/policies.md b/our-process/policies.md index 255f4d3d..27d2f571 100644 --- a/our-process/policies.md +++ b/our-process/policies.md @@ -30,9 +30,8 @@ We recommend submitting your package for review with pyOpenSci before: Review feedback may result in major improvements and updates to your package, including changes that could be break package functionality. -We do not consider previous publication on `PyPI` or `conda-forge` or in other venues -sufficient reason to not adopt reviewer or editor recommendations provided in -our review. +Applying reviewer or editor recommendations to your package can improve your user's experience with future versions of your package +even if your package is already published on `PyPI` or `conda-forge`. > Please do not submit your package for review while it or an associated manuscript is > also under review at another venue, as this may result on conflicting requests @@ -47,7 +46,6 @@ submit it to pyOpenSci for review. This provides: - We will also keep in touch with you as a maintainer to support long term maintenance. If you need to step down from maintaining your package we will help find a new maintainer and/or help sunset the tool. (coi)= - ### Conflict of interest for reviews and editors Following criteria are meant to be a guide for what constitutes a conflict of interest