Skip to content

Releases: DobyTang/LazyLibrarian

September 2018

20 Sep 12:06
65493e7
Compare
Choose a tag to compare

New Features
Added includeAlternate, createMagCover, createPlaylist api calls
Optional page number for magazine covers
Option to generate a new cover from issues page
Transmission/qbittorrent optional delete if still seeding
Added book description popup

Cosmetic changes
html5 clear button on search boxes
html5 number fields in config
Shorten long titles and add tooltip with full title
Added tooltip showing transfer type (nzb/torrent/magnet)
More compact config pages

Bug Fixes
Strip leading/trailing spaces on config values
Suppress auto-update if sync/scan in progress
Fix deb post-install script
Extra debugging messages on copy/move if permission refused

August 2018

11 Aug 12:06
bb99887
Compare
Choose a tag to compare

New Features
OPDS server
Delayed searches for previously unfound books
Daily api limits for nzb/tor providers

Bug fixes/enhancements
Show ssl version info in debug log and system info popup
Added more icon sizes to manifest
Show torrent dates from limewire and torrentdownloads
Added spinner while manual searching for books
Don't rename downloads from nzb providers until postprocessing
Added link to rss feeds for apps that do page scraping
Changes for jackett results where jackett may b64encode the response
Deluge/jackett communication fixed
Show reason for download failure in history popup
Cache isbn lookups to reduce future api calls
Added check for urllib3 as some requests installations don't include it
Additional namevars for series naming
Slack messaging changes (thanks @BarbecueSauce)
Magazine opf changes (thanks @knobunc)
Added openlibrary as a source of book covers
Assume author of book 1 of a series is the main series author
File contents checking for rtorrent, utorrent, synology torrents
Option to rename "Open" button if lazylibrarian being used purely for admin/download, not accessing books
Added playlists to audiobooks and option to download different parts
New series filters, Complete, Partial, Empty
Show original publication date where available
Versioncheck interval of zero now disables startup check
New job status popup
New setWorkID and authorUpdate api calls
On refresh, verify bookid/workid have not changed at goodreads
Fix possible incorrect book status on author refresh
Fix filter reset button resetting too much, or not enough
Fix for some piratebay proxies returning full url instead of relative

June 2018

09 Jun 16:19
eb985a9
Compare
Choose a tag to compare

Major database upgrade
LibraryThing have disabled WhatWork which was a useful source of series and author info. Database rebuild required to use alternate info from GoodReads and Google.

New Features
Show ETA for database upgrade
Slack URL made configurable
Moved config [SAVE] button to top of page
Added select buttons to authors for bulk status changes
Added "banned extensions" check, so we can look inside torrent contents and reject
(only for deluge/transmission/qbittorrent currently)
Separate out issues we already (think we) have in pastissues table
Test providers now reloads capabilities before testing (unless set to manual)
Add magazine rename option on libraryscan
Added option for user to set their preferred booktype for [Open]
BookType popup if more than one type and no default set, or default not available
RSS feeds for recent downloads
Debug loglevels are now a bitmask, and can be set using --loglevel
Added python magic library to detect booktypes from libgen if they don't tell us the extension
Separate wishlist interval timer (rss and wishlists at different intervals)
Added webapp manifest and icons for full screen integration on mobiles
Remove need for magazine folder to start with . or _
Added growl notifier
Show rating count in search and enable sorting for rates (thanks cdancette)
Options to blacklist failed and/or processed downloads for retry
Local copies of js and css files
Update to fontawesome 5.0.13 and use local copy
Progress bars in history for snatched items

Bug Fixes
Remove the "ignore for 24hrs" cookie on manual version check
Recount series totals if a book status is changed
Recalculate most recent issue details on issue removal
Check preferred filetype for email per-user
Show direct download progress bar
Repair google books when no api key, and when index error (thanks cdancette)
Fix for a rescan not checking if the new result is already in the database
Fix for python3 using bytes when unpacking archives
Fix for deluge labels needing to be lowercase
Fix for goodreads merging authorids
Fix for "Change Selected Books" action in Manage resets books/audiobooks filter
Fix for Transmission ReadTimeout
Transmission/qBitTorrent/Deluge now pass torrent contents to fix jackett redirect issue
Reworked issue number / date parsing for magazines

March 2018

23 Mar 16:55
4033963
Compare
Choose a tag to compare

Bug fixes and enhancements

Fix if incompatible csv module found
Use displayname in manual search results
Reworked deluge communication
Added certificate option to deluge webui
Added listNoLang and listNoISBN api calls
Keep transmission session id between calls
Confirmation dialog before deleting author
Changes for http redirected to magnets
Fix broken twitter notifier, changed auth request saving
Fix not saving audiostatus when refreshing author
Test providers buttons clear book-search if bad request
Managebooks changes to manage ebookl or audiobook
For notifiers that return a devicelist, send test message after getting the list
Added ignoreclient logMessage grSync and getIssueName api calls
Use subcat instead of main category in nzb searches, not in addition to
Return to issue page with refresh on libraryscan
Include "wanted" details in call to custom notifier
Magazinescan for single title
Allow custom notifier to return stdout/stderr messages to lazylibrarian
Add "ignore" button to all github popups

Python3 at last

15 Feb 15:25
df42112
Compare
Choose a tag to compare

Major change is python3 compatibility. LazyLibrarian should now run under python 2 and 3 from the same codebase, with the exception of some libraries where we ship library versions for both pythons.

Other Changes
Calibre user column syncing
Magazine name matching optimisation
Magazine select optimisation
Sqlite3 query optimisation
Look inside downloaded archives for ebooks
Option to disable magazine opf creation
Updated requests library
qbittorrent api fix
Upgraded to beautifulsoup4
Updated oauth2 library
Cosmetic changes to config page
Added "display name" for Newznab/Torznab/RSS providers
Postprocessor optimisations
Added universal line ending to csv reader
Updated bencode library
Updated pynma
New id3 reader library "tinytag"
Fix for testing providers without saving first

December 2017

24 Dec 15:57
fa4f5ce
Compare
Choose a tag to compare

** Updates and new features**
Old default interface is renamed "legacy" and Bookstrap is the new default
Rewrites/changes to make porting to python3 easier
Show system info in config
Show remote ip address in api calls
Add cover selector to book manual edit page
lossless compression of images saves 66KB (thanks Fish2)
writeOPF and writeAllOPF functions
Add $Series variable to book rename
Hook for optional debug/fix module at startup
Add titles to coverwall
Limit coverwall results for slow connections
Added PROXY_LOCAL to config.ini
Show recent downloads or recent additions in book coverwall
Added test button for calibredb
Look for books in downloaded archives (tar/zip/rar)
Added "Read" and "ToRead" bookmarks to status buttons and api commands
Option to auto login the admin user if single user system
Added SerNum and SerName variables to name formatting options
Separate autoadd directory for magazines

** Bug Fixes **
Fix for calibre author name capitalisation
Moved download directory into the same config section as the other folders
Accept any downloaded jpg as a book cover, not just cover.jpg
Regex changes to reduce false series matches
Extra password stripping in debug log
Remember added/downloaded status on changing nr of columns
Check for single file audiobooks with no tags
Use unignoredbooks for homepage totals (thanks HaydoZV2)
Check renamed torrent doesn't now contain a reject word
Use composer as author from mp3 tags (if present)
Ensure we talk to git using English month/day names

October 2017

31 Oct 22:32
b7ca967
Compare
Choose a tag to compare

New Features
User accounts
Telegram notifier
Goodreads listopia feeds
Optional sort author names surname first
Optional sort books without definite article
Delete books rather than mark ignored if author is not active
Optional rename existing books/audiobooks to match naming patterns
Series links on manage/ebook/audiobook pages
Series status shows both ebook and audiobook status
Use https for goodreads calls (new goodreads requirement from December)
Goodreads oAuth registration included in main program
Layout changes in config providers
Include sample bookstrap theme in distribution
Include config.ini in debug.zip
addBook api call, type option added to queue/unqueue
Added global reject list for mags
Option to ignore startup version check

Bug Fixes
Include "pen name" as valid author role
Remove empty provider slots in config
Fix for losing author status on rescan
Fix broken "Manual" edit link
Fix for Localhost redirecting to 127.0.0.1
Workaround for systems with older sqlite3 that don't support group_concat
Bug fix for id3 detection with missing/empty fields
Check if goodreads renames an untitled book and update to match
Changes to exception handling, and include exception name in log message
Threading name changes so we can check for duplicate tasks
Extra debug messages in fetchURL and github communication
Replaced shlex and re.sub with faster alternatives
Delete from wanted table when deleting book/mag from database
Delete orphaned entries in wanted table
Use configured logdir at startup

August 2017

31 Aug 10:12
Compare
Choose a tag to compare

New Features
Goodreads sync bookshelves
Goodreads follow/unfollow authors
Column tidying to reduce clutter
Extra debug columns in log (thanks @billbo99)
Added windows daemon instructions to wiki (thanks @seanvree)
Extra links to series page from author page (thanks @billbo99)
Added "file-as" to metadata.opf for calibre
Added user/pass options to calibredb, url access, delete from calibre
Check age of nzb and reject if too old
Allow pseudonym as a valid author role
New id3 library for audiobook metadata
Anonymised debug log creation
Added a few more icons on buttons

Bug Fixes
Use authorid instead of authorname in search results
Fix for books with no title
Oldest author change to include "wanted" and "loading" status
Default TASK_AGE set to 2hrs
Syntax fix in README.md (thanks @petemounce)
Goodreads image grabbing changed
Allow utf-8 responses in webforms
Fix for scandinavian characters in authornames
Fix for authorname ending in dot
Fix for libgen dns block
Fix for emailing books and magazines

July 2017

08 Jul 07:25
Compare
Choose a tag to compare

New Features
Option to email book/mag via notifier
Coverwall option on issues page
Create magazine .opf files
Show libraryscan in progress with refresh on relevant pages
Buttons to clear download counters and blocklist
Added second libgen slot in config
Allow user to set libgen search
Separate audiobook and ebook manual searches
Magazine issue name can be date only, or title & date
Added "remove from history" command on successful postprocessing Sab and nzbget
Added categories for tpb
Prowl notifier support - thanks @barbequesauce
Added "show ignored authors" button
csv import improved
Added mimetype for downloads so browsers can auto-open
Added WorldWideTorrent provider

Bug Fixes
sqlite commands now use tuples instead of string substitution
Ensure params are url encoded
Fix check for missing books on libraryscan
Check ebook/audiobook locations on author scan
Magazine title error trapping
Set maximum search pages in config
utf-8 and latin-1 config parameter changes
Fix incorrect button for opening audiobooks
Prefer opf metadata to embedded if conflicting
Store link to preferred ebook type, not first one scanned
Re-ordered postprocessor bookcount/status handling
Add manual search snatches to history
Fix for space at end of directory name
Fuzzy match changes
Fix broken status sort
Fixed unknown 'module' references in logger calls
Unicode import fix
Config parser error checking
Torznab url splitting changed
Better handling of incomplete xml pages

Audiobook support, toggle columns, provider priorities

10 Jun 13:16
Compare
Choose a tag to compare

New Features
NOTE - some of the new features are only available in the bookstrap interface
Eventually plan is to make bookstrap the default for new installs and drop the old default interface

Audiobook support with id3 tag reading
Toggle buttons for column visibility
Combined book searches (rss/tor/nzb all searched in one task)
Provider priorities (prefer nzb over tor, one nzb over another, etc)
Button to clear failed search results (failed search = blacklisted)
Moved libraryscan buttons into Author, eBook and Audiobook pages to only scan relevant parts
Added temporary provider blacklist to stop querying providers that returned an earlier error, eg api limit exceeded, provider unavailable
Removed googlebooks api key, the daily limits are quite restrictive so each user needs to get their own key

Bug Fixes
Better exception handling
More debug messages added
Fix for default interface failing to save config items that only bookstrap interface knows about
Fix missing labels on default config page preventing git items and webroot saving properly
Update from command line moved earlier in bootup, so can recover from previous broken update
Renamed Search Filter to Result Filter so it's more clearly not a search box
More unicode conversions and error trapping