Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update project files #257

Merged
merged 1 commit into from
Apr 29, 2024
Merged

update project files #257

merged 1 commit into from
Apr 29, 2024

Conversation

davidism
Copy link
Member

One of my goals with Pallets-Eco is to standardize and document how our projects
are organized and maintained. Using a standard layout and tool config across all
projects makes it much easier for anyone familiar with one project to jump in to
help another, and makes it easier to write one set of maintainer documentation
for all.

This is a general update to more closely match how the Pallets projects are laid
out. We try to use a minimal set of common tools without much custom config.
I've pre-squashed the commits, see pallets/flask#5457 with each commit split out
in the PR.

This also adds a message to the readme to inform potential contributors about
Pallets-Eco and how they can get involved.

use standard project layout and tool config across all pallets and
pallets-eco projects

* add issue templates
* add dependabot grouped updates for actions and pypi
* add lock inactive closed issues workflow
* add publish workflow with slsa and trusted publishing
* simplify tests workflow matrix
* simplify docs config.py
* show license in docs
* use pip-compile to pin development dependencies
* rename test to tests
* add .editorconfig
* simplify .gitignore
* add pre-commit hooks (will run formatters  in a subsequent PR)
* pin os and python in .readthedocs.yaml
* update license with original commit date and pallets-eco
* use pyproject.toml and flit_core instead of setuptools
* only declare flask dependency
* add config for mypy and pyright (will add typing in a subsequent PR)
* readme is markdown
* add pallets-eco message to readme
* remove install and docs links from readme
* add style, typing, docs tox envs
* use faster wheel building tox config
* add tox command to update dev dependencies
@davidism
Copy link
Member Author

I'll be running ruff check and ruff format in the next PR. Then adding typing for mypy and pyright in the PR after that.

@davidism
Copy link
Member Author

This adds our standard publish workflow. In the future, creating a "release version N" PR and pushing a tag will trigger the workflow, which requires a review from a maintainer before uploading to PyPI using trusted publishing.

@davidism
Copy link
Member Author

I realize this is impossible to review, but it's the same as every other Pallets project. I'm happy to answer any questions about what we use.

@nickjj
Copy link
Contributor

nickjj commented Apr 29, 2024

What do you think about keeping the original author's copyright line item in the LICENSE file?

The current commit replaces Copyright (c) Rob Hudson and individual contributors with Copyright 2011 Pallets Community Ecosystem which disassociates Rob from the project. Maybe you can add both copyrights on separate lines?

@davidism
Copy link
Member Author

davidism commented Apr 29, 2024

My understanding is that this describes the copyright holder, not the original author. Pallets (described as the Pallets Community Ecosystem here for pallets-eco) hold the copyright since the project was transferred to us (as opposed to us forking the project into a separate one). Rob was also not the original author of Flask-DebugToolbar, but of django-debug-toolbar which it was based on. I can find no clear or consistent guidance from reliable sources about how this works in legal practice, but my instinct is to make it reflect the current state of the project. This is also what we did for the Pallets projects themselves years ago when they were transferred to Pallets.

@davidism davidism requested review from nickjj and greyli April 29, 2024 20:04
Copy link
Contributor

@nickjj nickjj left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok, I was just making sure we do due diligence on if it's ok to remove the original name. Otherwise, I glanced through the other changes and they make sense.

@davidism davidism merged commit 4ccb3c9 into main Apr 29, 2024
7 checks passed
@davidism davidism deleted the refresh branch April 29, 2024 22:38
@davidism
Copy link
Member Author

See #258 and #259 for formatting/linting and typing.

Copy link
Member

@jeffwidman jeffwidman left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks so much for handling all this!

Sorry I was late for the review, I started yesterday and forgot to hit publish until today...

A few minor observations, nothing too critical, and most of it is just my opinions rather than facts. 😄

.github/ISSUE_TEMPLATE/config.yml Show resolved Hide resolved
- Add tests that demonstrate the correct behavior of the change. Tests
should fail without the change.
- Add or update relevant docs, in the docs folder and in code.
- Add an entry in CHANGES.rst summarizing the change and linking to the issue.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We currently don't have a CHANGES.rst in this repo:

.github/workflows/lock.yaml Show resolved Hide resolved
.github/workflows/publish.yaml Show resolved Hide resolved
.github/workflows/publish.yaml Show resolved Hide resolved
.readthedocs.yaml Show resolved Hide resolved
pyproject.toml Show resolved Hide resolved
author = [{ name = "Michael van Tellingen" }]
maintainers = [{ name = "Pallets Ecosystem", email = "contact@palletsprojects.com" }]
classifiers = [
"Development Status :: 4 - Beta",
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probably about time we move this out of Beta status 😁

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, we should also think about what 1.0 looks like.

pyproject.toml Show resolved Hide resolved
@github-actions github-actions bot locked as resolved and limited conversation to collaborators May 15, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Development

Successfully merging this pull request may close these issues.

3 participants