Releases: jjjake/internetarchive
Releases · jjjake/internetarchive
Version 5.8.0
Features and Improvements
- Rewrote
PostDataActionin CLI to accept both JSON strings andkey:valueformat.
Previously only JSON was accepted; nowkey:valuepairs are also supported. - Added "can be specified multiple times" hints to repeatable CLI flags.
- Standardized CLI help text capitalization across all subcommands.
Bugfixes
- Fixed CLI argument parsing bug where
nargs="+"on options like--header,
--metadata, and--formatwould greedily consume subsequent positional
arguments (e.g. the identifier). Changed tonargs=1with repeated flags. - Fixed mutable
default={}bug in custom argparse actions (PostDataAction,
QueryStringAction,MetadataAction,FlattenListAction) that caused state
leakage when parsers were reused across multiple invocations. - Fixed
RecursionErrorcaused bysocket.connectbeing monkey-patched on every
ArchiveSessioninstantiation. Each new session would wrap the already-patched
function, causing infinite mutual recursion after ~980 sessions. The patch is now
applied once at module import time
(#746 <https://github.com/jjjake/internetarchive/issues/746>_).
v5.7.2
+++++++++
Features and Improvements
-
Added support for appending a custom suffix to the User-Agent string.
The default User-Agent (including access key) is always sent to ensure
proper request tracking.Example: With
user_agent_suffix = MyApp/1.0, the full User-Agent becomes:
internetarchive/5.7.2 (Darwin x86_64; N; en; ACCESS_KEY) Python/3.9.0 MyApp/1.0- CLI:
ia --user-agent-suffix "MyApp/1.0" <command> - Config file:
user_agent_suffix = MyApp/1.0in[general]section - Python API:
get_session(config={'general': {'user_agent_suffix': 'MyApp/1.0'}})
- CLI:
Bugfixes
- Fixed bug where metadata append was not working correctly when source metadata field was a list, and failing with obscure messages in some cases.
- Fixed inverted logic for
--download-historyflag inia downloadwhere passing the flag would ignore history files instead of downloading them (#735 <https://github.com/jjjake/internetarchive/issues/735>_).
Version 5.7.1
Bugfixes
- Explicitly set Content-Type header in account API requests.
This header wasn't being set in some cases and caused some requests to fail.
Version 5.7.0
Bugfixes
- Fixed critical bug in
ia delete --globandia delete --formatwhere all files were being deleted regardless
of the glob pattern. This bug was introduced in version v5.4.1 (2025-07-16). - More metadata insert bugfixes and refactoring.
Version 5.6.1
Bugfixes
- Fixed bug where metadata insert was clobbering and indexed modify writes were inserting.
Version 5.6.0
Bugfixes
- Fixed bug in
ia downloadwhere identifier was needlessly being validated and blocking some items from being downloaded. - Fixed regression in
ia download --stdoutwhere directories were being created.
Features and Improvements
- Added support for the Retry-After HTTP header to improve handling of rate-limited API responses.
- Added support for configuring IA-S3 keys via IA_ACCESS_KEY_ID and IA_SECRET_ACCESS_KEY environment variables.
- Added
headersparameter tointernetarchive.files.File.download()for adding custom headers to download requests. - Improved Windows filename sanitization.
Version 5.5.1
Security
- Fixed a critical directory traversal vulnerability in File.download(). All users are urged to upgrade immediately. This prevents malicious filenames from writing files outside the target directory, a risk especially critical for Windows users.
- Added automatic filename sanitization with platform-specific rules.
- Added path resolution checks to block directory traversal attacks.
- Introduced warnings when filenames are sanitized to maintain user awareness.
Please see the security advisory for more details.
Bugfixes
- Fixed bug in JSON parsing for ia upload --file-metadata ....
Version 5.5.0
Features and Improvements
- Added --parameters option to
ia metadata.
Version 5.4.1
Features and Improvements
- Stop setting scanner on upload per policy change.
Bugfixes
- Fixed bug where REMOVE_TAG was not working with indexed keys.
- Fixed argument validation and option parsing in
ia download.
Version 5.4.0
Features and Improvements
- Added
--print-auth-headeroption toia configure.
Bugfixes
- Corrected behavior of
ia_copyto avoid dropping path prefixes, fixingia_moveto properly delete moved files in subdirectories (via :gh:693). - Fixed bug where hardcoded test comment was being sent with every request.
- Fixed issue where
ia reviews --index/--noindexonly worked for configured user.