Releases: icann/icann-rdap
v0.0.25
v0.0.24
This release adds the following output types:
- status-text and status-json
- events-json and events-text
- RPSL
- pretty-compact-json
This release fixes:
- URL output with
-p - JSON output with
-pand the JSON output is always valid JSON. - issues with incorrect escaping in the markdown output
- the data model for RFC 9083 errors
This release changes:
- the markdown format to be more concise
- some of the colors of the markdown output regarding tables
- code related to output formats (refactored) and new tests and test methodology using golden files
- adds a warning when using the gTLD WHOIS format on non-domain objects
v0.0.23
In this release:
New:
response_obj()builders for RDAP object classes that are the response vs those that are embedded in a response.- Ability to build an Entity without a handle.
- Builders for the RFC 9537 structs.
- Lenient
Stringishtype to be more tolerant of misbehaving servers. - More compliance checks.
- Check for malformed referral to registrars from registries.
- Improved tolerance for servers is malformed RFC 3339 event dates.
Changes:
- (breaking)
- Getters from 0.0.22 are now more idiomatic.
- New getters to cover object class specific fields.
- Support for missing roles in WHOIS gTLD output format.
Fixes:
ccparameter in vCard was being serialized incorrectly and not being deserialized at all.- Fix to how XDG is handled on macOS to help with tests.
Other
- Code lints and cleanups from contributors.
v0.0.22
This is a large release, including some new features, many bug fixes, and changes to the common API.
New:
rdaphas a new output type of "url". This allows scripts to userdapto do the bootstrapping but let them do the rest of the RDAP querying and processing. This is also useful for troubleshooting. The command line parameter for this is-O url.- the request_uri is now included in JSON output.
- More flexible parsing of non-compliant RDAP JSON where possible (e.g. bools that are strings, etc...)
- Many new conformance checks.
Changes:
- (breaking) the common API in
icann-rdap-commonhas changed dramatically.- There are now consistent getter methods and the builders are now consistent.
- The large enums are now placed on the heap instead of the stack.
- Some struct names have changed to be less confusing.
- Many dependency updates.
- Smaller binaries.
Fixes:
- nameserver search query URL fixed.
- notices and remarks now have a type.
rdap-testcorrectly identifies redirects- false positive content type check when the media type had parameters.
- better filtering of characters that would mess up markdown output.
Other
- lots of internal code refactoring and clean-up (thanks to the many contributors).
v0.0.21
v0.0.20
Release Notes - 0.0.20
This release introduces a new command, rdap-test, along with significant API changes and improvements to existing functionality.
New Features:
rdap-testcommand: This new command provides a comprehensive RDAP client for testing and validating RDAP responses. It supports various checks, including:- Referral chasing
- Entity role validation
- Extension ID verification
- CNAME, A, and AAAA record checks
- Expected extensions and groups
- Unregistered extensions
- RDAP conformance
- IPv6 service checks
- Origin header tests
- Configurable DNS Resolver: Users can specify the DNS resolver used by the client.
- Configurable Timeout and Retries: The client supports configurable timeout values and retry parameters, along with improved retry messaging.
- "One-addr" Feature: The
rdap-testcommand includes a "one-addr" feature for streamlined testing. - Respecting
Retry-AfterHeaders: The client correctly handlesRetry-Afterheaders in HTTP responses. - Following Redirects: The
rdap-testcommand supports following redirects. - Improved Error Handling: The
rdap-testcommand provides more detailed error messages and returns specific exit codes for different error conditions. - Support for Short IP Queries: The API now supports querying with shortened IP addresses.
API Changes:
- Query Type API: The
q_typeAPI now uses more discrete types, enabling support for short IP queries. - Client Operations (breaking):
reqwestrelated operations have been moved from thecommoncrate to theclientcrate. - RDAP Request API (breaking): The RDAP request API has been significantly restructured and centralized for improved organization and maintainability.
- IANA API (breaking): The IANA API has also been upleveled and centralized.
- Code Restructuring: The codebase has been restructured to support multiple binaries.
- Checks Enum: The checks used in
rdap-testare now managed via an enum for better deserialization.
Bug Fixes:
- Fixed an issue with an accidental fourth column appearing in domain variant output.
- Addressed various lints throughout the codebase.
- Fixed a bug where DNS lookups were performed even when IP addresses were provided.
- Fixed an issue with bootstrapping for URLs.
This release includes substantial changes and improvements to enhance the functionality and usability of the library. Users are encouraged to review the updated documentation and API changes.
v0.0.19
Changes:
- Caching responses without self links.
- Added options to only get registry and registrar outputs.
- More discrete exit codes.
- Support of redactions by registration.
- Guards against pathLang not being "jsonpath" in redaction processing.
- Removal of extraneous whitespace in notices and remarks.
- reformatting of links in markdown
- Response summary information now displayed.
- Updated dependencies.
- Added checks for a few ICANN profile errors.
- Added checks for HTTP headers and HTTPS.
- Added feature to query IANA for TLDs.
- Added feature to use ARIN as a backup INR bootstrap.
- Various API additions.
Fixes:
NOTE: If you receive a message regarding a missing "status_code" when using the command line interface, run rdap --reset and then make any changes to the rdap.env file necessary for any local behavior customization. Running rdap --reset will delete your local cache, the structure of which has changed from 0.0.18 to 0.0.19.
v0.0.18
Changes:
- everything: a bunch of clippy lints
- icann-rdap-srv:
- now supports domain search by name
- icann-rdap-common:
- a lot of changes to deal with non-conformant servers including checks when they are non-conforming... this possible changes the Rust API.
descriptionin notice/remark are optionalhrefinlinkis optionaleventActionin event is optionalidTypeandidentifierin publicId are optional- cidirs in CIDR0 are optional
- because the standard is actually fuzzy on this,
hreflanginlinkcan now be a string or an array of strings - much more documentation on the builders
- Contact
- more documentation
- added
role,contact-uri,url - street-parts can now be an array of strings in vCard
- fixed some consistency issues with the object builders
- a lot of changes to deal with non-conformant servers including checks when they are non-conforming... this possible changes the Rust API.
- icann-rdap-cli:
- added role, contact-uri, and url to outputs
- fixed bug with registry content being put where registrar content was supposed to be.
v0.0.17
bumping to 0.0.17
v0.0.16
Merge pull request #61 from icann/dev Release 0.0.16