this post was submitted on 19 Mar 2025
28 points (100.0% liked)

Python

6882 readers
8 users here now

Welcome to the Python community on the programming.dev Lemmy instance!

πŸ“… Events

PastNovember 2023

October 2023

July 2023

August 2023

September 2023

🐍 Python project:
πŸ’“ Python Community:
✨ Python Ecosystem:
🌌 Fediverse
Communities
Projects
Feeds

founded 2 years ago
MODERATORS
 

I made this Python menu-driven CLI script for yt-dlp. It guides you through a series of menus to download content from a YouTube URL.

If anyone is interested, feedback would be greatly appreciated as only I have tested this so far, and I want to make sure it works for other people's systems.

If you encounter any issues or bugs, let me know so I can fix them!

Edit: I should mention: This is not a pipx package. That was never the intention developing this initially. I might make it a package in the future, but for now, it is just a project directory.

top 12 comments
sorted by: hot top controversial new old
[–] [email protected] 5 points 1 day ago

I like the thought behind this. I've considered something similar for yt-dlp. Thanks for putting it out there and keep it up!

[–] [email protected] 1 points 1 day ago

I use tartube already.

[–] [email protected] 3 points 2 days ago* (last edited 2 days ago) (1 children)

User friendly LOL!

If you encounter any issues or bugs, let me know so I can fix them!

You shoulda lead with that. I love the humor. Can't stop laughing,

The entire project is a bug LOL!

Where to start?

  1. There is no packaging at all

Start with a pyproject.toml and work from there.

  1. no tests

Everything is a bug until it's got test coverage.

  1. screenshots

In the .github folder?! That's gotta be a 1st

  1. no dev environment

Expecting pre-commit as well as isort, flask, black, and mypy

  1. print statements galore

Looked into requirements.txt expecting to find a console UI framework. There is none!

A pattern has emerged that many Python coders have spent not enough to no time learning packaging, dev toolchain, and CI/CD publishing. When asking folks to test your work they'll be expecting a published package, not a series of amateurish scripts and a bash install script.

Should write an advertisement

Please someone skilled at console UI and packaging please please please help in a paid position.

Can confidently say, you need help.

Not writing more features the OP is good at that. Just packaging and swapping out the prehistoric console UI with a modern console UI framework.

[–] [email protected] 6 points 2 days ago (1 children)

Dunking on noobs is not cool.

[–] [email protected] 1 points 1 day ago* (last edited 1 day ago)

You yourself are a victim

Having good intentions you tried and found out the hard way that in fact packaging does matter.

You were tricked.

I looked at it, recognized the flaming turd being thrown at the proverbial wall, and dodged.

That is our job when doing code reviews and offering advice. Be kind up to the point where being honest is unavoidable.

A series of scripts does not make a package. Have to put our collective foot down; follow Nancy Reagon's advice, Just say no!

This project cannot be helped. It needs a complete rewrite.

Having minimal expectations is not being mean to noobs. Not getting anywhere in the ballpark of minimal expectations is being mean to potential users ...

[–] [email protected] 3 points 2 days ago (3 children)

I tried to run it but it wouldn't on the version of python I have.

If you could bring yourself to use if .. elif .. etc instead of match then it could run it on much older versions of python.

[–] [email protected] 5 points 2 days ago (1 children)

but then they wouldn’t be using match

[–] [email protected] 2 points 2 days ago* (last edited 2 days ago)

Using match is virtue signaling that have no intention of creating a working package.

What's next on the list of crap could all live without?

[–] [email protected] 2 points 2 days ago

Why? It's not a package? There are no tests or anything else. It's held together with duct tape, hope, and good intentions. So of course it'll not work as intended.

[–] [email protected] 1 points 2 days ago (1 children)

What version of Python were you using?

[–] [email protected] 1 points 2 days ago (1 children)
[–] [email protected] 1 points 1 day ago

I'm testing different Python versions to see what the minimum is for yt-dlp-adv is. I know 3.10 is when they added match-case, so 3.9 isn't supported. Will update README with minimum working version after I'm done testing.