Releases: FurryCoders/FAAPI
Releases · FurryCoders/FAAPI
v3.9.5
⚙️ Changes
- Improve parsing of usernames and statuses
- Thanks to PR #7 by @Xraydylan
🔧 Fixes
- Fix parsing of user tags for folders when the user had no title set, or used bars (
|) in their title
🔗 Links
- PyPi release: https://pypi.org/project/FAAPI/3.9.5
- Full changelog: v3.9.4...v3.9.5
v3.9.4
🔧 Fixes
- Fix admins' username and status not being parsed correctly in watchlists and users tags
- Fix issue #6
🔗 Links
- PyPi release: https://pypi.org/project/FAAPI/3.9.4
- Full changelog: v3.9.3...v3.9.4
v3.9.3
⚙️ Changes
- Users with non-alphanumeric characters in their name are now escaped in URLs
- From suggestion in issue #5
🔧 Fixes
- Fix admins' username and status not being parsed correctly
- Fix issue #6
🔗 Links
- PyPi release: https://pypi.org/project/FAAPI/3.9.3
- Full changelog: v3.9.2...v3.9.3
v3.9.2
🔧 Fixes
- Fix ` being removed from usernames
🔗 Links
- PyPi release: https://pypi.org/project/FAAPI/3.9.2
- Full changelog: v3.9.1...v3.9.2
v3.9.1
🔧 Fixes
- Fix incorrect user icon URLs when converting BBCode to HTML
📦 Dependencies
- Use pytest ^7.2.0
- Fix CVE-2022-42969 issue
🔗 Links
- PyPi release: https://pypi.org/project/FAAPI/3.9.1
- Full changelog: v3.9.0...v3.9.1
v3.9.0
🚀 New Features
- Submission footers
- Submission footers are now separated from the submission description and stored in the
Submission.footerfield - The BBCode of the footer can be accessed with the
Submission.footer_bbcodeproperty
- Submission footers are now separated from the submission description and stored in the
- Generate user icon URLs
- New
generate_user_icon_url()method added toUserPartialandUserto create the URL for the current user icon
- New
- BBCode to HTML conversion
- Work-in-progress version of a BBCode converter based on the bbcode library
- Converter function is located in the
parsesubmodule:faapi.parse.bbcode_to_html() - The majority of HTML fields (submission descriptions, journal contents, comments, etc.) can be converted back and forth between HTML and BBCode without loosing information
- If a submission contains incorrect or very unusual BBCode tags or text, the BBCode to HTML conversion may create artifacts and tags that did not exist in the original content
⚙️ Changes
- Added
Journal.header_bbcodeandJournal.footer_bbcodeproperties to convertJournal.headerandJournal.footerto BBCode - Return
Noneinstead of 0 (or""for favorites) when reaching the last page withFAAPI.gallery(),FAAPI.scraps(),FAAPI.journals(),FAAPI.favorites(),FAAPI.watchlist_by(), andFAAPI.watchlist_to() - Added
__hash__method toUser,UserPartial,Submission,SubmissionPartial,Journal,JournalPartial, andComment; the hash value is calculated using the same fields used for equality comparisons - Improved cleanup of HTML fields by using htmlmin
- Fur Affinity URLs are now properly converted to relative
[url=<path>]tags in BBCode - Unknown tags are converted to
[tag=<name>.<classes>]in BBCode - Added
CookieDict(TypedDict)notation for cookies dictionary (alternative toCookieJar) to provide intellisense and type checking information
🔧 Fixes
- Fix comments being considered equal even if they had different parents but the same ID
- Fix break lines tags (
<br/>) not always being converted to newlines when converting to BBCode - Fix errors when converting nav links (e.g.
[2,1,3]) to BBCode - Fix incorrect detection of last page in
FAAPI.watchlist_by()andFAAPI.watchlist_by() - Fix errors when converting special characters (e.g.
&) - Fix trailing spaces around newlines remaining after converting to BBCode
- Fix horizontal lines not being correctly converted from BBCode if the dashes (
-----or longer) were not surrounded by newlines
📦 Dependencies
- Added htmlmin ^0.1.12
- Added bbcode ^1.1.0
🔗 Links
- PyPi release: https://pypi.org/project/FAAPI/3.9.0
- Full changelog: v3.8.1...v3.9.0
v3.8.1
⚙️ Changes
- Improved HTML extraction for specific tags to avoid encoding issues
- HTML fields are cleaned up (i.e., removed newlines, carriage returns, and extra spaces)
- None of the parsed pages use tags with pre white space rendering, so no information is lost
- Improvements to BBCode conversion
- Do not quote URLs when converting to BBCode
- Support nested quote blocks
- Support non-specific tags (e.g.
div.submission-footer) and convert them to[tag.<tag name>.<tag class>][/tag.<tag.name>]
🔧 Fixes
- Fix incorrect encoding of special characters (
<,>, etc.) in HTML fields- Was caused by the previous method of extracting the inner HTML of a tag
- Fix URLs automatically shortened by Fur Affinity being converted to BBCode with the wrong text content
- Fix HTML paragraph tags (
<p>) sometimes appearing in BBCode-converted content - Fix BBCode conversion of
:usernameicon:links (i.e., user icon links without the username)
🔗 Links
- PyPi release: https://pypi.org/project/FAAPI/3.8.1
- Full changelog: v3.8.0...v3.8.1
v3.8.0
🚀 New Features
- Submission user folders
- Submission folders are now parsed and stored in a dedicated
user_foldersfield in theSubmissionobject - Each folder is stored in a
namedtuplewith fields forname,url, andgroup(if any)
- Submission folders are now parsed and stored in a dedicated
- BBCode conversion
- New properties have been added to the
User,Submission,Journal,JournalPartial, andCommentobjects to provide BBCode versions of HTML fields - The generated BBCode tags follow the Fur Affinity standard found on their support page
- New properties have been added to the
🔗 Links
- PyPi release: https://pypi.org/project/FAAPI/3.8.0
- Full changelog: v3.7.4...v3.8.0
v3.7.4
📦 Dependencies
- Use lxml ^4.9.1
- Fix CVE-2022-2309 issue
🔗 Links
- PyPi release: https://pypi.org/project/FAAPI/3.7.4
- Full changelog: v3.7.3...v3.7.4
v3.7.3
🔧 Fixes
- Fix error when parsing journals folders and journal pages caused by date format set to full on Fur Affinity's site settings
🔗 Links
- PyPi release: https://pypi.org/project/FAAPI/3.7.3
- Full changelog: v3.7.2...v3.7.3