- Automatic login! 💻
- The new
login
command allows getting the cookies from your browser automatically, without having to use the developer console and theconfig cookies
command - Users who want extra control can specify the domain the cookies belong to (defaults to ".furaffinity.net"), and the name of the cookies themselves (defaults to "a" and "b")
- The following browsers are supported:
- Brave
- Chrome
- Chromium
- Edge
- Firefox
- LibreWolf
- Opera
- OperaGX (only on macOS and Windows)
- Safari (only on macOS)
- Vivaldi
- The new
- Renovated web app!
- Editing
- User profiles, submissions, and journals can be edited or deleted directly from the web UI
- Files can be sorted, deleted, or added
- When using authentication, specific users can be given editing rights with the new
--editor
option
- Comments search
- Search comments and open the relevant submission or journal
- Advanced search operators
- Exact matches with equal (
==
) and not equal (!=
) instead of using^
and$
- Comparison matches with greater-than (
>
,>=
) and lower-than (<
,<=
) - Substring matches (
%=
) (to force it on columns that do not use it by default) - Mix & match operators
@date %-03-% >= 2020
- Exact matches with equal (
- Completely overhauled server application
- Overhauled database queries and caching system
- Faster loading of submissions, journals, and user pages
- Added option to limit results for faster queries
- Added option to turn off caching to save on memory
- Support multiple users/passwords for authentication
- Support logging out
- Rewritten frontend
- Navigate search results directly from submission and journal pages (only available when caching is enabled)
- Support viewing PDF files in the browser (desktop only)
- Improve file selector for submissions
- Better zoom behaviour for images
- Collapsible comment trees
- Improved loading placeholders
- Show user icons in comments and gallery, scraps, favorites, etc. pages
- Sort tables by clicking on headers
- Editing
- Removed
download login
command- It has been effectively replaced and extended by the new
login
command
- It has been effectively replaced and extended by the new
- The
paw
command does not detect truecolor mode automatically because of an issue with the library providing the feature - The
paw
command has two additional flags available- Palestine 🇵🇸
- Ukraine 🇺🇦
- Fix installation issue caused by the supports-color package and its dependencies
- browser-cookie3 ^0.19.1
- faapi ~3.11.5
- falocalrepo-database ~5.4.6
- falocalrepo-server ~3.4.0
- Fix CVE-2023-37920
- Fix CVE-2023-43804
- Fix CVE-2023-45803
- Fix CVE-2023-50447
- Fix CVE-2023-52323
- Fix CVE-2024-3651
- Fix CVE-2024-3772
- Fix CVE-2024-22195
- Fix CVE-2024-24762
- Fix CVE-2024-24762
- Fix CVE-2024-28219
- Fix CVE-2024-34064
- Fix CVE-2024-35195
- Fix CVE-2024-37891
- Fix square brackets [] being removed from usernames
- Fix issue #11
- faapi ~3.11.4
- Fix issue #11
- falocalrepo-database ~5.4.5
- Fix issue #11
- falocalrepo-server ~3.3.5
- Fix issue #11
- Fix CVE-2023-4863
- Fix CVE-2023-29159
- Fix CVE-2023-30798
- Fix GHSA-74m5-2c7w-9w3x
- Fix recursion limit error when downloading submissions or journals with a long chain of replies
- Fix issue #10
- Use faapi ~3.11.3
- Fix issue #10
- Use click ~8.1.6
- Fix errors when downloading submissions with no or partial category
- Fix issue #9
- Use faapi ~3.11.1
- Fix issue #9
- The new version of FAAPI does not use CloudflareScrape anymore
- Use faapi ~3.11.0
- Fix issue #8
- Fix CVE-2023-32681
- Fix user folders being incorrectly saved as
Folder.x
instead of just the folder name in the database when runningdownload users
on Python 3.11- Also fixes
ValueError: 'Folder.x' is not in list
errors when runningdownload update
- NOTE: To fix user folders with the wrong content, use the
database edit
command
- Also fixes
- Use falocalrepo-database ~5.4.4
- Fix crash on startup on Python 3.11
- Support New Fur Affinity UI ✨
- Support the new UI introduced on November 26, 2022
- Note: the new UI does not show comment parents yet, but the parent comment link is still present in the HTML and just commented out, so the parser uses regex to extract the parent ID; this could cause unforeseen issues so be careful when downloading comments
- Use faapi ~3.10.0
- Support New Fur Affinity UI
- Fix issue #7
- Fix dates for journals and submissions being parsed incorrectly on some occasions
- Use faapi ~3.9.6
- Fix incorrect parsing of dates on some journals and submissions
- Use falocalrepo-server ~3.3.3
- Fix issues with thumbnails and the zoom button for submissions with multiple files
- [BBCode]
- Thanks to the new HTML to BBCode converter introduced with faapi 3.8.0, submissions, journals, and user profiles can now be stored in BBCode format instead of the raw HTML
- BBCode mode can be toggled on and off using the new
database bbcode
command - BBCode mode greatly improves search results by removing HTML boilerplate, and reduces the size of the database
- Warning: HTML to BBCode conversion (and vice versa) is still a work in progress, and it may cause some content to be lost, so a backup of the database should be made before changing the setting
- Database doctor 🩺
- New
database doctor
command to check entries for errors and fix them when possible - Users are checked for inconsistencies in their name to make sure that they can be properly matched with their submissions, journals, and comments
- Submissions are checked with their thumbnails and files to ensure they are consistent, and the program will attempt to add files that are in the submission folder but are not saved in the database
- Comments are checked against their parents, if the parent object does not exist then the comment is deleted if
the
--allow-deletion
option was used withdatabase doctor
- New
- Headers and footers
- Submissions and journals now support headers and footers as separate columns in their respective tables
- Headers and footers can be temporarily turned off when running
download
commands using the--content-only
option; when turned off journal downloads are much faster, as the program doesn't need to get each individual journal page
- Pre-operation backups 💽
- New triggers have been added to perform backups before config changes, database edits, and downloads instead of only afterwards
- Comments are now saved by default and can be turned off with the
--no-comments
option (the old--save-comments
is no longer supported) - Improve formatting of counters during download
- Hide terminal cursor on Linux and macOS systems
- Allow second database of
database merge
command to be non-writable (e.g. if it is owned by root on a UNIX systems)
- Fix journals not being always saved when comments, headers, and footers were disabled, the journals folder was the last one to be downloaded/updated, and the download was interrupted manually or by an error
- Fix after-download counters not being correct if the download was interrupted
- Fix typos and errors in help messages
- Fix ` being removed from usernames
- Use faapi ~3.9.2
- Fix users with ` in their name not being handled correctly
- BBCode to HTML conversion
- Improvements to BBCode conversion
- Use falocalrepo-database ~5.4.3
- Add
SUBMISSIONS.FOOTER
,JOURNAL.HEADER
, andJOURNAL.FOOTER
- Add BBCode setting to
SETTINGS
- Add
- Use falocalrepo-server ~3.3.2
- New grid view for submissions with multiple files
- Support BBCode
- Show user icons
- Show headers and footers for submissions and journals
- Use psutil ^5.9.3
- Fix
config list
not working
- Fix remaining
--replace
option indatabase add
help message
- Fix editing of non-submissions tables (USERS, JOURNALS, and COMMENTS)
- Use faapi ~3.7.4
- Fix CVE-2022-2309 issue
- Use falocalrepo-server ~3.2.7
- Fix CVE-2022-2309 issue
- Use falocalrepo-database ~5.3.7
- Remove
--replace
option fromdatabase add
command, thedatabase edit
command can be used modify existing entries
- Fix submission files extensions not being correctly detected for some files when adding/replacing them
with
database edit
- falocalrepo-database dependency set to ~5.3.5
- Improve detection of plain text files
- Remove
--browser
option from theserver
command as it had no effect since it was the default value; the--no-browser
option remains to disable opening the browser automatically - When an error is encountered during downloads, the program exists with status code 1 instead of 0
- falocalrepo-server dependency set to ~3.2.4
- Open browser for server 💻
- A new browser tab/window is opened automatically when using the
server
command - New
--browser
and--no-browser
options forserver
to toggle opening the browser (defaults on)
- A new browser tab/window is opened automatically when using the
- Requests are timed out after 60 seconds to avoid infinite waits during file downloads.
- falocalrepo-database dependency set to ~5.3.4
- Fix incorrect extension selection for files with non-specific MIME types (e.g. docx)
- Interrupting a database backup does not leave a temporary file behind
- falocalrepo-server dependency set to ~3.2.2
- Open browser on startup
- Fix CVE-2022-30595
- Fix journals searches
- Fix visual errors
- Support spoiler text
- Add file counter in search results for submissions with multiple files
- faapi dependency set to ~3.7.2
- Fix journals parsing when using full date format
- Add requests timeout
- Multiple submission files 🗂
- Add extra submission files for submissions in the database for alts, extra versions, attachments, etc.
- All submission files can be viewed with the web app
- Automatic backups 💾
- Automatic backup options can be set using the new
config backup
command - Backup can be triggered for downloads, added/modified/removed entries, or modified options
- Automatic backup options can be set using the new
- Removed the
--relative/--absolute
option fromconfig files-folder
command, the given folder path is saved as-is - The
@any
query field does not includeFAVORITES
,FILESAVED
,USERUPDATE
, norACTIVE
to avoid redundant results - The
@author
query field matches usingLIKE
instead of finding only exact matches (i.e.ab
matchescabd
,abcd
, etc.) - Show paths to submission files with
database view
- Fix
database add
anddatabase edit
using submission thumbnail as submission file - Fix missing
database edit
fromdatabase
commands list - Fix incorrect formatting for
database edit
anddatabase view
help - Fix missing help message for
--replace
option ofdatabase add
command
- falocalrepo-database dependency set to ~5.3.0
- Support multiple submission files
- falocalrepo-server dependency set to ~3.2.0
- Support multiple submission files
- Support video files for submissions
- Update style to Bootstrap 5.2.0 (beta 1)
- faapi dependency set to ~3.7.1
- Fix incorrect username extracted from userpages, which broke
@me
fordownload
commands
- Fix incorrect username extracted from userpages, which broke
config files-folder
command does not move files by default, only when using the--move
option- Remove
--no-move
option
- Remove
- Fix
FileNotFoundError
when moving files to a new location withconfig files-folder
- faapi dependency set to ~3.7.0
- falocalrepo-server dependency set to ~3.1.4
- click dependency set to ~8.1.3
- Fix error occurring on watchlist download/update when adding a new watch for a user that wasn't part of the database already
- Fix
--replace
value not respect indownload users
for folders declared after a watchlist folder option
- Fix error when setting a new files folder using
config files-folder
- Fix comments for submissions overwriting comments for journals (and vice versa) if the comment ID was the same
- Caused by Fur Affinity not using a unique ID key for comments, using instead the submission/journal ID as part of unique index
- falocalrepo-database dependency set to ~5.2.2
- Update
COMMENTS
table to accept comments with same ID but different parent
- Update
- falocalrepo-server dependency set to ~3.1.2
- Comments to submissions and journals can now be viewed directly in the terminal with
database view
using the--view-comments
option
- Improvements to link rendering with
database view
- Fix
database merge
anddatabase copy
not finding all entries when using%
as query
- falocalrepo-server dependency set to ~3.1.1
- New
--replace
option fordownload users
- Update metadata for entire user galleries
- Fetch the latest comments with the
--save-comments
option
- Add comments to
database info
- Fix journals stopping after the first page due to a change in Fur Affinity's journals page that broke the FAAPI parser
- To fix the affected users and download their journals, use the following
command
download update -f journals --stop 9999
- This will update all users that have
journals
in their folders, and not stop until 9999 journals are found in the database for each user (or no more journals are available on FA) - To be sure that all journals are downloaded, a higher stop number can be used
- This will update all users that have
- To fix the affected users and download their journals, use the following
command
- Fix database merge/copy not working because of
COMMENTS
table
- faapi dependency set to ~3.6.1
- Fix
FAAPI.journals
not detecting the next page correctly, caused by a change in Fur Affinity's journals page
- Fix
- falocalrepo-database dependency set to ~5.2.1
- Fix missing support for merge/copy of
COMMENTS
table
- Fix missing support for merge/copy of
- Comments! 💬
- New
--save-comments
option fordownload
commands allows saving comments of submissions and journals - Comments can be updated on a per-entry basis using the
download submission
anddownload journal
commands with both the--replace
and--save-comments
options enabled - Comments can be viewed with the
database view
command and in the web app with theserver
command - Search, view, edit, remove, etc. all work with comments
- Submissions and journals search cannot query the comments table
- New
- Fix incorrect argument error for
download journals
- falocalrepo-database dependency set to ~5.2.0
- Add comments table
- falocalrepo-server dependency set to ~3.1.0
- View comments for submissions and journals
- faapi dependency set to ~3.6.0
- falocalrepo-server dependency set to ~3.0.5
- click dependency set to ~8.1.2
--retry
option fordownload
commands defaults to 1- Removed
--retry
option fromdownload journals
(it is only used for file downloads, which never occur when downloading journals only)
- Added
--retry
option todownload
commands. When set, failed submission files and thumbnails downloads will be performed again up to a maximum of 5 retries.
- falocalrepo-server dependency set to ~3.0.3
- Separate download counter for userpages to make the "modified users" counter specific to changes to
ACTIVE
andFOLDERS
- Fix some download counters not giving the correct amount of unique entries
- Fix rare error when using the
database view
command on entries that contained CSS color styles that were not lowercase, causing the color to not be displayed correctly
- falocalrepo-server dependency set to ~3.0.2
- Change default sorting column of journals and submissions to
DATE
(same results asID
) - Fix rare decoding error when the submission file was an unrecognized file format and the file url had no extension
- Change default sorting column of journals and submissions to
- Fully rewritten web server!
- Completely new UI using Bootstrap for a responsive, modern interface
- Javascript usage has been almost completely eliminated for a much faster experience and lighter load
- Search settings can now be customized for each table and saved in the database
- Search results can be viewed in both list and card (with thumbnails for submissions) mode for all tables and device sizes
- A message is now printed when using
database upgrade
on a database that is already up-to-date - A message is now printed when no users can be updated with
download update
(either because the--like
queries returned no results or because the selected users are not active) - Give meaningful error messages for those cases where the program does not have read or write access to the database path or its parent folder, or if the latter does not exist
- Fix deleted users (accounts that have been removed instead of simply disabled) not being deactivated in the database
during
download users
anddownload update
- Fix watchlists downloads and updates causing users to be deactivated
- Fix uncaught
OperationalError
exception raised when callinginit
with a database path pointing to an external volume that wasn't mounted or other inaccessible location
- falocalrepo-database dependency set to ~5.1.2
- Add a new
ACTIVE
column to theUSERS
table for easier tracking of inactive users (added in version 5.1.0) - Fix
CATEGORY
column in theSUBMISSIONS
not respecting spaces around slashes (/) as they are shown on Fur Affinity
- Add a new
- falocalrepo-server dependency set to ~3.0.0
- Fully rewritten frontend using Bootstrap and almost no Javascript for a much faster and more responsive experience
- faapi dependency set to ~3.4.3
- Fix submission category not respecting spaces around slashes (/) as they are shown on Fur Affinity
- If an invalid username (one that does not contain any of the allowed characters
[a-z0-9.~-]
and is not@me
) is passed todownload users
anddownload update
an error is raised and the program stops - Raise a clear error if no cookies are saved in the database instead of raising
faapi.exceptions.Unauthorized
- Handle
faapi.exceptions.Unauthorized
if it's caught during a download - Login status is checked before starting a download
- Fix unexpected keyword argument error in
paw
command - Fix invalid usernames passing through
download users
anddownload update
arguments parsers without errors - Fix download history event added even when the download never started
- Fix rare error occurring when setting a crawl delay with
FALOCALREPO_CRAWL_DELAY
and Fur Affinity's robots.txt was somehow empty - Fix missing color formatting in
config cookies
help message
- Fix submissions not being fully updated if a submission is already present in the database and has changed folder since it was downloaded
- Fix incorrect formatting of error message when
database view
could not find the entry - Fix missing
@me
information indownload users
anddownload update
help messages - Fix inverted
UPDATED
andADDED FAV
messages when downloading submissions viadownload users
anddownload update
- Add support for
@me
user indownload users
anddownload update
commands to select own username- The username is fetched at the start of the download process
- The
download update
command treats watchlists updates like downloads- During updates, only modified/added entries will be shown unless the
--stop
option is used, in which case all entries are shown
- During updates, only modified/added entries will be shown unless the
- Fix crashes when piping output of
download
commands - Fix watchlists updates stopping too early because of alphabetic sorting
- Fix modified entries being considered as found by
download update
, stopping the update too early - Fix color ANSI codes used by
download
output for userpages not being turned off for pipes or when using--no-color
option
- Fix
database date
throwing an error when called without--filter-date
- Catch request exceptions during
download
commands for better output and graceful exit
- Fix leftover debug code blocking the terminal width to 80 columns
- Fix incorrect output of
download login
whenFALOCALREPO_FA_ROOT
was set
- Fix infinite loop on
download
if the terminal width was too small
- Fix users being set as modified when using
download update
with a watchlist folder - Fix
download update
throwing an error if no--user
option was given
- Add
database view
command to view entries directly in the terminal- Alignment, colors, emphasis, links and more are converted from the HTML fields and formatted for the terminal
- Add watchlist by/to support to
download users
- Creates/modifies user entries for each user found in the specified watchlist
- Allow passing SQLite LIKE queries to
--user
arguments ofdownload update
- Add
--filter-date
option todatabase history
- Use
FALOCALREPO_FA_ROOT
environment variable to set Fur Affinity request root - Shell completions for
database search
columns - Shell completions for
help
commands
- Rewrite of the download handler to be more stable and fix inconsistent output
- Remove
database export
commanddatabase search
can produce the same output with the--column @
option and piping
- Table column widths for
table
output ofdatabase search
command are now set using the--table-widths
option - History events are not added for
download
command using--dry-run
- Rename
--true-color
option to--truecolor
forpaw
command
- Fix
help
raising an error if the command seeking help for required an existing database file which couldn't be found, but was set by theFALOCALREPO_DATABASE
environment variable. - Fix rare inconsistent download output
- faapi dependency set to ~3.4.2
- Detect users pending deletion and flag them as deactivated
- Fix
download update
command warning for users not in archive
- Print an error for users given to
download update
command that aren't in the archive - Use
FALOCALREPO_CRAWL_DELAY
environment variable to set a crawl delay higher (or equal) than the one in Fur Affinity's robots.txt
- Improve download messages for journals
- Fix submissions that changed folder not being updated
- Improved colors in the
paw
command help
- Fix error when
--report-file
was used together with adownload
command concerning user pages.
database search
command now supports multiple--sort
options for multiple levels of sorting (e.g.AUTHOR asc
andID desc
)--report-file
option added todownload
functions (excludingdownload login
) to print a detailed report in JSON format to a file
- Remove
--order
option ofdatabase search
command, the--sort
option now handles both columns and sorting order - The last entry found during
download update
is cleared only if the--stop
option is left to its default value of 1 download
reports are more detailed and broken down by type (users, submissions, and journals)download
reports use thumbnail instead of thumb
- Fix non-printable character in simple output mode (enabled automatically when not printing to a terminal) for
download
commands - Fix missing color for
IN DB
message during user page downloads
- Add
--verbose-report
option todownload
functions (excludingdownload login
)
- Fix user pages being updated incorrectly
- faapi dependency set to ~3.4.1
- Fix incorrect parsing of notice error messages
- Fix incorrect detection of not found errors
- Fix incorrect parsing of notice error messages
- Improved download error handling
paw
command detects terminal color capabilities and enables truecolor automatically if supported- Add option to manually switch to 8bit color mode
- Add deactivated users to download report
- faapi dependency set to ~3.4.0
- Improve exceptions
- Better replacement of non-ASCII characters. Only characters with a Unicode width greater than 1 are replaced.
- Fix
database search
JSON output for submissions and journals - Fix
database search
CSV output columns - Fix
database search
colorized table output not being enabled unless turned on explicitly with--color
- Add
paw
command, show some PRIDE colors!
- Improve dry run behaviour for
download
commands
- Fix favorites being incorrectly saved in the database if the submission was downloaded as a favorite first.
- Fix incorrect history entry for
config files-folder
- Fix users and folders not respecting arguments order when using
download update
- falocalrepo-database dependency set to ~5.0.10
- Fix favorites errors, see Notes below for details on upgrade.
- falocalrepo-server dependency set to ~2.1.1
- Improve descriptions and profiles
- Fix loading user stats for users not in the database
The database upgrade to version 5.0.10 contains a fix for incorrect favorites. Favorites added manually using
the database edit
command will not be conserved, unless the users are saved in the USERS table and the favorites
folders is enabled for them. Some favorites will also be removed even if the user has the favorites
folder enabled.
To restore the favorites, use the download users
command to download them again.
- Move to new repository at GitHub/FurryCoders/FALocalRepo
- Improved output for download operations
- Clear userpage update lines if no change is saved
- User pages update download and modify counters
- Fix formatting error when printing database search results with non ASCII characters
- Fix report formatting error when interrupting a download operation
- Fix repeated user arguments for download operations triggering multiple downloads
- faapi dependency set to ~3.3.7
- No changes, move to new repository
- falocalrepo-database dependency set to ~5.0.8
- No changes, move to new repository
- falocalrepo-server dependency set to ~2.1.0
- Use Click to handle arguments
- Move to new repository
- faapi dependency set to ~3.3.6
- Fix parsing error when downloading user profile with limited info or contacts
- Always print download report (also when manually interrupting)
- Fix userpage download
- Fix
--no-color
option not working indownload login
command when login failed
- falocalrepo-database dependency set to ~5.0.7
- Fix possible duplicate values in list columns
- Colorized output using ANSI codes
- Shell completions
- Database search using advanced query language
- Complete rewrite using Python 3.10 and Click
- Add support to download user profiles
- Add filtering and clearing to history command
- History events added only when database is modified
- faapi dependency set to ~3.3.5
- Upgrade to Python 3.9+
- Improved parsing
- Fully documented and type-annotated
- falocalrepo-database dependency set to ~5.0.5
- Add
USERS.USERPAGE
column - Separate
HISTORY
table - Improved type safety
- Improved efficiency
- Add
- falocalrepo-server dependency set to ~2.0.1
- Improved styling with fonts and responsive design
- Improved efficiency
- Move
--update
option to its ownupdate
command
- Fix
SystemExit
being caught as an error
- falocalrepo-server dependency set to ~1.14.0
- Change behaviour of HTTP to HTTPS redirection
- Add new
move
argument toconfig files-folder
command to skip moving the files to the new location
- Fix possible errors when passing 0 as port to
database server
- falocalrepo-server dependency set to ~1.13.0
- Support new HTTP redirection
- Add
redirect-http
argument todatabase server
command
- Add
- Support new HTTP redirection
- Fix rare errors caused by unexpected keyword arguments passed to the exception-raiser function
- Fix error causing keyword arguments with spaces to be ignored
- falocalrepo-database dependency set to ~4.19.3
- Check database connection before opening database
- falocalrepo-server dependency set to ~1.12.0
- Support new SSL arguments and change default port to 80/443
- Add
ssl-cert
andssl-key
arguments todatabase server
command
- Add
- Support new SSL arguments and change default port to 80/443
- falocalrepo-database dependency set to ~4.19.1
- Submissions tags are no longer sorted alphabetically
- Fix error when using
database search
commands with no search parameters - Fix error when using
database merge
anddatabase copy
commands with no selection parameters
- Fix error in
database add-submission
occurring when not passing a new file/thumbnail with none already present in the database
- Fix absolute files' folder path printed by
config
command - Fix a type error that caused
database add-submission
to crash
- falocalrepo-database dependency set to ~4.18.1
- Reduced minimum width of user column when printing search results to avoid over-padding
- falocalrepo-database dependency set to ~4.18.0
- Use ISO format YYYY-MM-DDTHH:MM for date columns
- Fix
download update
bug when passing parameters
- Add support for
any
parameter in database search
- falocalrepo-database dependency set to ~4.17.0
- The
config
command prints the absolute path of the files' folder together with its database value - The
database info
command shows the location of the database
- Fix incorrect output when using the
database search-submisisons
anddatabase search-journals
commands - Fix matching of some edge cases of
<param>=<value>
arguments
- Fix
database server
not closing properly (the database file could still be read as open on some systems)
- Fix
database server
throwing aTypeError
exception when passing port parameter
database server
command does not occupy a database connection to allow running other commands on the same database while the server is running
- falocalrepo-database dependency set to ~4.16.2
- Fix
database add-user
command
- faapi dependency set to ~2.18.0
- falocalrepo-database dependency set to ~4.16.0
- falocalrepo-server dependency set to ~1.10.0
database add-user
,add-submission
, andadd-journal
commands now take metadata via JSON files
- Fix errors and invalid examples in help messages
- falocalrepo-database dependency set to ~4.15.0
database merge
command supports selectors likedatabase copy
- falocalrepo-database dependency set to ~4.14.0
- Add
database copy
command
- Fix
config files-folder
command error
- falocalrepo-database dependency set to ~4.13.0
- Check connections to selected database to ensure only one is active
- Check multiple instances of the program only when running the
download
command - Any version difference will trigger an error
- falocalrepo-database dependency set to ~4.12.0
- Fix error with
database add submission
command
- Database version is checked for all
database
commands, but no exception is raised forinfo
andupgrade
- Migrate to Python 3.9
- falocalrepo-database dependency set to ~4.11.0
- falocalrepo-server dependency set to ~1.9.0
- Solve issue #9
- Let
UnknownFolder
exceptions rise, exit with code 3 when caught- Error codes that were 3 or greater have been moved up by 1
- 1
MalformedCommand
,UnknownCommand
- 2
MultipleInstances
- 3
UnknownFolder
- 4
ConnectionError
- 5
DatabaseError
,IntegrityError
- 6
TypeError
,AssertionError
- 7
Exception
,BaseException
- 1
- Error codes that were 3 or greater have been moved up by 1
- Exception
repr
is not printed ifFALOCALREPO_DEBUG
option is on
- Fix
columns
option being ignore in database search commands - Fix
columns
not being selected properly when used in conjunction withjson
option in database search commands
- Print environmental variables flags to stderr
- Fix
KeyError
's in search
- Add
json
andcolumns
options to database search commands to output results in JSON format
- Fix zero-padded ID's not being matched by search commands
- Fix possible output error during single submissions download
- Fix output error in
download submissions
command
- Catch
NoSuchProcess
exception when checking for other instances of falocalrepo
- Fix incorrect call to database merge
- Fix printing of users search results
- Add
database upgrade
command, do not upgrade automatically - Check database version and stop if major or minor do not match with falocalrepo-database
- Fix
database add-user
folders error
- Fix a type signature causing a startup crash in some systems
- Solve issue #4
- falocalrepo-database dependency set to ~4.9.0
- Support new
TYPE
column inSUBMISSIONS
- Support new
- faapi dependency set to ~2.17.0
- Download submissions thumbnails
- falocalrepo-database dependency set to ~4.8.0
- Use new bar-separation for list fields
- Use the same output format for all
config
commands - Print caught exceptions and traceback to standard error
UnknownFolder
exception is caught and handled inside download functions instead of rising
- Add
deactivated
option to thedownload update
command to check previously deactivated users again - Use "deactivated" instead of "disabled" in output messages
- Check downloaded size against requests headers before saving submission files
- Fix error when opening help for
database add-user
download submissions
anddownload journals
never overwrite items already in the database
- Fix printing errors with
download submissions
anddownload journals
that occurred if items where already in the database
- Fix sorting of users used in download arguments
- Fix
IS IN DB
message remaining when downloading journals
- Remove test code that interfered with item clearing on update stop
- When using a stop number higher than 1 for
download update
, the last found item is not cleared - Do not display
IS IN DB
message until all database transactions are complete - Display
SEARCH DB
message while checking of a submission/journal is already in the database
- Fix an error in the completion bar function
- Fix output error for users search results
- Remove unnecessary debug call
- Fix update not finding changed folders correctly
- Fix update considering items as updated for users' galleries/scraps even when downloaded as favorites
- Fix early stop when update found a submission that changed folder
- Fix error when sorting users during update
- Fix disabled users being printed even when not selected for updated
- Fix update not working if no users are passed
- Fix update not finding favorites in the database
- Fix missing version 3.16.1 in the changelog
- Fix missing information in README
config cookies
command now takes parameters to allow for any number and name of cookies
- Fix submission tags not being sorted when adding a submission manually with
database add-submission
- falocalrepo-database dependency set to ~4.7.0
- Support new
MENTIONS
andUSERUPDATE
columns for journals and submission entries
- Support new
- faapi dependency set to ~2.15.0
- Remove calls to check user existence/status and instead rely on faapi exceptions
- Add support for
FALOCALREPO_DEBUG
environmental variable
- Fix help message not displaying when no commands were passed
- falocalrepo-database dependency set to ~4.4.0
- Support new
FAVORITE
column for submission entries
- Support new
- falocalrepo-server dependency set to ~1.8.0
- The multiple instance check will not be triggered by modules that contain
falocalrepo
in their name ( e.g.falocalrepo-server
)
- FAAPI (from faapi) is not loaded until needed. Commands structure is checked before connection is attempted
- Cookies are listed as-are to allow checking for errors (e.g. incorrect
name
field)
- faapi dependency set to ~2.12.0
- falocalrepo-server dependency set to ~1.7.0
- Add
database add-user
command to manually add a user to the database
- Fix an error when users search found 0 results
- Add
-u
/--updates
option to check for updates on PyPi instead of checking when program starts
- Fix incorrect UnknownCommand exceptions
- Fix error in help function
- Fix _ not working when searching AUTHOR and USERNAME fields
- Fix error with instance checking causing the program to fail at start
- Check for other running instances of
falocalrepo
and raise exception if any is found
- Fix a line-wrapping error in the main help message
- Improved usage patterns, instructions, and general language in both help messages and readme
- falocalrepo-database dependency set to ~4.3.0
- Removed counters from
SETTINGS
table
- Removed counters from
- Separate all commands and subcommands into separate functions
- Add help for subcommands with descriptions and examples
- Improved efficiency of search and results printing
- Fix % not working when searching AUTHOR and USERNAME fields
- Fix USERNAME field not being cleaned when performing users search
- Fix an error when users search found 0 results
- Check for faapi updates
- Changed order of
database info
output
- faapi dependency set to ~2.11.0
- Exit with code 130 on KeyboardInterrupt (Ctrl-C)
- Fix users not being skipped during update if no folder matches manual folders argument
- More precise database info command output
- Fix missing import causing error when importing the module
- Improve readme
- falocalrepo-server dependency set to ~1.6.0
- Fix usage pattern of main help
- Fix submissions with _ in the author name not being found with url formatted name
- Improve exception-catching of database errors
- Fix database transaction being left open and locking
VACUUM
operation
- Fix search filtering out column parameters
- Fix search not using
like
- Fix search failing without limit and offset parameters
- Fix missing database upgrade
- Fix broken import causing the program to crash on start
With this new release comes the all-new falocalrepo-database version 4.
Some column names in the database have been changed and the insertion functions have been made safer with built-in
checks. Search is now much more versatile and allows to query any columns in the users, submissions, and journals
tables. Thanks to the new checks, the database check-errors
command was removed, as the new checks remove the
possibility of inserting erroneous data. The update function will notify of any faulty entry during the automatic update
of the database.
- Improve data-entry safety
- Remove
database check-errors
command - Allow to use all table columns for submissions and journals search
- Print
FALOCALREPO_DATABASE
environmental variable if used
- Fix missing messages for assertion errors
This new minor bump adds a new list-<folder>
option to the download users command. Using it allows to list all remote
items present in a user folder without downloading them. Environmental variables are now supported starting
with FALOCALREPO_DATABASE
which allows to set a different path for the database and files folder root.
- Add
list-<folder>
folders to download users command - Add
FALOCALREPO_DATABASE
environmental variable - Remove subcommands arguments details from general help messages
- Fix padding inconsistencies in users search results
- Fix missing newline when server closes
- falocalrepo-server dependency set to ~1.4.0
This new minor version bump updates the falocalrepo-database
dependency to its latest version and adds a new database merge
command. This new command allows to merge the database
located in the current folder with a second database located in another folder.
- Add
database merge
command
- falocalrepo-database dependency set to ~3.8.0
- Fix an error occurring when date format was set to " full" faapi#1
- faapi dependency set to 2.10.2
- removed unused filetype dependency
- Improved
search-users
command
- fix id parameter error when manually adding submissions/journals
- Add output while waiting for faapi to connect
- Fix output error when submission is found in user entry
- Do not display last found match in download update
- Sort update folders when none is provided
- Fix some errors in README
- Display length of commands history instead of last command
- Improved progress background functions
- Fix submissions not being removed from users' entries with
database remove-submissions
command
- Default database search order to ID/USERNAME
- Add some information on
order
parameter for database searches in readme
- Fix download error caused by faapi version 2.10.0
- faapi dependency set to 2.10.1
- Better detection of deactivated users with updated faapi methods
- faapi dependency set to 2.10.0
- faapi dependency set to 2.9.1
- Fix error with users journals download
- faapi dependency set to 2.9.0
Added a new database search-users
command to search the users table using all the collected metadata. The readme has
been improved slightly with better explanations. A small error in the database command help message was fixed.
- Add
database search-users
command - Add help for
help
andinit
commands - Improve explanation of SQLite
like
expression
- Fix error in database command help
- Small optimisation to database init and update process
- Fixed erroneous general help message
- Fix bug occurring when saving submissions/journals into the database
Both the database and server modules have been update to versions 3.5.0 and 1.3.1 respectively. The database now holds a
history of all commands (except for version printing and help) instead of just last start and last update, and A
new database history
command was added to print the commands' history.
When a non-help command is used, the program now checks for updates to its components and prints them to screen.
More exceptions are caught now and exit with a specific code; unforeseen exceptions are also caught and their trace saved to FA.log.
- Added
database history
command - Catch ConnectionError and sqlite3.DatabaseError
- Catch general Exception and BaseException and print trace to FA.log
- Fix error with manual submissions and journals
- Added
-s
,--server
option to print version of falocalrepo-server used by the program
- Fix missing instructions for download help
- Removed some lines of code used for debugging version 3.8.0 (now yanked)
From this release all database functions are handled separately by the new falocalrepo-database package. The package is also used in falocalrepo-server allowing the falocalrepo console to be updated more easily.
- removed database functions in favor of falocalrepo-database
- Fixed an error in the description of tables in the readme
The download journals
command is now fixed and calling the correct function. Two sub-commands aliases have been
added: config list
and database info
which act as config
and database
respectively when called without
arguments. Database size in MB (base 10) and last start have been added to database info
output, missing journals
counter in database info has also been added. falocalrepo-server dependency updated
to ^1.1.3.
database info
command to display database informationconfig list
command to list settings stored in database- Database size and last start added to database info output
- Fixed
download journals
- Added missing journals counter in database info output
- falocalrepo-server dependency updated to ^1.1.3
- Update faapi dependency to 2.8.3
Background changes and fixes. The main_console
function was renamed to console
and is now the only direct export of
the package, falocalrepo-server dependency has been updated to ^1.1.2, help messages have been slightly reformatted, and
command does not default to init
when absent.
- Update help messages with falocalrepo, database and falocalrepo-server versions
main_console
renamed toconsole
- Parameters (e.g.
database search-submissions
search fields) are taken as are and not lowered - LASTART value is not set when using
init
- Calling without a command shows help, doesn't default to
init
- Fix indentation of help messages
- Update falocalrepo-server dependency to ^1.1.2
falocalrepo-server dependency has been updated to use the latest above 1.1.1. Command defaults to init if no command is passed.
- Default to init command if no command is passed
- Update falocalrepo-server dependency to ^1.1.1
- Update falocalrepo-server dependency to 1.1.1
The server interface has been moved to its own separate package falocalrepo-server for ease of development, and it is now a dependency of falocalrepo.
A few small bugs have also been fixed.
- Transfer falocalrepo-server to its own package
- Make falocalrepo-server a dependency
- Fix incorrect exception in download journals command
- Fix erroneous FurAffinity theme name in readme
- Fix missing entry in table of contents
- Set falocalrepo-server dependency to 1.0.0
- Removed
/user/<username>
server shortcut in favor of/submissions/<username>/
and/journals/<username>/
- Fix missing information in readme
- New order parameter for server search
- Reorder server search results by clicking on results headers
- Fix wildcards being removed from author parameter when searching
- Fix uppercase parameters not matching
A new database server
command has been added, which starts a Flask server that allows to search the local database and
visualise submissions and journals in a friendly GUI.
The web interface allows to search the database using the same options and methods as the database search-submissions
and database search-journals
commands.
Command line search commands now support order
, limit
and offset
parameters for finer control of database
searches. For a more in-depth explanation refer to
the SQLite SELECT documentation.
A few bugs have also been resolved, error messages have been improved, and more information has been added to the readme regarding search wildcards.
- New server interface to search database
order
,limit
andoffset
parameters for database search commands- More detailed exceptions for command errors
- More information regarding wildcards in readme
- Fix incorrect error message when passing an unknown database command
- Fix error caused by the options arguments parser
A new stop option has been added to the download update command to modify the number of submissions after which the program stops looking through a user's folder. The database update from 2.7 to 3 has been upgraded and now files are found directly in the submission folder.
- Add stop option to download update
- Improved file-finding for database update from 2.7 to 3
- Fix a SQLite Cursor error
- Error checking now includes the Journals table
- FAAPI has been updated to version 2.8.1
- Check connection status before running download commands
- Fix missing exception when database receives an unknown subcommand
- Fix an import error
The new database search-journals
command allows searching journals by author, title, date and content. The old
submissions search command is now called search-submissions
.
The help message and readme have been fixed and missing information has been added.
The output of the download users
command has been generalised, so it does not use "submissions" even when downloading
journals; uses "items" instead.
- Add database command to search journals
- Fix missing information in help message and readme
- Fix output of download users command not being generalised
The program now uses FAAPI version 2.7.3, which supports downloading users
journals. The database has been updated to version 3.2.0 to support this change with a new JOURNALS
table and
a JOURNALS
field in the USERS
table. Journals can be downloaded with the download users
command as any other
folder (gallery, scraps, etc...) or with the download journals
command by supplying journal ID's. Journals can also be
added manually using the database add-journal
command. A corresponding database remove-journals
has also been added.
The previous database manual-entry
command has been changed to database add-submission
.
A few errors in the readme have also been solved.
- Database version 3.2.0
- Add
JOURNALS
table - Add
JOURNALS
field in theUSERS
table
- Add
- Download users' journals
- Fix readme errors
- Update faapi dependency to 2.7.3
- Fixes porting of disabled folders when updating database from 2.7 to 3.0
- Fixes version when updating database from 3.0 to 3.1
- Disabled folders do not trigger an error when using download update
- Fix users folders not being properly ported when updating database from 2.7 to 3.0
- Fix file download bar spacing
- Fix settings not porting over when updating database from 3.0.0 to 3.1.0
- Fix spacing when download page goes over 100
- Fix readme not including new information about database version 3.1.0
Database version has been updated to 3.1.0; the "extras" folder has been renamed "mentions". Order of submissions ID's is maintained when downloading single submissions.
- Maintain order of submission ID's when downloading single submissions
- Database updated to 3.1.0
- Extras renamed to mentions
- Fix output bug when downloading single submissions
Fixes a bug that causing tiered paths to overlap if the submission ID ended with zeroes.
- Tiered path for submissions ID's ended with zeroes
Order of users and folders passed to download users/update is maintained. Submissions already in the database but not in user entry are not downloaded again.
- Maintain order of users and folders passed to download
- Do not download submissions again if already present in submissions table
Submissions titles are now cleaned of non-ASCII characters before printing them to screen. Non-ASCII characters would break the spacing of the download output.
- Fix output of submissions titles with non-ASCII characters breaking spacing
Fix old database having the wrong version in the name when backing it after updating from version 2.7.0.
- Fix database backup name up when updating from 2.7.0
Download update now allows to pass a list of users and/or folders to restrict the update to those.
- Pass users and/or folders to download update
Database search now allows to use either display or URL author usernames; i.e. Pippo_Pluto
is equal to pippopluto
.
- Accept both display and URL author usernames in database search
Exceptions raised during database updates are caught and any pending changes are committed before the exception is raised again.
- Safely commit and close when catching exceptions during database updates
The memory usage of database select (i.e. read) operations has been reduced by using sqlite3 cursors instead of lists. The speed of the database update function has been greatly improved by reducing database commits to one every 10000 processed entries (1000 for the users table).
- Database select operations return sqlite3 cursors to reduce memory usage
- Database update speed increased by reducing the number of commits
Fixes an output error in the database update function and improves the way settings and statistics are written in the database, using UPDATE instead of INSERT OR REPLACE
- Database update output error
- Settings are updated instead of inserted
Improve database update function by saving the ID's of the submissions files that were not found during the transfer.
- Save ID's of submissions not found during database update
- Updated requirement FAAPI to version 2.6.0.
- Use FAAPI 2.6.0
If the now unsupported "extras" folder is encountered during update, it now prints a warning and skips to the next.
- Explicitly warn about extras folders
Fixed an IOError that happened when trying to pipe the database search output to a file.
- IOError when piping search results
Fix a version error. Database version was set to 3.1.0 instead of the program version.
- Fix versions
The database search command now allows to pass a parameter multiple times to act as OR values for the same field. The readme has been slightly improved and some errors in it have been fixed.
- Readme typos and errors
- Database search accepts OR parameters
This releases fixes counters not being updated in the new database when updating from version 2.7.
Under the hood changes include exporting the main console function so that the package can be imported and called with arguments from other Python scripts.
Readme has also been improved with more information about issues and contributing.
- Database update function updates counters of new database
Small patch to fix a search bug and output the number of results found with search.
- Fix search crash when using description parameter
- Output total number of results found by search
This release is only a minor fix to change the PyPi classifier for development status of the program from beta to stable.
Release 3.0.0 marks a complete change in how the program is run, its capabilities and future development.
Following the change of interface on Fur Affinity in January 2020, version 2 stopped working, but with this new release the tool can once again get content from FurAffinity and is much simpler to update to support future changes to FA's web interface.
This change was achieved thanks to the FAAPI package (from the same author of FALocalRepo [email protected]). All scraping functions are now independent of the interface, allowing for much quicker development and response to changes in the Fur Affinity website.
The interface of the program was changed from an interactive menu to a command line tool. This allows for much quicker execution of commands, simpler code and automation via shell scripts.
The database has been updated and is now over 50% lighter for large numbers of downloaded submissions. Furthermore, it now holds the cookies used by the scraper, reducing the program footprint.
All database functions have been completely overhauled and are now considerably faster, especially searching. Using a 500k submissions table and a modern SSD drive, searching for a specific tag takes 0,90s on average, and searching for a string in the descriptions takes only 1,30s. Time may vary depending on search parameters and drive speed.
The last big change regards the packaging and distribution of the program. falocalrepo is now a PyPi package, easily installed with a single pip command. All dependencies have also been packaged and distributed on PyPi and are handled without the need for git submodules. The new distribution method allows running falocalrepo in any folder, without the need to have the program itself stored with the database.
- Use FAAPI package to separate scraper development from interface
- Support for new FA's interface
- Menu interface replaced with a command line tool
- Database cleanup
- Cookies stored in database
- Database queries improvements
- Command line help
- Distribution via PyPi
- Set FAAPI dependency to 2.5.0
Reduced the number of indexes created and made the whole process safer. Also, interruption is now available during indexing.
PS: Linux release is once again bigger than it should. Will work on finding a more permanent fix.
Warning: Binaries are for 64bit systems only
Extras' e
option has been changed to search for ':iconusername:' and ':usernameicon:' only in the descriptions as
searching in keywords caused too many false positives in case the username was a common word/phrase.
Extras' E
options has been changed to search 'username' in submissions' titles too.
A new 'warning' log type has been added for errors and exceptions. These will be saved in the log file regardless of other settings. The log also has a new column for the type of log event: 'N', 'V', or 'W'
A small output error was also fixed.
PS: Linux release is once again bigger than it should. Will work on finding a more permanent fix.
Warning: Binaries are for 64bit systems only
Thanks to a special Python module created by yours truly, Windows users can now enjoy the program with safe interruption
support. The module can be found on GitHub
→ SignalBlock.
More information on the feature can be found in the README.
A new function has been added to the program to correctly detect version differences as the old method was causing errors with some versions.
New log events have been added for SIGINT (CTRL-C interruption) detection and database version.
PS: Linux release is once again bigger than it should. Will work on finding a more permanent fix.
Warning: Binaries are for 64bit systems only
Added logging to the program if launched with '--log' or '--logv' as argument (the latter logs ALL operations, thus the v of verbose). Log is saved in a file named 'FA.log' and is trimmed to the last 10000 lines at each program start.
A new 'slow' option has been added to the download/update sections to throttle speed even further down by adding a delay of 1,5 seconds between submissions downloads.
A critical bug in the update function has been fixed.
Argument '--debug' was changed to '--raise' to be clearer.
Search results are now properly sorted by author, id.
Some functions have been improved removing bits of unused code.
PS: Linux release is once again bigger than it should. Will work on finding a more permanent fix.
Warning: Binaries are for 64bit systems only
Just a small fix for an incorrect check in the analysis of submissions values.
PS: Linux release is once again bigger than it should. Will work on finding a more permanent fix.
Warning: Binaries are for 64bit systems only
A new entry has been added to the repair menu to analyze all the tables without attempting repair.
Download and update have a new 'dbonly' option that allows to add the entries to the database without saving any file.
Unforeseen errors are now caught and displayed without being too verbose. To display errors normally the program can be run with the option '--debug'.
An important bug has been fixed in the repair section. A missing return was breaking the INFOS table repair.
PS: Linux release is once again bigger than it should. Will work on finding a more permanent fix.
Warning: Binaries are for 64bit systems only
Fixed an error in the URL used to search extras. An OR was missing and would stop some results from showing up.
Users selected for download/update are now properly sorted.
PS: Linux release is once again bigger than it should. Will work on finding a more permanent fix.
Warning: Binaries are for 64bit systems only
The search URL has been modified to avoid false positives by specifically searching only the description and keywords. The default search employed by FA looks for search terms inside submissions filenames as well, and it could cause false positives.
Unforeseen errors are now caught by the main script and their information displayed before exiting the program.
The header describing the various columns during download/update now reflects the new status output introduced with v2.7 and fixed in v2.7.1.
PS: Linux release is once again bigger than it should. Will work on finding a more permanent fix.
Warning: Binaries are for 64bit systems only
Fixed bugs with the new submission download status on Windows by moving it to the left of the title.
Version saved inside program is now correct at 2.7.2 (was still saved as 2.7)
The code handling the upgrade and creation of the database at startup has been slightly improved and should run faster.
New output has been added for when the database is created the first time.
PS: Linux release is once again bigger than it should. Will work on finding a more permanent fix.
Warning: Binaries are for 64bit systems only
Just a fix for an output error in the v2.6 to v2.7 upgrade function.
PS: Linux release is once again bigger than it should. Will work on finding a more permanent fix.
Warning: Binaries are for 64bit systems only
New outputs have been added at the start of the program to show what it is doing instead of showing an empty screen.
Download and update status output has been overhauled. The current operation is now showed in a small bracketed area at the right end of the terminal screen. A progress bar is also shown when the submission file is downloaded (not all files support this).
A new INDEX entry has been added to the INFOS table, it is used to save the update status of the indexes used in the search function. Its values are either '0' if they are not up-to-date or '1' if they are.
Together with the new INDEX entry a new 'noindex' option has been added to the download/update section. If passed then the program will not rebuild indexes after the download/update operation is completed and will set the INDEX entry to ' 0' if new submissions where downloaded.
A few things have been improved around the program and some bugs removed.
PS: Linux release is once again bigger than it should. Will work on finding a more permanent fix.
Warning: Binaries are for 64bit systems only
Submissions descriptions are now saved in the database together with the submissions' data.
Search has been updated to work with the new description field, so it is now possible to search descriptions both
offline in the database and online with the web search.
Case sensitivity can now be turned on/off with 'case' option in both normal and regex mode (but not online).
Indexes have been added to quicken the search.
User entries have been slightly altered too: NAME
column was changed to USER
and NAMEFULL
to USERFULL
.
Repair has been improved with a new menu and a section dedicated to the INFOS
table as well as shortcuts to optimize
the database or re-index it.
Upgrade functions have also been improved with lower memory usage.
Bugs have been fixed throughout the whole program.
PS: Linux binary size issue seems to be fixed for now.
Update 2018/05/02: Linux binary was compiled with an error, it is fixed now
Warning: Binaries are for 64bit systems only
The program is now capable of running searches on the main website. If no results can be found in the local database the user will be automatically asked if they want to perform the search online instead.
A new 'options' field in the search menu allows enabling regex syntax and to search the website directly.
Local search can now match multiple users. For example if there are users 'tiger' and 'liger' in the database using ' iger' in the user field will match both of them.
Search output has also been improved.
A few more bugs have been squashed and some functions redesigned.
PS: I have no idea why but this release for Linux is over twice the size of previous ones. Will work on fixing it.
Warning: Binaries are for 64bit systems only
The search has been completely rewritten and should now be a lot faster. It is also now possible to search inside
specific sections of a user.
Regex support has been disabled for now as it was hard to use and slowed the search down for everyone. A future update
will add an option to use regex.
A few small bugs have been fixed.
PS: I have no idea why but this release for Linux is over twice the size of previous ones. Will work on fixing it.
Warning: Binaries are for 64bit systems only
From this release the USERS table will also contain the "full" version of a user's nickname.
In earlier versions user 'Tiger_Artist' would be saved only as 'tigerartist', the username used as url on the website.
However, from now on the USERS table will also contain the original name chosen by the user in a new column called '
NAMEFULL'.
The database version has been bumped up to 2.3 as well.
A few bugs have been squashed and some functions have been improved.
PS: I have no idea why but this release for Linux is over twice the size of previous ones. Will work on fixing it.
Warning: Binaries are for 64bit systems only
This new release is only a minor upgrade.
A new function has been added to check the cookies file for common errors in case a session cannot be created.
The cookies file has also been renamed to FA.cookies.json
so that it can be opened properly as a json file for
editing. The program will take care of renaming the file.
Uncaught exceptions have also been taken care of when loading the cookies file.
Latest updates in the program used for reading keystrokes and text have also been included in these latest binaries.
PS: I have no idea why but this release for Linux is over twice the size of the previous one. Will work on fixing it for the next release.
Warning: Binaries are for 64bit systems only
With this release all bugs with the users' database are fixed and the information are properly stored and saved.
The repair function has been expanded to include the users table. Repeating users, empty ones, names with capital letters and/or underscores and empty sections/folders fields will be automatically corrected by the program.
A big number of bugs have been fixed as well, for the full list see the commits.
Warning: Binaries are for 64bit systems only
Fixed a bug in the update functions.
Warning: Binaries are for 64bit systems only
Big update and main version bump.
The program now also saves category, species, gender and rating of downloaded submissions. These can also be used during search.
Format of the on-screen output has been completely changed for downloads and updates.
Databases can now be upgraded from earlier versions. Files from previous versions are backed up during the upgrade process. Submissions that are no longer present on the forum will be saved with default, generalized values.
The new favorites page on the forum can now be handled correctly.
Warning: Binaries are for 64bit systems only
CTRL-C and CTRL-D can now be used to return to the main menu from input fields (e.g. username/sections/options)
Various small fixes
Extra: My gpg key was mistakenly deleted, thus all previous verified commits now show up as unverified.
This new release is now verified
Warning: Binaries are for 64bit systems only
This new version comes with the usual fixes and a whole new menu entry to analyze the database and repair it. More information in the readme.
Warning: Binaries are for 64bit systems only
The program now has a GUI! It is very simple and console-based, only a prototype of the planned one.
Search has also been added with its own menu entry, submissions can be searched for author, title and tags with regex support.
Version has been bumped up to 1.4 skipping 1.3 due to the two major additions.
Warning: Binaries are for 64bit systems only
Small fix to make sure the infos table has the database name value created empty, to ensure compatibility with planned gui.
Other changes are under-the-hood: moved some functions around and into modules to improve clarity and modularity.
Warning: Binaries are for 64bit systems only
Filetype detection now works reliably across Windows and Unix platforms! Unfortunately safe exit still doesn't work reliably on Windows, so it's still disabled on it.
A new information table has been added to the database which stores:
- name of the database (for use in future versions)
- number of users
- number of submission
- time of last update start, in seconds since epoch
- duration of last update in seconds
- time of last download start, in seconds since epoch
- duration of last download in seconds
The table is created with all values reset to 0 in case it is not present, so it's perfectly compatible with older versions.
Warning: Binaries are for 64bit systems only
The program can now be run on Windows as well!
Unfortunately due to missing libraries on Windows automatic filetype management and safe exit do NOT work so be careful.
Warning: Binaries are for 64bit systems only
The readme is now complete and contains all the instructions needed to use the program
Fixed a small bug in the sync code when using the Force option
A small search script has been added in the FA_tools folder
Warning: binary is for Linux 64bit only
Main change is usage of cfscrape to bypass cloudflare wait at first request
Improved printout & printout for checks
If a user was disabled gallery, scraps and favorites are disabled in the database as well and only extras are downloaded if passed in sections
Better placement of interrupts for safe manual exit
General bugfixes
Warning: binary is for Linux 64bit only
Program now works and handles special cases
Exit codes for various events
Can interrupt at any moment using CTRL-C, exits safely
Needs cookies files
Warning: binary is for Linux 64bit only