This project follows semantic versioning.
Possible log types:
[added]
for new features.[changed]
for changes in existing functionality.[deprecated]
for once-stable features removed in upcoming releases.[removed]
for deprecated features removed in this release.[fixed]
for any bug fixes.[security]
to invite users to upgrade in case of vulnerabilities.
- [changed] Require at least Rust 1.75
- [changed] Remove deprecated
Status::new
constructor method
- [changed] Changed the way sensor types are exported.
Some sensor types that were previously exported in the
spaceapi
module now need to be imported from thespaceapi::sensors
module. - [changed] The
names
field is no longer part ofPeopleNowPresentSensorTemplate
. - [added] Added all missing sensor types.
- [changed] Rewrite parts of the sensor implementation.
This is a breaking change as it changes the way sensor templates are constructed for
PeopleNowPresentSensor
andTemperatureSensor
. - [added] Added the
HumiditySensor
andPowerConsumptionSensor
sensor types. This is a breaking change as it adds thehumidity
andpower_consumption
fields to theSensors
struct. - [added] Added the
timezone
key underlocation
section. - [added] Added the
links
section. - [added] Added the
membership_plans
section. - [added] Derive
Eq
as well and not justPartialEq
where possible. - [fixed] The name for the "closed icon" field has been corrected to
state.icon.closed
(wasstate.icon.close
). - [changed] Require at least Rust 1.56.
- [changed] Allow
state.open
to benull
again
- [added] The
Sensors
,PeopleNowPresentSensor
andTemperatureSensor
structs now deriveDefault
(#84) - [added] Basic support for the new v14 API (#85, #87, #89, #90, #91) This is a
breaking change since it changes the
api
field ofStatus
toOption<String>
and thestate
field toOption<State>
. Includes- Add
xmpp
field inContact
struct and deprecate thejabber
field - Add
xmpp
field toKeymaster
- Rename jabber to xmpp in contact field
- Add xmpp to contact/keymasters
- Deprecate contacts.google, issue_report_channels, radio_show, spacefed.spacephone and stream keys
- Add
mumble
,matrix
,mastodon
andgopher
toContact
- Add
mastodon
field toKeymaster
- Make
state
field optional and disallownull
forstate.open
- Add
- [changed] Require Rust 1.31+ (Rust 2018 edition) (#76)
- [changed] Use serde flatten to
implement extensions. This changes the in memory representation of the
extensions to include the
ext_
prefix. (#79) - [added] Add missing stream field (#80)
- [changed] Minimal required Rust version 1.20.0 (#68)
- [changed] Update
log
crate to version 0.4 (#70) - [changed] Use an enum (
IssueReportChannel
) for theissue_report_channels
field (#4)
- [fixed] Fix compilation warning (#65)
- [changed] Update to serde 1.0
- [added] Support arbitrary extension fields (#34)
- [added] Add more methods to
StatusBuilder
(#54) - [changed] Rename
_type
fields totype_
(#58) - [changed] Fix and improve crate documentation (#55)
- [removed] Get rid of
Status::ext_versions
field, use extensions mechanism instead (#48)
- [fixed] Get rid of unneeded attribute warning (#42)
- [fixed] Fix bug in Status serializer (#47)
- [changed] Various small code improvements
- [added]
StatusBuilder
which implements the builder pattern (#38) - [changed] Use custom implementation for
Status
serialization (#40)
- [changed] Use serde for (de)-serialization (#35)
- [changed] Library now depends on nightly (#36)
- [added] Top level
get_version
function (#31) - [added] Added
Status::ext_versions
field (#31)
- [added] All types now implement
PartialEq
(#22) - [added] Completed implementation of the
Contact
field (#6) - [added]
Optional
now implements theDefault
trait (#19) - [added] Implemented
unwrap_or
forOptional
(#27)
- [added] Support for deserialization (#12)
- [changed] Improved docs (#10)
- [changed] Performance improvements (#11)
- [fixed] Fixed documentation URL in
Cargo.toml
- First crates.io release