Releases: noaione/tosho-mango
v0.7.0
Happy new year to everyone!
The following release notes are automatically generated.
For the complete changelog, visit here.
If you encounter any problems, please report them on the issues page.
Updating
Since v0.3.1, you can update tosho
using the following command:
tosho update
Which will automatically download the latest version of tosho
and replace the old one.
Changelog
Breaking Changes
- Create a new
Error
type for all sources, this replaceanyhow
error type.
This should give more consistent error handling across all sources. KM
: Replace allFrom
instance that is failable intoTryFrom
instead.- All sources: Client initialization now returns
Result<Self, Error>
format instead ofSelf
.Error
is the new error type that is used across all sources.
- All sources: Make all fields private on models, you can now use getter function instead.
- Example:
data.name
now becomedata.name()
- Example:
KM
,RB
,AM
, andSJ/V
: Privatize config fields- Please use the getter function and the new
new
function to create a new config.
- Please use the getter function and the new
KM
:MagazineCategory::${Enum}.get_doc()
now returnOption<&'static str>
instead ofResult<&'static str, Error>
- It also remove
documented
related function since we now use simpler derive macro instead.
- It also remove
New Features
MU
: Add web version constants, improve the auth flow a bit more.MU
: Add a new crate featureaes-dec
that support decrypting images if needed.
Changes
MU
: Proto changes for subscription in manga detailMU
: Bump constants versionKM
: Fix precalculation of point usagesMU
,KM
, andAM
: Cleanupprecalculate
command output a bit moreRB
: Possibly faster image decryptionMP
: Fix issue when decoding title tagsMP
: Unable to download anything because of image host changes- All source: flush bytes stream on each loop iteration
- All sources: Replace
String
or&str
input on client withimpl Into<String>
orimpl AsRef<str>
instead - All sources: Add
Copy
to someCopy
-able struct - All sources: Bump constants version when possible
- Adjust exit code handling on CLI
- Simplify progress bar handling
- Fix more issue on chapter merging
Build
- Update
tokio
,serde-*
,prost
,reqwest
, and some other CLI related dependencies - Remove
anyhow
as direct dependency for library crates - Remove
time
as dependency fortosho-amap
- Replace
futures
withfutures-util
intosho
- Remove
rayon
feature fromimage
since it's unused - Remove
documented
Docs
- Use
README.md
on each source crate as the docs instead of duplicating the content inlib.rs
v0.6.1
The following release notes are automatically generated.
For the complete changelog, visit here.
If you encounter any problems, please report them on the issues page.
Updating
Since v0.3.1, you can update tosho
using the following command:
tosho update
Which will automatically download the latest version of tosho
and replace the old one.
Changelog
Changes
- Fix issue with manual merging
Ctrl+C
handling not working properly
v0.6.0
The following release notes are automatically generated.
For the complete changelog, visit here.
If you encounter any problems, please report them on the issues page.
Updating
Since v0.3.1, you can update tosho
using the following command:
tosho update
Which will automatically download the latest version of tosho
and replace the old one.
Changelog
New Features
RB
: Try to support hidden higher resolution images
We've added a simple helper function in RBClient
to help modify the URL to get higher resolution images.
use tosho_rbean::{RBClient, config::{RBConfig, RBPlatform}};
#[tokio::main]
async fn main() {
let mut client = RBClient::new(RBConfig {
token: "",
refresh_token: "",
platform: RBPlatform::Android,
});
// Get the chapters list
let chapters = client.get_chapter_list("73cd427b-0740-4911-91bf-ed17cd13df8e").await.unwrap();
let first_chapter = chapters.chapters[0].clone();
// Get the first chapter viewer
let viewer = client.get_chapter_viewer(&first_chapter.uuid).await.unwrap();
let first_page = viewer.data.pages[0].clone();
// Get the first image URL
let image_url = first_page.image.jpg[0].clone();
// Get the high resolution image URL
let high_res_image_url = RBClient::modify_url_for_highres(&image_url);
println!("High res image URL: {}", high_res_image_url);
}
If you use CLI, this is done automatically when you use download
command.
RB
: Support downloading chapters with different quality- Available quality are:
low
,medium
,high
, andhires
(default ishires
)
- Available quality are:
Changes
KM
: Fix failed deserialization onTitleNode
on some titlesRB
: Fix auth failing when reauthenticatingRB
: Properly hide future chapters from being downloadedRB
: Do streaming decryption on image downloadMU
, andKM
: RenameIOS_CONSTANTS
toAPPLE_CONSTANTS
- Multiple: Adjustment to constants
- Multiple: Mark some
prost::Message
withCopy
- All: Rewrite
lazy_static
toLazyLock
- Use static
OnceLock
in win-term VT check - Use
LazyLock
forlinkify!
macro when checking for VT support - Simplify win-term VT check
- Expose some
_HOST
constants to public API
Build
- Update multiple dependencies
- Remove
lazy_static
as direct dependency - Update MSRV to 1.80.0
Docs
- Reword some parts of the documentation
v0.5.1
The following release notes are automatically generated.
For the complete changelog, visit here.
If you encounter any problems, please report them on the issues page.
Updating
Since v0.3.1, you can update tosho
using the following command:
tosho update
Which will automatically download the latest version of tosho
and replace the old one.
Changelog
New Features
M+
: Allow overriding app version code.
This should help mitigates issue with needing to update to latest version.
You can use in CLI like this:
$ tosho mp -p XXX [...]
Or, in Rust code:
use tosho_mplus::MPClient;
use tosho_mplus::proto::Language;
use tosho_mplus::constants::get_constants;
#[tokio::main]
async fn main() {
let client = MPClient::new("1234", Language::English, get_constants(1))
.with_app_ver(256);
let home_view = client.get_home_page().await.unwrap();
}
Changes
KM
: Cleanup chapters information a bitM+
: Update app version- INTERNAL: Use more macros expansion on config implementation.
Build
- Update
tokio
,serde
,prost
, anddocumented
v0.5.0
The following release notes are automatically generated.
For the complete changelog, visit here.
If you encounter any problems, please report them on the issues page.
Updating
Since v0.3.1, you can update tosho
using the following command:
tosho update
Which will automatically download the latest version of tosho
and replace the old one.
Changelog
New Features
- Add
M+
as a new source MU
: Support downloading with subscriptions- Add command to clear cache for all sources:
tosho tools clear-cache
Changes
- All source: Force use
rustls
and usehttp2
adaptive window for reqwest client. MU
: Update proto information.MU
: Only useHTTP/1.1
sinceHTTP/2
broke the API requestMU
: Rework downloader, image blocks are now stored to make less request to the APIMU
: Fix account revoke not workingRB
: Fix wrong base host used in homepage viewAM
: Add title information when purchasing/downloadingAM
,RB
, andSJ/M
: Cleanup chapters informationSJ/M
: Early fetch chapters informationSJ/M
: Improve search/pattern matchingSJ/M
: Addshow_to
to notices and add simple helper if the notice should be displayed or notSJ/M
: Return the whole series response forget_chapters
- Refactor some duplicate code
- Changes all
ToString
occurences tostd::fmt::Display
Build
- Bump
reqwest
to 0.12 (use hyper v1) - Use
rustls
instead ofnative-tls
forreqwest
- Set
stream
feature as default onreqwest
- Compile with latest Rust stable in CI
- Bump other dependencies
Docs
- Update
SerializeEnum
rustdoc
v0.4.3
The following release notes are automatically generated.
For the complete changelog, visit here.
If you encounter any problems, please report them on the issues page.
Updating
Since v0.3.1, you can update tosho
using the following command:
tosho update
Which will automatically download the latest version of tosho
and replace the old one.
Changelog
New Features
- Check for update on startup (this is done for the next 24 hours after each check)
Changes
MU
: Fix panic when search results is less than 25AM
: Better error messages
Build
- Change
diacritics
tosecular
because of OSS license issue. - Bump dependencies on all crates (except
macros
) - Use only
png
,jpeg
, andrayon
features forimage-rs
Docs
- Suggest using
--locked
when installing - Add crates.io version shield badge on each crates
Tests
- Move LFS data to another repo and rewrite tests to support the new path/format
v0.4.2
The following release notes are automatically generated.
For the complete changelog, visit here.
If you encounter any problems, please report them on the issues page.
Updating
Since v0.3.1, you can update tosho
using the following command:
$ tosho update
Which will automatically download the latest version of tosho
and replace the old one.
Changelog
Changes
SJ/M
: Download the last page properly (previously it was missing)SJ/M
: Fix failed deser on noticesSJ/M
: Show latest available chapter properly
Build
- Pin source crate dependency on
tosho
Docs
- Add disclaimer
v0.4.1
The following release notes are automatically generated.
For the complete changelog, visit here.
If you encounter any problems, please report them on the issues page.
Updating
Since v0.3.1, you can update tosho
using the following command:
tosho update
Which will automatically download the latest version of tosho
and replace the old one.
Changelog
Changes
RB
: Remove saving JSON response on error.
v0.4.0
The following release notes are automatically generated.
For the complete changelog, visit here.
If you encounter any problems, please report them on the issues page.
Updating
Since v0.3.1, you can update tosho
using the following command:
tosho update
Which will automatically download the latest version of tosho
and replace the old one.
Changelog
New Features
- Added
小豆 (Red Bean)
as a new source - Introduce threaded/parallel image download (not chapter) for the following source:
By default, the download is sequential. If you want to enable parallel download pass --parallel
into the
argument list: tosho km download 10007 --parallel
Changes
MU
: Refactor API response parsingSJ
: Wrap descrambling withtokio::task::spawn_blocking
KM
: Wrap descrambling withtokio::task::spawn_blocking
- Internally change chapter dump to support both number (
u64
) and string (UUID
-esque) - Better progress tick on progress bar
v0.3.3
The following release notes are automatically generated.
For the complete changelog, visit here.
If you encounter any problems, please report them on the issues page.
Updating
Since v0.3.1, you can update tosho
using the following command:
$ tosho update
Which will automatically download the latest version of tosho
and replace the old one.
Changelog
Please also see changelog for v0.3.2
Changes
- Self update now should support windows zip properly.