* chore(deps): update crc32fast to v1.5
* chore(deps): update ureq to v2.12
* chore(deps): update phf to v0.13
* chore(deps): update clap to v4.5
* chore(deps): update lazy_static to v1.5
* chore(deps): update thiserror to v2.0.16
* chore(deps): update clap to v4.5
* chore(deps): update bson to v2.15
* chore(deps): update base64 to v0.22
* chore(deps): update quick-xml to v0.38
* chore(deps): update webbrowser to v1.0
* chore(clippy): fix a load of "variables can be used directly"
* chore(ci): update MSRV toolchain to 1.82.0
* chore(pre-commit): update MSRV to 1.82.0
* chore(README): update Minimum Supported Rust Version to 1.82.0
* chore(VERSIONS): update MSRV to 1.82.0
* chore(cli): bump version to 0.4.0 and update MSRV to 1.82.0
* chore(release): bump version to 0.8.0 and update MSRV to 1.82.0
* feat: add initial crates readmes
* feat: add initial CLI readme
* fix: some links
* feat: fix node badge, split changelogs, fix some other links add docs in cli
* feat: feature the gamedig site in the lib
* feat: fill in cli package fields
* feat: set CLI version to 0.1.0
* feat: update changelogs to set vers
* feat: update the release workflow
* crate: Set default binary to gamedig-cli
* crate: Fix bad no-default-features option on gamedig-id dependency
* ci: Run tests when Cargo.toml changes
* id-tests: Clippy fixes
* cli: Do DNS lookup if host is not an IP address
* cli: Add option to output as JSON
* cli: Pass hostname to ExtraRequestSettings if it isn't an IP
* cli: Add help docs to all arguments
* cli: Add options for all extra request settings
* cli: Use a CLI only error for DNS
* cli: Add option to set timeout settings
* docs: Update CHANGELOG
* cli: Add default values to TimeoutSettings
* cli: Refactor finding game definition into its own function
Co-Authored-By: Cain <75994858+cainthebest@users.noreply.github.com>
* cli: Refactor IP resolution into its own set of functions
Co-Authored-By: Cain <75994858+cainthebest@users.noreply.github.com>
* cli: Refactor output formatting into its own functions
Co-Authored-By: Cain <75994858+cainthebest@users.noreply.github.com>
* cli: Improve doc comments for CLI args and derive Debug
Co-Authored-By: Cain <75994858+cainthebest@users.noreply.github.com>
* protocols: Derive Serialize for versioned generic responses
This allows for serializing the output of as_original(). We cannot also
derive Deserialize here because the enums use references to the inner
types, which is unavoidable in the current implementation because
as_original() takes a reference to self.
* cli: Add the output mode options
This allows selected whether to use CommonResponse or the original
response struct when outputting.
* cli: Fix ExtraRequestSettings docs showing up in help output
* cli: Add help headings for timeouts and extra request settings
---------
Co-authored-by: Cain <75994858+cainthebest@users.noreply.github.com>