Skip to content

unleash-edge v0.0.1

Compare
Choose a tag to compare
@chriswk chriswk released this 14 Feb 14:19
· 552 commits to main since this release

Chore

  • added team developer to save spam
  • tokens are now used
  • redesign source and sinks to store features by environment and filter the responses by project
  • remove sinks for offline mode
  • redesign source/sink architecture
  • remove redis test that doesn't make sense anymore
  • test auto-assign-pr action
  • move server startup and traits to async
  • improve tests for redis provider
  • bump unleash-types
  • Update cargo keys with ownership and license

Chore

  • added changelog

Documentation

  • add edge mode
    • docs: add edge mode
  • docs: organize modes differently, small fixes
  • docs: edge mode does not need token to start, explain warm up
  • Update README.md

New Features

  • switch to backing with HashMap<TokenString, EdgeToken>
  • adds a call for validating tokens
  • implement simplify tokens
  • add client for getting features
  • implement an in memory data store
  • internal backstage build info endpoint
    • feat: internal backstage build info endpoint
  • chore: add test documenting info endpoint
  • feat: add enabled toggles routes
  • fix: disabling metrics for not linux

Bug Fixes

  • update rust crate unleash-types to 0.8.3

  • update rust crate unleash-types to 0.8.2

  • update rust crate unleash-yggdrasil to 0.4.5

  • update rust crate serde_json to 1.0.93

  • update rust crate serde_json to 1.0.92

  • update rust crate anyhow to 1.0.69

  • expose correct route on frontend api

  • features get refreshed.
    Previously our spin loop slept for 15 seconds and then hit the await on
    the channel for a new token to validate.
    This PR changes that to use tokio::select to either refresh features for
    known tokens each 10th second, or receive a new token to validate.

    Should allow us to use more than one token and get them refreshed

  • allow any on CORS

  • make sure reqwest does not bring along openssl

  • update rust crate tokio to 1.25.0

  • update rust crate unleash-yggdrasil to 0.4.2

  • patch the way CORS headers are done, without this, the server crashes on startup with an unhelpful error message

  • update rust crate clap to 4.1.4

  • Update unleash-types to 0.5.1

  • update rust crate unleash-yggdrasil to 0.4.0

  • update rust crate clap to 4.1.3

  • update rust crate actix-web to 4.3.0

Other

  • move obvious debug level logging to debug
  • Subsume keys to check
    This collapses the keys seen. Removing keys that have been subsumed by a
    wider key (a key that includes the same projects or more as existing
    keys).
  • token validator
    • task: add token validator
  • Updated to only refresh tokens of type Client
  • update to include openapi and hashes feature of types
  • added etag middleware
  • Added prometheus metrics from shadow

Style

  • fix formatting

Commit Statistics

Commit Details

view details
  • #10
    • use subcommands rather than ValueEnum (8fe7cab)
  • #12
    • add basic proxy endpoints and related test code (5f55517)
  • #13
    • update rust crate clap to 4.1.4 (4b9e889)
  • #14
    • patch the way CORS headers are done, without this, the server crashes on startup with an unhelpful error message (71a9a23)
  • #15
    • internal backstage build info endpoint (0469918)
  • #16
    • add client for getting features (9e99f4b)
  • #17
    • update rust crate unleash-yggdrasil to 0.4.2 (be9428d)
  • #18
    • add enabled toggles routes (92aa64b)
  • #20
    • Added prometheus metrics from shadow (8f6fa05)
  • #22
  • #23
    • update rust crate tokio to 1.25.0 (46a10d2)
  • #25
    • Implement redis datasource (0b2537f)
  • #26
  • #27
  • #28
    • improve tests for redis provider (ea8cd1b)
  • #29
    • implement an in memory data store (5ae644c)
  • #3
    • Adds client features endpoint (4bf25a3)
  • #30
    • implement simplify tokens (eab0878)
  • #33
    • move server startup and traits to async (e58f4fc)
  • #34
    • adds a call for validating tokens (0d037ec)
  • #36
    • Feat/implement data sync (862ee28)
  • #37
  • #38
    • features get refreshed. (2b0f832)
  • #39
    • test auto-assign-pr action (286dfd5)
  • #4
    • Add edge-token extractor to lock down access (e6bc817)
  • #40
    • switch to backing with HashMap<TokenString, EdgeToken> (3a8cd76)
  • #41
    • expose correct route on frontend api (ca0a50d)
  • #42
    • update rust crate anyhow to 1.0.69 (0be62e8)
  • #43
    • update rust crate serde_json to 1.0.92 (cd86cdd)
  • #44
    • Updated to only refresh tokens of type Client (d32e20b)
  • #45
    • remove redis test that doesn't make sense anymore (ba72e09)
  • #46
    • redesign source/sink architecture (cdfa7c2)
  • #5
    • update rust crate actix-web to 4.3.0 (042ae38)
  • #52
    • update rust crate serde_json to 1.0.93 (986a743)
  • #53
  • #54
    • remove sinks for offline mode (9a34999)
  • #55
    • update rust crate unleash-types to 0.8.2 (4f528b7)
  • #56
    • update rust crate unleash-yggdrasil to 0.4.5 (2d4a743)
  • #57
    • redesign source and sinks to store features by environment and filter the responses by project (869294b)
  • #58
  • #59
  • #6
    • update rust crate clap to 4.1.3 (9f817bd)
  • #60
  • #61
  • #62
    • update rust crate unleash-types to 0.8.3 (eea450a)
  • #8
    • update rust crate unleash-yggdrasil to 0.4.0 (fa8e961)
  • #9
  • Uncategorized
    • added changelog (e2a5894)
    • added team developer to save spam (004aa95)
    • move obvious debug level logging to debug (76e8e2a)
    • tokens are now used (b18c039)
    • make sure reqwest does not bring along openssl (93b0f22)
    • update to include openapi and hashes feature of types (bcc2051)
    • bump unleash-types (9132cc1)
    • Update unleash-types to 0.5.1 (02e201b)
    • Update cargo keys with ownership and license (1d6a518)
    • add /api/client/features endpoint (c270685)
    • Server with metrics and health check ready (231efc3)