Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/main'
Browse files Browse the repository at this point in the history
  • Loading branch information
dzhibas committed Mar 7, 2025
2 parents 0040866 + a57b24b commit 36e670c
Show file tree
Hide file tree
Showing 3 changed files with 27 additions and 2 deletions.
10 changes: 10 additions & 0 deletions Flagfile.example
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,16 @@ FF-feature1 {
json({})
}

// @author Nikolajus K
// @expires 2024-12-31 00:00:00
FF-flag-with-annotations -> true

/**
* @author Nikolajus K
* @expires 2024-12-31 00:00:00
*/
FF-flag-with-annotations-2 -> false

/* this is multi-line commented feature
FF-timer-feature {
// turn on only on evaluation time after 22nd feb
Expand Down
17 changes: 15 additions & 2 deletions docs/TODO.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,15 @@

items tracking to be done

Still todo
Flagfile-Parser

- [ ] date > timestamp comparison
- [ ] parse NOW function
- [ ] evaluator for Flagfile
- [ ] restructure and rename project into Flagfile.rs / into workspaces
- [ ] introduce new comparison ops - regex match (and does not match), contains (and does not contain)

CLI
Flagfile-CLI

- [ ] flagfile validate
- [ ] flagfile init
Expand All @@ -22,6 +22,19 @@ CLI
- [ ] flagfile fmt
- [ ] flagfile test (will look for flagfile.tests file and run those)

Flagfile-Relay

- [ ] Server options: gRPC (tonic), rest (axum), redis (pretend to be redis), flagfile cdn
- [ ] server as cdn can serve this as flagfile or converted through converter into other framework (like launchdarkly or .net flagging)
- [ ] Pullers: pulling from cdn, from github, SSE - listening for update as server side events
- [ ] Create lightweight side-car container for this
- [ ] Look into if we can transform AST of feature flags into json structure launchdarkly uses and force ld-relay to pull state from our apis instead so client libraries doesnt need to change. similar to what dorklyorg/dorkly does with yaml files

Flagfile other crazy ideas

- [ ] Compile into other framework languages something like you have Flagfile and then convert to .net feature flagging
-

Done

- [x] Atom parsing for Date
Expand Down
2 changes: 2 additions & 0 deletions docs/roadmap.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

for the full-blown project Flagfile follow same bottom up technique just like NOM parsing bottom up :)

feature flags perfectly decribed here: https://martinfowler.com/articles/feature-toggles.html

## sequence of events

1. create parser and evaluator for boolean expressions (DONE)
Expand Down

0 comments on commit 36e670c

Please sign in to comment.