Skip to main content


Hey, any Python experts want to help a Python newbie out? I've been hacking for decades, but I can't say I know Python best practices.

I'm working on github.com/Ovid/sqlitch-v2 (porting some Perl code to Python) and while it seems good to me (but very much alpha and a WIP), I don't know what I don't know. If there's anything obvious I've missed or is unpythonic, I would love to know.

#Python #Perl

in reply to Curtis "Ovid" Poe (he/him)

at first glance,

- 'src' layout is more popular and has a number of advantages (packaging.python.org/en/latest…) so it's a bit gauche to put your packages at repository root
- 'bin/' directory is unnecessary and failure prone; your project.scripts entrypoint should be fine
- you shouldn't need MANIFEST.in any more? Do you need it because of all these nonstandard files you're including?
- I notice you're including 'uat/**.py' but notably you are *not* including it as a package. That's… odd

Unknown parent

mastodon - Link to source
Curtis "Ovid" Poe (he/him)

@glyph That was AMAZING feedback. Thank you. I'll definitely be taking it on board 😀

I really appreciate you taking the time. I have soooo much to learn here.

Unknown parent

mastodon - Link to source
Curtis "Ovid" Poe (he/him)
@glyph Forgot to mention that I'm not uploading to PyPI right now because I know it's not in the state that it should be. Hopefully, I'll get that resolved soon.
in reply to Curtis "Ovid" Poe (he/him)

But… why? Is this to improve adoption by Perl-adverse shops? I use the dockerized version for several projects and no one bats an eye.
in reply to Jason Crome

@cromedome Not happy about this, but:

* The company bans Perl in its tech stack.
* If they switch away from their currently broken tooling, they want something they can maintain and extend.
* I'm working with 200+ devs, many of them newer, and they don't want to use CLI tools. It's trivial for me to extend this new tool with a GUI.

I'm not saying these are great reasons, but that's the pushback.

in reply to Curtis "Ovid" Poe (he/him)

“Don’t want to use CLI tools”? Eww. But the GUI would still be a nice addition.
in reply to Curtis "Ovid" Poe (he/him)

Currently feeling some of this pain here. Our private equity overlords have declared we need to remove Perl from the stack, so we are currently rewriting 575k lines of Perl to Python… 😭
in reply to Curtis "Ovid" Poe (he/him)

@cromedome Out of interest, what sort of GUI do the command-line-adverse want / will they get? A menu item in VSCode or similar? A button in GitHub and/or their CI website? Something else?

I mean, I think far more people should have said “no, I want to use a proper GUI rather than basically CP/M or MS DOS” 20 years ago, rather than people deciding to carry on using dinosaurs like vi or emacs, but I’m concerned about how you automate this stuff.

in reply to Sam Kington

@skington @cromedome There weren't specific, beyond hyperventilating at the thought of the command line.

I could try to duplicate UX of Flyway (red-gate.com/products/flyway/), but at the core level, their database management is so poorly designed that I want to step back and rethink. Will have a play with interfaces later.

in reply to Curtis "Ovid" Poe (he/him)

you can always just upload prereleases, with an appropriate alpha-quality trove classifier
Unknown parent

mastodon - Link to source
Curtis "Ovid" Poe (he/him)

@randomgeek @glyph Looked into ruff, haven't adopted it, though.

And I've applied most of his suggestions to github.com/Ovid/sqlitch-v2

Now working on #mysql support.

Unknown parent

mastodon - Link to source
Curtis "Ovid" Poe (he/him)
@randomgeek Also, say "hi" to D for me. I'm so happy for both of you 😀