v2.4.412 (31 Jul 2023)
-------------------------------------------------------------------------------

MINOR NEW FEATURES
- Added 'stop download' conditions for each individual scheduled download (in
    the scheduled download's edit window, click the 'Stop' tab). These
    conditions, if enabled, override the global conditions visible in
    Edit > System preferences... > Operations > Stop (Git #563)
- In the Classic Mode tab, when one-click downloads were enabled, after adding
    a duplicate URL to the box at the top of the tab, the URL was not
    downloaded. Worse still, when the user tried to manually remove the
    duplicate URL, Tartube crashed. Fixed (#566)
- System commands displayed in the Output tab, terminal window and/or logs
    now include quotes "..." around arguments containing whitespace, so the
    commands can be copy-pasted elsewhere (for example, into a new terminal
    window). This issue only affects the way commands are displayed; the actual
    system command sent to the system has not changed (Git #576)

MAJOR FIXES
- Initial fix for an error generated by MS Windows, when writing yt-dlp to a
    logfile (Git #557)
- Fixed python key error on startup (Git #558) and a python index error for an
    unknown video URL (Git #564)
- Fixed drag-and-drop error when dragging from the Errors/Warnings tab on MS
    Windows. Also added a button in that tab to copy the selected lines to the
    system clipboard (#559)
- In each Video's properties window, Tartube was in some situation unable to
    display video comments. Fixed (Git #565)
- Dragging a video from the 'Missing Videos' folder to another folder created
    a new video in Tartube's database. Fixed (Git #561)
- Fixed an error caused when trying to create a new profile, due to a typo in
    the code

MINOR FIXES
- When counting the number of videos in the 'Missing Videos' folder, Tartube
    counted each video three times. This generated errors when doing a database
    integrity check. Fixed (#561)
- In the README, updated the MacOS installation guides, following advice from
    a user (Git #571)
- Reduced the ridiculously wide width of the 'Database check complete' window

v2.4.386 (8 Jun 2023)
-------------------------------------------------------------------------------

MINOR NEW FEATURES
- Added a new setting, enabled by default, to ignore 'this channel is not live'
    errors on Twitch. To disable it, click Edit > System preferences... >
    Operations > Ignore, and de-select the button 'Ignore The channel is not
    currently live'. Thanks to Lux-Hue for the patch (Git #540, #541)

MINOR FIXES
- In the preferences window, fixed a few buttons and widgets that were broken
    after the introduction of simple/advanced display modes in the previous
    release
- Fixed an error that sometimes occurs when using alternative download limits
- Fixed bad handling of yt-dlp's --reject-title option, when the argument
    contains whitespace (Git #543)
- When matching video names while ignoring the last N characters, an exception
    was thrown. Fixed (Git #557)
- Fixed a minor typo in the preferences window, fuund > found
- YouTube messages such as 'Premieres in 6 hours', which are interpreted as
    an error/warning by yt-dlp, are no longer displayed in Tartube's Errors/
    Warnings tab, nor added to the database video's error/warning log

MINOR NEW FEATURES
- In the preferences window, tweaked the layout of the Output > Download log
    tab to reduce confusion
- Tweaked the dialogue window 'Ran out of input', seen when trying to load a
    corrupted database file, to add additional instructions (Git #545)
- Tweaked the dialogue window 'Failed to load the config file (cannot be read
    by this version)' to add additional instructions
- In the README, the MacOS installation guides have now been tested by the
    authors, and are confirmed to be working

v2.4.370 (13 Apr 2023)
-------------------------------------------------------------------------------

MAJOR NEW FEATURES
- Added (simplified) Chinese translation. Thanks to archblue
- Tartube's handling of video clips and video slices has been completely
    rewritten, adding many new capabilities, and fixing some bugs. Clips and
    sliced videos can now be created in both the Videos tab and the Classic
    Mode tab. Support for yt-dlp's own clipping/slicing capabilities has been
    added. For more information on the new features, see the README
    (Git #523)
- You can now download videos, one at a time, specifying the name of each
    downloaded file. This name overrides the name created by download options;
    the new feature should be more convenient than updating download options
    for each video you want to download. In the Videos tab, right-click a video
    and select Special > Download with name... (Git #520)
- The system preferences window (Edit > System preferences...) now hides some
    tabs and settings; they are revealed when you click the 'Show advanced
    preferences' button. The behaviour is now exactly like the behaviour of the
    download options and FFmpeg options windows

MINOR NEW FEATURES
- Drag-and-drop from Tartube's Errors/Warnings tab into another application
    (such as a text editor) has been improved, so that the data transferred
    can be customised (as is already the case for drag-and-drop from other
    parts of Tartube's main window). To customise the settings, click
    Edit > System preferences... > Windows > Drag
- Output generated by youtube-dl can now be written to a logfile, ytdl-log.log
    (as well as to the Output tab and/or terminal window). This feature is
    disabled by default; to enable it, see the settings in Edit >
    System preferences ... > Output > Downloader log
- In the box at the bottom of the Classic Mode tab, you can now right-click a
    line and select 'Re-insert URL above', which will move the URL back to the
    box at the top of the tab (Git #532)
- In properties windows for videos, channels, playlists and folders, the
    'Listed as' box is now editable. The text of this box is the text visible
    in the Videos tab; changing it does not change the names of any files on
    your filesystem. (The so-called nickname could already be changed in popup
    menus.) (Git #520)
- Tweaked the American English 'translation' file to remove a load of pesky
    British spellings

MAJOR FIXES
- When text containing URLs is copy/pasted into some boxes (for example, the
    'Add new videos' dialogue window), Tartube did not cope well with multiple
    URLs on the same line, or a valid URL followed by other text. Updated the
    code to handle these situations better (Git #517)
- When the user's system locale is en_MY (or any other Anglophone locale,
    besides en_GB and en_US), Tartube mishandles the locale, generating python
    errors. Fixed (Git #518)
- Fixed python errors generated when deleting multiple videos in a playlist
    (Git #521)
- Tartube should be able to respond to a livestream that has just started
    broadcasting (for example, by playing an audio alarm, or by starting to
    download it). This did not work in all possible situations; fixed
    (Git #536)
- Fixed error in the installation file (setup.py) that installed sound files
    to the wrong location, rendering them unavailable (Git #529)

MINOR FIXES
- The download statistics visible in the Progress tab (and added in the
    previous release) are now also visible in the 'Download operation complete'
    dialogue (Git #516)
- When creating a playlist inside a folder, which was itself inside a folder,
    the playlist was added to the top level of the tree instead. Fixed
    (Git #522)

v2.4.260 (2 Mar 2023)
-------------------------------------------------------------------------------

MAJOR FIXES
- The previous version added code to intercept an unresolved Gtk issue, which
    the user will see as a message in the Errors/Warnings tab,
    '#271: Cannot remove row in Progress List (row does not exist)'. The new
    code itself caused a crash, when activated. The crash is fixed, the Gtk
    issue remains unresolved
- During a download, error and warnings messages which could not be attached to
    a particular video, and which were therefore attached to the parent channel
    or playlist, were not visible in the Errors/Warnings tab. This bug has been
    present since v2.3.471, so you may notice a dramatic increase in the number
    of errors/warnings visible in the tab

v2.4.255 (1 Mar 2023)
-------------------------------------------------------------------------------

IMPORTANT INFORMATION
- youtube-dl is now classed as 'not recommended for most users'. Note that, as
    of February 2023, youtube-dl can no longer download any YouTube video (but
    other video websites might still work)
- Tartube's 'portable' installer (for MS Windows) is not working as intended,
    due to an unresolved Python issue. You cannot move the installation folder
    from one location to another, after you have used it to install yt-dlp
    and/or FFmpeg. As a workaround, you can place multiple copies of the
    original 'portable' installer on your filesystem; for each copy, you should
    install yt-dlp and FFmpeg separately. (Each copy can still share the same
    video download folder.)

MAJOR NEW FEATURES
- While checking/downloading videos, the Progress tab now shows the average
    download speed, total disk space consumed, and the total number of
    checked/downloaded videos

MINOR NEW FEATURES
- In the Progress tab and Classic Mode tab, the width of columns can be
    adjusted. For the benefit of users with very large monitors, it's now
    possible for Tartube to remember the adjusted widths of some columns which
    tend to contain a lot of text (but not those which contain very little
    text). To enable the setting, select Edit > System preferences... >
    Windows > Main window > In the Progress/Classic Mode tabs, remember the
    width of (some) columns (Git 509)
- In the Errors/Warnings tab, in multi-line error messages, empty lines are
    now ignored (leaving just the lines that actually contain visible text)
- In the Progress tab, in the bottom half of the window, you can now right-
    click a video and select the new 'Show video location' option
- Enlarged and updated the screenshots in the tutorial (Help >
    Show tutorial...) so the detail is much easier to see
- Added numerous translator's notes throughout the code; these are visible to
    anyone working on a translation (such as users of weblate.org)
- yt-dlp sometimes downloads videos from VK, whose file extension is set to
    .unknown_video instead of .mp4. As temporary mitigation for this problem,
    you can now auto-convert those videos (Operations > Tidy up files >
    convert '.unknown_video' file extensions to .mp4), and then update
    Tartube's database (Operations > Refresh database...) (Git #472)

MAJOR FIXES
- Fixed auto-detection of yt-dlp installation location, when it has been
    installed from PyPI. This issue did not affect MS Windows users
- The Classic Mode tab was unable to download videos as .m4a files, fixed
    (Git #506)
- In the Progress tab, the column showing the number of videos downloads (e.g.
    5/14) was not working again, due to another change in yt-dlp's behaviour.
    Fixed it again (Git #504)
- Fixed problems when looking for livestreams from websites whose metadata
    doesn't specify an 'is_live' field
- Fixed failure to load a Tartube config file from v.2.3.110 (Git #510)

MINOR FIXES
- The tutorial (Help > Show tutorial...) was missing its second page. Restored
    it
- Fixed incorrect version format in desktop file (Git #496)
- Fixed rare failure to load database, because of change to its structure in
    v2.4.213 (Git #498)
- On MS Windows only, when opening the MSYS2 terminal from Tartube's menu,
    the dialogue window, when closed by the user, caused the terminal window
    itself to be hidden behind the main window. Fixed

v2.4.221 (9 Jan 2023)
-------------------------------------------------------------------------------

MAJOR NEW FEATURES
- Added complete French translation and partial Turkish translation. Thanks to
    sydney and PUFF1N
- In the toolbar at the bottom of the Videos tab, added the ability to reverse
    sort and to sort by numbers in each video's title (for example, so that
    'Alan's video 2' can appear before 'My video 1'; so-called 'natural'
    sorting). Sort settings are now stored in Tartube's database, not in its
    config file (so Tartube will remember which databases are currently reverse
    sorted, and which are not, for example) (Git #477)

MINOR NEW FEATURES
- Handling of locales has been overhauled. Tartube will still switch to your
    system's locale automatically (when translations are available for it) but,
    if you prefer, you can force Tartube to use any of the available
    translations. To do this, open Edit > System preferences (Git #471)
- In the Progress/Classic Mode tabs, while checking/downloading videos,
    improved the format of the column which usually displays '6/9' (meaning 6
    out of 9 videos downloaded). In some situations, it displayed information
    whose meaning was not clear (Git #474)
- In the Progress/Classic Mode tabs, in the popup menus, enabled the 'Stop
    after this video' option for videos that haven't started downloading yet
    (Git #481)
- Added the yt-dlp option '--abort-on-unavailable-fragment' to Tartube's
    download options windows (Git #475)
- Added a few new pages to the tutorial (Help > Show tutorial...). In Tartube's
    setup window, added some emphasis to the button that opens the tutorial,
    so that more new users notice it
- In the toolbar at the top of Tartube's main window, added new buttons to
    open preferences and download options
- Updated the imported XDG code by Scott Stevenson to v5.1.1
- Improved the way users start custom downloads, for example by clicking the
    'Custom download all' button optionally visible in the bottom-left corner
    of the Videos tab. Now, if only the standard "general" custom download
    exists, that is the custom download that starts. If additional custom
    downloads exist, the user is prompted to choose one. This replaces the old
    system in which two buttons were visible. Popup menus have been modified in
    the same way, but the main menu is unaffected
- Videos are displayed in the Videos tab in a variety of styles (including
    lists and grids). Users could already cycle through the styles using the
    button in the main toolbar, but now it's possible to select one directly
    through the main menu (Media > Switch between views) (Git #487)

MAJOR FIXES
- When the 'Add videos to the Missing folder' setting is enabled, downloading a
    channel caused all of the channel's videos to be added to that folder.
    Fixed, and fixed some related issues with yt-dlp custom templates
    (Git #473)
- While downloading videos, the format of yt-dlp's output has recently changed,
    as a result Tartube could no longer extract the ETA (and other similar
    values). Fixed (Git #472)
- In the Classic Mode tab, one-click downloads worked once, then not again.
    Fixed
- Fixed a Python error which prevented switching between databases
- Fixed a crash when downloading playlists (Git #485)
- When a channel is marked for downloading (by selecting the checkbox next to
    a channel's name), and the channel is then deleted, the text of the buttons
    in the bottom-left corner of the Videos tab was not updated correctly.
    Fixed
- Due to an unresolved issue, in some situations Tartube generates the errors
    'Cannot remove row in Progress List' or 'Missing row in Progress List'.
    A very large number of these errors could be produced by a single video.
    Tweaked the code, so the error is seen only once (Git #479)
- Fixed a Python error when dragging and dropping videos from Firefox into
    Tartube's main window

MINOR FIXES
- Tweaked detection of the file size for downloaded videos in some situations
    in which it was not detected (Git #472)
- While checking/downloading videos, in the Progress tab's popup menus, fixed
    the broken 'Download last' and 'Download next' items. Also fixed some
    icons being to the wrong column (Git #480)
- Fixed inability to detect the system locale when Tartube is launched from a
    text editor (in this case, Geany)
- The preferences window no longer shows 'English' as the selected locale if
    the user has selected a different locale (French, for example), when
    Tartube was unable to load the latter
- Added code to handle video thumbnails from VK, which frequently sends .jpeg
    images mislabelled as .webp (Git #478)
- In the tidy operation window, the option to 'Delete all .webp thumbnails'
    did not work. Fixed it
- When downloading from VK, Tartube was not able to produce a sorted playlist
    that matched what a user would be expecting. Tweaked various bits of code
    to improve the situation (Git #476 and others)
- Tooltips were still visible in the Video Index (left-hand side of the Videos
    tab), even after they had been disabled in preferences. Fixed (Git #476)
- In the toolbar at the bottom of the Videos tab, the user was able to specify
    all sorts of invalid values for the page size. Now, only page sizes of 1
    or above can be specified. Because of technical issues, setting an
    unlimited page size is not recommended, but you can use a very large value
    like 9999 if you actually want many thousands of videos on one page
    (Git #476)
- In the toolbar at the bottom of the Videos tab, changed the labels for the
    'scroll up' and 'scroll down' buttons to 'scroll to top' and 'scroll to
    bottom', which is what the buttons actually do
- On MS Windows, after selecting 'System > Open MSYS2 terminal', a dialogue
    window with important information appears, but below the terminal window
    itself. Swapped their positions so the user sees the important information
    first
- In the download options window, Files > Filesystem, the text for the
    '--no-mtime' option incorrectly read 'Use the server's file modification
    time' instead of 'Don't use...'. Fixed (Git #488)
- For channel/playlist/folders with names about 45 characters long, tiles on
    the grid in the Videos tab were sometimes partially outside the visible
    window. Slightly decreased the maximum length of the name displayed, which
    should resolve the problem in most cases
- Removed some <i> tags which were visible in the Videos tab, for certain
    viewing modes

v2.4.165 (24 Nov 2022)
-------------------------------------------------------------------------------

MAJOR NEW FEATURES
- Added a new tutorial. For new installations, it can be launched from the
    setup window. For all users, it can be launched from Tartube's menu
    (About > Show tutorial)
- MS Windows users can now select a dark theme for Tartube windows. In
    Tartube's menu, click 'System > Change theme...'. Advanced users may be
    able to install additional themes; see the README for more details. Thanks
    to Rukongai for finding the solution (Git #355)
- Channels, playlists and folders can now have non-unique names; for example
    you can have separate channels, both called 'Season 1', inside different
    folders. However, you can't have two channels with the same name inside
    the same folder (Git #439)
- Download options can now be applied directly to more than one channel,
    playlist or folder (Git #464)
- Tartube has been re-licensed under LGPL 2.1

MINOR NEW FEATURES
- New translations available: French, Russian, Spanish and Vietnamese. Thanks
    to everyone at Weblate who contributed to them, including Le Sharkoïste,
    Tim Dewey, Equi and Zeref. In this release, your system's locale should be
    applied automatically (no more messing around in the preferences window)
- Python errors, which until now were hidden in a terminal window (and
    therefore not visible to must users), are now redirected to Tartube's
    Errors/Warnings tab where everyone can see them
- In download options, Post-processing > General, the audio quality of the
    post-processed audio file can now be set as a specific bitrate (e.g. 320
    kb/s), as well as the 'high', 'medium' and 'low' settings that were already
    available (Git #462)

MAJOR FIXES
- In the system preferences window, 'Downloaders' tab, tightened up the
    behaviour of the buttons, entries and comboboxes so that the user cannot
    specify contradictory settings or enter invalid values. On MS Windows, the
    'Use custom path' setting is now marked as 'not recommended', because
    Tartube code assumes that all users are using the official Tartube
    installer. (It it apparently possible to install Tartube using WSL2, but
    the authors have not been able to confirm that, so for the moment WSL2
    installations are not 'officially' supported) (Git #466)
- Fixed errors in the file-tidying operation (from Tartube's menu, Operations >
    Tidy up files) (Git #423, #463)
- .webp thumbnail images cannot be displayed in Tartube's window (because the
    Gtk graphics libraries do not support them). By default, .webp thumbnails
    are converted to .jpg (which are supported), but in some circumstances this
    prevents users from embedding thumbnails into their videos. In this
    version, when .webp thumbnails are converted to .jpg, the original .webp
    files are not deleted (and so they are still available for embedding). You
    can change this behaviour in Edit > System preferences... > Operations >
    Downloads. You can use 'Operations > Tidy up files...' to remove multiple
    .webp files at a later date, if you want to (Git #461)
- Drag and drop into the 'Add new videos' window did not work as intended, if
    videos were dropped directly onto the textview. Specifically, a newline
    character was not inserted between existing and new URLs. This issue also
    affected several similar windows, but is now fixed
- When videos were downloaded as audio files (e.g. .m4a) and then converted to
    another type of audio file (e.g. .mp3), Tartube's database was not updated
    correctly. Due to some invisible magic in the operating system, most users
    did not notice any problems, but some did. Fixed the issue, so that new
    downloads will update the database correctly (Git #451)

MINOR FIXES
- In download options, Files > Filesystem, the 'Download all videos into this
    folder' has been fixed so that it works correctly in non-English locales
- Fixed drag-and-drop into the 'Media' tab of the 'Scheduled download' window
- In the 'Add many channels/playlists' windows, names and URLs in the box at
    the bottom were supposed to be editable, but were not. Fixed
- Fixed a rare problem for videos that were marked to be watched as soon as
    they are downloaded, in which it was possible (in principle) to delete the
    video before the media player was launched, causing numerous problems
- After fetching a list of video formats/subtitles, the dialogue window's
    button opened the download options window at the wrong tab. Fixed
- In the Drag and Drop tab, code did not impede the user's attempts to delete
    the 'general' (default) set of download options (which cannot be deleted).
    Fixed
- Some youtube-dl commands surround download options with double quotes "...".
    For technical reasons, these must be removed before Tartube can start a
    youtube-dl download. Users were confused that the double quotes they had
    specified were not visible in the Output tab; they are now visible there
    (and also in the terminal window, when that is enabled) (Reddit)
- The preferences window, when opened, will now auto-fix any problems with sets
    of download options in the Tartube database. This is a temporary patch for
    an unresolved issue. The authors suspect the unresolved issue has
    resolved itself, given that code handling applied download options has been
    completely re-written for this release (Git #456)

v2.4.093 (31 Jul 2022)
-------------------------------------------------------------------------------

MAJOR NEW FEATURES
- In the menu button in the top-right corner of the Classic Mode tab, there is
    a new 'Enable one-click downloads' setting. Any valid URLs copied into the
    box are downloaded automatically (or added to the existing download)
- Unlisted videos, which youtube-dl can't normally detecT, can now be inserted
    into a channel. Right-click the channel and select 'Channel actions >
    Insert videos...'. In order to check or download these unlisted videos,
    you should either select them, right-click and choose 'Download videos'; or
    alternatively, set up custom downloads to download each video individually
    (Git #445)

MINOR NEW FEATURES
- In the preferences window, Operations > Livestreams, you can now block all
    livestreams from being checked/downloaded. This only works when yt-dlp is
    the downloader (Reddit thread)
- In the download options window, you can now use the option '--playlist-items'
    (Git #438)
- In the setup wizard window, the text of the 'Install FFmpeg' button now
    changes to 'Re-install FFmpeg' after the first installation attempt,
    successful or not (for clarity). Both the download and install sizes are
    now visible
- Tartube translations can now be prepared using Weblate. See
    https://hosted.weblate.org/projects/tartube/ (Git #428)

MAJOR FIXES
- Updated to latest version of MSYS2, with which FFmpeg can be installed
    correctly (Git #371, #444)

MINOR FIXES
- Fixed rare Python errors after right-clicking videos in the Progress List
    and selecting 'Stop now', 'Stop after this video', etc

v2.4.077 (8 Jun 2022)
-------------------------------------------------------------------------------

MAJOR FIXES
- In the download options window, the "Completely reset all download options to
    their default values" button caused problems with the Drag and Drop tab,
    which in turn prevented Tartube from finishing loading a database. Fixed,
    and added some safeguards that would make a similar bug easier to detect,
    if it were to happen again (Git #436)
- Fixed broken check buttons in the preferences window which could prevent it
    from opening (Git #435)

MINOR FIXES
- In the Video Catalogue (in grid mode), adjusted the maximum length of the
    channel/playlist/folder name to prevent the right-hand column being only
    partially visible, under certain circumstances (Git #433)

v2.4.065 (31 May 2022)
-------------------------------------------------------------------------------

MAJOR NEW FEATURES
- In the Videos tab, you can mark one or more channels/playlists/folders to
    be downloaded by clicking the checkbuttons next to their names. Tartube can
    now remember which items have been marked, storing them in a profile: in
    the main menu, click Media > Profiles > Create profile. You can create as
    many profiles as you like, and switch between them whenever you like. See
    the README for more information (Git #409)
- During a download, you can now right-click a channel, playlist or folder to
    add it to the download; previously, the menu item was greyed out (Git #430)

MINOR NEW FEATURES
- During Tartube installation, the user is now prompted to choose how often
    their database file should be backed up. The default setting has also been
    changed to 'every time' (Git #427)
- When the user deletes videos, they will now see a prompt asking for
    confirmation. The user can choose between removing the video from the
    database, and deleting the video from the filesystem completely. A
    comparable prompt already appeared when deleting channels, playlists and
    folders. In all cases, there is now an 'Always show this window' button
    which can be de-selected, if convenient (Git #427)
- The dropdown box in the 'Add channel' window has been improved to add an
    explicit item for 'No parent folder', instead of using an empty space. The
    windows for adding playlists and folders have been updated in the same way.
    The 'Add video' window has been tweaked to show icons inside the dropdown
    box, as the other three windows already do
- In each video's properties window, there is a new button which updates the
    video's data from its metadata file. Also, when the video's file path is
    changed (manually by the user), the corresponding metadata is now
    automatically loaded, updating the video in Tartube's database (Git #414)
- You can update multiple videos from their metadata by right-clicking them
    and selecting Special > Reload metadata (Git #420)
- The detail of some icons were difficult to make out. They have been replaced
    with sharper icons
- The list of videos in the Videos tab shows each video's name (which we call a
    'nickname'), which is not necessarily identical to the video's file name.
    You can now switch to displaying video file names instead: Edit >
    System preferences... > Windows > Videos > Show nicknames (not video file
    names) (Git #417)
- Tidied up the layout of the popup menu for videos
- In the download options window, in the Files > File names tab, you can now
    set an output template with a date/time in several different formats
    (Git #424)
- In the same window, added new options for '--live-from-start' and
    '--wait-for-video' (Git #431, yt-dlp only)

MAJOR FIXES
- In the Videos tab toolbar, when the 'Show downloaded' button is toggled and,
    as a result, no videos are visible, many of the toolbar icons were greyed
    out. Fixed (Git #410)
- The video's edit window was unable to open under certain circumstances. Fixed
- In a separate issue, the video's edit window was unable to open when the
    video didn't have a file associated with it. Fixed (Git #421/422)
- The list of custom downloads in Tartube's main menu (Operations >
    Custom download all) was not updated when profiles were added or removed;
    the list could only be updated by restarting Tartube. Fixed
- In the channel/playlist properties window, in the Associated Playlists tab,
    the 'Add all playlists' button was broken. Fixed it

MINOR FIXES
- When setting a custom redirect for Invidious, Tartube added an initial 'www.'
    which does not always resolve to a valid web address. This no longer
    happens. Text in the preferences window (Operations > Mirrors) has been
    updated to reflect this change (Git #412)
- Fixed an error in the code that resets channel/playlist/folder markers
    (selection buttons) in the Video Index
- During a refresh operation, a video's URL, ID and duration were not set, if
    they had not already been set (Git #414)
- When closing a video's properties window, the list of videos in the Video tab
    was not properly updated when a filter was applied. Fixed (Git #413)
- In a video's properties window, in the General tab, when the video file is
    changed, the entry boxes at the top of the window were not updated. Fixed
    (Git #420)
- In the Drag and Drop tab, two icons of different sizes were used beside each
    other; this has been fixed
- Fixed missing apostrophes (Git #411 and #416), and typos in the download
    options window (Git #418)
- Tweaked the detection of invalid URLs, for example in the 'Add channel'
    window
- In the download options window, in the Name tab, fixed inconsistent widget
    layout when switching between simple and advanced options

v2.4.0 (21 Apr 2022)
-------------------------------------------------------------------------------

MAJOR NEW FEATURES
- YouTube Stream Converter has been deprecated, so Tartube no longer supports
    it. Instead, Tartube now offers livestream downloads using streamlink
    (https://streamlink.github.io/) or with the video's .m3u manifest
- Livestream detection now works on Odysee and Twitch, as well as on YouTube.
    Detection should work on other websites, if you set the RSS feed for the
    channel and playlist manually (see the README for details)
- In the toolbar at the bottom of the Videos tab, you can now filter out
    downloaded videos, or undownloaded videos. These settings are ignored when
    a text search/filter is applied; in that situation, the buttons are now
    greyed out for clarity (Git #402)

MINOR NEW FEATURES
- When videos are being checked/downloaded, you can now see the amount of free
    disk space in the bottom-left corner of the Videos tab
- Added the youtube-dl download options '--no-overwrites', settable from the
    edit window (Git #398)
- Videos with enormous names, but without any space characters, created a
    tooltip that was longer than the Tartube window itself. Updated line-
    wrapping code generally, so that it will wrap on underline (underscore)
    characters, as well as on whitespace
- Column headers in the Errors/Warnings tab are now resizeable (Git #403)
- There is now a setting to remove a video from Tartube's database after a
    certain number of days, complementing the existing setting to delete the
    video entirely from the user's filesystem. See Edit > System preferences...
    > Files > Videos. The minimum value is now 0, so users can remove a
    downloaded video from the database as soon as it has been downloaded, if
    they want to (Git #404)
- In the download options window, Files > File names tab, the 'autonumber'
    component has been replaced with 'video_autonumber' and
    'playlist_autonumber' components, on the advice of the yt-dlp developers
    (Git #406)

MAJOR FIXES
- JSON timeouts were causing havoc when checking a video with lots of comments.
    Tartube now provides two timeout settings: one for checking videos with
    comments, and one for checking videos without comments. To set them, click
    Edit > System preferences... > Operations > Downloads. Also fixed an
    error that failed to store comments in the database, under certain
    circumstances. Also added a new setting, so that comments can be stored in
    the database when checking videos, or when downloading videos (see Edit >
    System preferences... > Operations > Comments) (Git #398)
- Fixed problems with the Drag and Drop tab, causing python errors on startup
    (Git #399)
- On running out of disk space, load/save was disabled, so the user could not
    free up space before saving the Tartube database. This no longer happens,
    but after such an error, no scheduled downloads are started (this is
    confirmed by a message in the Errors/Warnings tab). Updated the text in the
    preferences window for clarity, and to show free space in GB rather than MB
    (Git #400)
- Fixed failure to extract a video's URL and duration on certain channels, on
    MS Windows (Git #373)
- Fix inability to load database from an (unspecified) earlier version of
    Tartube. The error can also be fixed in the existing database integrity
    check (Git #405)

MINOR FIXES
- On MS Windows, the download option '--windows-filenames' is automatically
    added, but in the edit window, the same option is not selected. Fixed, so
    that the option is no longer automatically added, but added only when
    selected  (Git #373)
- The download option '--trim-filenames' uses a file length that refers to the
    absolute path, including the directory. Tartube will now ignore the setting
    if the length is less than the absolute path of the directory itself, to
    prevents files being downloaded into the wrong place. Added a warning about
    the option's unexpected behaviour in the window
- The installer for MS Windows now starts Tartube with an environment variable,
    that prevents Gtk from hiding scrollbars (Git #401)
- In the toolbar at the bottom of the Videos tab, the buttons to toggle
    drawing frames and icons were set the wrong way around. Fixed
- The YouTube 'This live event will begin in 11 minutes' was not recognised as
    a livestream notification (in some circumstances). Fixed
- On startup, in the Classic Mode tab, the 'Convert to this format' and
    'Download in this format' buttons were not set or (de)sensitised correctly.
    Fixed
- In the download options window, Files > File names tab, the various 'Add'
    buttons added components to the end of the file extension, rather than the
    end of the filename. Fixed
- Videos/channels/playlists/folders can no longer be deleted from the popup
    menus, when preferences or edit windows are open. This should prevent
    windows belonging to deleted items being visible
- Fixed display problems when moving a channel/playlist/folder to the top
    level, or dragging one onto another
- All keyboard shortcuts have been checked and updated

v2.3.549 (9 Apr 2022)
-------------------------------------------------------------------------------

MAJOR NEW FEATURES
- Each channel/playlist/folder in the Videos tab now has a checkbutton. You
    can select one or more items, if you want to check/download just those
    items. Click the buttons in the bottom-left corner to do that. Even when
    items are selected, you can still download everything using the main menu
    or from the toolbar. The checkbuttons can be hidden, if you don't want
    them: click Edit > System preferences... > Videos, and de-select 'Allow
    each row to be marked for checking/downloading' (Git #379)
- New Drag and Drop tab. The tab is divided into a grid. Each zone represents a
    set of download options. Drag and drop a video from your browser (or a
    text URL) onto one of these zones, and it is added to the Classic Mode tab,
    ready for download using the specified download options. Because of Gtk
    issues, drag and drop from a browser does not work well on MS Windows.
    All users will receive a new set of download options called 'mp3', unless
    they already have one with that name
- The layout of the Errors/Warnings tab has been redesigned. It is now fully
    searchable. All the checkbuttons like 'Show Tartube errors' are now
    applied immediately, and are reversible. (Previously, they only applied to
    errors/warnings received in the future)

MINOR NEW FEATURES
- The Classic Mode tab has a new button at the bottom of the tab. When
    selected, youtube-dl creates an archive file. This is not recommended in
    most cases; it might be useful for downloading large channels/playlists, if
    the download might need to be resumed after an interruption (Git #285)
- In the download options windows (e.g. Edit > General download options...),
    when advanced options are visible, the options were previously in a
    separate yt-dlp tab have been merged into the other tabs. This is because
    yt-dlp is now the default downloader for nearly all users
- The layouts in the preferences window and several other edit windows have
    been improved (includes Git #360)
- Custom downloads can now skip broadcasting livestreams, or livestreams that
    have already finished. They can also skip all videos EXCEPT current/former
    livestreams. New icons in the Videos tab highlights which videos are
    former livestreams; one for downloaded videos, one for checked videos
    (Git #358)
- Tartube can now open in the system tray. See the new setting in Edit >
    System preferences > Windows > Tray (Git #365)
- Tidy operations can now remove videos without URLs, or duplicate videos, from
    the Tartube database
- In the video properties window, Timestamps tab, you can now update the list
    of timestamps manually by clicking the new 'Reset list using copied text'
    button, and then copy-pasting text into the dialogue window (for example,
    from the video's description) (Git #330)
- Minor changes to the layout of the main window's menu

MAJOR FIXES
- The dialogue windows for adding channels, playlists and folder dialogues
    accepted invalid characters and names. Fixed to prevent illegel directory/
    folder names on MS Windows, Linux and MacOS (Git #335)
- A 'blocked' video (e.g. an age-restricted video from YouTube) remains
    invisible in the Videos tab, by default, even after it is successfully
    checked or downloaded (for example, after the user has supplied login
    credentials). Fixed
- Errors/warnings assigned by Tartube to an individual video were not cleared
    when the video was checked/downloaded without further errors/warnings.
    Fixed
- Fixed more crashes due to Gtk issues
- The download options window could not be opened, when the
    '--cookies-from-browser' option was set with KEYRING and PROFILE
    components. Fixed (Git #394)
- Fix python error when starting Tartube (Git #366)
- Fixed video duplication error when downloading videos that already exist on
    the filesystem
- After right-clicking a video and selecting 'Special > Download video clips'
    or 'Special > Remove video slices', the dialogue windows had several
    serious issues. Fixed them
- In the Classic Mode tab, when a channel/playlist download is interrupted
    before the download is complete, the URL is not remembered for the next
    session. Fixed (Git #285)

MINOR FIXES
- When checking/downloading produces no new videos, a 'newbie' dialogue is
    displayed pointing the user to possible solutions. The dialogue was
    displayed even when youtube-dl encountered videos that had already been
    downloaded, or that were registered in youtube-dl's archive file. This no
    longer happens (Git #368)
- In the preferences window, Windows > Videos tab, the 'Show today and
    yesterday as the date, when possible' setting could not be disabled, once
    enabled. Fixed
- In the edit window for custom downloads, in the Slices tab, the toggle
    buttons were all broken. Fixed them
- After right-clicking a folder and selecting 'Folder contents > All contents >
    Empty folder', the text of the dialogue window was gibberish. For this
    procedure and related ones, improved the dialogue layout and tightened up
    the code. When emptying videos/channels/playlists/folders from the
    database (but not removing files on the filesystem), added a new
    confirmation dialogue (Git #332)
- The video properties window did not show clip/chapter titles. Fixed
    (Git #330)
- Improved wording in the 'Add channel' dialogue, specifically to remove the
    word 'automatically'. Updated the video/playlist/folder dialogues too
    (Git #277)

v2.3.484 (31 Mar 2022)
-------------------------------------------------------------------------------

MAJOR NEW FEATURES
- YouTube has stepped up its efforts to block videos, so uesrs are experiencing
    more errors than normal. In these cases, Tartube will now add a video to
    its database, marked as blocked/unavailable for download. This behaviour
    can be disabled in Edit > System preferences... > Operations > Downloads.
    Blocked videos are not normally visible in the Videos tab; to make them
    visible, expand the toolbar at the bottom of the tab, and select 'Show
    blocked videos'. Blocked videos are always visible when a filter is applied
    (as long as they match the filter)
- Scheduled downloads can now be set to start at certain of the day and week,
    or at some specified time after Tartube starts (Git #362)
- In the Classic Mode tab, you can now select a video resolution as well as a
    video/audio format. Both settings, if set, override download options. The
    resolution setting does not require FFmpeg/AVConv

MINOR NEW FEATURES
- Users on MS Windows can now install matplotlib from the main window menu.
    When installed, it's possible to see graphs showing your download history
    (for example, in Edit > System preferences... > Files > History)

MAJOR FIXES
- Fixed unusable installers on all platforms except MS Windows, in the v2.3.447
    release (Git 389)
- Fixed frequent crashes when downloads in the Classic Mode tab fail to
    download anything
- youtube-dl errors and warnings are now assigned to individual videos, rather
    than to their parent channels/playlists/folders. There is some guesswork
    involved, but it should be accurate enough for most users. In the Output
    tab, errors and warnings now appear in real time in their original order,
    rather than at the end of the output, after the download has finished
    (Git #321, 170 and others)
- In the list in the bottom half of the Progress tab, the popup menu items
    'Stop after this video' and 'Stop after these videos' produced an
    annoying unnamed video, because the child process was halted before the
    FFmpeg file merge could take place. Fixed
- Attemps to restart a stalled download (see the settings in Edit > System
    preferences window... > Operations > Downloads) did not work as intended.
    Should be fixed, although testing has been difficult (Git 174)
- Fixed incorrect timing between the first and subsequent occurences of a
    scheduled download
- Fixed broken re-download button/menu item in the Classic Mode tab

MINOR FIXES
- Fixed the faulty layout in the preferences window, in the Windows >
    Errors/Warnings tab. Moved the 'Ignore' buttons to a new tab,
    Operations > Ignore
- In the main window's menu, the option to install FFmpeg should be
    desensitised on all system except MS Windows. In certain circumstances, it
    become re-resensitised. Fixed
- In download options, the option to 'Write video's annotations to an
    .annotations file' is now disabled by default (since most website do not
    provide annotations any more, and in that case the option, when enabled,
    creates error messages)
- When updating/installing youtube-dl (etc) from PyPI, and the user already
    has the current version installed, fixed faulty detection of the version
    number
- In the preferences window, Downloads > File paths, removed the useless
    'Local path' setting on MS Windows

v2.3.447 (20 Mar 2022)
-------------------------------------------------------------------------------

INSTALLERS
- The installer for 32bit Windows has been retired. See the README for more
    details

MAJOR NEW FEATURES
- Gtk stability issues have been resolved (hopefully). This means that, when
    checking or download videos, the Videos tab is updated in real time
    (without the need to switch between channels/playlists/folders to update
    them). This was actually Tartube's oldest unresolved issue
- Tartube can now scan a YouTube channel for its playlists, and optionally
    add some or all of those playlists to Tartube's database. See the README
    for details of how it works (Git #102)
- In the toolbar at the bottom of the Videos tab, you can now search for
    comments and video descriptions, as well as video names. (Don't forget to
    click the 'Show more settings' button, so that the full toolbar is
    visible). You can also search for comments within a specific video by
    right-clicking it, and selecting Show video > Properties... > Comments.
    Also improved the layout of that tab a little
- In the Video tab's list, users will now see an icon for any channel/playlist/
    folder for which checking/downloading has been disabled. This replaces the
    old system of names with italics and underlines, and it should be much
    clearer. The old system still applies when small icons are used (Git #385
    and others)
- When the user fetches a video's list of formats (by right-clicking the video
    and selecting Fetch > Available formats), they will now see a new dialogue
    window inviting them to set download options, so the video can be
    downloaded in one of the available formats. There is also a new dialogue
    window when fetching a video's list of subtitles (Git #369)
- Custom downloads now have the ability to download only videos with subtitles.
    In the Videos tab, you can see a new icon next to videos for which
    subtitles are available. (The new icon does not mean that subtitles have
    been downloaded.) Live chat replay on YouTube videos are treated the same
    way as subtitles, and can be downloaded
- Users with a YouTube account can now import their subscriptions directly into
    Tartube's database. Click Media > Import YouTube subscriptions..., and then
    follow the window's instructions
- There are several situations in which a channel/playlist may be added to
    Tartube's database with a generic name (for example, after clicking
    Media > Add many channels/playlists...). Tartube can now reset channel/
    playlist names automatically, as long as one video in each has been
    checked/downloaded: click Media > Reset channel/playlist names...

MINOR NEW FEATURES
- The download options window has been reorganised to clarify, especially to
    new users, how to download and then convert videos from one media format to
    another. The Classic Mode tab's layout has also been updated with the same
    aim in mind (Git #383)
- In the download options window, Formats tab, you can now click the new small
    button next to the Add format button, in which you can type a media format
    number (e.g. 397) instead of scrolling through the list to find it
- In the download options window, added the '--no-cookies' option and other
    related options to the new yt-dlp > Cookies tab (Git #378)
- On MS Windows, advanced users who wish to tweak the environment in which
    Tartube runs can now open the MSYS2 terminal window directly from
    Tartube's main menu. Tartube's installation folders can also be opened for
    inspection. Open the new System menu column to use them
- In the Classic Mode tab, the buttons at the bottom of the tab have been
    rearranged. A new 'open destination' button has been added. The popup menu
    displayed by right-clicking items in the progress list has been expanded to
    duplicate the actions of those buttons
- On MS Windows, when using yt-dlp, the download option '--windows-filenames'
    is now automatically applied if '--restrict-filenames' has not been applied
- Updates to the MS Windows installer to improve various issues
- The location of the archive file used by youtube-dl can now be fully
    customised. See Edit > System preferences... > Operations > Archive. When
    re-downloading a video, Tartube no longer renames the archive file
    temporarily, just ignores it (Git #299)
- The annoying 'Unable to download video thumbnail: HTTP  Error 404: Not found'
    messages generated by yt-dlp are now filtered out by default; they can be
    re-enabled in Edit > System preferences... > Windows > Errors/Warnings
- On systems that permit it, the main window's icon in the taskbar is now a
    different colour to the icon used by other Tartube windows
- During a custom download, if videos are checked before being downloaded
    individually, you can now right-click any video in the Progress tab to
    skip the checking phase
- The standard error and warning icons have been tweaked to make it easier to
    tell them apart
- On MS Windows, the setup wizard window now warns users about the size of the
    youtube-dl/FFmpeg downloads (in case they are installing Tartube on a small
    device, such as a pen drive)
- When Tartube loads a database file, it performs various checks. If the checks
    fail, the file cannot be loaded. There is a new option to extract a list
    of channels/playlists from a database file that cannot be loaded, as long
    as the file is not actually corrupted. Click File > Database
    preferences... > Dump database to JSON. The JSON file can be re-imported
    into any other database in the normal way. Note that, due to python issues,
    it is not possible to load or dump any database from Tartube v1.1.0 or
    earlier (Git #356)
- Dialogue windows can cause Tartube to freeze, when running on an MS Windows
    host in Virtualbox. In that case, dialogue windows can now be disabled
    altogether in Edit > System preferences... > Windows > Dialogues

MAJOR FIXES
- Deleting a channel, playlist or folder containing hundreds of videos is now
    much faster (orders of magnitude faster, in fact)
- In the Video Catalogue, when a 2-dimensional grid is visible, when using the
    cursor (or page down) keys to scroll down the list of videos, the user
    would never reach the final row if is was only partially full. Fixed
- Fixed yt-dlp download options '--prefer-insecure' and '--abort-on-error',
    which could not be used because of a typo in the code (Git #364)
- On Linux, improved auto-detection of a PyPI install of youtube-dl/yt-dlp; it
    is now selected as the default, even if another installation is present
- Fixed an error in the 'Set download destination' window for channels/
    playlists, which showed (in the 'Use a different location' box) the most
    recent change for any channel/playlist, not the actual location assigned
    to this channel/playlist
- In the Progress tab, fixed Python errors when right-clicking a video and
    selecting 'Stop after these videos'
- In the Videos tab, when some system folders are open (for example, 'New
    Videos'), a deleted video does not disappear from view straight away. Fixed

MINOR FIXES
- After checking videos finishes, the dialogue window now shows the number of
    new checked videos, not the total number of videos checked
- The media format selection in the Classic Mode tab was stored with useless
    leading zeroes. Fixed
- In the download options window, fixed a typo in the media format #571
- When installing yt-dlp in the setup wizard window, user would see
    'Update operation complete, youtube-dl version XXX'. Fixed
- When updating yt-dlp, but the user already has the latest version, the
    dialogue window displayed 'yt-dlp version: (unknown)'. Fixed
- Fixed typos in translation files (Git #334)
- The Add Channel dialogue window was not resized correctly when the warning
    about correct URLs was removed. Fixed
- In the preferences window, Operations > Livestreams, added a note to explain
    that disabling YTSC option does not necessarily prevent all current
    livestreams from being downloaded (Git #361)
- In the toolbar at the bottom of the Videos tab, the 'Show icons' button was
    not set correctly. Fixed
- In the 'Add videos' dialogue window, when there were too many duplicate
    URLs, the window was bigger than the available desktop. Added a scrolling
    window to fix the problem (Git #351)

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)
-------------------------------------------------------------------------------

MAJOR NEW FEATURES
- Tartube can extract a video's comments, and optionally store them in its own
    database. (In either case, comments are stored in the video's .info.json
    file). This feature is only available when using yt-dlp. To enable it,
    click 'Edit > System preferences... > Operations > Comments', and select
    'When checking/downloading videos, store comments in the metadata file',
    (Note that the download option in 'Edit > General download options...' has
    been removed). To view comments for a video, right-click the video and
    select 'Show video > Properties > Comments'

MINOR NEW FEATURES
- In the preferences window (Edit > System preferences... > Windows > Main
    window), the 'Reset' button now resets the position of various sldiers, as
    well as the size of the main window
- Added a few more video/audio formats to the list selectable in the download
    options window
- In the video slices dialogue window (right-click a video and select 'Special
    > Remove video slices...') the user can now opt to remove a slice, or to
    remove everything but a slice. The latter behaviour is slightly different
    to downloading a video clip, because downloading a clip will create a new
    entry in Tartube's database. The new button should clarify what the window
    is actually supposed to do (Git #322)
- In the new-ish dialogue window that appears when nothing is downloaded, there
    is a new section remnnding Classic Mode users that they can't download a
    file that doesn't exist (and what to do about that) (Git #326)
- The same dialogue window appeared after checking a single video that had
    previously been checked/downloaded. Fixed
- The setup dialogue window now explains to users what the Classic Mode tab is
    for, and lets them specify that the main window should always open at that
    tab, if they want

MAJOR FIXES
- The button to set the media file in a video's edit window did not work on
    MS Windwos. Fixed (Git #320)
- In the Progress tab, the 'Maximum downloads' setting was broken. Fixed
- Fixed an error caused when a video's upload date (as returned by youtube-dl)
    was None

MINOR FIXES
- .webp thumbnails from Odysee (and perhaps other websites) were not converted
    into a displayable format; fixed

v2.3.306 (3 Jul 2021)
-------------------------------------------------------------------------------

MAJOR NEW FEATURES
- You can now download videos as a sequence of video clips, or split a video
    you've already downloaded into clips. Tartube can extract a list of
    timestamps from a video's description, or extract the chapter list from a
    video's medadata file. You can also specify your own timestamps. See the
    README for details about how this works. Video Clips are added to the new
    'Video Clips' folder, by default. This functionality requires FFmpeg
    (Git #282)
- Tartube now provides SponsorBlock integration. Tartube can download a video
    with the sponsored sections removed. It can also remove sections from a
    video you have already downloaded. Tartube can fetch information from
    SponsorBlock directly, or you can specify your own video sections to
    remove. See the README for details about how this works. This functionality
    requires FFmpeg
- Custom downloads have been overhauled. You can now create as many different
    custom downloads as you like: click 'Edit > System preferences... >
    Operations > Custom' for a list of them. The defautl custom download is
    the one called 'general'. A custom download normally involves 'checking'
    channels/playlists before 'download'ing them; this can now be done
    automatically
- A 'Custom download all' button can be added to the Videos tab, beneath the
    'Download all' button, if it's convenient for you. Click 'Edit > System
    preferences... > Windows > Main window' and select 'Show a Custom Download
    all button in the Videos tab'
- Until now, Tartube has only been able to download videos into its own
    data folder. You can now download channels and playlists to any location on
    your filesystem. This is not recommended unless you have a good reason (see
    the README for a list of good reasons). To change the download destination
    for a channel (etc), right-click the channel and select 'Channel actions >
    Set download destination...', then in the new window select 'Use an
    external location' and click the 'Set' button. When Tartube starts, it
    checks that any external locations are readable/writable and, if not, the
    channel/playlist's name is drawn with a line through it (Git #296)
- Added a new 'Recent Videos' folder. By default, it shows videos checked/
    downloaded during the last download operation. This behaviour can be
    changed by right-clicking the folder, and selecting 'Downloads >
    Set removal time' or 'Show > Folder properties... > Recent videos'
- Added alternative performance limits (for example, to limit bandwidth at
    certains times of the day). To set up these limits, click 'Edit > System
    preferences... > Operations > Limits'. When the alternative limits apply,
    a grey icon in the Progress tab changes colour. Scheduled downloads also
    now have their own alternative performance limits, which override those
    specified elsewhere (Git #288)
- You can now bulk-update the URLs for channels and playlists (for example, by
    using a regex to modify the ending of each URL). Click 'Edit > System
    preferences... > File > URLs'. Double-click a single URL to edit it, or use
    the buttons at the bottom of the tab to bulk-edit URLs. The name of the
    channels/playlists can also be edited by double-clicking them (Git #286)
- You can now add many channels and playlists at the same time, using a single
    dialogue window. Click 'Operations > Add many channels/playlists...'
    (Git #222)
- Changed the layout of the Classic Mode tab, to clarify the difference between
    a video being downloaded in a particular format, and being converted to
    that format after the download has finished. Before, video and audio files
    downloaded from the tab were handled inconsistently. Now, a download of an
    .mkv file will only fail if the website doesn't provide the video in that
    format, and the user has not chosen to convert the file after download
- When a download operation fails to check/download anything, the user will now
    see a dialogue window, suggesting some things to do. This should improve
    the experience for new users when Tartube fails to work for no obvious
    reason

MINOR NEW FEATURES
- It's now possible to export/import Tartube's database as a .CSV file. The
    separator is '|' by default; that can be changed in 'Edit > System
    preferences... > Files > Backups'. The menu interface for export/import has
    been simplified (Git #222)
- When exporting Tartube's database as plain text, it's now possible to
    preserve the database's file structure and/or to include a list of videos.
    The changes mean that plain text exports from v2.3.206 and earlier will no
    longer work. (It is quite simple to edit the exports by hand, if any users
    are affected by these changes)
- Exports from Tartube's database (in any format) now include videos inside the
    'Unsorted Videos' and 'Video Clips' folders
- Messages in the Errors/Warnings tab now show dates and times. This can be
    disabled using the button at the bottom of the tab (Git #281)
- In case Tartube's main window becomes too big for the desktop, added a button
    to reset its size in 'Edit > System preferences... > Windows > Main window'
    (Git #291)
- When Tartube's main window was minimised to the tray, and then restored, it
    was not restored to its old position on the desktop. You can now enable
    this behaviour, if you want: click 'Edit > System preferences... >
    Windows > Tray', and select 'After closing to the tray, restore the
    window's position' (Git #292)
- You can now override youtube-dl download options completely, specifying your
    own options explicitly. CLick 'Edit > General download options...', click
    the 'Show advanced download options' button if it's visible, then specify
    your requirements in the area above (Git #276)
- If users attempt to add a YouTube channel/playlist whose URL does not end in
    '.../videos', they will now see a dialogue window with a reminder to click
    the YouTube VIDEOS tab, before copying the URL. The reminder can be
    disabled in 'Edit > System preferences... > Windows > Dialogues' (Git #286)
- In the Classic Mode tab, the re-download button can now be clicked while
    other downloads are still taking place. Therefore, if one video fails to
    download, you can force it to re-download without waiting for everything
    else to finish (Git #293)
- The maximum number of simultaneous downloads has been increased to 32. This
    high setting is not recommended unless you actually want YouTube to ban
    your IP (Git #294)
- Changed the maximum line length for video descriptions, stored in Tartube's
    database, from 50 to 80 characters (Tartube's main window used to be less
    wide by default, so the shorter limit is no longer necessary). You can now
    update each video's description in its edit window (right-click the video
    and select 'Show video > Properties... > Description'). You can also
    update all videos in the database (Edit > System preferences... > Files >
    Update'
- The video's edit window has a button for changing the video file, but it
    wasn't obvious that the button is clickable. Improved the layout
- You can now change the background colours used in the Video Catalogue by
    clicking 'Edit > System preferences... > Windows > Colours'. The default
    colours have been tweaked, as they made some clickable labels hard to read
- Replaced the icon used to show a video that's not been checked or downloaded
    yet (which improves the look of the Video Catalogue)
- In the Classic Mode tab, if the user forgets to click the 'Add URLs' button
    before clicking the 'Download all' button, they will now see a dialogue
    window reminding them of what to do
- You can now set channels, playlists and folders so that videos can be
    downloaded without updating Tartube's database (in effect, making the
    Videos tab behave like the Classic Mode tab). For example, to apply this to
    a channel, right-click the channel and select 'Downloads > Don't add videos
    to Tartube's database'
- Added the ability for youtube-dl to authenticate using a .netrc file. To
    enable this, click 'Edit > General download options...'. Click the 'Show
    advanced download options' button if it's visible. Then click 'Advanced >
    netrc'. For your convenience, the .netrc file itself can be edited in this
    tab. This feature has not been tested on MS Windows yet (Git #305)
- Added a comparable ability to use and edit the youtube-dl configuration file.
    Click 'Edit > General download options...'. Click the 'Show advanced
    download options' button if it's visible. Then click 'Advanced >
    Configurations'
- All download options in the edit window ('Edit > General download
    options...') now have a tooltip, showing the actual youtube-dl/yt-dlp
    option
- Added a range of download options for yt-dlp only (which cannot be used with
    youtube-dl), including '--paths' (Git #299)
- Names of channels and playlists in the Video Catalogue are now clickable,
    and will open the channel/playlist URL in your web browser if clicked
- Videos inside folders (for example, inside the 'Unsorted Videos' folder) can
    can now be checked, if they have already been checked (for example, by
    right-clicking a video and selecting 'Check video'). This is useful for
    updating timestamps, chapters and SponsorBlock data
- You can now drag videos from the Video Catalogue into a new channel, playlist
    or folder (Git #309)
- The default and alternative locations for Tartube's configuration file are
    now visible in the preferences window ('Edit > System preferences... >
    Files > Config')
- In the Progress tab, you could already right-click a video and select 'Stop
    after these videos'. Added a corresponding item to the main window's menu
- After stopping a download manually (for example by clicking the 'Stop' button
    in the main toolbar), items that were marked as 'Waiting' and marked as
    'Not started'. This might relieve some confusion

MAJOR FIXES
- On MS Windows, it was not possible to install yt-dlp because of MSYS2 issues.
    Tartube will now install yt-dlp without dependencies, by default, which
    fixes the problem. This behaviour can be changed in 'Edit > System
    preferences... > Downloaders > Forks' (Git #269, #279)
- Also fixed yt-dlp dependency issues (Git #317)
- Fixed an error on startup, occuring when Tartube was unable to load its
    default database, and started checking for others
- Fixed an error that failed to load Tartube's configuration file created
    between versions v1.3.088 - v2.3.149
- Fixed an error that affected all list values in the edit windows for
    download options and FFmpeg options, while using those windows
- Fixed an error that made radio buttons unusable in some edit windows
- Fixed an error that failed to open the preferences window from the Classic
    Mode tab's menu
- Download options for deleting the video description, metadata, annotations
    and thumbnail files after downloading the video were ignored in the Classic
    Mode tab, when enabled. Fixed (Git #295)
- The main window's 'Add video' and 'Custom download all' buttons did not work,
    after loading a database created by v2.3.110. Fixed (Git #307)
- Fixed an error that occured when renaming channels/playlists/folders in
    certain circumstances
- After disabling checking and/or downloading videos for a folder, checking/
    downloading for any child channels/playlists/folders was also supposed to
    be disabled, but this did not work as intended. The original behaviour has
    been changed, so that enabling/disabling the settings does not apply to a
    folder's children
- The setting to move a video's metadata files to a sub-directory did not work
    as intended. Code to detect a thumbnail's likely location had become
    garbled. Both fixed
- Fixed a rare error when trying to delete a channel/playlist
- Fixed an error that prevented the download of Japanese-language videos from
    finishing. Updated related code to improve the handling of non-UTF-8 text
    in general (Git #308)
- Fixed failure to obtain the path to Tartube's config file (Git #314)
- Fixed problems with an incomplete list of folders (for example, in the
    'Add channel' dialogue window (Git #316)

MINOR FIXES
- Several users have complained that some icons are not visible in the main
    window. This seems to be an issue with incorrect (or broken) installation
    of the Gtk library on certain distributions. Tartube now uses its own
    icons, by default, rather than the stock Gtk icons. This behaviour can be
    changed in 'Edit > System preferences... > Windows > Main Window'
- Some Tartube icons were a little difficult to see, so they have been switched
    for better icons
- Fixed .bat files in the MS Windows installers, so that Tartube starts when
    Python 2 is installed (Git #271)
- Small improvements to the layouts of various dialogue windows
- In the Progress tab, the button 'Max downloads' was not actually used by
    anything, nor was its setting remembered after restarting Tartube. This has
    been fixed. When the button is not selected, a default maximum of two
    simultaneous downloads applies
- Disabled the instruction to show a youtube-dl system command for Tartube
    folders (which have no URL for youtube-dl to use)
- Fixed a faulty dialogue window when dragging a channel/playlist/folder into
    the 'Temporary Videos' folder
- Fixed problems downloading videos as audio from the FFmpeg options window
- Fixed problems in the download options edit window, in the 'Sound only' tab
    (downloading as audio could be enabled, but not disabled)
- Fixed problems in which the edit window for a video's properties could not
    be opened, if the video's file size was unknown, or if Tartube's custom
    icons were enabled
- When the user fetches a list of video formats, Tartube now switches to the
    Output tab automatically
- When custom downloads are enabled in the Classic Mode tab, the 'Download all'
    button is replaced by a 'Custom download all' button, for clarity
- Video sizes are displayed in the Video Catalogue, but empty space was visible
    instead of 'Unknown' when the file size was not known. Fixed
- Minor fixes to the popup menus in the Video Catalogue
- The youtube-dl 'Download did not start' message is now visible in the Output
    tab, as well as the Errors/Warnings tab
- Continuing locale problems are not yet resolved, but the code will now use
    the actual locale, rather than defaulting to UTF-8 (on Linux) and cp1252
    (on MS Windows)
- Fixed typo in the 'stalled' stage of a video download, which might have
    caused problems
- Fixed broken button in System Preferences window (Git #224)

v2.3.110 (28 Feb 2021)
-------------------------------------------------------------------------------

MAJOR NEW FEATURES
- Added the Korean translation compiled by mirusu400 (thanks!) (Git #258)
- Tartube now officially supports the downloader yt-dlp, replacing its support
    for youtube-dlc (which has been abandoned) (Git #254)

MINOR NEW FEATURES
- The FFmpeg options window now provides comboboxes for the user to specify
    GPU encoding and hardware acceleration (Git #264)
- In the download options edit window, under the 'Files > Keep files' tab, the
    text has been improved to more accurately describe the handling of
    description, metadata, annotation and thumbnail files (Git #263)
- In Tartube's setup.py, replaced the obsolete dependency pgi with pygobject
    (Git #242)

MAJOR FIXES
- In the download options edit window, in the Subtitles > Options tab, the
    button marked 'Download subtitles file for these languages' was completely
    broken. Fixed (Git #263)
- Users who installed Tartube using one of the 'strict' packages reported that
    the preferences window could not be opened. The problem has probably been
    fixed (Git #256)

MINOR FIXES
- In the Videos tab, the 'Download all' button can be disabled. Other buttons/
    menu items are disabled at the same time. Download buttons in the Classic
    Mode tab were disabled, but should not have been. Fixed
- When installing yt-dlp via pip, the version number was not recognised. Fixed
- In the download options edit window, in the 'Files > File names' tab, there
    was a duplicate label in the 'Video properties' combobox. Fixed (Git #263)
- Fixed a rare crash caused by an incorrectly detected videos
- Various fixes for Git #243, Git #249

v2.3.085 (13 Jan 2021)
-------------------------------------------------------------------------------

MAJOR NEW FEATURES
- Added the Dutch translation compiled by Heimen Stoffels (thanks, Heimen!)
    (Git #244)
- Tartube can now display statistics about the channels and playlists in your
    database, and about the database as a whole. These are visible in the
    preferences window, and in the channel/playlist properties windows. If
    matplotlib is installed on your system, Tartube can draw graphs showing
    your download history. For help with installing matplotlib on MS Windows,
    see the README (Git #235)
- Added a new system folder called 'Recent videos'. It shows all videos
    checked/downloaded during the most recent download operation. Browsing this
    folder is perhaps more convenient than using the lists in the Progress and
    Classic Mode tabs
- You can specify a custom path to the youtube-dl(c) executable. This is not
    recommended in general, but it might be useful for testing purposes
    (Git #243)

MINOR NEW FEATURES
- Added a menu item to check for new releases of Tartube (click Help > Check
    for updates). This function downloads simple text files from Tartube's
    websites, and should not collect any information about you. If you're still
    worried about privacy, don't use the feature. You can see exactly what is
    being downloaded in the Output tab (Git #216, 234 and others)
- The path to youtube-dl(c)'s cookie jar file can now be customised, for
    example in Edit > General download options... > Files Cookies. If not
    customised, Tartube creates a cookie jar file in Tartube's main data folder
    (directory), as before (Git #240)
- Several improvements to the Classic Mode tab. After clicking the 'Add URLs'
    button, any duplicate URLs (which are not copied from the top half to the
    bottom half) can optionally be deleted now. Click Edit > System
    preferences... > Windows > Main window, and select 'In the Classic Mode
    tab, when adding URLs, remove duplicates rather than retaining them' (Git
    #233)
- The first error generated when downloading a video/channel/playlist is now
    visible in the tooltip (in both the Progress and Classic Mode tabs). The
    behaviour can be disabled: click Edit > System preferences... > Windows
    > Main Window, and deselect 'Show errors/warnings in tooltips'. This is a
    compromise for showing the full error message in the tabs, which is
    not practical due to youtube-dl(c) limitations (Git #233)
- In the Classic Mode tab, after a download has finished, the name of the
    video file is no longer cleared, in order to assist with identifying
    failed downloads (Git #233)
- In the Videos tab, all status icons are now visible for all videos, even when
    thumbnails are not drawn (Git #233)
- In the Classic Mode tab, added a new 'Clear downloaded' button (Git #233)

MAJOR FIXES
- Fixed the 'No translation file found for domain: base' crashes (Git #245,
    #247)
- Apparent fix for crashes while downloading videos from LinkedIn Video. The
    fix has not been fully tested yet (Git #240)
- Fixed the re-download button in the Classic Mode tab, which was completely
    broken
- Fixed several problems with translations, which only became apparent after
    someone submitted a translation file

MINOR FIXES
- In the Videos tab, when a video is marked as 'Can't D/L', right-clicking the
    video to download it caused a crash. Fixed
- In the Classic Mode tab, if duplicate URLs are added in the top half, then
    both are added to the bottom half after clicking the 'Add URLs' button.
    Fixed (Git #233)
- In the Classic Mode tab, the 'Download all' button re-downloaded a video that
    had already been downloaded. Fixed (Git #233)
- It was not possible to mark multiple videos as not livestreams in a single
    action. Fixed
- After switching the system language in the preferences window, Tartube
    displayed the wrong icon. Fixed

v2.3.042 (24 Dec 2020)
-------------------------------------------------------------------------------

MAJOR NEW FEATURES
- youtube-dl(c) allows you to specify a proxy for downloading videos. This
    version allows you to specify a list of proxies (in Edit > System
    preferences... > Operations > Proxies). When downloading videos, Tartube
    will cycle through these proxies, one by one. A new proxy is used for
    each channel, each playlist, or each video in a folder (it is not possible
    to switch proxies during the download of a single channel or playlist). If
    you have specified a proxy in download options (for example, in Edit >
    General download options > Advanced > Network), then that proxy overrides
    the new list (Git #226)

MINOR NEW FEATURES
- You can now change the path to the video file. This might be useful in
    several scenarios: for example, if you've converted a video file to an
    audio file, or if you've changed the file name format, and have re-
    downloaded a video. To change the path, right-click a video and select
    'Show video > Properties...'. In the edit window, find the line marked
    'File'. There is a new button there that can be clicked in order to
    change the file path. For the sake of consistency, only video/audio files
    in the same directory/folder can be set (Git #211)
- In case the preference window cannot be opened (because of some python
    error or other), a database integrity check can now be launched directly
    from the main window's menu (File > Check database integrity)
- Sets of download options and FFmpeg options can now be cloned. When applying
    download options to a video/channel/playlist/folder, you can now select an
    existing set of download options, or clone an existing set, or create a new
    set (Git #224)
- The copy of Youtube Stream Capture bundled along with Tartube has been
    updated to the latest release

MAJOR FIXES
- Found a fix for (uncommon) crashes on MS Windows, in the setup window for new
    installations, and a fix for (common) problems in keeping the textview
    updated when youtube-dl(c) and/or FFmpeg are being downloaded from the
    seutp window (Git #212)
- More fixes for stalled video downloads. Tartube is now sensitive to some
    new network problems, and in that situation can restart the download
    immediately, rather than waiting some minutes. The new behaviour is
    disabled by default. To enable it, click Edit > System preferences...
    > Operations > Downloads, and select 'If a network problem is detected,
    restart the download immediately'. I still have not been able to reproduce
    a stalled download, but the restart process should work more smoothly now
    (Git #174)
- If downloading subtitles was enabled, Tartube mistook the path to the
    subtitles file for the path to the video file. This should be fixed now
    (Git #211)
- In the Classic Mode tab, the button to re-download a video was broken. Fixed
    it (Git #218)
- Fixed a broken dialogue window, when Tartube runs out of disk space for
    downloading videos, which caused a crash (Git #217)
- A refresh operation failed to notice audio files, as well as video files. It
    now recognised both (Git #225)
- Some users have reported problems associated with download options (Git #228,
    among others). I am not sure about the cause of these issues yet, but I
    have been able to fix a couple of errors in the code (one major, one
    minor). These errors may be responsible for the reported issues, or not
- Fixed folders that vanish when being dragged and dropped into other folders
    (MS Windows only), and fixed associated broken dialogue windows (Git #232)

MINOR FIXES
- After a period of continuous operation, without checking/download videos,
    live/debut videos could change their status, but the order of videos in the
    Videos tab was not updated. Live/debut videos are supposed to be listed
    first, before all other videos; this should now be working better
- Times in the Errors/Warnings tab were shown in UTC, instead of the user's
    local time zone. The same problem applied to metadata in Tartube's saved
    data files. Fixed both (Git #213)
- The size of the main window, and the position of the slider in the Videos
    tab, can be remembered between sessions (see the options in 'Edit > System
    preference... > Windows > Main winndow'). However, the position of the
    slider was not set correctly on MS Windows. Fixed that, and also added a
    separate setting so that the window size, but not the slider position,
    can be remembered (if that's what you want). If remembering the slider
    position is enabled, Tartube will now remember the position of all three
    sliders (Git #215)
- You can download a video, then apply download options directly to the video,
    then modify the options to change the download video's filename, then
    re-download the video. The original video is deleted, but not its metadata
    files. The redownload button in the Classic Mode tab did not delete the
    original video or its metadata files in this situation. Fixed both
    (Git #219)
- Fixed a few annoying dialogue windows which, when closed, pushed the main
    window to the fore, instead of the preference window
- When video catalogues are listed without thumbnails at all, but sorted by
    download (receive) time, the upload time was displayed instead. Fixed
- At the bottom of the videos tab is a toolbar which can be partially hidden.
    On startup, when not fully hidden, the toolbar can now be partially hidden
    before any videos are displayed

v2.3.008 (4 Dec 2020)
-------------------------------------------------------------------------------

MAJOR FIXES
- Fixed major error caused when switching between databases; some data from the
    old database leaked into the new one, which caused any number of problems
    (Git #209)
- When right-clicking a channel (etc), fixed broken 'Folder Contents > All
    contents > Mark as not new', and several other similar actions (Git #206)
- Update imported XDG code (Tartube's xdg_tartube.py file) to match the most
    recent release of the Python XDG module; hoping to fix an installation
    error with the Debian package. The new Debian package has not been tested
    yet, so the error may not be resolved (Git #205)

MINOR FIXES
- Updated imported Youtube Stream Capture code to the new release; the authors
    states that it contains some bug fixes. The new version still does not work
    on MS Windows

v2.3.0 (1 Dec 2020)
-------------------------------------------------------------------------------

MAJOR NEW FEATURES
- On new installations, users will now see a friendly setup window, allowing
    them to choose basic settings, and to download youtube-dl(c) and FFmpeg.
    The settings available to choose depends on the user's operating system.
    The new window replaces a set of windows in previous versions, and should
    reduce the number of disappointed users who don't understand why they can't
    download any videos
- Videos can now be displayed in a grid, as well as in a list. The grid is
    enabled by default for new installations. For existing installations, click
    the 'Switch' button near the top of the main window until you see the
    layout you prefer
- The size and appearance of videos in the grid can be changed. In the bottom-
    right corner of the Videos tab, click the icon to reveal the toolbar, and
    then modify one or more of the options. Videos can now be sorted by
    download time and database ID, as well as by name or upload time, as
    before. When sorted by download time, that is the time visible in the video
    list (Git #192)
- YouTube has changed the way it handles livestreams and, as a result, earlier
    versions of Tartube could not detect livestreams until they started
    broadcasting. That is fixed in this version. In addition, Tartube will now
    show the (approximate) start time for a livestream. When a livestream or
    debut is about to start (three minutes before, by default), Tartube will
    now check it more frequently (every minute, by default)
- Tartube can now tell the difference between a YouTube 'Premiere' (a pre-
    recorded video, released at a pre-determined time as if it were a
    livestream), and an actual livestream. Premiere/Debut videos are now shown
    with different-coloured backgrounds. If you want, you can use the same
    colours for both, or disable background colours altogether (click
    Edit > System preferences > Windows > Videos, and change the settings
    there)
- In earlier version, up to three download schedules, with fixed
    characteristics, could be set up. You can now create as many download
    schedules as you like and customise them in any way you like. To create
    your first custom schedule, click Edit > System preferences... >
    Scheduling > Start. Enter a schedule name in the box, then click the 'Add'
    button. If you were already using download schedules, they should be
    visible in the list; click one to select it, then click the Edit button to
    check it is still meeting your needs (Git #148, #168). Schedules are stored
    in the Tartube database, so they won't be available if you switch databases
- You can now create as many sets of download options as you like. To see a
    list of them, click Edit > System preferences... > Options > Download
    options. As before, the 'general' set cannot be deleted (but can be
    modified). As before, other sets can be applied to a video/channel/
    playlist/folder, or to the Classic Mode tab. It's now easy to switch the
    set used in the Classic Mode tab, and the old set is no longer deleted
    after a switch. If you right-click a video/channel/playlist/folder, and
    select 'Apply download options', you will now see a dialogue window, from
    which you can choose one of the existing sets (Git #171)
- This version includes a new GUI for processing videos with FFmpeg, replacing
    the much simpler dialogue window in the previous release. To see it, right-
    click a video and select 'Process with FFmpeg...' (but in the Classic Mode
    tab, select one or more videos, and use the new button at the bottom of the
    tab). In the GUI window, click the 'Show more FFmpeg options' button to see
    the full range of settings. Both videos and thumbnails can be processed,
    but only videos visible somewhere in Tartube's main window can be processed
    (if you want an all-purpose FFmpeg batch converter, then use a separate
    application). Videos can be dragged-and-dropped into the GUI's Videos tab
    (Git #153)
- As with download options, you can create as many sets of FFmpeg options as
    you like. To see a list of them, click Edit > System preferences > Options
    > FFmpeg options. At any one time, one set of options is the 'current' one;
    that is the set you will see, when you right-click a video to open the new
    GUI
- Download options are stored in the database file, so if you switch databases,
    they are no longer available. You can now export a set of download options
    to a file, and then re-import them after you have switched databases. You
    can also rename sets of download options. All of this also applies to
    FFmpeg options (Git #171)
- The new FFmpeg GUI can be used to stitch together a video and audio file,
    if FFmpeg did not merge them during the original download (Git #153)
- Near the top of the main window, there is a new 'Hide' button, which hides
    most system folders (whose icons are red folders). After clicking the
    button, it is replaced by a 'Show' button. Items can still be hidden/
    revealed in Tartube's menu or by right-clicking each channel/playlist/
    folder individually
- Tartube now includes a copy of the Youtube Stream Capture script. Support for
    this script is experimental. It only works on YouTube. It does not work on
    MS Windows. It does not work for continuous 24/7 livestreams. It does not
    work with every livestream (but works more often than youtube-dl, in
    general). The script is disabled by default; to enable it, click Edit >
    System preferences > Operations > Livestreams, and select 'Use Youtube
    Stream Capture to download broadcasting livestreams'. The Python module
    'aria2' is required, if you want to use the new script. For more
    information about this feature, see the README (Git #197)
- Anyone creating a Tartube package can now use the new environment variable
    TARTUBE_PKG_NO_DOWNLOAD. This will disable video downloads altogether;
    checking videos will still be possible. Thus, anyone worried about the
    legality of downloading videos can create a Tartube package that doesn't
    download any videos. (When Tartube 'checks' a video, it 'scrapes' the video
    website. The authors understand that the US courts have ruled that scraping
    a website in this way is legal). See the README for more information.

MINOR NEW FEATURES
- Videos can now be dragged-and-dropped from Tartube into an external window
    (for example, a text editor, or an FFmpeg batch converter). You can
    customise what data is received by the external application: click
    Edit > System preferences > Windows > Drag (Git #153)
- To make drag and drop more useful, you can now select multiple rows in the
    Progress, Classic Mode and Errors/Warnings tabs
- To accommodate the video grid, the standard size of a Tartube window has been
    increased. Don't forget that you can tell Tartube to remember its size
    (Edit > System preferences... > Windows > Main Window, then select
    'Remember the size of the main window when shutting down')
- Auto-detection of the location of an existing youtube-dl installation has
    been improved
- Tartube can produce debug messages, visible in a terminal window. Until now,
    these messages could only be enabled by editing the source code. There are
    now two ways of enabling debug messages: first, place an (empty) file
    called debug.txt in the same directory as the tartube executable; second,
    click Edit > System preferences... > General > Debugging, and set one of
    the options there. (This tab also shows the correct location for the
    debug.txt on your system)
- At the end of a download operation, the number of videos checked/downloaded
    is now displayed in the dialogue window and/or desktop notification
- During downloads, Tartube can now filter out more types of YouTube message
    (so they don't appear in the Errors/Warnings tab). They can be seen in
    Edit > System preferences... > Windows > Websites (Git #172)
- Git #169 reported that Tartube was showing a negative number of videos in the
    Video Index (left-hand side of the Videos tab). The cause was not found,
    but Tartube now automatically detects this kind of errors and auto-fixes
    it. The database integrity check has also been updated
- The youtube-dl download options '--sleep-interval' and
    '--max-sleep-interval' can now be set in Tartube's download options window
    (Git #173)
- The layout of edit and preferences has been updated and improved, in many
    cases
- In the Videos tab toolbar, there was no button to cancel filtering by text;
    added one. Some issues with these buttons being enabled/disabled at the
    wrong time were also fixed
- If the download of a video/channel/playlist stalls, for some reason, there is
    now a mechanism for restarting it. It can be enabled by clicking
    Edit > System preferences... > Operations > Downloads, and then selecting
    'If a download stalls, restart it after this many minutes'. The authors
    have not been able to reproduce a stalled download, so this mechanism has
    not been fully tested (Git #174)
- When download options are applied to an individual video, you can now see an
    extra icon (this was previously only visible when the video's thumbnail
    had not been downloaded)
- When download options are applied to an individual video, they are now
    unapplied (removed) when the video is downloaded, by default. If you want
    to change this behaviour, click Edit > System preferences... > Options >
    Preferences, and deselect 'After downloading a video, remove its
    download options'
- You can no longer open multiple preference windows, or multiple edit windows
    for the same set of data
- In the Classic Mode tab, Tartube can now remember URLs that have been added,
    but not yet used. To enable this feature, click the menu button in the
    top-right corner, and select 'Remember URLs'. When you restart Tartube,
    any URLs which were not downloaded in the previous session should now be
    visible in the top half of the tab (Git #194)
- In the Classic Mode tab, there is new 'Clear all' button (Git #194)
- Added a slider in the middle of the Classic Mode tab, so that the two halves
    can be resized, if required. The existing sliders in the Videos tab and in
    the Progress tab now have a minimum size, so that the user can't
    accidentally make half of the window invisible
- The Gtk file chooser dialogue was typically bigger than the size of the
    observable universe (especially on MS Windows). Tartube will now resize it,
    if so
- Custom downloads can now be performed in the Classic Mode tab. To enable
    them, click the menu icon in the top-right corner, and select 'Enable
    custom downloads'. Then, when you click the 'Download all' button in the
    bottom-right corner, a custom download is performed. For more information
    about what a custom download is, see the README (Git #174)

MAJOR FIXES
- Fixed various problems caused on MS Windows when downloading videos whose
    names contain Japanese characters (Git #106, #115, #175)
- Some reports suggest that Tartube crashes when the Output tab contains a
    great deal of text (tens of thousands of lines). The problem could not be
    reproduced, but there is now a maximum page size. The maximum size can be
    adjusted by the user. No further problems have been reported (Git #170)
- Various issues in sorting videos have been fixed. A list of videos should now
    be displayed in a much more consistent order, which in most cases fixes the
    issues
- In case of further problems in sorting videos into their correct order, the
    toolbar at the bottom of the Videos tab has a new button which will force
    a re-sort of the visible video list
- Fixed an error when opening a directory/folder (containing downloaded videos,
    etc) on the desktop (Git #180)
- In the 'Download options' window, the 'Completely reset all download options
    to their default values' button was broken. Fixed it
- Fixed an error, in which Tartube was unable to load a database from v1.4.037
    (Git #184)
- Some reports suggest that one of the Tartube source code files is being
    confused with another application's files. This problem affects packaging
    systems such as dkpg and .AUR. The Tartube file has been renamed, which
    should resolve the problem (Git #186)
- Tartube was, under rare circumstances, unable to recognise a video that had
    been downloaded (because Tartube was looking for the wrong file extension).
    Fixed
- In various lists (for example, the list of download options in the
    preferences window), it was not possible to manipulate the first row of
    the list (for example, by selecting it and then clicking the 'Edit'
    button). Fixed
- Fixed a crash caused by a faulty setting of a video's livestream status
    (Git #34)
- Fixed a crash caused when videos/channels/playlists are automatically removed
    from the bottom half of the Progress tab (Git #34)
- Fixed incorrect handling of a video's URL, when the video is dragged from an
    external application (such as a file explorer) into Tartube's main window
    (on Linux/BSD only). Tartube now recognises both a file path and a URL,
    when the external application supplies one or the other (Git #153)

MINOR FIXES
- Fixed some issues in the tidy operation (Operations > Tidy up files) that
    made it appear that nothing was happening (Git #189)
- In rare cases, the tidy operation caused a crash when handling thumbnails.
    Fixed
- In the tidy operation, removed the warning about deleting files, when the
    user is moving thumbnails into a sub-directory
- Fixed a rare error when extracting output from youtube-dl
- On Linux/BSD, the user might not have able to enable desktop notifications.
    Fixed
- Fixed an error in reading the database file from an unreachable location (for
    example, an unplugged external hard drive) (Git #167)
- In the preferences window, selecting multiple databases at the same time
    caused Gtk issues, so disabled multiple selection, which fixes the issues
- In the Results List (bottom half of the Progress tab), a deleted video could
    still be selected, and the user might still try to right-click it and
    delete it again. The code has been updated so that any video visible in the
    list that has been deleted cannot be selected or right-clicked
- Fixed an issue, in which Tartube could not correctly interpret youtube-dl
    output (Git #177)
- When no thumbnail is available for a video, the standard icon used is now
    the same size as a thumbnail, so that every video in the list takes up the
    same amount of space
- In the Video Catalogue, fixed the missing gap between the 'Favourite' and
    'Missing' labels. Fixed the situation in which that line became too long
    for its box
- In the Videos tab toolbar, when the user sets a recent date, the Video
    Catalogue no longer tries to skip to the non-existence page zero
- The main window's menu now refers to the actual downloader (for example,
    youtube-dlc), rather than referring to youtube-dl until Tartube restarts
- When a video's URL is used as displayed in place of its name, Tartube now
    does a better job of wrapping the text across multiple lines
- Tartube could not recognise some youtube-dlc version numbers. Fixed
- Made minor changes to some icons to improve legibility
- Fixed a Python error when right-clicking unselected videos in the Classic
    Mode tab
- For livestreams that are already broadcasting, the 'D/L on start' label is no
    longer clickable
- After clicking File > Save all, the user will now see a better confirmation
    dialogue
- Fixed a minor spacing issue in the tooltip text used for videos
- In the toolbar at the bottom of the Videos tab, the next/previous buttons
    were the wrong way around (but only when custom icons were in use). Fixed
- Fixed some issues in the Output tab, in which the scrollbar did not
    automatically scroll to the bottom as new text was added. (The behaviour is
    still not perfect on all operating systems, but it is better than before)
- The cookie jar used by youtube-dl is now written to Tartube's data directory,
    rather than to the directory where Tartube source code is stored

v2.2.0 (30 Sep 2020)
-------------------------------------------------------------------------------

MAJOR NEW FEATURES
- Tartube is now confirmed to work on MacOS. See the README file for
    installation instructions
- Tartube can now handle video thumbnails in the .webp format, as long as
    FFmpeg is installed. Thumbnails are automatically converted to .jpg (either
    by youtube-dl, or by Tartube itself, as appropriate). This only affects new
    downloads. If you want to convert .webp thumbnails you've already
    downloaded, click Operations > Tidy up files..., select 'Convert .webp
    thumbnails to .jpg using FFmpeg', and click OK. (This procedure may take a
    while if there are thousands of thumbnails to convert) (Git #155 and
    others)
- Thumbnails, video description, metadata and annotation files can now be
    downloaded into a sub-directory, rather than being stored in the same
    directory as their videos. Thumbnails are stored in /.thumbs, and the
    others are stored in /.data. On Linux/BSD, those sub-directories are
    normally invisible by default (typically, pressing CTRL+H will reveal
    them). This new feature is disabled by default. To enable it, click Edit >
    Download options... > Files > Write/move files, and select one or more of
    the checkboxes. The new feature only affects new downloads. If you want to
    move files you've already downloaded, click Operations > Tidy up files...,
    select 'Move thumbnails into own folder' and/or 'Move other metadata files
    into own folder', and click OK (Git #139)
- You can now select one or more videos, and process them with FFmpeg directly
    (in other words, after downloads have finished, and without involving
    youtube-dl). This will be useful if you want to convert one video format to
    another, change the frame rate, or with countless other tasks. Just select
    the video(s), right-click them and select 'Process with FFmpeg...'. Since
    many FFmpeg procedures require a different output filename, you can specify
    that, too. Note that FFmpeg sometimes takes a very long time; you should
    test a procedure with a single video, before trying to process hundreds of
    them (Git #153)
- Tartube can now use forks of youtube-dl, such as youtube-dlc. (Tartube
    assumes that a fork is still very similar to the original). A fork can be
    specified in Edit > System preferences... > youtube-dl (Git #158)
- New installations of Tartube will now auto-detect the location of youtube-dl,
    if it is already installed on your system. This will benefit users of the
    .DEB and .RPM packages, who until now were expected to know how to set the
    youtube-dl path manually (Git #152)
- FFmpeg and AVConv will now also be auto-detected. If you have installed them
    in unusual locations, you should specify those locations in Edit >
    System preferences... > youtube-dl > FFmpeg / AVConv. If not, there is no
    need to specify either location; just leave the boxes empty. (None of this
    applies to MS Windows users)
- When Tartube shuts down unexpectedly, it doesn't have time to mark the
    database as no longer being in use (i.e. doesn't remove the lockfile). The
    next time Tartube runs, users were prompted to remove the lockfile, then
    restart Tartube. Many users were unhappy with this situation, so it has
    been improved. You will still be prompted to remove the lockfile, but there
    is no longer any need to restart Tartube

MINOR NEW FEATURES
- FFmpeg is now required for a lot of Tartube functionality. On new
    installations, users who have not yet installed FFmpeg will see some
    additional nag-boxes, and various hints in other configuration windows
    (Git #155)
- If users downloadd a video, but only its audio, the video appeared in
    Tartube's database as downloaded. However, when the user clicked on the
    'Player' label, the audio file was not opened in the system's media player.
    Tartube now checks for an audio file (as well as video files in different
    formats), if the video file it was expecting does not exist
- When the user clicks Operations > Update youtube-dl, Tartube now
    automatically makes the Output tab visible. Hopefully this will avoid
    confusion for new users, who do not notice that the Check all/Download all
    buttons have been greyed out. This behaviour can be disabled, if required:
    click Edit > System preferences... > Output > Output tab, and deselect
    'During an update operation, automatically switch to the Output tab'
    (Git #149)
- The invidio.us website has closed. There are many mirrors available. Tartube
    now uses invidious.site as its default mirror. To specify a different
    mirror, click Edit > System preferences... > Operations > Downloads
- YouTube phased out video annotations in 2019. The Tartube code was unable to
    download annotation files during a simulated download (for example, with
    the 'Check all' button). Now that there is no way of testing any fix, the
    feature has been removed entirely
- You can now add automatic custom downloads on a schedule (normal downloads
    were already available). Click Edit > System preferences... > Scheduling
    (Git #154)
- Reduced the compulsory delay at the end of many types of operation. The
    delay time is not the same for all types of operation
- Tartube debug messages are visible in the terminal window (if open). Before,
    the user had to edit the source code to enable debug messages. They can
    now be enabled from within Tartube itself: click Edit > System
    preferences... > General > Debugging. These settings are not saved, so when
    Tartube restarts, you will have to re-enable debug messages again
- In the Progress and Classic Mode tabs, the name of the incoming file (and
    other similar columns) are no longer artificially shortened (Git #161)

MAJOR FIXES
- When one channel downloads into videos into another channel's directory,
    and the other channel is then deleted, the Tartube database did not update
    itself properly. Fixed
- Fixed some issues when using the refresh operation to import videos, that had
    been downloaded by youtube-dl (without Tartube's) help, into Tartube's
    database (Git #142)
- Tartube can now download videos using the youtube-dl archive file, even when
    missing video detection is turned on (Git #154)
- Tartube sometimes froze on shutdown, after youtube-dl had been updated.
    Applied the existing MS Windows fix to all operating systems

MINOR FIXES
- Fixed issues when importing a JSON export file on MS Windows, and a different
    issue error when importing it on Linux
- We were not able to fix export issues reported in Git #143, but we have
    updated the dialogue window, which should give more information about what
    is causing the error
- System folders cannot be deleted. The 'Delete folder' popup menu item is now
    greyed out. (Nothing happened, even when it was clickable)
- Warnings about broken Gtk have been removed (probably permanently)

v2.1.070 (8 Aug 2020)
-------------------------------------------------------------------------------

MAJOR FIXES
- Checking videos (e.g. by clicking the Check All button) was broken. Fixed
- Fixed a very rare freeze/crash when handling temporary directories

v2.1.065 (7 Aug 2020)
-------------------------------------------------------------------------------

MAJOR NEW FEATURES
- Tartube can now detect videos that were downloaded by the user, and have
    since been removed by the original uploader. To enable this functionality,
    click 'Edit > System preferences... > youtube-dl > Preferences' and then
    click 'Add videos which have been removed from a channel/playlist to the
    Missing Videos Folder' to select it. Note that youtube-dl's archive file
    (if enabled) is ignored when missing video detection is enabled (Git #140)

MINOR NEW FEATURES
- Schedules download times can now be specified in any time unit (for example,
    minutes), rather than in days only (Git #129)
- The Tartube version number is no longer displayed in the main window's title
    bar (this was only supposed to be a temporary feature)

MAJOR FIXES
- In the Classic Mode tab, the video/audio format selector was broken. It was
    not possible to change the video/audio format from here. Fixed (Git #124)
- It was not possible to perform a custom download by right-clicking a channel
    or playlist. Fixed (Git #134)

MINOR FIXES
- Added .ICO file for the Tartube logo, for MS Windows users (Git #122)
- The first entry box in the download options window was editable. Fixed

v2.1.051 (4 Jul 2020)
-------------------------------------------------------------------------------

ATTENTION YOUTUBE USERS
- You may be wondering why Tartube cannot display video thumbnails from
    newly-uploaded videos. YouTube has changed its video thumbnails to a new
    format, .webp. The Gtk graphics libraries don't support this format. A
    future release of youtube-dl will convert .webp thumbnails to .jpg, but the
    feature is not available yet. When it becomes available, you might need to
    install FFmpeg on your system, if you haven't already done so (see the
    README file)

MAJOR NEW FEATURES
- For MS Windows users, there is now a portable edition of Tartube, as well as
    the usual installer. Use the portable edition if you want to run Tartube
    from removable media, such as a USB drive
- After clicking the main 'Check all' button, it was not possible to right-
    click a video to download it. After clicking the main 'Download all'
    button, it was not possible to right-click a video to check it. Both of
    these actions are now allowed
- Closing Tartube to the system tray is now disabled by default (only affects
    new installations). This is for the benefit of users whose systems do not
    have a system tray, or for whom the Tartube icon is not visible for some
    reason (Git #98)

MINOR NEW FEATURES
- The latest releases of Tartube's graphics library, Gtk, still do not fix the
    many stability issues we've been reporting for some years. As a consequence
    the workarounds that stop Tartube from crashing every two minutes are now
    completely optional (i.e. Tartube no longer applies them regardless of your
    wishes). If you enjoy watching Tartube crash, feel free to disable the
    workarounds by clicking 'Edit > System preferences... > General
    > Stability' and then clicking 'Disable some cosmetic features...' to
    deselect it
- When checking the status of livestreams (which happens every few minutes,
    by default), the Tartube icon in the system tray now looks different. (The
    checks for livestream status were otherwise silent)
- Various alternative front-ends to YouTube exist. Tartube already recognises
    HookTube and Invidious. You can now specify any alternative you like;
    perhaps one the several Invidious clones that are currently available.
    Click 'Edit > System preferences... > Operations > Custom' to open the
    correct tab. More complete instructions have been added to the README
- In the Classic Mode tab, the buttons in the top-right corner have been
    replaced with a popup menu
- A separate set of download options are now applied to downloads in the
    Classic Mode tab. These download options are applied by default, even on
    existing installations. To disable/re-enable them, click the menu in the
    top-right corner of the tab, and select 'Use classic download options' or
    'Use general download options'
- If download options are applied to the Classic Mode tab, then a video's
    description, metadata (etc) files are not downloaded in that tab, by
    default (Git #77)
- The youtube-dl archive file is no longer created in downloads from the
    Classic Mode tab, by default. To re-enable this functionality, click 'Edit
    > System preferences... > youtube-dl', and select both 'Allow youtube-dl to
    create its own arhive file...' and 'Also create an archive file when
    downloading from the Classic Mode tab...'. This change affects new
    installations; users with earlier versions of Tartube installed on their
    system must remove an existing archive file manually,  if they don't want
    it (Git #77)
- In the Classic Mode tab, added a button to show the contents of the download
    directory/folder
- In the system preferences window, the 'When Tartube starts, automatically
    open the Classic Mode tab' setting has been moved to a more logical place
    (Windows > Tabs)
- The toolbar at the top of the Videos tab can now be hidden, if you don't
    like it. Click 'Edit > System preferences... > Windows > Main window', and
    click 'Don't show the main window toolbar' to select it
- In the Videos tab, you can now add the URL of a video, channel or playlist to
    the Classic Mode tab by right-clicking it, and then selecting an item in
    the popup menu. The original video/channel/playlist is not removed from
    Tartube's database
- Tidy operations can now remove .webp thumbnails. Once the youtube-dl fix
    mentioned above has been released, you can remove the thumbnails, then
    click 'Check all' to re-download them in .jpg format
- Some users have reported that some icons in Tartube's main window are
    invisible on their system. These are stock icons which should be available
    on all systems (but which, apparently, are not). For the benefit of those
    users, an extra set of icons have been created. To enable them, click
    'Edit > System preferences... > Windows > Main window > Replace stock icons
    with custom icons...' (Git #118)
- In the Temporary Videos folder, you can now see which channel/playlist/folder
    the video originally belonged to (where appropriate). The video's original
    name and description are also now visible, when known
- The URL for a channel or playlist can now be modified (Git #117)

MAJOR FIXES
- Installation via PyPI was broken, because the gi package had been removed.
    This is now fixed
- Installation using the DEB package will now automatically install
    python3-pip (if not already installed), so that youtube-dl can be
    installed/updated straight away
- When closing Tartube using the X button (usually) in the top-right corner of
    the window, and assuming that closing to the system tray is disabled,
    neither the config file nor Tartube's database file were saved. Fixed
- Adding a preferred media format in one download options window added the
    same format in all download options windows. Fixed (Git #119)
- A custom location for the FFmpeg executable can be set in 'Edit > System
    preferences... > youtube-dl'. This did not work on any operationg system
    for various reasons, all of which have been fixed (Git #90)
- After checking/downloading videos, Tartube checks for livestreams, after
    which it occasionally crashes. This crash has now been fixed
- Some videos were continually re-marked as livestreams, even after the
    livestream had finished broadcasting (and even after the user manually
    marked the video as not a livestream). Fixed
- Some livestream videos were continually re-added to Tartube's database,
    creating a number of duplicate copies of the same video. The problem has
    been fixed; you can delete the duplicates at your leisure
- When videos are checked, Tartube no longer supplies youtube-dl with a
    preferred media format. If you have specified a rarely-used media format,
    this change will prevent a great many useless error messages being
    generated
- When detecting livestreams, Tartube generated many 'Add livestream failed
    sanity check' errors. The underlying cause has been fixed, which should
    improve livestream detection a little

MINOR FIXES
- Fixed failure to recognise that a config file exists in the Tartube source
    code directory (which forces Tartube to use that location for its config
    file rather than the system's default location, even if the config file is
    empty or unreadable)
- Fixed rare problems in updating old Tartube database files to make videos
    work as livestreams. The database integrity check ('Edit >
    System preferences... > Filesystem > DB Errors') now checks for such
    problems
- In the download options window, the 'If a merge is required after post-
    processing, output to this format' option will not work if the specified
    media format doesn't also appear in the preferred format list. Moved the
    two onto the same tab, and added a dialogue window to warn the user that a
    media format must be added twice
- Also fixed the format selection combobox in the Classic Mode tab, so that
    the preferred media format and the 'If a merge is required after post-
    processing...' options are set to the same value
- In the system preferences window, the 'When Tartube starts, automatically
    open the Classic Mode tab' setting was not working properly; fixed it
- For downloads in the Classic Mode tab, an error was displayed in the
    Errors/Warnings tab using the video name 'Dummy Video'; changed that to
    the standard text for videos whose name is not known
- Fixed python errors generated when playing a sound effect, on a system for
    which the python playsound module hasn't been installed
- Fixed a python error generated when shutting down Tartube suddenly, while
    livestreams are being detected
- For reasons not understood, Tartube might (on extremely rare occasions)
    create a (red) system folder called 'downloads_2'. This folder could not be
    deleted. Until the cause can be found, such invalid system folders can now
    now be deleted, and are deleted automatically during a database integrity
    check
- In the system preferences window, Operations > Livestreams tab, there are two
    checkbuttons enabling/disabling livestream detection. The second one could
    be enabled even when the first was disabled; this has been fixed, and
    should remove some unexpected behaviour
- When updating youtube-dl, the warning 'The script youtube-dl is installed...'
    is now intercepted, and is no longer interpreted as a failure

v2.1.0 (7 May 2020)
-------------------------------------------------------------------------------

MAJOR NEW FEATURES
- For everyone who wants a simpler way to download videos, a new Classic Mode
    tab has been added, emulating the look and feel of youtube-dl-gui. Videos
    downloaded in this tab can be downloaded to any location, and are not added
    to Tartube's database
- Tartube can now detect livestreams, and alert you when they start. This
    feature is EXPERIMENTAL, has only been tested on YouTube, and may not be
    reliable. It does not work at all on the 32-bit MS Windows installer
- Added internationalisation. If you can contribute a translation to this
    project, please see the ../docs/translate.rst file. As a proof of concept,
    Tartube can now be used with either British or American spelling
- You can now specify unlimited numbers of video/audio formats (the limit was
    previously three). You can also specify that youtube-dl should try to
    download each video in each of your preferred formats, rather than in one
    or all available formats (as was the case before)

MINOR NEW FEATURES
- Made minor improvements to the look of various dialogue windows
- Slightly improved the functionality of buttons in the system preference
    window's database tab
- If a database can't be loaded (but an alternative database can), an
    explanatory messages is now added to the Errors/Warnings tab. If an
    alternative database can't be loaded (or only one database has been added
    to Tartube's list), then the dialogue window seen by the user is now
    slightly more helpful
- Some startup errors, which were invisible to users not running Tartube from a
    terminal window, now produce a visible dialogue window
- The code to force renamig of channels/playlists/folders (when required) has
    been adjusted so it creates a name like 'Folder_3' rather than
    'Folder_2_2_2_2'
- Instructions for Tartube installations have been updated generally. The
    MS Windows batch/shell files used to start Tartube have been tweaked

MAJOR FIXES
- The MS Windows installers have been updated to use Python 3.8. This may fix
    some stability issues for a few users
- For systems with a broken Gtk library (or if the user has disabled minor
    cosmetic features anyway), the list of videos in the Videos tab is no
    longer updated during a download operation. This should resolve some
    lingering stability issues. (You can manually update the list by selecting
    a different channel/playlist/folder, then selecting the original one again)
- In the Video Catalogue, new videos are sometimes added to the last page,
    rather than to the first one. Rewrote the code yet again to resolve this
    issue; hopefully this should be the last rewrite
- The Python setup file now explicitly mentions more dependencies; this should
    assist with installation issues for PyPI, DEB and RPM packages
- The RPM package, which did not work at all on Tartube v2.0.016, is now
    working again

MINOR FIXES
- In the general download options window, in the Files tab, there was a
    duplicate set of template options. Remove the duplicate set, replacing it
    with a larger set of options
- Info/Tidy operations complained that they couldn't start while an edit/
    preference window is open, and then started anyway. Fixed
- In the Progress List, a video's name is updated as soon as it is known
    (before, the name was only updated in the Results List)
- The start of a download operation is now (slightly) quicker, because the
    setup code is no longer called (incorrectly) for every single video
- Download operations scheduled to begin when Tartube starts now begin after
    a few seconds, rather than immediately (for aesthetic reasons)

v2.0.016 (10 Apr 2020)
-------------------------------------------------------------------------------

MINOR NEW FEATURES
- Tartube's config file is stored in a standard location for your system, by
    default. For testing purposes, you can copy a config file into Tartube's
    installation directory (the one containing this file). If you do so,
    Tartube will load and later save that config file, rather than the one in
    the standard location
- Tartube no longer creates a youtube-dl archive file in its 'Unsorted Videos'
    and 'Temporary Videos' folders. Any existing archive files in those folders
    are automatically deleted. Other folders are not affected (Git #64)
- In the Videos tab, you can expand the tree on the left-hand side of the
    window by clicking on a folder (if this behaviour has been enabled). This
    behaviour has now been modified slightly. Clicking on a folder will also
    collapse the tree, if already expanded. You can tell Tartube to expand the
    whole tree, not just the folder itself. The settings can be specified by
    selecting the checkbuttons in Edit > System preferences > Windows >
    Main window

MINOR FIXES
- The system preferences window didn't show the correct location for the
    loaded config file. Fixed
- The DEB package has been improved to generate fewer Lintian error messages
- Tartube was unable to switch between databases, if the main 'Download all'
    button had been disabled. Fixed
- After deleting a folder, clicking the 'Add a new folder' button generated an
    error. Fixed
- If the internet connection goes down during a check operation, Tartube is
    now less likely to freeze
- The 'Apply changes without closing the window' button at the bottom of many
    edit windows did not work as intended. Fixed
- Video descriptions are no longer editable in a video's 'Video Properties'
    window

v2.0.0 (29 Feb 2020)
-------------------------------------------------------------------------------

MAJOR NEW FEATURES
- Tartube can now be installed from PyPI, or by using the new DEB/RPM packages
    (Linux/BSD only; installation from PyPI does not work on MS Windows)
- DEB/RPM packages marked 'STRICT' are also available for uploads to
    repositories with lots of rules, such as the official Debian repository.
    In 'STRICT' packages, updating youtube-dl from within Tartube is disabled.
    The 'STRICT' packages are compiled using new environment variables,
    TARTUBE_PKG and TARTUBE_PKG_STRICT (replacing the old TARTUBE_DEBIAN)
    environment variable. See the comments in setup.py for more details
- During a download operation, in the Progress tab, you can now right-click a
    video and select 'Stop after these videos'. This allows all of the current
    video downloads to finish, before halting the download operation
- The download options window (in the Formats tab) did not allow users to
    select an audio format before selecting a video format. The reason for this
    restriction was that youtube-dl did not download the right formats, if an
    audio format was selected first. Unfortuantely, it prevented users from
    downloading a separate audio file, when this was available (e.g. an .m4a
    file from YouTube). The restriction has now been removed; instead, Tartube
    will automatically reorder the specified video/audio formats, so that video
    formats are passed to youtube-dl first

MAJOR FIXES
- If an upload operation is automatically performed before a download
    operation, and if the user tried to download a single video/channel/
    playlist/folder, everything was downloaded instead of the single video/
    channel/playlist/folder. Fixed
- Fixed an error in the 'Show system command' dialogue window, that prevented
    it from opening at all
- Fixed parsing of download options inside double quotes "..."

MINOR NEW FEATURES
- Added a 'Cancel' button to some dialogue windows that didn't already have one
- Added a copy of the XDG module to the Tartube code, so it is no longer
    necessary to install it before running/installing Tartube (Linux/BSD only)

MINOR FIXES
- Fixed a system error during a forced youtube-dl update (MS Windows only)
- Fixed wrong location for config file backups (MS Windows only)
- Fixed wrong location for Tartube temporary/test folders (all systems)
- Fixed missing (or duplicate) dialogue windows after failing to load the
    config file and/or database file, in some rare situations
- The config file could not be created if its parent directory did not exist;
    fixed
- Fixed loading of the wrong database file, in some rare situations
- Removed the old 'hello world' code intended for testing on MS Windows; it's
    no longer required
- If Tartube can't find its icon files, a simple error message is now generated
    rather than a long traceback

v1.5.0 (22 Feb 2020)
-------------------------------------------------------------------------------

This is the first release candidate for v2.0.0.

MAJOR NEW FEATURES
- You can now run multiple instances of Tartube on your system at the same
    time. Multiple instances cannot load the same Tartube database; they must
    each load their own database. Tartube will now remember the databases it
    has loaded. If there are three databases (perhaps one on your main hard
    disk and two on an external drive), you can start Tartube three times, and
    they will each load a different database. This behaviour can be configured,
    if necessary. Click 'Edit > System preferences... > Filesystem > Database'
- HookTube acts as a redirection service for YouTube. Because of lawyers and
    their evil machinations, HookTube's functionality is not as extensive as it
    once was. Added the Invidious website (https://invidio.us/) as an
    alternative
- Added custom downloads. To start a custom download, click 'Operations >
    Custom download all', or right-click a video/channel/playlist/folder. A
    custom download is just like a normal download, until you customise it. To
    do that, click 'Edit > System preferences > Operations > Custom'. Custom
    downloads can be used to divert YouTube requests to HookTube or Invidious,
    and to insert a delay between video downloads when the website is
    complaining about robots
- Added a new toolbar at the bottom of the main window, below the list of
    videos. The toolbar is hidden, by default. To reveal it, click the 'Show
    filter options' button in the bottom right-hand corner. Buttons in the new
    toolbar can be used to sort the videos alphabetically, rather than by date,
    and to search for videos whose name matches a string (or regex). The button
    to search for videos by date has been moved into this toolbar
- If you find a video that can't be downloaded, and you're not sure why, you
    can now perform a test download. First, click 'Operations >  Test
    youtube-dl...' (or right-click a video in the main window's list). Copy the
    video's URL into the dialogue window, and then click the OK button. Click
    the Output tab to see the results. If the test successfully downloads the
    video, then the problem was with Tartube. If the test fails to download the
    video, then the problem is with the underlying youtube-dl software (or with
    the video website)
- During a test, it's possible to omit the video URL, while specifying some
    youtube-dl download options. For example, you could fetch the youtube-dl
    version number with the option --version
- Added a new operation for tidying up files in Tartube's data directory
    (folder). To start the operation, click 'Operations > Tidy up files...'.
    You could also right-click a channel and select 'Channel actions > Tidy up
    channel', and so on. A dialogue window appears, in which you can specify
    which files should be tidied up. Choose carefully, because any files
    deleted as a result of this operation cannot be recovered
- The main window's switch button (in the toolbar near the top of the window)
    now has six settings, rather than four. Click the button repeatedly to
    cycle through them
- Interesting and important videos can now be bookmarked (e.g., by right-
    clicking a video and selecting 'Mark video > Video is bookmarked').
    Bookmarked videos are visible in the new 'Bookmarks' folder. Bookmarking is
    an alternative to favourites; bookmarks usually apply to a single video,
    whereas favourites usually apply to a whole channel, playlist or folder
- Also added a new 'Waiting Videos' folder. This acts as your own private
    playlist - a list of videos that are waiting to be watched. To make a video
    visible in this folder, right-click it and select 'Mark video > Video is in
    waiting list'. When you watch the video, it will automatically disappear
    from the 'Waiting Videos' folder (this doesn't happen to bookmarked videos)
- The previous version was unable to delete a channel, playlist or folder (see
    below). That error caused a partially-deleted channel/playlist/folder to
    appear in the Videos tab, on the left-hand side. In case similar errors
    occur in the future, a feature has been added to look for errors and
    inconsistencies in the Tartube database and automatically fix them. Click
    'Edit > System preferences... > Filesystem > DB Errors > Check' to use it
- Tartube can now fetch a list of available video formats for a video. Right-
    click the video and select 'Fetch > Available formats'. Click the Output
    tab to see the results
- Tartube can also fetch a list of available subtitles for a video. Right-click
    the video and select 'Fecth > Available subtitles'. Click the Output tab to
    see the results
- Tartube can now remember the size of its main window, and use the same size
    when it restarts. This feature is disabled by default. To enable it, click
    'Edit > System preferences... > Windows > Main window > Remember the size
    of the main window when shutting down'

MAJOR FIXES
- In the previous version, Tartube was unable to delete a channel, playlist or
    folder. Fixed
- Some procedures took an extremely long time. For example, after right-
    clicking a channel and selecting 'Channel contents > Mark videos as new',
    the procedure could take several minutes if the channel had hundreds of
    videos, or several hours if it contained thousands of videos. The faulty
    code has been fixed, and the procedure now takes just a few seconds, even
    for many thousands of videos
- Videos in a Tartube folder (for example the 'Unsorted Videos' folder) were
    added to the download list in a 'Check all' operation, even when they had
    been checked before. This no longer happens, by default. To restore the
    original behaviour, click 'Edit > System preferences... > Operations >
    Downloads > For simulate downloads, don't check a video in a folder more
    than once' to deselect it
- Fixed the button for finding videos by date, which was not working at all in
    the previous version
- Fixed an occasional 'signal is not defined' error when the user stops an
    operation (for example, a download operation)
- Various inconsistencies in the way alternative download destinations are
    handled have all been fixed. Download operations sometimes freezed
    indefinitely, because Tartube doesn't download two channels/playlists/
    folders with the same download destination at the same time. The code has
    been updated to prevent the freeze from ever happening again
- Fixed some more crashes caused by Gtk during a download operation

MINOR NEW FEATURES
- Videos downloaded into a temporary folder are deleted when Tartube restarts.
    After shutting down Tartube, users often like to copy these videos
    somewhere else on their hard drive. You can now ask Tartube to open the
    temporary directories (folders), before shutting down, which will remind
    you to do something with the videos. To enable this behaviour, click
    'Edit > System preferences... > Filesystem > Temporary folders'
- In the main window's list of videos, the date is now displayed as 'today' and
    'yesterday' when possible. This behaviour can be disabled in 'Edit > System
    preferences... > Windows > Main window'
- During refresh operations, a progress bar is now visible in the bottom-left
    corner of the window (just like the one visible during a download
    operation)
- When setting an alternative download destination for a channel/playlist/
    folder (for example, by right-clicking a channel and selecting 'Channel
    actions > Set download destination...'), the dialogue window has been
    updated to show the previously selected alternative at the top of the list.
    This should save a lot of time when setting the alternative download
    destination for many channels/playlists/folders
- The alternative download destination, if any, is now visible in the tooltips
    for the channel/playlist/folder
- Improved the appearance of the dialogue windows seen when Tartube runs for
    the first time
- Tweaked the appearance of the list of channels/playlists/folders in the
    main window, so that for items with long names, more text is visible

MINOR FIXES
- Fixed a 'No such file or directory' error seen during a download operation,
    if an external hard drive suddenly become disconnected (for example, if
    the cable falls out)
- Fixed rare problems in loading Tartube's config file
- After a download operation, the list in the top half of the progress tab
    often had one or two items in it, even when 'Hide active rows after they
    are finished' was selected. Fixed
- The length of lines of text, and spacing between lines, in various dialogue
    windows has been made uniform
- Improved the appearance of the main window by adding frames around everything
- Renamed some misnamed icon files. The old icon files were being used in the
    MS Windows installer, so fixed that too
- If the user performed two successive refresh operations, the second one
    halted after a couple of seconds. Fixed
- When videos are deleted from Tartube's database, any post-processing
    artefacts are now deleted with them
- Fixed a few incorrect regex-matching actions
- The user can specify that the main 'Download all' button should be
    desensitised, but the setting was not applied correctly after Tartube
    restarted. Fixed
- Removed a duplicate menu option in the Video Index popup menu
- Tartube channels, playlists and folders keep counts of the number of videos
    inside them, including the number of favourite videos, downloaded videos,
    and so on. The code was not working correctly, so the counts were not
    always accurate. This version updates the code and recalculates all of the
    counts
- Fixed folder icons with an incorrect colour in various edit windows
- Fixed markup errors for videos whose URL contained an ampersand character
- Fixed the Gtk warning when closing the 'Add new video(s)' dialogue window
- Updated the installer scripts for MS Windows, so they don't try to update the
    Windows registry (the code has never worked)
- You can no longer set videos as favourite, or new (etc), in an empty channel,
    playlist or folder
- In the video list, labels can be right-clicked to copy a video's location
    (for example, so it can be copy-pasted somewhere else). This did not work
    the same way for every clickable label, and in some cases did not work at
    all. Fixed
- Tooltips for videos contained &amp; rather than a simple ampersand character.
    Fixed
- Tartube debug messages for the mainapp.py file (which can only be enabled
    by editing the file) now have a second debug flag, so the timer functions
    can be filtered out
- Checked all keyboard shortcuts to remove duplicates

v1.4.0 (2 Feb 2020)
-------------------------------------------------------------------------------

MAJOR NEW FEATURES
- The structures of files and directories (folders) in Tartube's data
    directory (into which all videos are downloaded) has been changed in
    response to Git #28. Tartube will be able to recognise both structures
    forever, so there is no need to move anything around on your computer. (If
    you actually want to move things around, see the README file)
- Creating a channel/playlist/folder starting with a full stop (period) is no
    longer allowed; some channels/playlists/folders might be automatically
    renamed when you open Tartube
- The edit and preference windows have been reorganised, adding a second
    layer of tabs in many windows. This should hopefully make things a little
    easier to find
- In the download options window, you can now specify multiple languages for
    your subtitles, instead of just one (Git #47)
- Added some more filename formats (in Edit > General download options...
    > Files > File names). When downloading a partial playlist (for example,
    starting at the 5th video), youtube-dl cannot create files with the correct
    number (naming the first file downloaded #1, instead of #5). Tartube can
    now handle this correctly. In the drop-down box, use one of the formats
    containing 'Autonumber' (Git #47)
- You can now limit the length of a download operation. This is particularly
    useful on small devices, or when leaving Tartube to run overnight. Click
    Edit > System preferences... > Scheduling > Stop, and choose one or more of
    the new options (Git #47)
- When adding new videos, channels or playlists, you can now turn on clipboard
    monitoring. Simply select a URL (for example, in your web browser), press
    CTRL+C to copy it to your system's clipboard, and then Tartube will
    automatically paste it into the dialogue window (Git #52)
- The MS Windows installer now includes a copy of AtomicParsley, so there is no
    need to install it yourself. This does not affect Linux/BSD users, who can
    continue installing AtomicParsley by the usual methods
- The list in the top half of the Progress tab is often full, and it's
    sometimes difficult to see what is being downloaded right at this moment.
    You can now hide finished rows, if you want to, so that active rows appear
    at the top of the list

MAJOR FIXES
- The Gtk graphics libraries have historically been full of bugs, which made
    applications using Gtk unstable. Most of these bugs are fixed, but the
    fixes can take years before they propogate into operating systems. If Gtk
    v3.22 (or lower) is installed on your system, Tartube automatically
    disables some minor cosmetic features to prevent crashes. If you are using
    Gtk v3.24 or later, and are still experiencing unexplainable crashes, you
    can now disable the cosmetic features regardless of Gtk version. Click
    Edit > System preferences... > General > Modules, and select 'Assume that
    Gtk is broken...'
- On Linux/BSD, attempts to update youtube-dl from the Tartube menu so,etimes
    produced a 'permission denied' error. There are now new settings available
    in 'Edit > System prefences... > youtube-dl > Shell command for update
    operations'. If you installed youtube-dl using pip/pip3, the 'recommended'
    options should now work, if they didn't work before. Some pip3 warning
    messages, which caused Tartube to think the update had failed, are now
    filtered out
- A user complained that his Tartube database file had been corrupted. We are
    still not sure what the cause was, but the code has been changed to make
    that kind of corruption impossible
- Fixed some occasional crashes when, during a download operation, Tartube
    tried to sort the videos in the selected channel/playlist/folder
- When switching databases, if Tartube couldn't load the new database, it tried
    again after being restarted, rather than trying to load the previous
    (readable) database. This has now been fixed
- Some youtube-dl download options could be applied to playlists, but not
    channels, even though youtube-dl allows them to be applied to be both.
    Fixed, and updated some labels to make it clearer what the options are for
    (Git #47)
- In all edit windows, the 'Apply' button at the bottom of the window did not
    work. Fixed

MINOR NEW FEATURES
- Tartube icons have been updated, in some cases making them easier to identify
- In the Progress tab, added tooltips to assist with identifying undownloaded
    videos (Git #51)
- More types of YouTube error message can now be filtered out
- We have also added a customisable list of strings (or regular expressions);
    if set, any matching error/warning messages (on any website) are filtered
    out
- In the Video Index popup menus, 'rename default location' has been changed
    to a much more comprehensible 'rename channel', etc
- You can now open a video in its system directory (folder) by right-clicking
    it, and selecting 'Show location'
- You can now switch databases from the main menu. Click File > Change database
    (which opens the preference window at the correct page; hopefully this is
    quicker than trying to find the right page yourself)
- There was no way to save Tartube's config file (except by shutting down
    Tartube). To do that, you can now click File > Save all
- If Tartube is unable to read the config file and/or database file, the text
    in the resulting dialogue windows has been improved. In some circumstances,
    multiple dialogue windows were produced; this has now been fixed
- In the download options window, the option to 'embed subtitles with video'
    now appears in two different places, to make it easier to find (Git #47)
- If the 'Add new video(s)', 'Add a new channel' or 'Add a new playlist'
    dialogue windows are open, you can now drag-and-drop into them (Linux/BSD
    only). Modifications to the code mean that it's no longer possible to
    drop one URL into the middle of an existing one, rendering both of them
    useless
- Tartube checked URLs for validity before adding them, but this did not work
    as well as intended. The code has been improved, so less garbage should
    appear in the 'Add new video(s)' dialogue window, and so on
- You could already download a temporary copy of video(s) by right-clicking
    them and selecting 'Temporary > Download', but that can be inconvenient
    for multiple videos, as you had to wait for each download to finish. You
    can now select 'Temporary > Mark for download' instead, which creates a
    copy of the video in the 'Temporary Videos' folder. When you're ready to
    download them all, just download that folder
- Minor improvements to aesthetics for some textviews and treeviews

MINOR FIXES
- Fixed incorrect operation of the checkbuttons in the Errors/Warnings tab.
    Added new checkbuttons to separate Tartube errors/warnings from youtube-dl
    errors/warnings (Git #50)
- 'Child process exited with non-zero code' errors still appeared in the
    Errors/Warnins tab, even if the user has disabled them. Fixed
- Tooltips for videos could not be enabled/disabled if no channel/playlist/
    folder was selected. Fixed
- On MS Windows, edit/preference windows will no longer increase in size, if
    there isn't enough room for each window's tabs
- Fixed rare 'Permission denied' errors when trying to create a directory
    (folder) on the filesystem
- In the download options edit window, the combobox for audio formats had
    multiple and ever-increasing empty spaces. Fixed
- In the download options window, File > File names, the default value for the
    custom format was garbled. Fixed, and it should now be working as intended
- During a simulated download, videos which are not in a channel or playlist
    (for example, videos in the 'Unsorted Videos' folder) did not appear in
    the Results List in the Progress tab. Fixed
- Fixed an unprintable character in the licence declaration, visible in
    Tartube's 'About' window
- When deleting a video, Tartube will now delete more related files (such as
    those produced when post-processing a video)
- Removed a few duplicate ISO 639-1 language codes

v1.3.077 (26 Jan 2020)
-------------------------------------------------------------------------------

MAJOR NEW FEATURES
- Drag and drop (for example, from a web browser into Tartube's main window)
    is now fully working on Linux/BSD. On MS Windows, drag and drop does not
    work at all for any Gtk application. It is unlikely that the Tartube
    authors can do anything about this (Git #35)
- The 'Add new video(s)' dialogue window can now handle URLs representing
    channels and playlists, as well as URLs representing individual videos.
    During a download operation, if Tartube is expecting an individual video
    but receives a channel/playlist, it will automatically create a new
    channel, and download videos into that channel. You can change this default
    behaviour, if you want (Edit > System preferences... > URL flexibility
    preferences)
- To change the name of the new channel/playlist, right-click it and select
    'Filesystem > Rename default location...'
- If Tartube creates a channel, which should really be a playlist, then you
    can now convert one to the other. Right-click a channel and select
    'Channel actions > Convert to playlist'. Right-click a playlist and select
    'Playlist actions > Convert to channel'
- In the download options windows, it's now very easy to tell Tartube to
    convert videos to sound files. Open the window by clicking 'Edit >
    General download options...', click the 'Hide advanced download options'
    button if necessary, click the 'Sound only' tab, select your preferences,
    and apply them by clicking the OK button at the bottom of the window
- You can now see the download options applied to a video, channel, playlist
    or folder without having to download anything. Right-click a video/channel/
    playlist/folder and select 'Downloads > Show system command'
- During a download operation, the system commands used are now visible (by
    default) in the Output tab. The system command can also be displayed in the
    terminal, if required; this is disabled by default

MINOR NEW FEATURES
- In the Output tab, the summary page is now hidden by default. To make it
    visible, click 'Edit > System Preferences... > Output >
    Show a summary of active threads' and then restart Tartube
- In the Errors/Warnings tab, added checkbuttons to filter out errors and/or
    warning messages, if required (Git #50)
- In the Progress tab, in the top half of the window, you can now right-click
    an unnamed video to open it in your web browser. This will be useful in
    identifying videos that did not download, and whose name is unknown to
    Tartube (Git #51)
- Columns in the Progress tab have been rearranged a little, so that the
    user can more easily see how quickly the download is progressing, when
    Tartube's main window is small

MAJOR FIXES
- Fixed multiple issues with Tartube, when running under Python 3.8
- Replaced all remaining references to the Python os.rename() function, which
    can cause crashes on some filesystems (Git #34)
- Fixed crashes caused by the new YouTube error messages (January 2020), which
    some versions of youtube-dl cannot handle correctly
- Fixed issues with the default location for videos, again. Fixed an issue
    with adding folders inside the currently selected folder (Git #36, #46)

MINOR FIXES
- Fixed various Gtk warning messages, visible only on some systems
- Videos whose name contains an ampersand (&) character could not be opened by
    clicking the 'Media player' label in the Video Catalogue. Fixed
- The properties windows for videos, channels and playlists showed a folder
    icon, instead of a video/channel/playlist icon. Fixed
- The popup menu in the Progress tab, in the top half of the tab, did not work
    as intended during a download operation, and again after a download
    operation. Fixed both sets of issues
- Coloured text was not displayed in the Output tab correctly. Fixed

v1.3.048 (23 Jan 2020)
-------------------------------------------------------------------------------

MAJOR NEW FEATURES
- Tartube now creates an icon in the user's system tray. Closing the main
    window now closes to the tray, by default. To disable this behaviour,
    click Edit > System preferences > Windows > Deselect 'Close to the tray...'
- When that functionality is enabled, Tartube can be shutdown by clicking
    File > Quit. Scheduled download operations will still take place if Tartube
    has been closed to the tray. Implements Github issue #37
- Tartube can now show a desktop notification at the end of a download
    operation, rather that a dialogue window. This does not work on MS Windows.
    On other operating systems, enable desktop notifications by clicking
    Edit > System preferences... > Operations > Show a desktop notification...
- When you click the 'Add new video(s)' button, the folder displayed in the
    dialogue window is now the same folder that's selected in the main window
    (if any). The same applies for adding channels, playlists and folders.
    Fixes Github issue #36
- If you normally use the 'Check all' button rather than the 'Download all'
    button, and if you want to download a temporary copy of one of the videos,
    there's now an easier way to do it. In the Videos tab, right-click the
    video, and select 'Temporary > Download' or 'Temporary > Download and
    Watch'. A copy of the video is downloaded into the 'Temporary Videos'
    folder, without affecting any other folders

MINOR NEW FEATURES
- The icons for channels and playlists have been replaced, to make it easier to
    tell them apart. Some other icons have been replaced too
- Videos can now be dragged and dropped from a web browser (or similar
    application) into Tartube's main window, which automatically adds the video
    to the currently selected folder (or 'Unsorted Videos', if no folder is
    selected). Unfortunately, the code is not yet working reliably. We are
    looking for a solution (Github issue #35)
- The layout of the Format tab in the download options window has been improved
    to alleviate confusion experienced by users trying to download a video to
    a sound format such as .mp3 (only). See the new section in the README file
- A number of new video/audio formats have been added, for example several new
    60fps formats, implementing Github issue #40
- When you apply download options to a video/channel/playlist/folder, the
    options are now cloned from the default set of options (those visible in
    Edit > General download options...). To disable this behaviour, click
    Edit > System preferences... > Operations > When applying download options,
    automatically clone general download options. Implements Github issue #39
- The options already applied to a video/channel/playlist/folder can now be
    reset to match the general options, any time you want. Use the new button
    at the bottom of the download options window, in the General tab

MAJOR FIXES
- Fixed a rare crash when the video's JSON filename was too long for the
    operating system
- In the download options window, Formats tab, the user can add up to three
    video formats. The third format, if added, was always ignored. Fixed

MINOR FIXES
- If you perform a refresh operation on a folder, the operation now applies to
    all videos, channels, playlists and folders inside it
- After adding a video to the folder that's currently selected, the video does
    not appear immediately in the video catalogue. Fixed
- In the Progress and Errors/Warnings tabs, the column headers scrolled away
    along with the rest of the list. Fixed; they are now always visible
- Video nicknames were not set correctly after an update operation. Fixed
- During a refresh operation, a video's name was compared against the full
    filepath (filename and extension), which produced none of the intended
    matches. Fixed
- The edit/preference windows had a tendency to increase in size without
    limits. Fixed
- A video's annotations.xml file was not deleted correctly, when required.
    Fixed
- In the download options window, the option 'hls-prefer-ffmpeg' is now working
    correctly
- In the download options window, the 'prefer avconv over ffmpeg' options have
    been desensitised on MS Windows, as there is no known method of using
    Tartube with avconv on MS Windows
- youtube-dl creates a file, ytdl-archive.txt, recording all the videos that
    it has downloaded. This can interfere if the user tries to re-download the
    video(s) for any reason. Create of the ytdl-archive.txt file can now be
    disabled (Edit > System preferences... > youtube-dl > Deselect 'Allow
    youtube-dl to create its own archive...')
- If creation of the archive file is nonetheless enabled, Tartube can now
    re-download video(s) without problems
- In rare circumstances, Tartube was unable to redraw the video catalogue
    (the right-hand side of the Videos tab). Fxied

v1.3.007 (20 Dec 2019)
-------------------------------------------------------------------------------

MAJOR FIXES
- v1.3.007 was completely broken when replacing an earlier installation. Fixed
- When Tartube's data directory was copied from one place to another (for
    example, from one external drive to another), Tartube did not adapt to the
    change very well. The way file paths are stored in Tartube's database has
    been changed to eliminate this problem

MINOR FIXES
- Fixed an invalid time value which (sometimes) prevented a refresh operation
    from completing correctly

v1.3.0 (20 Dec 2019)
-------------------------------------------------------------------------------
MAJOR NEW FEATURES
- Tartube on MS Windows did not recognise FFmpeg or AVConv. You can now tell
    Tartube to download and install a compatible version of FFmpeg from the
    main menu (Operations > Install FFmpeg). Tartube still cannot recognise
    the ordinary version of FFmpeg, and it still does not recognise AVConv at
    all. It is unlikely that this situation can be remedied
- A new Output tab has been added, in which you can see what is happening
    internally when you check or download videos, update youtube-dl, install
    FFmpeg, or refresh the Tartube database. The amount of information shown
    can be customised in the System preferences window. The information can
    still be written to STDOUT/STDERR, if required
- For users on other operating systems, the system preferences window
    displayed the wrong location of the FFmpeg/AVConv executable. This has now
    been fixed
- There are now two simple ways to specify the video resolution you want to
    download (for example, 1080p). You can use the download options window
    (Edit > General download options... > Formats, and then choose a video
    format like 'any format [1080p]'). You can also use the new spinbutton at
    the bottom of the Progress tab. Both of these methods have the same effect,
    so it's not necessary to use both of them. Tartube will download videos in
    that resolution if possible, or in the next highest available resolution
    otherwise
- The download options window has been simplified, with only the most useful
    options visible. If you want to see the full range of options, open any
    download options window, and in the General tab, click the new 'Show
    advanced download options' button

MINOR NEW FEATURES
- By default, temporary folders are no longer emptied when Tartube shuts down,
    but only when Tartube starts up. This means you can continue watching
    temporary videos you've downloaded even after shutting down Tartube. If you
    want temporary folders to be emptied on shutdown, as before, select Edit >
    System preferences... > Videos > Empty temporary folders when Tartube shuts
    down

MAJOR FIXES
- Tartube experienced a whole range of problems when downloading videos to a
    hard drive that was running out of space. Tartube now checks the available
    disk space before starting to download anything, and continues checking it
    throughout the download process. You can specify how much disk space should
    be available in the System Preferences window. If the hard drive, despite
    your best efforts, actually does run out of space, Tartube is now much more
    resilient (and can usually halt the download process, rather than
    crashing). The amount of disk space available is now visible in the System
    Preferences window
- Adding a channel/playlist/folder whose name included a slash, for example
    'Adam/Eve's Channel', had unfortunate consequences, with Tartube creating
    a directory (folder) at the wrong location. Slashes are now automatically
    converted to hyphens, which solves the problem
- In Tartube's window, dragging a channel/playlist/folder to a new location in
    the tree changes the hard drive, moving a directory (folder) to a new
    location in the filesystem. If a directory (folder) with the same name
    already existed at that location, an invisible error occurs. Tartube now
    displays a visible error so the user can delete the duplicate directory
    (folder) manually
- When refreshing the Tartube database (e.g. Operations > Refresh database),
    the moviepy module freezes if it encounters a corrupted video file. We
    can't fix the moviepy module, but the Tartube code has been made much more
    resilient
- When refreshing the Tartube database, Tartube made bad decisions if it was
    looking for a video called 'ymca.mp4', but found a video called
    'ymca.webm'. This has been fixed
- Tartube is now able to detect if its data directory (into which videos are
    downloaded) doesn't exist. Usually this is because an external hard drive
    has not been mounted; the user is now warned about this, so they can mount
    it
- On MS Windows, if the user has updated youtube-dl or installed FFmpeg,
    Tartube no longer freezes on shutdown
- On MS Windows, Tartube was unable to open a video file in the system's
    default media player, if the name contained an ampersand. Fixed

MINOR FIXES
- When deleting large channels/playlists/folders, sometimes not everything was
    deleted, and the user had to delete the item a second time. This was due to
    inconsistencies in the Tartube database, which have now been fixed
- Channels/playlists/folders beginning with a number, e.g. '5 Pewdiepie', were
    supposed to be displayed in numerical order, rather than in strict
    alphabetical order. This did not work as intended (e.g. '11 Pewdiepie' was
    listed before '1 T-Series'). Fixed again
- In the 'Delete channel' dialogue window (and so on), the name of the channel
    to be deleted is now displayed prominently
- The size of the MS Windows installer has been reduced by about 40%

v1.2.008 (30 Sep 2019)
-------------------------------------------------------------------------------

MINOR NEW FEATURES
- Tartube now ignores the YouTube 'WARNING: video doesn't have subtitles'
    by default. You can change this setting, if you want to

MAJOR FIXES
- When moving a channel/playlist/folder to a different place on your
    filesystem, or when renaming a channel/playlist/folder, in certain rare
    situations data in the Tartube database isn't updated correctly. This may
    lead to a freeze or a crash. I'm not sure yet what the cause is, but I have
    added temporary code to prevent the problem affecting any user
- Fixed error messages generated when checking/downloading individual
    channels/playlists/folders
- Fixed faulty code for importing videos/channels/playlists/folders into the
    database

v1.2.0 (31 Aug 2019)
-------------------------------------------------------------------------------

MAJOR NEW FEATURES
- Multiple channels, playlists and/or folders can now download their videos to
    a single location. The README.rst file explains how it works, and why you
    might want to do it
- You can also tell Tartube to download all videos into the 'Unsorted Videos'
    or 'Temporary Videos' folders, instead of downloading them into separate
    directories/folders for each channel and playlist
- Added automatic deletion of videos, disabled by default. Before enabling it,
    you should do a 'Check all' or 'Download all' operation, which will create
    the necessary youtube-dl archive files
- Added archiving. A video, channel, playlist or folder that is marked
    archived won't be auto-deleted (but can still be deleted manually by the
    user)
- You can now disable both checking and downloading a channel, playlist or
    folder, if you want to. (It was already possible to just disabled
    downloading them)
- Download operations can now be scheduled to take place at regular intervals
- You can now 'Download and watch' a video. The video is opened in your
    system's default media player as soon as it has been downloaded
- Tartube can now download a video's annotations file automatically. Warnings
    generated by YouTube about the lack of annotations are ignored by default
- For channels/playlists/folders containing many videos, you can now skip to
    the first video uploaded after a certain date, using the new button in the
    toolbar at the bottom of the Videos tab
- The lists in the Results tab can now be right-clicked, so you can change the
    order in which videos/channels/playlists/folders are checked/downloaded,
    abandon a download, play a video directly from the Results List, delete a
    video directly from the Results List, and so on
- The edit window for youtube-dl options has been improved, adding many new
    options to the GUI interface
- Plain text exports of Tartube's database can now be re-imported. Some
    inconsistencies with the import process (from JSON and plain text files)
    have been fixed

MINOR NEW FEATURES
- Added tooltips in several places. If you don't want to see tooltips above
    videos/channels/playlists/folders, you can turn them off
- You can now select multiple videos in the Video Catalogue, and apply an
    action to all of them (by right-clicking them)
- You can now switch to smaller icons in the Video Index (on the left side of
    the Videos tab), if you want to
- You can now force the Video Index to expand its tree whenever you click on a
    folder, revealing any channels/playlists it contains. This is disabled by
    default
- If you only want to check videos, and never download them, you can disable
    the 'Download all' buttons. Individual videos/channels/playlists/folders
    can still be downloaded by right-clicking them
- Tartube's file structure has changed. If you run it from the command line,
    you might need to use a (slightly) different command. See the README.rst
    for details of what command to use
- The path to the FFmpeg/AVConv executable can now be specified by the user.
    This will be especially helpful for MS Windows users
- Columns in the Progress tab can now be manually resized
- The Tartube website can now be opened from the main window menu
- XDG has been added as an optional dependency, for the benefit of Debian
    packagers

MAJOR FIXES
- The MS Windows installer should now work for everyone
- Refresh operations are now stable (should not crash) on systems with Gtk 3.22
    or earlier
- When downloads were disabled for a folder, downloads for channels/playlists/
    folders inside that folder were still enabled. This is counter-intuitive,
    so disabling downloads for a folder disables downloads for everything it
    contains
- Marking/unmarking a video as favourite caused certain problems, which should
    now be fixed

MINOR FIXES
- Fixed some unicode errors in reading JSON and plain text files
- Fixed the wrong page size displayed in the toolbar at the bototm of the
    Videos tab
- Empty lines in a video's description are now preserved when they're displayed
    in Tartube's main window

v1.1.0 (18 Aug 2019)
-------------------------------------------------------------------------------

MAJOR NEW FEATURES
- You can now create an export of Tartube's database. This export contains
    details of videos, channels, playlists and/or folders, but not the videos
    themselves (or any of the thumbnail/description/metadata files). The
    export can take two forms: JSON data, or plain text. If JSON data, the
    exported file can later be imported into another Tartube database (imports
    from plain text are not implemented yet). You can export either the
    entire database, or just one channel/playlist/folder (and everythng it
    contains)
- You can now change the name of a channel, playlist of folder. This doesn't
    have any effect on your filesystem; it only changes the name displayed in
    the Video Index (the left-hand side of the Videos tab). This might be
    useful for channels and playlists that have weird or very short names. For
    example, right-click a folder and select 'Folder actions > Set nickname...'
- You can also rename the channel, playlist or folder, and this action DOES
    affect the filesystem, changing the directory/folder on your hard drive
    where the channel/playlist/folder videos are stored. For example, right-
    click a folder and select 'Filesystem > Rename location...'
- If you change the format of a downloaded video file from the default 'Title'
    to, for example, 'Title + ID', the Video catalogue (the right-hand side of
    the Videos tab) will now simply display the video's title (which should be
    easier to read). To see the actual filename, you can right-click the video
    and select 'Show properties'. This only works if the video's metadata was
    downloaded when the video itself was downloaded; this is now turned on by
    default for all new users

MINOR NEW FEATURES
- When adding videos, channels and playlists, the contents of the system's
    clipboard was automatically copied into the window. This can now be turned
    off, if you wish (Edit > System preferences... > Windows > When adding
    videos/channels/playlists, copy URLs from the system clipboard)
- When adding channels/playlists, you can set the dialogue window to stay open,
    which makes adding multiple channels/playlists quicker (Edit >
    System preferences... > Windows > When adding channels/playlists, keep the
    dialogue window open)
- When creating channels/playlists/folders inside an existing parent folder, a
    dialogue window which stays open can be told to continuously re-use that
    parent folder (Edit > System preferences... > Windows > When adding
    channels/playlists, re-use the optional parent folder)
- When checking/downloading videos, the Results List (the bottom half of the
    Progress tab) can now display videos in reverse order, so you don't have to
    scroll down to see the video that was just checked/downloaded (Edit >
    System Preferences... > Windows > Show results in reverse order)
- The number of ystem error and warning messages displayed in their own tab
    is visible in the tab's label. The label is usually reset when the tab
    is made visible. You can now disable this behaviour, preserving the numbers
    until the 'Clear the list' button is explicitly clicked (Edit >
    System preferences... > Windows > Don't remove number of system messages
    from tab label until 'Clear' button is clicked)
- Items in the Video Index (on the left-hand side of the Videos tab) are sorted
    alphabetically. The sorting algorithm has been improved to take account of
    numbered items, such that '1 Music' will now appear before '11 Comedy'
- For the benefit of package maintainers (such as a Debian package), Tartube
    now uses an environment variable which will prevent Tartube from updating
    the youtube-dl binary, if specified. See the comments in setup.py

MAJOR FIXES
- Users whose system Gtk is earlier than v3.24 (this includes many current
    Linux distros, but the MS Windows installer) will have experienced graphics
    issues, and endless error messages in the terminal window, if open. If your
    system Gtk is earlier than v3.24, Tartube will no longer update the Video
    Index during a download operation; this should fix the issue at the cost of
    disabling real-time updates of the number of videos in each channel,
    playlist and folder. Your system's Gtk version is now visible in Tartube's
    System Preferences window
- After loading the config file, the download limits were set, but not
    displayed in the Progress tab. Fixed
- Rarely, Tartube crashes (or freezes) when loading a video's JSON metadata
    file from your filesystem (but now when downloading it). This should no
    longer happen

MINOR FIXES
- The 'Channel properties', 'Folder properties' (etc) windows used the wrong
    icon (displaying a folder in the wrong colour). Fixed
- Fixed a 'list modified during sort' error during a download operation

v1.0.0 (31 Jul 2019)
-------------------------------------------------------------------------------

- First beta release
- Fixed some issues with the MS Windows installer
- Some parts of the Tartube window displayed the wrong icons. Fixed

v0.7.0 (7 Jul 2019)
-------------------------------------------------------------------------------

- This is the first release candidate for v1.0.0
- The MS Windows installer has been redesigned again (thanks to slartie for his
    generous assistance in getting it working). Some MS Windows 10 users were
    still complaining that Tartube would not run; this should be fixed now
- MS Windows should find that the annoying terminal window is no longer visible
- Deleting individual videos, then adding them to the Tartube database again,
    could cause problems with the statistics displayed in the Video Index (e.g.
    'All Videos (0, -1)'. Fixed
- Deleting and individual video by right-clicking it removed the video from the
    database, but didn't delete the video file itself. Fixed
- If an empty channel/playlist was selected, new videos did not automatically
    appear in the Video Catalogue during a download operation. Fixed
- Fixed some issues with the Temporary Videos folder
- Fixed more issues with videos being dislayed in the wrong order in the Video
    Catalogue
- Fixed more issues with the scrollbars not resetting themselves when switching
    between channels/playlists/folders
- After right-clicking a folder, selecting Mark Videos > New didn't work. Fixed
- When marking videos as new/favourite, you can now do this to all videos
    in a folder, including all child channels/playlists/folders, or you can do
    it just to the videos actually inside that folder. There are several new
    popup menu options for emptying a folder, or for removing all its videos
- Tartube will no longer issue a system error if you drag a folder onto itself
    in the Video Index
- Fixed the remaining issues caused by the Gtk graphics libraries
- Confirmed that various Gtk issues present in Gtk3.22 are not present in
    Gtk 3.24. Users with Gtk 3.22 on their system will be warned to update it.
    These warnings can be disabled, if required

v0.6.0 (4 Jul 2019)
-------------------------------------------------------------------------------

- Some MS Windows users, especially on Windows 10, report that they can't run
    Tartube at all. In an effort to get around this, the installer has been
    redesigned. The way Tartube communicates with youtube-dl on MS Windows has
    been changed. youtube-dl update operations should now work flawlessly.
    Please report any further problems at our GitHub page; this might be a fix
    to issue #10
- Users on Linux/*BSD can now run Tartube directly from the command line, after
    installing it (see the README)
- Occasionally, videos were downloaded (or checked) successfully, but Tartube
    failed to notice them. This issue should now be fixed
- When checking videos/channels/playlists/folders, only new videos will now
    appear in the Results List (in the Progress tab)
- The toolbar has been redesigned. MS Windows users won't see labels at all
    (so everything should fit). Users on all system can turn labels on or off.
    Tooltips have been added to the buttons, in case the labels are turned off
- Fixed yet another problem with button to switch the location of Tartube's
    data folder (#6)
- Tartube no longer requires the python 'validators' module
- Tartube can now ignore YouTube copyright messages, and also 'Child process
    exited with non-zero code' messages, meaning that they won't appear in
    Tartube's Errors/Warnings tab. (They are not ignored by default)
- Tartube now applies a 60-second timeout when youtube-dl tries to download
    a video's metadata (since youtube-dl uses a 10-minute timeout); this can be
    turned off, if required (#9)
- Fixed some more issues with the way videos are sorted in the Video Catalogue
    (it's still not 100%)
- Users can no longer type in comboboxes
- Tartube now spots when the user adds a channel or playlist URL as a video;
    only the first video in the channel/playlist is now downloaded
- You can no longer remove download options from a media data object when the
    download options edit window is still open
- When you update youtube-dl, Tartube will now tell you which youtube-dl
    version is installed. Tartube will no longer claim the update operation
    fails if you're using pip (rather than pip3)

v0.5.0 (1 Jul 2019)
-------------------------------------------------------------------------------

- On MS Windows, the fix from v0.4.0 to prevent a crash whenever the user tries
    to change the location of Tartube's data directory, did not work. Fixed it
    again (#6), and added some dialogue window to make it clearer to the user
    what is going on
- Fixed problems with dragging-and-dropping (or otherwise moving) a channel,
    playlist or folder to a new location (such as another folder). The videos
    were not updated with their new location. The new code will fix any
    problems in the Tartube database
- Fixed numerous problems with the code that sorts videos into the right order,
    and which displays videos in the Video Catalogue in the right order
- The 'Switch' button no longer resets the page back to the first one
- When switching between channels/playlists/folders, scrollbars are
    automatically moved back to the top
- In the toolbar beneath the Video Catalogue, there are two new buttons for
    scrolling to the top or bottom of the visible page. Users can now select
    a different page just by typing the page number and pressing RETURN. The
    same applies to the page size - there is no button to click any more, just
    type the new size and press RETURN
- Fixed several problems which were still preventing selection of different
    video formats (#3)
- Added bare-bones aac, m4a, mp3, ogg and wav as recognised video formats
- A set of download options can now be completely reset to their default values
- The 'Add Videos' dialogue window, and some others, don't behave well when the
    user resizes them. Fixed (#4)
- Added a small folder icon to the the 'Add Videos' dialogue window, and
    others, so the user is less likely to forget to set a custom location
- In the 'Add Videos' dialogue window, and others, URLs are now tidied up a
    bit because being copied from the clipboard, eliminating leading/trailing
    whitespace and empty lines
- The Gtk test window, available for MS Windows after using the installer,
    now contains some text (to make it clear that the window is working as
    intended)

v0.4.0 (29 Jun 2019)
------------------------------------------------------------------------------

- Drastic improvements to overall performance. Download operations are now much
    smoother. You should notice a much lighter burden on your machine's CPU
- The graphics libraries struggled to draw lists containing hundreds (or
    thousands!) of videos, so the Video Catalogue has been split into pages. It
    typically takes less then a second to show the 'All Videos' folder, if it
    contains hundreds of videos, rather than several minutes
- If you just want to find new videos, you can now tell Tartube to stop
    checking/downloading channels/playlists as soon as notifications of videos
    you've already checked/downloaded start arriving. This works well on
    YouTube, which sends the newest videos first, but might not work well on
    all websites. The new functionality is turned off by default. Click
    'Edit > System preferences > Performance > Time-saving preferences' to turn
    it on
- The installer for 32-bit MS Windows failed under all circumstances. Applied a
    fix
- On MS Windows, the uninstaller was invisible. It can now be executed from the
    Start Menu
- On MS Windows, fixed a crash whenever the user tried to changed the location
    of Tartube's data directory (#6)
- Fixed some problems with the 'Add videos' dialogue window, which tried to add
    all sorts of invalid URLs (such as lines containing only empty space). The
    other 'Add' dialogue windows were also fixed
- A limit to the length of a channel/playlist/folder name now applies
- Leading/trailing whitespace is now removed from URLs and channel/playlist/
    folder names
- The 'Add videos' dialogue window now checks for duplicate URLs, and when
    found, doesn't add them to the database
- Fixed various problems caused by deleting a video/channel/playlist/folder
    (such as the numbers visible in the Video Index). If you've been using an
    earlier version of Tartube, any such problems with the database will be
    automatically repaired for you (#8)
- Videos which haven't actually been downloaded can now be deleted from the
    database by right-clicking them
- Added new options for making backups of the Tartube database file, in case it
    becomes corrupted. See the settings in
    'Edit > System preferences... > Backups'
- The 'Switch' button now switches between four 'skins' (instead of the
    previous two). Two of them show the name of a video's parent channel/
    playlist/folder; the other two show the video's description
- Fixed incorrect formatting in the DASH and 3D file formats (#3)

v0.3.0 (25 Jun 2019)
-------------------------------------------------------------------------------

- Tartube will now run on MS Windows
- Fixed some more crashes
- Fixed some issues with video descriptions containing quotes and ampersand
    characters

v0.2.0 (23 Jun 2019)
-------------------------------------------------------------------------------

- Corrected old Python2 code to work on Python3
- Greatly expanded the README file
- Fixed the constant crashes
- Fixed some Gtk problems (but others remain unfixed)
- Fixed downloads for users who haven't installed FFmpeg, and for sites that
    don't support FFmpeg
- Several other minor tweaks/fixes

v0.1.0 (27 May 2019)
-------------------------------------------------------------------------------

- This is the first public release of Tartube

