Update to v2.3.367
This commit is contained in:
parent
36dd493642
commit
7786428a78
33
CHANGES
33
CHANGES
@ -1,3 +1,36 @@
|
||||
v2.3.367 (12 Feb 2022)
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
MINOR NEW FEATURES
|
||||
- MS Windows users have been reporting that FFmpeg cannot be installed any
|
||||
more; this release attempts to fix that issue (but I can't be sure that the
|
||||
fix will work)
|
||||
- In order to cope with yt-dlp spam, added some new ignorable warnings (see
|
||||
Edit > System preferences... > Windows > Errors/Warnings)
|
||||
- In Edit > System preferences > Files > URLs, there is a new button for
|
||||
opening a URL in your system's web browser. Also changed the layout of that
|
||||
tab to make it a little easier to understand
|
||||
|
||||
MAJOR FIXES
|
||||
- When the Tartube database was corrupted, on startup Tartube was unable to
|
||||
create temporary directories, so the application closes even before the
|
||||
main window is created. Fixed that, and also fixed the failure to show a
|
||||
dialogue window when a lock can't be placed on the database file
|
||||
- Fixed various issues when exporting/importing Tartube's database
|
||||
- Fixed inability to rename channels/playlists/folders under certain
|
||||
circumstances
|
||||
|
||||
MINOR FIXES
|
||||
- Fixed minor typos in various edit windows
|
||||
- When the downloader is yt-dlp and the user selects a custom executable,
|
||||
Tartube installs youtube-dl instead. Fixed (Git #299)
|
||||
- In the same situation (on MS Windows only), Tartube tries to execute an .exe
|
||||
file as if it were a Python script. Fixed (Git #299)
|
||||
- On MS Windows, user could not set an external download path for a channel or
|
||||
playlist. Fixed (Git #329)
|
||||
- Fixed inability to load databases from Tartrubr v2.2.007 (Git #356)
|
||||
- Valid URLs like "yahho.com" were not accepted as valid. Fixed
|
||||
|
||||
v2.3.332 (8 Jul 2021)
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
|
12
README.rst
12
README.rst
@ -59,14 +59,14 @@ For a full list of new features and fixes, see `recent changes <CHANGES>`__.
|
||||
3 Downloads
|
||||
===========
|
||||
|
||||
Latest version: **v2.3.332 (8 Aug 2021)**
|
||||
Latest version: **v2.3.367 (12 Feb 2022)**
|
||||
|
||||
Official packages (also available from the `Github release page <https://github.com/axcore/tartube/releases>`__):
|
||||
|
||||
- `MS Windows (64-bit) installer <https://sourceforge.net/projects/tartube/files/v2.3.332/install-tartube-2.3.332-64bit.exe/download>`__ and `portable edition <https://sourceforge.net/projects/tartube/files/v2.3.332/tartube-2.3.332-64bit-portable.zip/download>`__ from Sourceforge
|
||||
- `MS Windows (32-bit) installer <https://sourceforge.net/projects/tartube/files/v2.3.332/install-tartube-2.3.332-32bit.exe/download>`__ and `portable edition <https://sourceforge.net/projects/tartube/files/v2.3.332/tartube-2.3.332-32bit-portable/download>`__ from Sourceforge (but see `7.23 Doesn't work on 32-bit Windows`_)
|
||||
- `DEB package (for Debian-based distros, e.g. Ubuntu, Linux Mint) <https://sourceforge.net/projects/tartube/files/v2.3.332/python3-tartube_2.3.332.deb/download>`__ from Sourceforge
|
||||
- `RPM package (for RHEL-based distros, e.g. Fedora) <https://sourceforge.net/projects/tartube/files/v2.3.332/tartube-2.3.332.rpm/download>`__ from Sourceforge
|
||||
- `MS Windows (64-bit) installer <https://sourceforge.net/projects/tartube/files/v2.3.367/install-tartube-2.3.367-64bit.exe/download>`__ and `portable edition <https://sourceforge.net/projects/tartube/files/v2.3.367/tartube-2.3.367-64bit-portable.zip/download>`__ from Sourceforge
|
||||
- `MS Windows (32-bit) installer <https://sourceforge.net/projects/tartube/files/v2.3.367/install-tartube-2.3.367-32bit.exe/download>`__ and `portable edition <https://sourceforge.net/projects/tartube/files/v2.3.367/tartube-2.3.367-32bit-portable/download>`__ from Sourceforge (but see `7.23 Doesn't work on 32-bit Windows`_)
|
||||
- `DEB package (for Debian-based distros, e.g. Ubuntu, Linux Mint) <https://sourceforge.net/projects/tartube/files/v2.3.367/python3-tartube_2.3.367.deb/download>`__ from Sourceforge
|
||||
- `RPM package (for RHEL-based distros, e.g. Fedora) <https://sourceforge.net/projects/tartube/files/v2.3.367/tartube-2.3.367.rpm/download>`__ from Sourceforge
|
||||
|
||||
There are also some DEB/RPM packages marked STRICT. In these packages, updates to **youtube-dl** from within **Tartube** have been disabled. If **Tartube** is uploaded to a repository with lots of rules, such as the official Debian repository, then you should probably use the STRICT packages.
|
||||
|
||||
@ -170,6 +170,8 @@ If you want to perform a manual installation, you can follow this procedure, whi
|
||||
5.2 Installation - MacOS
|
||||
------------------------
|
||||
|
||||
**Several users have reported problems installing Tartube on MacOS. The authors do not use MacOS, so we don't know how to fix these problems. Apologies in advance!**
|
||||
|
||||
MacOS users should use the following procedure (with thanks to JeremyShih):
|
||||
|
||||
- Install `Python 3 <https://www.python.org/downloads>`__ by downloading an installer, or with homebrew:
|
||||
|
@ -7,7 +7,7 @@ You want to contribute a translation to this project? Well, that's just great!
|
||||
The simple way
|
||||
--------------
|
||||
|
||||
1. Get a copy of the file `../tartube/po/messages.pot <tartube/po/messages.pot>`__
|
||||
1. Get a copy of the file `../tartube/po/messages.pot <tartube/po/messages.pot>`__
|
||||
2. Open it in a text editor
|
||||
3. Read the notes below
|
||||
4. Translate everything
|
||||
@ -33,7 +33,7 @@ Header
|
||||
======
|
||||
|
||||
The lines at the top must be changed from this::
|
||||
|
||||
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
@ -41,7 +41,7 @@ The lines at the top must be changed from this::
|
||||
...to this::
|
||||
|
||||
# Tartube
|
||||
# Copyright (C) 2019-2021 A S Lewis
|
||||
# Copyright (C) 2019-2022 A S Lewis
|
||||
# This file is distributed under the same license as the Tartube package.
|
||||
|
||||
The Project-Id-Version must be changed from this::
|
||||
@ -106,7 +106,7 @@ Some pieces of text are spread across several lines, like this::
|
||||
|
||||
msgid ""
|
||||
"The video file is missing from Tartube's data folder (try downloading the "
|
||||
"video again!)"
|
||||
"video again!)"
|
||||
msgstr ""
|
||||
|
||||
The two strings are added to each other, producing a single string. You can do the same, if you want. (It doesn't matter how many strings you use).
|
||||
@ -120,7 +120,7 @@ Multiple strings are combined without extra space characters. You should add the
|
||||
"¡No puedo usar "
|
||||
"YouTube "
|
||||
"porque no hablo inglés!"
|
||||
|
||||
|
||||
Please preserve capitalisation and punctuation::
|
||||
|
||||
msgid "Help!"
|
||||
@ -128,10 +128,10 @@ Please preserve capitalisation and punctuation::
|
||||
|
||||
msgid "HELP!"
|
||||
msgstr "¡AYUDA!"
|
||||
|
||||
|
||||
msgid "help!"
|
||||
msgstr "¡ayuda!"
|
||||
|
||||
|
||||
One exception to this rule is underline/underscore characters. These denote keyboard shortcuts. Don't add the underline/underscore character to your translation::
|
||||
|
||||
msgid "_Channel"
|
||||
@ -164,7 +164,7 @@ Some strings contain {0}, {1}, {2} and so on. These are substituted for somethin
|
||||
Your translation must include the literal {0}, {1}, {2} and so on.
|
||||
|
||||
msgstr "blah blah blah {0} blah blah {1} blah blah"
|
||||
|
||||
|
||||
If your translation uses a different word order, then treat the substrings like a word.
|
||||
|
||||
msgstr "Give to the {1} the {0}, please"
|
||||
@ -177,7 +177,7 @@ Earlier version of Tartube used *directory* on Linux systems, and *folder* on MS
|
||||
Downloads
|
||||
=========
|
||||
|
||||
You have probably noticed two buttons in Tartube's main window: **Check all** and **Download all**.
|
||||
You have probably noticed two buttons in Tartube's main window: **Check all** and **Download all**.
|
||||
|
||||
The first one fetches a list of videos from websites, but doesn't download the videos. The second one fetches a list of videos from websites AND downloads the videos.
|
||||
|
||||
@ -186,7 +186,7 @@ Throughout **messages.pot**, the word *check* is used with this meaning. You can
|
||||
Operations
|
||||
==========
|
||||
|
||||
Throughout **messages.pot**, the word *operation* has a fixed meaning. When Tartube is busy doing something, many buttons don't work (are greyed out).
|
||||
Throughout **messages.pot**, the word *operation* has a fixed meaning. When Tartube is busy doing something, many buttons don't work (are greyed out).
|
||||
|
||||
For example, click the **Download all** button, and it is greyed out until the downloads are finished.
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,6 +1,6 @@
|
||||
# Tartube v2.3.358 installer script for MS Windows
|
||||
# Tartube v2.3.367 installer script for MS Windows
|
||||
#
|
||||
# Copyright (C) 2019-2021 A S Lewis
|
||||
# Copyright (C) 2019-2022 A S Lewis
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
@ -249,7 +249,7 @@
|
||||
|
||||
;Name and file
|
||||
Name "Tartube"
|
||||
OutFile "install-tartube-2.3.358-32bit.exe"
|
||||
OutFile "install-tartube-2.3.367-32bit.exe"
|
||||
|
||||
;Default installation folder
|
||||
InstallDir "$LOCALAPPDATA\Tartube"
|
||||
@ -352,7 +352,7 @@ Section "Tartube" SecClient
|
||||
# "Publisher" "A S Lewis"
|
||||
# WriteRegStr HKLM \
|
||||
# "Software\Microsoft\Windows\CurrentVersion\Uninstall\Tartube" \
|
||||
# "DisplayVersion" "2.3.358"
|
||||
# "DisplayVersion" "2.3.367"
|
||||
|
||||
# Create uninstaller
|
||||
WriteUninstaller "$INSTDIR\Uninstall.exe"
|
||||
|
@ -1,6 +1,6 @@
|
||||
# Tartube v2.3.358 installer script for MS Windows
|
||||
# Tartube v2.3.367 installer script for MS Windows
|
||||
#
|
||||
# Copyright (C) 2019-2021 A S Lewis
|
||||
# Copyright (C) 2019-2022 A S Lewis
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
@ -249,7 +249,7 @@
|
||||
|
||||
;Name and file
|
||||
Name "Tartube"
|
||||
OutFile "install-tartube-2.3.358-64bit.exe"
|
||||
OutFile "install-tartube-2.3.367-64bit.exe"
|
||||
|
||||
;Default installation folder
|
||||
InstallDir "$LOCALAPPDATA\Tartube"
|
||||
@ -352,7 +352,7 @@ Section "Tartube" SecClient
|
||||
# "Publisher" "A S Lewis"
|
||||
# WriteRegStr HKLM \
|
||||
# "Software\Microsoft\Windows\CurrentVersion\Uninstall\Tartube" \
|
||||
# "DisplayVersion" "2.3.358"
|
||||
# "DisplayVersion" "2.3.367"
|
||||
|
||||
# Create uninstaller
|
||||
WriteUninstaller "$INSTDIR\Uninstall.exe"
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Copyright (C) 2019-2021 A S Lewis
|
||||
# Copyright (C) 2019-2022 A S Lewis
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
@ -42,11 +42,11 @@ import mainapp
|
||||
|
||||
# 'Global' variables
|
||||
__packagename__ = 'tartube'
|
||||
__version__ = '2.3.358'
|
||||
__date__ = '1 Dec 2021'
|
||||
__copyright__ = 'Copyright \xa9 2019-2021 A S Lewis'
|
||||
__version__ = '2.3.367'
|
||||
__date__ = '12 Feb 2022'
|
||||
__copyright__ = 'Copyright \xa9 2019-2022 A S Lewis'
|
||||
__license__ = """
|
||||
Copyright \xa9 2019-2021 A S Lewis.
|
||||
Copyright \xa9 2019-2022 A S Lewis.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify it under
|
||||
the terms of the GNU General Public License as published by the Free Software
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Copyright (C) 2019-2021 A S Lewis
|
||||
# Copyright (C) 2019-2022 A S Lewis
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
@ -42,11 +42,11 @@ import mainapp
|
||||
|
||||
# 'Global' variables
|
||||
__packagename__ = 'tartube'
|
||||
__version__ = '2.3.358'
|
||||
__date__ = '1 Dec 2021'
|
||||
__copyright__ = 'Copyright \xa9 2019-2021 A S Lewis'
|
||||
__version__ = '2.3.367'
|
||||
__date__ = '12 Feb 2022'
|
||||
__copyright__ = 'Copyright \xa9 2019-2022 A S Lewis'
|
||||
__license__ = """
|
||||
Copyright \xa9 2019-2021 A S Lewis.
|
||||
Copyright \xa9 2019-2022 A S Lewis.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify it under
|
||||
the terms of the GNU General Public License as published by the Free Software
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Copyright (C) 2019-2021 A S Lewis
|
||||
# Copyright (C) 2019-2022 A S Lewis
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
@ -42,11 +42,11 @@ import mainapp
|
||||
|
||||
# 'Global' variables
|
||||
__packagename__ = 'tartube'
|
||||
__version__ = '2.3.358'
|
||||
__date__ = '1 Dec 2021'
|
||||
__copyright__ = 'Copyright \xa9 2019-2021 A S Lewis'
|
||||
__version__ = '2.3.367'
|
||||
__date__ = '12 Feb 2022'
|
||||
__copyright__ = 'Copyright \xa9 2019-2022 A S Lewis'
|
||||
__license__ = """
|
||||
Copyright \xa9 2019-2021 A S Lewis.
|
||||
Copyright \xa9 2019-2022 A S Lewis.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify it under
|
||||
the terms of the GNU General Public License as published by the Free Software
|
||||
|
@ -1,5 +1,5 @@
|
||||
Files: tartube/*
|
||||
Copyright: 2019-2021 A S Lewis
|
||||
Copyright: 2019-2022 A S Lewis
|
||||
License: GPL-3+
|
||||
|
||||
Files: icons/*
|
||||
|
@ -1,4 +1,4 @@
|
||||
.TH man 1 "1 Dec 2021" "2.3.358" "tartube man page"
|
||||
.TH man 1 "12 Feb 2022" "2.3.367" "tartube man page"
|
||||
.SH NAME
|
||||
tartube \- GUI front-end for youtube-dl
|
||||
.SH SYNOPSIS
|
||||
|
@ -1,6 +1,6 @@
|
||||
[Desktop Entry]
|
||||
Name=Tartube
|
||||
Version=2.3.358
|
||||
Version=2.3.367
|
||||
Exec=tartube
|
||||
Icon=tartube
|
||||
Type=Application
|
||||
|
4
setup.py
4
setup.py
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Copyright (C) 2019-2021 A S Lewis
|
||||
# Copyright (C) 2019-2022 A S Lewis
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
@ -182,7 +182,7 @@ for path in glob.glob('sounds/*'):
|
||||
# Setup
|
||||
setuptools.setup(
|
||||
name='tartube',
|
||||
version='2.3.358',
|
||||
version='2.3.367',
|
||||
description='GUI front-end for youtube-dl',
|
||||
long_description=long_description,
|
||||
long_description_content_type='text/plain',
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Copyright (C) 2019-2021 A S Lewis
|
||||
# Copyright (C) 2019-2022 A S Lewis
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Copyright (C) 2019-2021 A S Lewis
|
||||
# Copyright (C) 2019-2022 A S Lewis
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Copyright (C) 2019-2021 A S Lewis
|
||||
# Copyright (C) 2019-2022 A S Lewis
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Copyright (C) 2019-2021 A S Lewis
|
||||
# Copyright (C) 2019-2022 A S Lewis
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Copyright (C) 2019-2021 A S Lewis
|
||||
# Copyright (C) 2019-2022 A S Lewis
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Copyright (C) 2019-2021 A S Lewis
|
||||
# Copyright (C) 2019-2022 A S Lewis
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Copyright (C) 2019-2021 A S Lewis
|
||||
# Copyright (C) 2019-2022 A S Lewis
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Copyright (C) 2019-2021 A S Lewis
|
||||
# Copyright (C) 2019-2022 A S Lewis
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Copyright (C) 2019-2021 A S Lewis
|
||||
# Copyright (C) 2019-2022 A S Lewis
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Copyright (C) 2019-2021 A S Lewis
|
||||
# Copyright (C) 2019-2022 A S Lewis
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
@ -29570,6 +29570,7 @@ class SetDestinationDialogue(Gtk.Dialog):
|
||||
entry = Gtk.Entry()
|
||||
grid.attach(entry, 0, 8, grid_width, 1)
|
||||
entry.set_editable(False)
|
||||
entry.set_can_focus(False)
|
||||
if media_data_obj.external_dir is not None:
|
||||
entry.set_text(media_data_obj.external_dir)
|
||||
elif prev_external_dir is not None:
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Copyright (C) 2019-2021 A S Lewis
|
||||
# Copyright (C) 2019-2022 A S Lewis
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Copyright (C) 2019-2021 A S Lewis
|
||||
# Copyright (C) 2019-2022 A S Lewis
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Copyright (C) 2019-2021 A S Lewis
|
||||
# Copyright (C) 2019-2022 A S Lewis
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Copyright (C) 2019-2021 A S Lewis
|
||||
# Copyright (C) 2019-2022 A S Lewis
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Copyright (C) 2019-2021 A S Lewis
|
||||
# Copyright (C) 2019-2022 A S Lewis
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
@ -42,11 +42,11 @@ import mainapp
|
||||
|
||||
# 'Global' variables
|
||||
__packagename__ = 'tartube'
|
||||
__version__ = '2.3.358'
|
||||
__date__ = '1 Dec 2021'
|
||||
__copyright__ = 'Copyright \xa9 2019-2021 A S Lewis'
|
||||
__version__ = '2.3.367'
|
||||
__date__ = '12 Feb 2022'
|
||||
__copyright__ = 'Copyright \xa9 2019-2022 A S Lewis'
|
||||
__license__ = """
|
||||
Copyright \xa9 2019-2021 A S Lewis.
|
||||
Copyright \xa9 2019-2022 A S Lewis.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify it under
|
||||
the terms of the GNU General Public License as published by the Free Software
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Copyright (C) 2019-2021 A S Lewis
|
||||
# Copyright (C) 2019-2022 A S Lewis
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Copyright (C) 2019-2021 A S Lewis
|
||||
# Copyright (C) 2019-2022 A S Lewis
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Copyright (C) 2019-2021 A S Lewis
|
||||
# Copyright (C) 2019-2022 A S Lewis
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
@ -37,6 +37,7 @@ import shutil
|
||||
import subprocess
|
||||
import sys
|
||||
import time
|
||||
from urllib.parse import urlparse, urljoin
|
||||
|
||||
|
||||
# Import our modules
|
||||
@ -268,19 +269,23 @@ def check_url(url):
|
||||
|
||||
"""
|
||||
|
||||
prepared_request = requests.models.PreparedRequest()
|
||||
try:
|
||||
prepared_request.prepare_url(url, None)
|
||||
# Based on various methods suggested by
|
||||
# https://stackoverflow.com/questions/25259134/
|
||||
# how-can-i-check-whether-a-url-is-valid-using-urlparse
|
||||
|
||||
try:
|
||||
# Add a scheme, if the specified URL doesn't provide one
|
||||
if not re.match(r'^[a-zA-Z]+://', url):
|
||||
url = 'http://' + url
|
||||
|
||||
final_url = urlparse(urljoin(url, '/'))
|
||||
is_valid = (
|
||||
all([final_url.scheme, final_url.netloc, final_url.path])
|
||||
and len(final_url.netloc.split(".")) > 1
|
||||
)
|
||||
|
||||
return is_valid
|
||||
|
||||
# The requests module allows a lot of URLs that are definitely not of
|
||||
# interest to us
|
||||
# This filter seems to catch most of the gibberish (although it's not
|
||||
# perfect)
|
||||
if re.search('^\S+\.\S', url) \
|
||||
or re.search('localhost', url):
|
||||
return True
|
||||
else:
|
||||
return False
|
||||
except:
|
||||
return False
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Copyright (C) 2019-2021 A S Lewis
|
||||
# Copyright (C) 2019-2022 A S Lewis
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
|
Loading…
x
Reference in New Issue
Block a user