Skip to main content

The modern MacPorts portfile updater

Project description

GitHub Workflow Status Read the Docs Codecov

The modern MacPorts portfile updater.

> seaport clip gping
๐ŸŒŠ Starting seaport...
๐Ÿ‘ New version is 1.2.0-post
๐Ÿ”ป Downloading from https://github.com/orf/gping/tarball/v1.2.0-post/gping-1.2.0-post.tar.gz
๐Ÿ”Ž Checksums:
Old rmd160: 8b274132c8389ec560f213007368c7f521fdf682
New rmd160: 4a614e35d4e1e496871ee2b270ba8836f84650c6
Old sha256: 1879b37f811c09e43d3759ccd97d9c8b432f06c75a27025cfa09404abdeda8f5
New sha256: 1008306e8293e7c59125de02e2baa6a17bc1c10de1daba2247bfc789eaf34ff5
Old size: 853432
New size: 853450
โช๏ธ Changing revision numbers
No changes necessary
๐Ÿ“‹ The contents of the portfile have been copied to your clipboard!

โšก๏ธ Features

๐Ÿ–ฅ Command Line Tool

  • โฉ Automatically determines new version numbers and checksums for MacPorts portfiles.

  • ๐Ÿ“‹ Copies the changes to your clipboard, and optionally sends a PR to update them.

  • ๐Ÿ”Ž Contains additional checking functionality, such as running tests, linting and installing the updated program.

๐Ÿ Python API

  • ๐Ÿ“š Library for convenient access to portfile information. Easily import as a Python module for your project.

  • โŒจ๏ธ PEP 561 compatible, with built in support for type checking.

  • ๐Ÿ“ฆ Works out of the box with all supported Python versions (3.7-3.10).

To find out more, please read the Documentation.

๐Ÿค” How to use seaport

For simple ports with straightforward updates, use seaport pr example_port. This sends a PR with the updated portfile and automatically fills in the PR template for you.

For ports that require some manual changes, use seaport clip example_port. This updates the version number and checksums so you donโ€™t have to. ๐Ÿ˜Ž

Be sure to check out the flags overview for information on additional features.

๐Ÿ”ฅ seaport vs port bump

Features

๐ŸŒŠ seaport

๐Ÿ›ผ port bump

๐Ÿ”’ Updates checksums

โœ…

โœ…

๐Ÿ“š Updates the revision number

โœ…

โœ…

๐Ÿ“ Can write changes to the original file

โœ…

โœ…

โฎ Can update portfile to a specific version

โœ…

โœ…

๐Ÿ”ฎ Updates the version number via livecheck

โœ…

โŒ

๐Ÿš€ Can send a pull request (both for updated and new ports)

โœ…

โŒ

๐Ÿงช Can lint/test/install the port to check if the update works

โœ…

โŒ

๐Ÿ“‹ Copies changes to clipboard

โœ…

โŒ

๐ŸŒŽ Can both manually and automatically set the url to download from

โœ…

โŒ

Installation

Homebrew ๐Ÿบ

brew install harens/tap/seaport

Binary bottles are provided for x86_64 Linux, macOS Big Sur and Monterey.

PyPi ๐Ÿ

If you install seaport via PyPi and want it to send PRs for you, please install GitHub CLI.

pip3 install seaport

๐Ÿ”จ Contributing

Any change, big or small, that you think can help improve this project is more than welcome ๐ŸŽ‰.

As well as this, feel free to open an issue with any new suggestions or bug reports. Every contribution is appreciated.

For more information, please read our contributing page on how to get started.

ยฉ๏ธ License

Similar to other MacPorts-based projects, seaport is licensed under the BSD 3-Clause โ€œNewโ€ or โ€œRevisedโ€ License.

๐Ÿ“’ Notice of Non-Affiliation and Disclaimer

This project is not affiliated, associated, authorized, endorsed by, or in any way officially connected with the MacPorts Project, or any of its subsidiaries or its affiliates. The official MacPorts Project website can be found at https://www.macports.org.

The name MacPorts as well as related names, marks, emblems and images are registered trademarks of their respective owners.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

seaport-0.7.1.tar.gz (22.1 kB view hashes)

Uploaded source

Built Distribution

seaport-0.7.1-py3-none-any.whl (39.5 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page