My First Pip Package

| python | programming |

I finally got around to packaging up pg2cf and I am excited to see it out in the wild on pypi. Python packaging is pretty straightforward and this makes distribution of this tool much easier for us internally.

I could not have done it without this awesome python packaging guide.

Using setuptools also makes a lot of other things easier. For instance running tests is as simple as python setup.py test and installing the package locally can be done with python setup.py install. The main benifit of course is that now pg2cf is an executable so you once it is installed you can just run it.

The only “gotcha” that I ran into was that setuptools does not support markdown. Which makes it kind of weird since Markdown is now the standard for README and other documentation on GitHub.

I worked around this by using pandoc, this way I am able to convert my README.md to README.rst easily with pandoc README.md -o README.rst and then use that for PyPI.

Thank you for reading! Share your thoughts with me on bluesky, mastodon, or via email.

Check out some more stuff to read down below.

Most popular posts this month

Recent Favorite Blog Posts

This is a collection of the last 8 posts that I bookmarked.

Articles from blogs I follow around the net

Fujifilm X100 vs Leica Q vs Ricoh GR

Notes on three fixed-lens camera lines

via The Map is Mostly Water July 18, 2026

Make It Work vs. Make It Good

There are two wolves inside of me, lol. Some days I want to be a “designer”. Other days I want to be a “developer”. On the days I find myself wanting to feed the developer, it’s often because making something “work” seems easier (and more impressive) than...

via Jim Nielsen’s Blog July 18, 2026

Robert Jon & the Wreck at The Tin Pan

Robert Jon & the Wreck at The Tin Pan I have lived in RVA, and before that Fredericksburg, for over 20 years. I have looked at shows at The Tin Pan on multiple occasions. Every time I passed, because the idea of seeing a loud rock and roll show in a dinner...

via O'DonnellWeb July 18, 2026

Generated by openring