diff options
| author | mo khan <mo@mokhan.ca> | 2025-07-15 16:37:08 -0600 |
|---|---|---|
| committer | mo khan <mo@mokhan.ca> | 2025-07-17 16:30:22 -0600 |
| commit | 45df4d0d9b577fecee798d672695fe24ff57fb1b (patch) | |
| tree | 1b99bf645035b58e0d6db08c7a83521f41f7a75b /vendor/bitflags/examples/serde.rs | |
| parent | f94f79608393d4ab127db63cc41668445ef6b243 (diff) | |
feat: migrate from Cedar to SpiceDB authorization system
This is a major architectural change that replaces the Cedar policy-based
authorization system with SpiceDB's relation-based authorization.
Key changes:
- Migrate from Rust to Go implementation
- Replace Cedar policies with SpiceDB schema and relationships
- Switch from envoy `ext_authz` with Cedar to SpiceDB permission checks
- Update build system and dependencies for Go ecosystem
- Maintain Envoy integration for external authorization
This change enables more flexible permission modeling through SpiceDB's
Google Zanzibar inspired relation-based system, supporting complex
hierarchical permissions that were difficult to express in Cedar.
Breaking change: Existing Cedar policies and Rust-based configuration
will no longer work and need to be migrated to SpiceDB schema.
Diffstat (limited to 'vendor/bitflags/examples/serde.rs')
| -rw-r--r-- | vendor/bitflags/examples/serde.rs | 36 |
1 files changed, 0 insertions, 36 deletions
diff --git a/vendor/bitflags/examples/serde.rs b/vendor/bitflags/examples/serde.rs deleted file mode 100644 index 22eae2db..00000000 --- a/vendor/bitflags/examples/serde.rs +++ /dev/null @@ -1,36 +0,0 @@ -//! An example of implementing `serde::Serialize` and `serde::Deserialize`. -//! The `#[serde(transparent)]` attribute is recommended to serialize directly -//! to the underlying bits type without wrapping it in a `serde` newtype. - -#[cfg(feature = "serde")] -fn main() { - use serde_derive::*; - - bitflags::bitflags! { - #[derive(Serialize, Deserialize, Debug, PartialEq, Eq)] - #[serde(transparent)] - pub struct Flags: u32 { - const A = 1; - const B = 2; - const C = 4; - const D = 8; - } - } - - let flags = Flags::A | Flags::B; - - let serialized = serde_json::to_string(&flags).unwrap(); - - println!("{:?} -> {}", flags, serialized); - - assert_eq!(serialized, r#""A | B""#); - - let deserialized: Flags = serde_json::from_str(&serialized).unwrap(); - - println!("{} -> {:?}", serialized, flags); - - assert_eq!(deserialized, flags); -} - -#[cfg(not(feature = "serde"))] -fn main() {} |
