bloop-server-framework 2.0.0

Bloop server framework
Documentation
# [2.0.0]https://github.com/bloop-box/bloop-server-framework/compare/v1.10.8...v2.0.0 (2026-07-27)


### Features

* implement wire protocol via the bloop-protocol crate ([e35d96f]https://github.com/bloop-box/bloop-server-framework/commit/e35d96f94cc5712ba72738f02e784cef072cc2f7)


### BREAKING CHANGES

* The wire format moved to the bloop-protocol crate.
message::Message is removed; RawMessage replaces it. ClientMessage and
ServerMessage are enums of standalone payload structs and take an
extension set type parameter. AchievementRecord.audio_file_hash is
renamed to audio_hash, Authentication.ip_addr to ip_address. DataHash
is variable-length, no longer Copy, and loses into_tagged_bytes.
network::Error drops UnknownRequest, gains Frame/Encode/
MalformedMessage, and UnexpectedMessage now carries a RawMessage.
Custom requests arrive typed via CustomRequestMessage<Req, Res> and
must be answered with a CustomOutcome; replying None is no longer
possible. Unknown opcodes no longer reach the custom channel. Custom
message definitions require a direct bloop-protocol dependency.

## [1.10.8]https://github.com/bloop-box/bloop-server-framework/compare/v1.10.7...v1.10.8 (2026-02-21)


### Bug Fixes

* **evaluator:** fix off-by-one in SpellingBeeEvaluator ([#5]https://github.com/bloop-box/bloop-server-framework/issues/5) ([fd2f10d]https://github.com/bloop-box/bloop-server-framework/commit/fd2f10d3002c0254cf3d5e7052ce5c8c3e1382a7)

## [1.10.7]https://github.com/bloop-box/bloop-server-framework/compare/v1.10.6...v1.10.7 (2026-02-19)


### Bug Fixes

* fix count_last_minutes midnight wrapping and bloops_per_day timezone ([#4]https://github.com/bloop-box/bloop-server-framework/issues/4) ([da4cd06]https://github.com/bloop-box/bloop-server-framework/commit/da4cd063905be3a371eb57dd1a0f6b5d6ace79a1)

## [1.10.6]https://github.com/bloop-box/bloop-server-framework/compare/v1.10.5...v1.10.6 (2026-02-09)


### Bug Fixes

* **achievement:** apply camelCase rename to achievement award batches ([b283678]https://github.com/bloop-box/bloop-server-framework/commit/b2836784b06b19f174cfd1a4b5ffffde86316069)

## [1.10.5]https://github.com/bloop-box/bloop-server-framework/compare/v1.10.4...v1.10.5 (2025-12-14)


### Bug Fixes

* use rustls feature for teloxide ([8150f59]https://github.com/bloop-box/bloop-server-framework/commit/8150f59c7bc036a8e75eea596190e93f158ea46f)

## [1.10.4]https://github.com/bloop-box/bloop-server-framework/compare/v1.10.3...v1.10.4 (2025-12-12)


### Bug Fixes

* **message:** make into_bytes for AchievementRecord public ([1488052]https://github.com/bloop-box/bloop-server-framework/commit/14880522c88d73cb5a2f80d6ca511291500f5c0e)

## [1.10.3]https://github.com/bloop-box/bloop-server-framework/compare/v1.10.2...v1.10.3 (2025-12-12)


### Bug Fixes

* **message:** make into_tagged_bytes public ([3efa95c]https://github.com/bloop-box/bloop-server-framework/commit/3efa95c0ac6ca12e7508c53ca3d11d8e014e7d5c)

## [1.10.2]https://github.com/bloop-box/bloop-server-framework/compare/v1.10.1...v1.10.2 (2025-12-12)


### Bug Fixes

* **message:** make Message attributes public ([06a740e]https://github.com/bloop-box/bloop-server-framework/commit/06a740ec3eaa181fd9e5a5e29f0943d87a3fb706)

## [1.10.1]https://github.com/bloop-box/bloop-server-framework/compare/v1.10.0...v1.10.1 (2025-12-12)


### Bug Fixes

* **network:** make CustomRequestMessage props public ([312fc78]https://github.com/bloop-box/bloop-server-framework/commit/312fc78d162713bfa7ee537d5dc380bc5b6be297)

# [1.10.0]https://github.com/bloop-box/bloop-server-framework/compare/v1.9.2...v1.10.0 (2025-12-12)


### Features

* **engine:** add humantime_serde to threshold Duration ([8d372dc]https://github.com/bloop-box/bloop-server-framework/commit/8d372dc8903569202071e3265186e6b41351c966)

## [1.9.2]https://github.com/bloop-box/bloop-server-framework/compare/v1.9.1...v1.9.2 (2025-12-12)


### Bug Fixes

* **Cargo.toml:** enable all features for docs.rs ([15a67a4]https://github.com/bloop-box/bloop-server-framework/commit/15a67a4429218c3c6a2735a2efb62bc21a1cacf7)

## [1.9.1]https://github.com/bloop-box/bloop-server-framework/compare/v1.9.0...v1.9.1 (2025-12-11)


### Bug Fixes

* **achievement:** return resolved audio file as reference inside owned option ([dce5ce2]https://github.com/bloop-box/bloop-server-framework/commit/dce5ce208980065bba8a9ce159deae16251934a0)

# [1.9.0]https://github.com/bloop-box/bloop-server-framework/compare/v1.8.5...v1.9.0 (2025-12-11)


### Features

* **achievement:** make relative path on audio source public ([6049918]https://github.com/bloop-box/bloop-server-framework/commit/6049918bc918683fab7c35df3f6cd15264a13631)

## [1.8.5]https://github.com/bloop-box/bloop-server-framework/compare/v1.8.4...v1.8.5 (2025-12-10)


### Bug Fixes

* **evaluator:** introduce DeriveCtx enum to handle both owned and referenced values ([41e7a2a]https://github.com/bloop-box/bloop-server-framework/commit/41e7a2a0bd11c177e8462557f1cdc35246f828e6)

## [1.8.4]https://github.com/bloop-box/bloop-server-framework/compare/v1.8.3...v1.8.4 (2025-12-10)


### Bug Fixes

* **evaluator:** supply player instead of bloop in distinct value extract function ([02552ea]https://github.com/bloop-box/bloop-server-framework/commit/02552eaf804ce62e9330720851302311b8dc0570)

## [1.8.3]https://github.com/bloop-box/bloop-server-framework/compare/v1.8.2...v1.8.3 (2025-12-10)


### Bug Fixes

* **evaluator:** rwemove unusable builder() methods ([c167c87]https://github.com/bloop-box/bloop-server-framework/commit/c167c8734683fdec3d522a5590d0dbbac3706c7f)

## [1.8.2]https://github.com/bloop-box/bloop-server-framework/compare/v1.8.1...v1.8.2 (2025-12-10)


### Bug Fixes

* **evaluator:** add Debug annotation to erased builder return values ([ffe3437]https://github.com/bloop-box/bloop-server-framework/commit/ffe34372557f40d8c9c6f2593e92bc1d5cb4a50d)

## [1.8.1]https://github.com/bloop-box/bloop-server-framework/compare/v1.8.0...v1.8.1 (2025-12-10)


### Bug Fixes

* **evaluator:** consume player in streak evaluator instead of bloop ([2639f9c]https://github.com/bloop-box/bloop-server-framework/commit/2639f9c5a928a02f2653a590617ce7e7e6b5af52)

# [1.8.0]https://github.com/bloop-box/bloop-server-framework/compare/v1.7.0...v1.8.0 (2025-12-10)


### Features

* **evaluator:** rewrite streak evaluator and introduce distinct values evaluator ([e62cff3]https://github.com/bloop-box/bloop-server-framework/commit/e62cff375653151e3afb113c1f80f1decb14e70c)

# [1.7.0]https://github.com/bloop-box/bloop-server-framework/compare/v1.6.1...v1.7.0 (2025-12-09)


### Features

* **statistics:** accept server address as string ([369b415]https://github.com/bloop-box/bloop-server-framework/commit/369b415430d8ab269c9bdfb1c9b97b69ff7bc126)

## [1.6.1]https://github.com/bloop-box/bloop-server-framework/compare/v1.6.0...v1.6.1 (2025-12-09)


### Bug Fixes

* **statistics:** align server builder pattern with other builders ([add77b2]https://github.com/bloop-box/bloop-server-framework/commit/add77b2bad19540bbcb777a3f02a3805244163de)

# [1.6.0]https://github.com/bloop-box/bloop-server-framework/compare/v1.5.2...v1.6.0 (2025-12-09)


### Bug Fixes

* bump dependencies to latest ([3ead591]https://github.com/bloop-box/bloop-server-framework/commit/3ead5913f35acea545902afae2244cb27df2f51c)


### Features

* remove async_trait dep ([bcba7f7]https://github.com/bloop-box/bloop-server-framework/commit/bcba7f7a1c757098e3bc8d51edc12ca3e390520d)

## [1.5.2]https://github.com/bloop-box/bloop-server-framework/compare/v1.5.1...v1.5.2 (2025-12-09)


### Bug Fixes

* **engine:** require Default requirement for Metadata ([82ba219]https://github.com/bloop-box/bloop-server-framework/commit/82ba219b01c57630ba830793a70b321442a5d05f)

## [1.5.1]https://github.com/bloop-box/bloop-server-framework/compare/v1.5.0...v1.5.1 (2025-12-09)


### Bug Fixes

* **engine:** rename falsely named metadata to state ([731a2bd]https://github.com/bloop-box/bloop-server-framework/commit/731a2bd1b502501c09591aea5070ac2655710cbe)

# [1.5.0]https://github.com/bloop-box/bloop-server-framework/compare/v1.4.2...v1.5.0 (2025-12-09)


### Features

* **nfc_uid:** add serde support ([6fc1451]https://github.com/bloop-box/bloop-server-framework/commit/6fc14516b4e1e0f94bcc3349b267891544a2da9a)

## [1.4.2]https://github.com/bloop-box/bloop-server-framework/compare/v1.4.1...v1.4.2 (2025-12-08)


### Bug Fixes

* **semantic-release:** commit Cargo.lock on release ([cca0b15]https://github.com/bloop-box/bloop-server-framework/commit/cca0b15bef68460493f3d55ebc0fbe17f23298fd)

## [1.4.1]https://github.com/bloop-box/bloop-server-framework/compare/v1.4.0...v1.4.1 (2025-12-08)


### Bug Fixes

* **evaluator:** forbid duplicate players and self in streak checks ([fa366da]https://github.com/bloop-box/bloop-server-framework/commit/fa366da8a333701b5989b9532c1b6e148b4c15d7)

# [1.4.0]https://github.com/bloop-box/bloop-server-framework/compare/v1.3.3...v1.4.0 (2025-12-08)


### Features

* **evaluator:** add StreakEvaluator ([19ab2f4]https://github.com/bloop-box/bloop-server-framework/commit/19ab2f4b2b84427a0307e1faac9847934cc77257)

## [1.3.3]https://github.com/bloop-box/bloop-server-framework/compare/v1.3.2...v1.3.3 (2025-12-08)


### Bug Fixes

* **evaluator:** fix time DST handling ([592eb2d]https://github.com/bloop-box/bloop-server-framework/commit/592eb2d54db98cd3a2da2a3d70c998e5815e7389)

## [1.3.2]https://github.com/bloop-box/bloop-server-framework/compare/v1.3.1...v1.3.2 (2025-12-07)


### Bug Fixes

* rename missing Metadata to State ([65f377b]https://github.com/bloop-box/bloop-server-framework/commit/65f377bd8eb922550c31e46030cd54e7cfa6c79e)

## [1.3.1]https://github.com/bloop-box/bloop-server-framework/compare/v1.3.0...v1.3.1 (2025-12-07)


### Bug Fixes

* rename Metadata generic to State ([26f7426]https://github.com/bloop-box/bloop-server-framework/commit/26f742675a053d39d8bf57c15f12019451efd602)

# [1.3.0]https://github.com/bloop-box/bloop-server-framework/compare/v1.2.0...v1.3.0 (2025-12-07)


### Features

* **player:** add fn to PlayerRegistry to get player Arcs ([433ba26]https://github.com/bloop-box/bloop-server-framework/commit/433ba2648fa6f64700e5abb134d06817225e9458)

# [1.2.0]https://github.com/bloop-box/bloop-server-framework/compare/v1.1.0...v1.2.0 (2025-12-06)


### Features

* **nfc_uid:** add additional impls for vec handling ([648d882]https://github.com/bloop-box/bloop-server-framework/commit/648d882e7ebbe4ccad1ca568e9c340f72566944c)

# [1.1.0]https://github.com/bloop-box/bloop-server-framework/compare/v1.0.2...v1.1.0 (2025-12-05)


### Features

* make audio hash available through achievements ([41d3b4e]https://github.com/bloop-box/bloop-server-framework/commit/41d3b4eeb2b5c9313613f050f744c3af21c44016)

## [1.0.2]https://github.com/bloop-box/bloop-server-framework/compare/v1.0.1...v1.0.2 (2025-07-12)


### Bug Fixes

* rename features to capabilities ([56b987e]https://github.com/bloop-box/bloop-server-framework/commit/56b987e2df3345981c25ebdcb1f73cf0b258956b)

## [1.0.1]https://github.com/bloop-box/bloop-server-framework/compare/v1.0.0...v1.0.1 (2025-07-08)


### Bug Fixes

* **engine:** fix throttle logic ([9d93ce6]https://github.com/bloop-box/bloop-server-framework/commit/9d93ce6cb543ae94725847cdad940e5747fa8a67)

# 1.0.0 (2025-07-07)


### Features

* add health monitor and additional tests ([0991d5f]https://github.com/bloop-box/bloop-server-framework/commit/0991d5f625aca39f3e0b8ed9d227600d639d00d0)
* add statistics server feature ([f218bec]https://github.com/bloop-box/bloop-server-framework/commit/f218becda6be1ac753772513a5e8c656fc1a5c76)
* implement remaining 1.0 features ([806d0c1]https://github.com/bloop-box/bloop-server-framework/commit/806d0c168025408582f64ccd6257518f3edfa061)
* initial commit ([5cdb624]https://github.com/bloop-box/bloop-server-framework/commit/5cdb6244c2e30d86d56186b5a9e2978ba59924ff)