Skip to content

Commit e698a37

Browse files
authored
Bug: incorrect link to submission in the author guide + all policy in the same place (#340)
* fix: submission link for authors lead to empty issue * enh: typos and avoid maintenance policy duplication * Update how-to/author-guide.md
1 parent 8dc2485 commit e698a37

File tree

2 files changed

+66
-49
lines changed

2 files changed

+66
-49
lines changed

how-to/author-guide.md

Lines changed: 56 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Peer Review Guide for Python Open Source Authors / Authors
1+
# Guide for Python Package Authors & Maintainers
22

33
:::{toctree}
44
:hidden:
@@ -21,7 +21,7 @@ Finding & Onboarding Reviewers <finding-reviewers>
2121

2222
Are you considering submitting a package for review with pyOpenSci? You've
2323
come to the right place! Below you will find the steps that you need to follow
24-
to submit a package to pyOpenSci for peer review along with some additional resources that you may find useful.
24+
to submit a package to pyOpenSci for peer review.
2525

2626
## Peer review resources
2727

@@ -82,19 +82,19 @@ Read about our peer review policies.
8282
Before you begin this process, [please be sure to read the review process guidelines](../our-process/policies).
8383

8484
```{note}
85-
**Before you consider submitting to us please consider the following:**
85+
**Before you consider submitting to us, please consider the following:**
8686
8787
1. Please be sure that you have time to devote to making changes to your
8888
package. During review, you will receive feedback from an editor and two reviewers. Changes could
8989
take time. Please consider this before submitting to us. You can read more about the timeline to make changes in our [peer review policies page](../our-process/policies).
90-
2. Peer review is lead by a diverse group of volunteer editors and reviewers.
90+
2. A diverse group of volunteer editors and reviewers leads peer review.
9191
Please be considerate when engaging with everyone online.
9292
```
9393

9494
## 1. Do you plan to continue to maintain your package?
9595

9696
One of the goals of pyOpenSci is to maintain a curated list of
97-
community-approved, maintained and vetted tools that support open science workflows.
97+
community-approved, maintained, and vetted tools that support open science workflows.
9898

9999
As such, we review packages that will be useful to the community
100100
and maintained over time. While we understand that burnout is real,
@@ -109,7 +109,7 @@ your package to a journal that is more focused on publication only.
109109

110110
If you have a team of people maintaining your package, please be sure
111111
that the submitting author is the person who "owns" or leads that maintenance.
112-
That person will become the long term point of contact
112+
That person will become the long-term point of contact
113113
for pyOpenSci.
114114

115115
- Please also include the names of all maintainers on the project
@@ -124,8 +124,8 @@ either:
124124
125125
please consider submitting it directly to a publisher like the
126126
Journal of Open Source Software (JOSS). A publisher like JOSS has less
127-
emphasis on long term software maintenance and focuses more on
128-
publication quality and citation / credit.
127+
emphasis on long-term software maintenance and focuses more on
128+
publication quality and citation/credit.
129129
```
130130

131131
## 2. Does Your Package Meet Packaging Requirements?
@@ -137,11 +137,11 @@ pyOpenSci.
137137

138138
If you have questions about any of the elements listed below, you can
139139
check out our [pyOpenSci Python packaging guide](https://www.pyopensci.org/python-package-guide) which includes an overview discussion of best practices
140-
for Python packaging including discussions of:
140+
for Python packaging, including discussions of:
141141

142142
- Tools that you can use to create your package
143143
- Tools for creating and publishing documentation.
144-
- Resources for creating files such as the README file, code of conduct, contributing guide and more.
144+
- Resources for creating files such as the README file, code of conduct, contributing guide, and more.
145145

146146
```{include} ../appendices/editor-in-chief-checks.md
147147
@@ -160,10 +160,13 @@ surrounding:
160160
* Creating and publishing documentation
161161
* Anything related to our peer review process.
162162
163-
Also check back on our [Packaging Guide](https://www.pyopensci.org/python-package-guide),
164-
to be updated this Spring 2023. This guide is designed to review the dynamic
165-
ecosystem of Python packaging tools that you can use to create a high quality
166-
Python package.
163+
Also, check our [Packaging Guide](https://www.pyopensci.org/python-package-guide).
164+
This guide includes:
165+
166+
* a [beginner-friendly tutorial](https://www.pyopensci.org/python-package-guide/tutorials/create-python-package.html) for creating pure Python packages
167+
* [An overview of the packaging tool ecosystem
168+
that you can use to create a high-quality
169+
Python package.](https://www.pyopensci.org/python-package-guide/package-structure-code/python-package-build-tools.html)
167170
```
168171

169172
## 3. Is Your Package in Scope for pyOpenSci?
@@ -188,7 +191,7 @@ Click here to view our technical and domain scope requirements.
188191

189192
To submit your package for peer review, you can
190193
open an issue in our [pyopensci/software-review repo](https://github.com/pyOpenSci/software-review/issues/new/choose/)
191-
repository and fill out the [Submit Software for Review](https://github.com/pyOpenSci/software-review/issues/new?assignees=&labels=1%2Feditor-checks%2C+New+Submission%21&template=submit-software-for-review.md&title=) issue template.
194+
repository and fill out the [Submit Software for Review](https://github.com/pyOpenSci/software-submission/issues/new?template=submit-software-for-review.md) issue template.
192195

193196
## 5. Editor-in-Chief Reviews Package for Scope and Minimal Infrastructure Criteria
194197

@@ -205,11 +208,11 @@ Click here to view the editor checks that will be used to evaluate your package.
205208

206209
## 6. The Review Begins
207210

208-
If your package meets minimal criteria for being
209-
reviewed it may then be given to an editor with appropriate domain experience
211+
If your package meets the minimal criteria for being
212+
reviewed, it may then be given to an editor with appropriate domain experience
210213
to manage the review process. That editor will assign 2-3 reviewers to review your
211214
package. Reviewers will be asked to provide review feedback as comments on your
212-
issue within **3 weeks**. Reviewers also can open issues in your package repository.
215+
issue within **3 weeks**. Reviewers can also open issues in your package repository.
213216
We prefer issues that link back to the review as they document changes made to your
214217
package that were triggered by our review process.
215218

@@ -218,12 +221,12 @@ package that were triggered by our review process.
218221
You should respond to reviewers’ comments within **2 weeks** of the
219222
last-submitted review. You can make updates to your package at any time. We
220223
encourage ongoing conversations between authors and reviewers. See the
221-
[guide for package reviewers](reviewer-guide.md) for more details about reviewers engagement with package
224+
[guide for package reviewers](reviewer-guide.md) for more details about reviewers' engagement with package
222225
maintainers during a review.
223226

224227
## 8. Acceptance into pyOpenSci
225228

226-
Once the reviewers are happy with changes that you've made to the package, the
229+
Once the reviewers are happy with the changes that you've made to the package, the
227230
editor will review everything and accept your package into the pyOpenSci ecosystem.
228231
Congratulations! You are almost done!
229232

@@ -232,31 +235,31 @@ Congratulations! You are almost done!
232235
Congratulations on being accepted into the pyOpenSci community of maintainers!
233236
Once your package is approved, a few things will happen:
234237

235-
1. We will ask you to ensure that your package is being tracked / archived using
236-
Zenodo. You will then want to created a tagged release representing the version of the
238+
1. We will ask you to ensure that your package is being tracked/archived using
239+
Zenodo. You will then create a tagged release representing the version of the
237240
package accepted by pyOpenSci.
238241
1. We will ask you to add the pyOpenSci badge [![pyOpenSci Peer Reviewed](https://pyopensci.org/badges/peer-reviewed.svg)](https://github.com/pyOpenSci/software-review/issues/issue-number) to the
239242
top of your **README.md** file.
240243
1. We will promote your package on our social media channels!
241-
1. We will invite you to write a blog on our website spotlighting your package. The blogs that our maintainers write are some of the most popular content on the website!
244+
1. We will invite you to write a blog on our website spotlighting your package. The blogs our maintainers write are among the most popular content on the website!
242245

243-
If you wish to go on to submit your package to JOSS, you can do so now. Remember that JOSS will accept our review as theirs so you DO NOT need to go through another review. Read more below.
246+
If you'd like to submit your package to JOSS, you can do so now. Remember that JOSS will accept our review as theirs, so **you DO NOT need to go through another review**. Read more below.
244247

245248
### Journal of Open Source Software (JOSS) Submission
246249

247-
PyOpenSci has a partnership with JOSS where our review is accepted by JOSS by
250+
pyOpenSci has a [partnership with JOSS](JOSS), where our review is accepted by JOSS by
248251
default if the package fits into the JOSS scope.
249252

250253
- When you submit your package for pyOpenSci review, you can opt to include a
251254
submission to JOSS after passing pyOpenSci review. In this case, your package
252-
will evaluated by JOSS through the pyOpenSci review
255+
will be evaluated by JOSS through the pyOpenSci review
253256
- To complete the JOSS submission, you will also need to craft a **paper.md**
254-
file describing the package following JOSS' standards (see below). More detail on the requirements for JOSS can be found on [their website](https://joss.readthedocs.io/en/latest/submitting.html#what-should-my-paper-contain).
255-
- If you choose to opt into the pyOpenSci / JOSS partnership in your review,
257+
file describing the package following JOSS' standards (see below). More details on the requirements for JOSS can be found on [their website](https://joss.readthedocs.io/en/latest/submitting.html#what-should-my-paper-contain).
258+
- If you choose to opt into the pyOpenSci/JOSS partnership in your review,
256259
you DO NOT need to go through a second review with JOSS. JOSS accepts our review
257-
for theirs. Please start a review process with JOSS and reference the pyOpenSci
260+
as theirs. Please start a review process with JOSS and reference the pyOpenSci
258261
review issue where your package was accepted. Make sure
259-
that you let the JOSS editor know that we have already accepted your package. The JOSS editor will review your paper and once that is accepted you now have a JOSS DOI and badge to display on your README file as well!
262+
that you let the JOSS editor know that we have already accepted your package. The JOSS editor will review your paper. Once your package is accepted, you will be given a JOSS cross-ref-enabled DOI and badge to display on your README file.
260263

261264
```{note}
262265
Acceptance to pyOpenSci does not guarantee acceptance to JOSS. In particular,
@@ -268,23 +271,34 @@ are usually not accepted by JOSS. Be sure to review JOSS's
268271
before writing up a paper about your package.
269272
```
270273

271-
## Post review - now what?
274+
## Post review - welcome to the pyOpenSci community!
275+
276+
Congratulations! Once your package has been accepted into the pyOpenSci ecosystem, you'll be invited to join our [community Slack](https://join.slack.com/t/pyopensci/shared_invite/zt-39qitgkqb-gZTIo79xCJhS5kSxW1yNfg) where you can connect with other package maintainers, get help with maintenance questions, and stay updated on community developments.
277+
278+
### Ongoing support from pyOpenSci
279+
280+
We're committed to supporting you throughout your package's maintenance journey:
272281

273-
Once you have been accepted into the pyOpenSci ecosystem, you will
274-
be invited to join our Slack channel.
282+
**Annual check-ins**: We'll reach out each year to see how your package is doing and learn about any updates we can help highlight through our blog, social media, or newsletter.
275283

276-
We also will keep in touch with you, periodically checking in to ensure that package maintenance is going well and to better understand ways in which pyOpenSci can support you.
284+
**Community resources**: Take advantage of our Slack community to connect with other maintainers, share experiences, and get advice on common maintenance challenges. We're also building additional resources and tools to help package maintainers succeed.
277285

278-
If at any time, you need to step down from maintaining your package,
279-
or you need help with maintenance, please let us know - preferably
280-
in advance. We will try to help you by either:
286+
**Maintenance assistance**: If you have specific maintenance challenges, our Slack community is a great place to ask questions. There is a lot of packaging and community expertise in our vibrant community!
281287

282-
- Finding a new maintainer to take over your project (or additional maintainers to support maintenance) or
283-
- Sunsetting your package.
288+
### When you need help or want to step down
284289

285-
If the package is sunsetted, we will remove it from our curated list
290+
Life changes and priorities shift. If maintaining your package becomes challenging, please reach out to us. We're here to help, and we have several options:
291+
292+
- **Finding co-maintainers or new maintainers**: If you are interested, we can try to connect you with community members interested in contributing to or taking over maintenance of your package.
293+
- **Package archival**: If maintenance isn't sustainable, we can work together [to archive your package](https://www.pyopensci.org/python-packages.html#archived-packages).
294+
295+
If the package is archived, we will remove it from our curated list
286296
of vetted tools.
287297

288-
### Communication with pyOpenSci and removing tools from our vetted tool list
298+
### Maintenance policies
289299

290-
To ensure packages that we support and advocate are maintained, if your package is accepted and we are not able to get in touch with you through normal communication channels (GitHub, email) after reaching out for at least 1-2 months, we will remove your package from our list of vetted tools. We will also remove any blogs written that highlight your tool.
300+
For detailed information about our maintenance expectations, annual check-in process, and archival procedures, please take a look at our [post-review process documentation](post-review-process). Remember, you maintain full ownership of your package. We're here to support you, not interfere with your development process.
301+
302+
:::{tip}
303+
We will [follow our package archive process to determine whether your package should be archived.](archive-process)
304+
:::

our-process/policies.md

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,6 @@ submit it to pyOpenSci for review. This provides:
5454
find a new maintainer and/or help sunset the tool.
5555

5656
(coi)=
57-
5857
## Conflict of interest for reviews and editors
5958

6059
Following criteria are meant to be a guide for what constitutes a conflict of
@@ -85,14 +84,16 @@ At any time, an author can choose to have their submission put on hold
8584
status will be revisited every 3 months. If after one year there has been
8685
no movement on the review, the issue will be closed.
8786

87+
(post-review-process)=
8888
## After acceptance: package ownership and maintenance
8989

9090
Package authors are expected to maintain and develop their software and
9191
retain
92-
ownership of it after acceptance into pyOpenSci, as per the peer review
92+
ownership of it after acceptance into pyOpenSci, according to the peer review
9393
agreement acknowledged upon submission. This maintenance commitment should
9494
last for at least two years. The pyOpenSci team will not interfere with
95-
day-to-day tool maintenance unless explicitly added as collaborators.
95+
day-to-day tool maintenance unless someone in the community is explicitly added as
96+
a project collaborator.
9697

9798
If you need to step down from maintaining your accepted pyOpenSci package,
9899
please promptly notify the pyOpenSci Editor-in-Chief or Software Review Lead.
@@ -119,17 +120,16 @@ flagged. At that time, pyOpenSci editorial team member will contact the package
119120
maintainers to evaluate the maintenance status of their package.
120121

121122
(archive-process)=
122-
123123
### Package maintenance and maintainer responsiveness
124124

125125
If, after one year, package maintainers are unresponsive to requests for
126126
package fixes or messages from the pyOpenSci team, we will initiate
127127
discussions about the package's ongoing inclusion within the pyOpenSci
128128
ecosystem.
129129

130-
In cases where a package is heavily used by the community, we may
130+
In cases where the community heavily uses a package, we may
131131
collaborate with the community to identify reasonable next steps, such as
132-
assisting in finding a new maintainer. If a solution for ongoing package
132+
assisting in finding a new maintainer. If a solution for the ongoing package
133133
maintenance is not found, the package will be archived within the pyOpenSci
134134
ecosystem.
135135

@@ -138,9 +138,12 @@ working with the new maintainers to register the newly forked package within
138138
our ecosystem. The original package will be archived with a link to the new
139139
fork.
140140

141+
We will also add a note to any blogs written that highlight your tool that
142+
the package is no longer maintained.
143+
141144
### Quality commitment
142145

143-
pyOpenSci strives to develop and promote high quality research software. To
146+
pyOpenSci strives to develop and promote high-quality research software. To
144147
ensure that your software meets our criteria, we review all of our submissions
145148
as part of the Software Peer Review process. We expect that you will continue
146149
to maintain a package that has been accepted continually.

0 commit comments

Comments
 (0)