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

Upgrade for Sopel 8, Python 3.8 to 3.12, and make it an entrypoint plugin #17

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

Exirel
Copy link
Contributor

@Exirel Exirel commented Jun 8, 2024

This is a pretty significant change:

  • renamed the Python package from sopel_module.imdb to sopel-imdb (this may need a migration guide)
  • replaced setup.py and friends by pyproject.toml
  • supported Python versions are now 3.8 to 3.12
  • Sopel 8 or greater is required
  • replaced sopel.module by sopel.plugin and other deprecation warning fix
  • other minor packaging fixes

@Exirel
Copy link
Contributor Author

Exirel commented Jun 8, 2024

Example of output with a fresh Sopel 8 install (and a properly setup api key):

12:07:27 <@xrl> .imdb Furiosa
12:07:27 <Sopel> [Movie] Title: Furiosa: A Mad Max Saga | Year: 2024 | Rating: 7.9 | Genre: Action, Adventure, Sci-Fi | Plot: The origin story of renegade warrior Furiosa before her encounter and teamup with Mad Max. | IMDB Link: http://imdb.com/title/tt12037194
12:07:57 <@xrl> https://www.imdb.com/title/tt1684562/?ref_=nv_sr_srsg_0_tt_7_nm_1_q_the%2520fall%2520g
12:07:58 <Sopel> [Movie] Title: The Fall Guy | Year: 2024 | Rating: 7.3 | Tomatometer: 89% | Genre: Action, Comedy, Drama | Plot: A down-and-out stuntman must find the missing star of his ex-girlfriend's blockbuster film.
12:11:33 <@xrl> .version imdb
12:11:33 <Sopel> [version] imdb v1.3.0.dev0

@dgw
Copy link
Member

dgw commented Jun 9, 2024

  • renamed the Python package from sopel_module.imdb to sopel-imdb (this may need a migration guide)

Renaming other plugins from sopel_modules.name to sopel-name has been handled by publishing a new dummy version of sopel_modules.name that requires sopel-name, but that isn't necessarily the "best" approach. It will give users the newer package whenever they check for updates with pip install -U or whatever, but I haven't tested all the possible edge cases.

A lighter-weight alternative is to publish a new version (or just a post-release) of sopel_modules.imdb that updates its description (README) with a note that that version isn't maintained any more, and a link to the new package. You can see this approach with https://pypi.org/project/sopel-modules.youtube/0.5.2/ and its corresponding namespace-eol branch.

@RustyBower Does the publishing workflow here have a PyPI token that can create new projects? I would honestly recommend setting up Trusted Publishing for the new sopel-imdb package name, and I can help with that if you want. I've done it for about a dozen other packages now. 😁

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants