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

Project dead? #29965

Closed
cypheron opened this issue Sep 14, 2021 · 55 comments
Closed

Project dead? #29965

cypheron opened this issue Sep 14, 2021 · 55 comments
Labels

Comments

@cypheron
Copy link

cypheron commented Sep 14, 2021

Who is left maintaining still project? Even though there are more than 3,800 issues and almost 1k pull requests there hasn't been any commit for more than 2 months.

Also there has been no feedback on most of the proposed extractors by the community, for which I created an overview a while back. It would be nice to see at least a comment from the maintainers.

@dirkf
Copy link
Contributor

dirkf commented Sep 14, 2021

Supposing the current project owner and maintainers are not just on a summer break, or a death march project, it would have to be decided whether the project can attract enough support to continue with the same aims, either as-is, or in a fork, with new maintainers.

The yt-dlp project seems to be attracting most interest nowadays, but does not support Python 2, nor even Python < 3.6, which would seem to be the distinguishing feature between the two projects (there are quite few UI and other enhancements as well). Leading Linux distros that are still in extended support came with Python 2 and 3.5 as an option.

I would like to support a Python 2 platform (where the host is a set-top box for which Python 3.6+ may never be built), but it might be possible to do so by cherry-picking and adapting yt-dlp changes.

@dirkf
Copy link
Contributor

dirkf commented Sep 14, 2021

No doubt a fine work, even if the site support is limited compared with yt-dl, but there are good reasons why @rg3's choice of Python for yt-dl was successful and they are still valid.

For instance, the platform to which I referred was frozen before Go was created and has trouble with GCC beyond v4.5. Even if there is some Py3 code feature it can usually be compat-ed out to run in older versions.

@evilangelmd
Copy link

there are quite few UI and other enhancements as well

didn't knew cli program has UI :D

@dirkf
Copy link
Contributor

dirkf commented Sep 15, 2021

It's difficult to use a program with no UI, even if not a GUI! But the point was to contrast new command-line options, which may just be a different way to set the program's parameters, with internal changes like multi-threaded download.

@fastily
Copy link

fastily commented Sep 16, 2021

Wish I could sticky this somewhere. The (actively maintained) spiritual successor is yt-dlp

@ahm750
Copy link

ahm750 commented Sep 16, 2021

The problem with yt-dlp is that it's flagged as a virus by some anti-virus programs.

@nicolaasjan
Copy link

The problem with yt-dlp is that it's flagged as a virus by some anti-virus programs.

One false positive on Virustotal:
https://www.virustotal.com/gui/file/69f84c6a82af36d50af70368d924032712488974246b8c60020dd992c9d5551f

More in this pinned issue.

@rautamiekka
Copy link
Contributor

The problem with yt-dlp is that it's flagged as a virus by some anti-virus programs.

Don't blindly trust security softwares, the link to a pinned issue explains it.

@ahm750
Copy link

ahm750 commented Sep 16, 2021

I understand. The issue is that I've built a GUI on top of yt-dlp and some users have avoided installing it after their anti-virus flags it as a virus. I'll try making a custom build of pyinstaller and hope that it would minimize the false positives.

@mechalincoln
Copy link

The lead maintainer is @dstftw. I began to believe the theory that he passed away from COVID.

I just emailed him directly, so we'll see if we get a reply or not.

@dirkf
Copy link
Contributor

dirkf commented Sep 16, 2021

The problem with yt-dlp is that it's flagged as a virus by some anti-virus programs.

No, as above, the problem is that it doesn't take account of Python versions <3.6. There may be technical quibbles beyond that, but the project's definition doesn't meet the requirements of some users.

@7ngel
Copy link

7ngel commented Sep 16, 2021

Yep, no issues are ever fixed. Pretty ridiculous.

@ghost
Copy link

ghost commented Sep 17, 2021

Leading Linux distros that are still in extended support came with Python 2 and 3.5 as an option.

Which "leading Linux distros" are you talking about?

  • Ubuntu 18.04 LTS (support ends in 1 year, 6 months): Python 3.6.5
  • CentOS 7 (support ends in 2 years, 9 months): Python 3.6.8
  • Debian 10 (support ends in 9 months): Python 3.7.3

All of these are 3.6 or newer. And whether they include Python 2 or not is irrelevant if they include Python 3.

For embedded devices I have more sympathy, but on a regular x86 machine it should be easy enough to install a newer version of Python using pyenv if you're somehow stuck with an older unsupported distro.

Do note that Python 3.6 was released nearly 5 years ago. Python 3.5 has been EOL for 1 year, and Python 2.7 has been EOL for nearly 2 years. While it's true that youtube-dl is a very popular project, it simply becomes a maintenance burden to support EOL versions for which neither upstream nor distributions provide support anymore.

(Python 2 is technically still supported by older distros, but it's been long deprecated. In Debian 11 and Ubuntu 21.04 it is not installed by default and only included because certain packages still depend on it. It doesn't even come with pip anymore, which has also dropped support for Python 2.)

@triplesixman
Copy link

A good alternative is yt-dlp indeed. But it is very slow to run, which is a handicap for some types of use.

@mechalincoln
Copy link

I received a reply:


Sergey M.
6:22 AM (10 hours ago)
to me

Hello,

Currently I have no free time to spend on youtube-dl as I'm busy with work, ongoing renovation and other post-relocation stuff.

Best,
Sergey.

пт, 17 сент. 2021 г. в 03:19, JD

Hi. I've used youtube-dl for a long time, and I noticed that updates stopped a few months ago.

Is the project dead or are you unable to maintain it?

Just curious.

Thanks again.


@triplesixman
Copy link

triplesixman commented Sep 19, 2021

I received a reply:

Sergey M.
6:22 AM (10 hours ago)
to me

Hello,

Currently I have no free time to spend on youtube-dl as I'm busy with work, ongoing renovation and other post-relocation stuff.

Best,
Sergey.

пт, 17 сент. 2021 г. в 03:19, JD

Hi. I've used youtube-dl for a long time, and I noticed that updates stopped a few months ago.

Is the project dead or are you unable to maintain it?

Just curious.

Thanks again.

Is this a real answer? Because he never answered me for my part.

Because if the answer is true, it's amazing that only one person decides if the project should evolve, be updated etc. or not. Isn't it supposed to be a community platform? Why not allow several people to take over in these cases? What happens in case of a more serious problem? I find all this very strange.

@ahm750
Copy link

ahm750 commented Sep 19, 2021

I received a reply:

Sergey M.
6:22 AM (10 hours ago)
to me

Hello,

Currently I have no free time to spend on youtube-dl as I'm busy with work, ongoing renovation and other post-relocation stuff.

Best,
Sergey.

пт, 17 сент. 2021 г. в 03:19, JD

Hi. I've used youtube-dl for a long time, and I noticed that updates stopped a few months ago.

Is the project dead or are you unable to maintain it?

Just curious.

Thanks again.

Shouldn't he be adding a new maintainer while he's away?

@mechalincoln
Copy link

I received a reply:
Sergey M.
6:22 AM (10 hours ago)
to me
Hello,
Currently I have no free time to spend on youtube-dl as I'm busy with work, ongoing renovation and other post-relocation stuff.
Best,
Sergey.
пт, 17 сент. 2021 г. в 03:19, JD
Hi. I've used youtube-dl for a long time, and I noticed that updates stopped a few months ago.
Is the project dead or are you unable to maintain it?
Just curious.
Thanks again.

Is this a real answer? Because he never answered me for my part.

Because if the answer is true, it's amazing that only one person decides if the project should evolve, be updated etc. or not. Isn't it supposed to be a community platform? Why not allow several people to take over in these cases? What happens in case of a more serious problem? I find all this very strange.

That's what he emailed me, verbatim.

@ahm750
Copy link

ahm750 commented Sep 26, 2021

I received a reply:

Sergey M.
6:22 AM (10 hours ago)
to me

Hello,

Currently I have no free time to spend on youtube-dl as I'm busy with work, ongoing renovation and other post-relocation stuff.

Best,
Sergey.

пт, 17 сент. 2021 г. в 03:19, JD

Hi. I've used youtube-dl for a long time, and I noticed that updates stopped a few months ago.

Is the project dead or are you unable to maintain it?

Just curious.

Thanks again.

Could you ask him to add a new maintainer?

@mara004
Copy link

mara004 commented Oct 3, 2021

I would like to support a Python 2 platform

By all means, Python 2 is deprecated. There is no point at supporting it anymore.
Python >= 3.6 offers some powerful language features that are worth dropping support for older Python versions.

@dirkf
Copy link
Contributor

dirkf commented Oct 3, 2021

I would like to support a Python 2 platform

By all means, Python 2 is deprecated. There is no point at supporting it anymore. ...

There is, if your platform only supports Py2. Not everyone is running yt-dl on a stock PC and it may not be practical to change a platform just because Py3.6+ might be a slightly better language (and even if it were, why not just rewrite yt-dl in an even better language ...).

yt-dlp has taken the ball and run with it past Py3.6, so there's the place to post changes that need that language version.

Because if [Sergey's answer "I have no free time to spend on youtube-dl"] is true, it's amazing that only one person decides if the project should evolve, be updated etc. or not. Isn't it supposed to be a community platform? Why not allow several people to take over in these cases? What happens in case of a more serious problem? I find all this very strange.

Indeed. In the past it has been stated that the lack of competent candidates, or, at least, candidates acceptable to the active maintainer(s), prevented the appointment of additional maintainers. One might also observe that there were more developers in the past but AFAIK none of the top contributors shown by GitHub other than @dstftw and @remitamine contributed to the project since it was restored to GitHub.

However it is always open to any person or group who doesn't care for the project's management to fork the project. Presumably anyone who did so would want to provide for succession planning in the organisation of the fork's development. This is not easy, as illustrated by plenty of open-source projects.

@mara004
Copy link

mara004 commented Oct 4, 2021

There is, if your platform only supports Py2.

As far as I know, virtually all desktop or laptop systems around support Python 3. I haven't yet heard of a system that supports Python 2 only and not Python 3. Even if your distribution should for some reason not provide Python 3, you can still use the release binaries, a ppa, or build from source...
Moreover, Python 2 and its libraries don't receive security updates anymore, so you shouldn't use it in any case.

and it may not be practical to change a platform just because Py3.6+ might be a slightly better language

a) Python 3 provides lots of useful features and libraries that take less code, are more reliable and maintained/supported
b) Nowadays, more developers are used to these concepts than to ancient Python 2 idioms
c) Keeping compatibility with legacy Python versions involves unnecessary workaroundish code that makes the project harder to maintain

why not just rewrite yt-dl in an even better language ...)

No. You can't just rewrite a project as large as youtube-dl in a different language - that would take very long and be of absolutely no benefit to users.

Indeed. In the past it has been stated that the lack of competent candidates, or, at least, candidates acceptable to the active maintainer(s), prevented the appointment of additional maintainers.

I can understand the hesitancy of dstftw et al. about accepting new mainatiners. Youtube-dl is a very popular project so you need to be careful not to introduce regressions, or in the worst case scenario make malware out of it.
IMHO, you should respect that currently the maintainers have more important things to do. Be thankful for what they've done so far rather than quickly judging on their decisions although you have very little insights into the project's background.

@dirkf
Copy link
Contributor

dirkf commented Oct 4, 2021

There is, if your platform only supports Py2.

As far as I know, virtually all desktop or laptop systems around support Python 3. ...

Not all Python platforms are commodity PCs: a Python implementation might even be flashed into a device.

I made the point because I had a specific case in mind, actually one whose UI is provided by a web-server and telnet/ssh, no keyboard or display, but has just enough headroom for Python 2. As a TV set-top box and media player it's an ideal target for yt-dl.

As it happens, the security-supported Linux OS where I'm typing does this:

$ python --version
Python 2.7.17
$

Not that there isn't a nest of Py 3 versions as well, but that's the default.

and it may not be practical to change a platform just because Py3.6+ might be a slightly better language

...
c) Keeping compatibility with legacy Python versions involves unnecessary workaroundish code that makes the project harder to maintain

In fact, avoiding the "latest and greatest" features is a good rule for robust software.

why not just rewrite yt-dl in an even better language ...)

No. You can't just rewrite a project as large as youtube-dl in a different language - that would take very long and be of absolutely no benefit to users.

My point, really. A version of yt-dl that made extensive use of the latest Python features would have to be rewritten in order to run on a platform that only supports Python2.

I can understand the hesitancy of dstftw et al. about accepting new mainatiners. Youtube-dl is a very popular project so you need to be careful not to introduce regressions, or in the worst case scenario make malware out of it.

It's unfortunate that by some tragedy of the commons the popularity of the project seems to have overloaded all the qualified contributors to the point of withdrawal and yet did not generate candidates considered acceptable to support them.

@rofl0r
Copy link

rofl0r commented Nov 2, 2021

in the end, RIAA got what they wanted. certainly just a coincidence.

@minusf
Copy link
Contributor

minusf commented Nov 6, 2021

My issue is that Python 3 doesn't come bundled with macOS. So I can't just download the youtube-dl binary and run it on any Mac computer, I need to actually set up a separate Python 3 installation.

there has been a bundled python3 in macos for quite a while, and it's not even 3.6.*

% /usr/bin/python3
Python 3.8.9 (default, Aug  3 2021, 19:21:54)
[Clang 13.0.0 (clang-1300.0.29.3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> os.uname()
posix.uname_result(sysname='Darwin', nodename='macbook.local', release='20.6.0', 
version='Darwin Kernel Version 20.6.0: Tue Oct 12 18:33:38 PDT 2021;
root:xnu-7195.141.8~1/RELEASE_ARM64_T8101', machine='arm64')

i don't use it myself though, brew install python or even better brew install youtube-dl yt-dlp will take care of the python3 dependency

@Wowfunhappy
Copy link

Wowfunhappy commented Nov 6, 2021

Despite its presence in /usr/bin/, that copy of python3 isn't actually bundled with the OS. It's installed alongside xCode and/or the command line tools.

@minusf
Copy link
Contributor

minusf commented Nov 6, 2021

thanks for the correction. i have installed the command line tools so long ago, i considered it part of macos...

@ghost
Copy link

ghost commented Nov 6, 2021

yt-dlp fork is also problematic to run on Windows XP. There are still many retrofans using this OS. Officially, the latest Python for XP is 3.4, but Russian hackers ran patched 3.7 and yt-dlp in it.

Ubuntu LTS has been supported for 10 years, I still use 16.04. But of course it is easy to install newer Python 3 from PPA or to compile myself. I have 3.8 instead of default 3.5 and have no problem switching to fork.

All recent events suggest that this is the work of Google and I can even guess the reasons.

@ghost
Copy link

ghost commented Nov 6, 2021

The original youtube-dl specifically maintained compatibility with Windows XP because it used Python 3.4.4 built into the exe (and VS 2010 compiler). Because the developers were Russian (who love XP)? I don't understand why the new developers had to move to a newer version of python. Updates for updates.

@nicolaasjan
Copy link

yt-dlp fork is also problematic to run on Windows XP. There are still many retrofans using this OS. Officially, the latest Python for XP is 3.4, but Russian hackers ran patched 3.7 and yt-dlp in it.

Is it the one linked here?:
https://rsload.net/soft/manager/35393-yt-dlp.html
(Posted by DesweR (Oct 23, 2021 06:16 AM) Message # 9)

And do you know a link to the patched Python 3.7?
Then I can build myself. :)

@ghost
Copy link

ghost commented Nov 6, 2021

Python 3.7.1 + yt-dlp for Windows XP http://forum.ru-board.com/topic.cgi?forum=5&topic=49719&start=720#6
Direct link https://disk.yandex.ru/d/oygszhQilB1ZLg/youtube-dl
ffmpeg for Windows XP https://rwijnsma.home.xs4all.nl/files/ffmpeg/?C=M;O=D

Applications used:
http://retrosystemsrevival.blogspot.com/2021/01/python-371-for-windows-xp.html
https://msfn.org/board/topic/177972-python-371-for-windows-xp/
https://github.com/yt-dlp/yt-dlp/releases

You may need redist 2015-2019. Warning: never install redist 2015-2019 on XP. This will cause a significant increase in memory consumption in many applications. Also, the latest builds don't work on XP (installed, but then library error). If you install and then uninstall, it's the same thing. Microsoft's uninstaller doesn't remove dll's from c:\windows\system32 when uninstalling.
Use snapshots in VirtualBox to copy necessary dll's directly to application folder (not in system PATH).

If you want to compile patched Python 3.7.1 for fun, I don't think that's a good idea. Windows users don't like to compile from source (and it's hard, even on Windows 7+). Also, I think for the most part, binary patching and library swapping was used there. It's dirty. That's why binary is mostly common, but you can ask for the source.

@nicolaasjan
Copy link

Python 3.7.1 + yt-dlp for Windows XP http://forum.ru-board.com/topic.cgi?forum=5&topic=49719&start=720#6
Direct link https://disk.yandex.ru/d/oygszhQilB1ZLg/youtube-dl
ffmpeg for Windows XP https://rwijnsma.home.xs4all.nl/files/ffmpeg/?C=M;O=D

Thanks!
I knew already about rwijnsma's ffmpeg build b.t.w.
I already tried the yt-dlp from that Google Drive link and it worked. :)

If you want to compile patched Python 3.7.1 for fun, I don't think that's a good idea. Windows users don't like to compile from source (and it's hard, even on Windows 7+). Also, I think for the most part, binary patching and library swapping was used there. It's dirty. That's why binary is mostly common, but you can ask for the source.

No, I meant building yt-dlp with it.
But will the Python dependencies for yt-dlp install?

It's XP in a VM b.t.w.

@ghost
Copy link

ghost commented Nov 7, 2021

Do you mean these dependencies? https://github.com/yt-dlp/yt-dlp#dependencies
They are not present, but I hear pip works.

Run yt-dlp -v to check. At the moment I have in py version (running on linux):

[debug] Encodings: locale UTF-8, fs utf-8, out utf-8, pref UTF-8
[debug] yt-dlp version 2021.10.10 (zip)
[debug] Python version 3.8.3 (CPython 32bit) - Linux-4.4.0-140-generic-i686-with-glibc2.17
[debug] exe versions: ffmpeg 4.3.1, ffprobe 4.3.1, rtmpdump 2.4
[debug] Optional libraries: mutagen, sqlite

@nicolaasjan
Copy link

nicolaasjan commented Nov 7, 2021

Do you mean these dependencies? https://github.com/yt-dlp/yt-dlp#dependencies They are not present, but I hear pip works.

Run yt-dlp -v to check. At the moment I have in py version (running on linux):

[debug] Encodings: locale UTF-8, fs utf-8, out utf-8, pref UTF-8 [debug] yt-dlp version 2021.10.10 (zip)
[debug] Python version 3.8.3 (CPython 32bit) - Linux-4.4.0-140-generic-i686-with-glibc2.17
[debug] exe versions: ffmpeg 4.3.1, ffprobe 4.3.1, rtmpdump 2.4
[debug] Optional libraries: mutagen, sqlite

In Linux I have:
Optional libraries: Cryptodome, keyring, mutagen, sqlite, websockets

In my Windows XP VM the Russian yt-dlp only has sqlite...
And lazy extractors are not enabled, so it starts very slow.

The Windows requirements are mentioned in the build.yml file here:
https://github.com/yt-dlp/yt-dlp/blob/aeec0e44e243dc625c8ff19964a624188d43e84b/.github/workflows/build.yml#L228

I didn't succeed in getting Python 3.7 to work in the XP VM...

B.t.w., your yt-dlp version is out of date. ;)
https://github.com/yt-dlp/yt-dlp/releases/tag/2021.10.22

@ghost
Copy link

ghost commented Nov 12, 2021

your yt-dlp version is out of date

I sometimes even use old original youtube-dl if I need to limit youtube speed (60-70 kilobytes/sec). It still works.

@sebma
Copy link

sebma commented Nov 25, 2021

@mechalincoln

I received a reply:

Sergey M. 6:22 AM (10 hours ago) to me

Hello,

Currently I have no free time to spend on youtube-dl as I'm busy with work, ongoing renovation and other post-relocation stuff.

Best, Sergey.

пт, 17 сент. 2021 г. в 03:19, JD
...
Is the project dead OR are you unable to maintain it?

Sergey M.'s answer seems unclear, can you please send him an email to ask him one question at a time :

Can you please add a new maintainer ?

@michealespinola
Copy link

He wasn't the originator of the project. He needs to share being a maintainer if he isn't going to actually maintain it. This has gone on long enough.

@dirkf
Copy link
Contributor

dirkf commented Jan 29, 2022

Closed by #30568.

@dirkf dirkf closed this as completed Jan 29, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests