Skip to content

Commit 9af22d8

Browse files
committed
changed livebooks to use published version 0.2
Updated TODOs with rough version plans Annotating flaky tests with TODOs
1 parent 482b4f5 commit 9af22d8

9 files changed

+33
-29
lines changed

TODO.md

Lines changed: 25 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,34 @@
11
# Intro
22
Even though this library is published, there are things I still want to do before I consider this
33
as really done. Here the outstanding tasks that I can think of.
4+
45
# Tasks
5-
- [ ] Add installation instructions
6-
- [x] Provide several notebook examples (test env, prod)
7-
- [ ] This requires still some minor modifications once the next version is published to not load the code from my local drive (v0.3)
8-
- [ ] Perform an extra round of testing on hardware (v0.3)
9-
- [ ] Enable Telemetry? (v0.5)
10-
- [ ] Connect everything into a supervision tree (to make it more robust) (v0.4)
11-
- [ ] Get the library into nerves-livebook (v0.7)
12-
- [ ] Add proper API/module documentation (v0.3)
13-
- [ ] Add documentation on how to connect the LED strip to a RaspberryPi Zero (with and without level shifter).
14-
This could be part of the first example (v0.3)
15-
- [ ] Finish the dsl livebook example (mostly done, but the send_config part is not done yet) (v0.2)
6+
- [ ] Documentation
7+
- [x] Provide several notebook examples (v0.2)
8+
- [ ] Finish the dsl livebook example (mostly done, but the send_config part is not done yet) (v0.2)
9+
- [ ] Add proper API/module documentation (v0.3)
10+
- [ ] Add type specs (v0.3)
11+
- [ ] Add documentation on how to connect the LED strip to a RaspberryPi Zero (with and without level shifter).This could be part of the first example (v0.3 & v0.4)
12+
- [ ] Add installation instructions (v0.4)
1613
- [ ] Create a dsl (domain specific language) to (finally) easily program strips
1714
- [x] Define an led strip (v0.2)
1815
- [x] Define a live_loop (v0.2)
1916
- [x] Add more macro tests (v0.2)
2017
- [ ] Extend the Fledex macros to allow easy configuration with a config macro (v0.3)
21-
- [ ] Add an example where several nodes are connected to transfer pubsub messages accross nodes (v0.3)
22-
- [x] Change the `Leds`' `new` function to an `leds` function. That makes it more natural to read if the Leds module gets imported. (v0.2)
23-
- [ ] Remove unnecessary imports in the examples (v0.3)
24-
- [ ] Add type specs (v0.3)
25-
- [ ] Add more unit tests, check --cover (v0.3)
26-
- [ ] Create foundation for a led-component-library that enables defining reusable led components. For example both the clock as well as the weather example have a scale it would be easy to define those as components that would make it easier to defining certain aspects (v0.5)
27-
- [ ] Upgrade to a final version of circuit_spi v2.0 (whenever available)
18+
- [ ] Clustering
19+
- [ ] Add an example where several nodes are connected to transfer pubsub messages accross nodes (v0.3)
20+
- [ ] Create a driver that outputs through pubsub (on one node) and an animation that consumes those (this allows to connect remote livebooks to a physical led strip)
21+
- [ ] Cleanup
22+
- [x] Change the `Leds`' `new` function to an `leds` function. That makes it more natural to read if the Leds module gets imported. (v0.2)
23+
- [x] Remove unnecessary imports in the examples (v0.2)
24+
- [x] Add more unit tests, check mix coveralls.html (v0.2)
25+
- [ ] Fix flaxy tests (see TODOs) (v0.3)
26+
- [ ] Perform an extra round of testing on hardware (v0.3)
27+
- [ ] Connect everything into a supervision tree (to make it more robust) (v0.4)
28+
- [ ] Enable Telemetry? (v0.5)
29+
- [ ] Upgrade to a final version of circuit_spi v2.0 (whenever available) (v0.?)
30+
- [ ] LED-component library
31+
- [ ] Create foundation for a led-component-library that enables defining reusable led components. For example both the clock as well as the weather example have a scale it would be easy to define those as components that would make it easier to defining certain aspects (v0.5)
32+
- [ ] Increase consumption
33+
- [ ] Use in school project (v0.4)
34+
- [ ] Get the library into nerves-livebook (v0.7)

livebooks/2_fledex_first_steps.livemd

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,7 @@
55
# the libraries will be loaded, but on a nerves_livebook you can only use
66
# what has been compiled in.
77
Mix.install([
8-
{:fledex, "~>0.1"},
9-
{:circuits_spi, "~> 2.0-pre.0"},
10-
{:kino, "~>0.11"}
8+
{:fledex, "~>0.2"},
119
])
1210

1311
# we define a couple of aliases to not have to type that much

livebooks/3_fledex_animations.livemd

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,7 @@
55
# hardware but on a normal livebook, This makes it easier to stay up-to-date and experiment
66
# We start to define our fledex library, directly linking to the latest version on github
77
Mix.install([
8-
{:fledex, path: "/home/maze/Documents/code/fledex"},
9-
{:kino, "~>0.11"}
8+
{:fledex, "~>0.2"}
109
])
1110

1211
# we define a couple of aliases to not have to type that much

livebooks/4_fledex_clock_example.livemd

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,7 @@
22

33
```elixir
44
Mix.install([
5-
{:fledex, path: "/home/maze/Documents/code/fledex"},
6-
{:kino, "~>0.11"}
5+
{:fledex, "~>0.2"}
76
])
87

98
# we define a couple of aliases to not have to type that much

livebooks/5_fledex_weather_example.livemd

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,8 @@
22

33
```elixir
44
Mix.install([
5-
{:fledex, path: "/home/maze/Documents/code/fledex"},
5+
{:fledex, "~>0.2"},
66
{:json, "~>1.4"},
7-
{:kino, "~>0.11"}
87
])
98

109
# we define a couple of aliases to not have to type that much

livebooks/6_fledex_dsl.livemd

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
# hardware but on a normal livebook, This makes it easier to stay up-to-date and experiment
66
# We start to define our fledex library, directly linking to the latest version on github
77
Mix.install([
8-
{:fledex, path: "/home/maze/Documents/code/fledex"}
8+
{:fledex, "~>0.2"}
99
])
1010
```
1111

test/color_test.exs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
defmodule Fledex.ColorTest do
22
use ExUnit.Case, async: true
33

4-
alias Fledex.Color.Utils
54
alias Fledex.Color.Conversion.Approximate
65
alias Fledex.Color.Conversion.Rainbow
76
alias Fledex.Color.Conversion.Raw
@@ -13,6 +12,7 @@ defmodule Fledex.ColorTest do
1312

1413
alias Fledex.Color.LoadUtils
1514
alias Fledex.Color.Names
15+
alias Fledex.Color.Utils
1616

1717
describe "color correction tests" do
1818
test "no_color_correction" do

test/fledex_test.exs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ defmodule Fledex.Test do
3333

3434
end
3535

36+
# TODO: check this test, it seems to be flaky
3637
test "simple led strip macro" do
3738
# ensure our servers are not started
3839
assert GenServer.whereis(@server_name) == nil

test/led_animation_manager_test.exs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ defmodule Fledex.LedAnimationManagerTest do
4545
{:ok, state} = LedAnimationManager.get_info()
4646
assert Map.keys(state) == [strip_name, :strip_name2]
4747
end
48+
# TODO: check this test it seems to be flaky
4849
test "re-register led_strip", %{strip_name: strip_name} do
4950
pid = GenServer.whereis(strip_name)
5051
assert pid != nil

0 commit comments

Comments
 (0)