Releases: JonathanHelianthicusDoe/shticker_book_unwritten
v1.2.1
v1.2.0
v1.2.0
Upgrade clap v3 → v4
The upgrade to clap v4 has mostly only changed the help texts (specifically the ones that you get from passing either the -h
or --help
flags). These now look quite a bit different, although the content is substantially identical. There’s no more coloration, and help texts should now only wrap at your terminal’s width, which might be difficult to read if your terminal is many characters wide. In any case, this required adding the "wrap_help"
feature to clap. Other features were also added, but they are not new; they were just not previously optional.
v1.1.0
v1.1.0: switch from native-tls (OpenSSL on most platforms, Secure Transport on macOS, SChannel on Windows NT) to rustls.
Also, rpassword version 6 → 7.
The switch to rustls:
- Makes sbu easier to build & link, as rustls is written in Rust†.
- Allows sbu to benefit from the technological improvements brought by rustls and ring, including support for modern & secure (and ONLY modern & secure) protocols, API surfaces that are secure by default and are difficult to misuse, and the use of a memory-safe-by-default language like Rust.
rustls is highly mature now, not only claiming to be “ready to use”, but also already enjoying widespread use throughout the Rust ecosystem. It also has undergone thorough formal auditing by third parties (see https://github.com/rustls/rustls/tree/main/audit).
†rustls relies on ring for the implementation of cryptography, and ring is written in a combination of Rust with both assembly and C.
v1.0.6
Updated dependencies
clap
v3.1 → v3.2 (not a breaking change for clap, but caused some breakage for compiling sbu due to#![deny(deprecated)]
; not overall a breaking change for sbu, as behaviour is unchanged)
v1.0.5
Slightly updated wording of some help text to be more clear
Updated dependencies
All dependencies have been updated to their latest versions. Notably, this includes:
clap
v2 → v3 (breaking change for clap, but not for sbu)rpassword
v5 → v6 (breaking change for rpassword, but not for sbu)
v1.0.4
Now launches the TTREngine64.exe
executable on launch, when compiled for 64-bit Windows
See #3
Updated Rust edition 2018 ➡️ 2021
See The Edition Guide.
Updated dependencies
Also, some patch version bumps here and there.
v1.0.3
v1.0.2
Updated dependencies
Some minor version bumps here and there, nothing major. However, if you are using an old binary, you should use the one provided here (or compile yourself) since these updates include security patches.
Updated default CDN URI
Updated the URI for Toontown Rewritten’s CDN from https://s3.amazonaws.com/download.toontownrewritten.com/patches/
to https://download.toontownrewritten.com/patches/
. The old one still works, so for now, this change is unnecessary. However, TTR could change the backend for their CDN at any time without notice, so using this more stable URI is preferred.
Thanks to @Xytime for suggesting the change.
v1.0.0
Stabilization
With the release of reqwest v0.10.0, shticker_book_unwritten no longer (directly) depends on any pre-release versions of any crates, and also compiles on stable Rust. shticker_book_unwritten is now version 1.0.0.
Fixed bug with login
/play
/launch
Previously, when in shticker_book_unwritten’s interactive mode, using login
/play
/launch
with more than one username was invalid. Now it behaves as expected, and will log into each supplied username, in order.
Relicensing
As part of v1.0.0, shticker_book_unwritten is licensed under the GNU GPL, version 3 (or higher). This is really a very minor change/nitpick, since versions prior to 1.0.0 are licensed under the GNU AGPL, version 3 (or higher).
I originally chose to license shticker_book_unwritten under the AGPL for consistency; I generally license my works under the AGPL when I want a copyleft license, because the AGPL is the strongest such license that exists (and checks the usual boxes of being FSF approved, OSI approved, and compatible with the GPL*). However, the extra clause that the AGPL has over the GPL (that is, the only real difference between the two licenses) is definitely not relevant for shticker_book_unwritten, so it only exists as (potentially confusing) legal dead weight, so to speak. For this reason, I have removed the “A” in “AGPL”.
*Technically not compatible in the strict sense that you cannot license a modified (or unmodified) version of an AGPL program under the GPL, nor vice versa, but they have explicit clauses to allow being combined into a larger work, which is all that actually matters with compatibility anyways.
macOS support; better error messages; `--tries`
macOS support
Thanks to @Xytime (q.v. #1), macOS support is now in shticker_book_unwritten. shticker_book_unwritten now supports all of the same platforms that TTR does!
Better error messages
Error messages that are emitted should be improved in terms of how much useful information they provide, and also in their wording to some extent.
--tries
Previously, attempting to download game files would be done for a maximum of 5 tries (meaning that 5 failures was just enough to finally give up). Now, using the --tries
argument (or its shorter version, -t
), this value can be set by the user. The default is still 5.
Also, this retrying mechanism is now extended to downloading of the patch manifest from TTR’s servers.