fastled 1.1.23__tar.gz → 1.1.24__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (102) hide show
  1. {fastled-1.1.23 → fastled-1.1.24}/PKG-INFO +3 -2
  2. {fastled-1.1.23 → fastled-1.1.24}/README.md +1 -1
  3. {fastled-1.1.23 → fastled-1.1.24}/pyproject.toml +1 -0
  4. {fastled-1.1.23 → fastled-1.1.24}/src/fastled/__init__.py +1 -1
  5. {fastled-1.1.23 → fastled-1.1.24}/src/fastled/docker_manager.py +7 -5
  6. fastled-1.1.24/src/fastled/spinner.py +34 -0
  7. {fastled-1.1.23 → fastled-1.1.24}/src/fastled.egg-info/PKG-INFO +3 -2
  8. {fastled-1.1.23 → fastled-1.1.24}/src/fastled.egg-info/SOURCES.txt +1 -0
  9. {fastled-1.1.23 → fastled-1.1.24}/src/fastled.egg-info/requires.txt +1 -0
  10. {fastled-1.1.23 → fastled-1.1.24}/.aiderignore +0 -0
  11. {fastled-1.1.23 → fastled-1.1.24}/.github/workflows/build_multi_docker_image.yml +0 -0
  12. {fastled-1.1.23 → fastled-1.1.24}/.github/workflows/lint.yml +0 -0
  13. {fastled-1.1.23 → fastled-1.1.24}/.github/workflows/test_macos.yml +0 -0
  14. {fastled-1.1.23 → fastled-1.1.24}/.github/workflows/test_ubuntu.yml +0 -0
  15. {fastled-1.1.23 → fastled-1.1.24}/.github/workflows/test_win.yml +0 -0
  16. {fastled-1.1.23 → fastled-1.1.24}/.gitignore +0 -0
  17. {fastled-1.1.23 → fastled-1.1.24}/.pylintrc +0 -0
  18. {fastled-1.1.23 → fastled-1.1.24}/.vscode/launch.json +0 -0
  19. {fastled-1.1.23 → fastled-1.1.24}/.vscode/settings.json +0 -0
  20. {fastled-1.1.23 → fastled-1.1.24}/.vscode/tasks.json +0 -0
  21. {fastled-1.1.23 → fastled-1.1.24}/LICENSE +0 -0
  22. {fastled-1.1.23 → fastled-1.1.24}/MANIFEST.in +0 -0
  23. {fastled-1.1.23 → fastled-1.1.24}/clean +0 -0
  24. {fastled-1.1.23 → fastled-1.1.24}/docs/fastled.js +0 -0
  25. {fastled-1.1.23 → fastled-1.1.24}/docs/fastled.wasm +0 -0
  26. {fastled-1.1.23 → fastled-1.1.24}/docs/index.css +0 -0
  27. {fastled-1.1.23 → fastled-1.1.24}/docs/index.html +0 -0
  28. {fastled-1.1.23 → fastled-1.1.24}/docs/index.js +0 -0
  29. {fastled-1.1.23 → fastled-1.1.24}/examples/Blink/Blink.ino +0 -0
  30. {fastled-1.1.23 → fastled-1.1.24}/examples/Chromancer/Chromancer.ino +0 -0
  31. {fastled-1.1.23 → fastled-1.1.24}/examples/Chromancer/detail.h +0 -0
  32. {fastled-1.1.23 → fastled-1.1.24}/examples/Chromancer/gary_woos_wled_port/gary_woos_wled_ledmap.h +0 -0
  33. {fastled-1.1.23 → fastled-1.1.24}/examples/Chromancer/gary_woos_wled_port/presets.json +0 -0
  34. {fastled-1.1.23 → fastled-1.1.24}/examples/Chromancer/gary_woos_wled_port/presets.min.json +0 -0
  35. {fastled-1.1.23 → fastled-1.1.24}/examples/Chromancer/gen.py +0 -0
  36. {fastled-1.1.23 → fastled-1.1.24}/examples/Chromancer/mapping.h +0 -0
  37. {fastled-1.1.23 → fastled-1.1.24}/examples/Chromancer/net.h +0 -0
  38. {fastled-1.1.23 → fastled-1.1.24}/examples/Chromancer/output.json +0 -0
  39. {fastled-1.1.23 → fastled-1.1.24}/examples/Chromancer/ripple.h +0 -0
  40. {fastled-1.1.23 → fastled-1.1.24}/examples/Chromancer/screenmap.json.h +0 -0
  41. {fastled-1.1.23 → fastled-1.1.24}/examples/ColorPalette/ColorPalette.ino +0 -0
  42. {fastled-1.1.23 → fastled-1.1.24}/examples/ColorTemperature/ColorTemperature.ino +0 -0
  43. {fastled-1.1.23 → fastled-1.1.24}/examples/Cylon/Cylon.ino +0 -0
  44. {fastled-1.1.23 → fastled-1.1.24}/examples/DemoReel100/DemoReel100.ino +0 -0
  45. {fastled-1.1.23 → fastled-1.1.24}/examples/Esp32Rmt51/Esp32Rmt51.ino +0 -0
  46. {fastled-1.1.23 → fastled-1.1.24}/examples/EspI2SDemo/EspI2SDemo.ino +0 -0
  47. {fastled-1.1.23 → fastled-1.1.24}/examples/Fire2012/Fire2012.ino +0 -0
  48. {fastled-1.1.23 → fastled-1.1.24}/examples/Fire2012WithPalette/Fire2012WithPalette.ino +0 -0
  49. {fastled-1.1.23 → fastled-1.1.24}/examples/FirstLight/FirstLight.ino +0 -0
  50. {fastled-1.1.23 → fastled-1.1.24}/examples/FxEngine/FxEngine.ino +0 -0
  51. {fastled-1.1.23 → fastled-1.1.24}/examples/Noise/Noise.ino +0 -0
  52. {fastled-1.1.23 → fastled-1.1.24}/examples/NoisePlayground/NoisePlayground.ino +0 -0
  53. {fastled-1.1.23 → fastled-1.1.24}/examples/NoisePlusPalette/NoisePlusPalette.ino +0 -0
  54. {fastled-1.1.23 → fastled-1.1.24}/examples/OctoWS2811/OctoWS2811.ino +0 -0
  55. {fastled-1.1.23 → fastled-1.1.24}/examples/Pacifica/Pacifica.ino +0 -0
  56. {fastled-1.1.23 → fastled-1.1.24}/examples/Pride2015/Pride2015.ino +0 -0
  57. {fastled-1.1.23 → fastled-1.1.24}/examples/SdCard/SdCard.ino +0 -0
  58. {fastled-1.1.23 → fastled-1.1.24}/examples/SdCard/screenmap.json.h +0 -0
  59. {fastled-1.1.23 → fastled-1.1.24}/examples/TwinkleFox/TwinkleFox.ino +0 -0
  60. {fastled-1.1.23 → fastled-1.1.24}/examples/Video/Gfx2Video/Gfx2Video.ino +0 -0
  61. {fastled-1.1.23 → fastled-1.1.24}/examples/WasmScreenCoords/WasmScreenCoords.ino +0 -0
  62. {fastled-1.1.23 → fastled-1.1.24}/examples/Water/Water.ino +0 -0
  63. {fastled-1.1.23 → fastled-1.1.24}/examples/XYMatrix/XYMatrix.ino +0 -0
  64. {fastled-1.1.23 → fastled-1.1.24}/examples/wasm/wasm.ino +0 -0
  65. {fastled-1.1.23 → fastled-1.1.24}/install +0 -0
  66. {fastled-1.1.23 → fastled-1.1.24}/lint +0 -0
  67. {fastled-1.1.23 → fastled-1.1.24}/requirements.testing.txt +0 -0
  68. {fastled-1.1.23 → fastled-1.1.24}/setup.cfg +0 -0
  69. {fastled-1.1.23 → fastled-1.1.24}/setup.py +0 -0
  70. {fastled-1.1.23 → fastled-1.1.24}/src/fastled/app.py +0 -0
  71. {fastled-1.1.23 → fastled-1.1.24}/src/fastled/assets/example.txt +0 -0
  72. {fastled-1.1.23 → fastled-1.1.24}/src/fastled/build_mode.py +0 -0
  73. {fastled-1.1.23 → fastled-1.1.24}/src/fastled/cli.py +0 -0
  74. {fastled-1.1.23 → fastled-1.1.24}/src/fastled/client_server.py +0 -0
  75. {fastled-1.1.23 → fastled-1.1.24}/src/fastled/compile_server.py +0 -0
  76. {fastled-1.1.23 → fastled-1.1.24}/src/fastled/env.py +0 -0
  77. {fastled-1.1.23 → fastled-1.1.24}/src/fastled/filewatcher.py +0 -0
  78. {fastled-1.1.23 → fastled-1.1.24}/src/fastled/keyboard.py +0 -0
  79. {fastled-1.1.23 → fastled-1.1.24}/src/fastled/open_browser.py +0 -0
  80. {fastled-1.1.23 → fastled-1.1.24}/src/fastled/paths.py +0 -0
  81. {fastled-1.1.23 → fastled-1.1.24}/src/fastled/select_sketch_directory.py +0 -0
  82. {fastled-1.1.23 → fastled-1.1.24}/src/fastled/sketch.py +0 -0
  83. {fastled-1.1.23 → fastled-1.1.24}/src/fastled/string_diff.py +0 -0
  84. {fastled-1.1.23 → fastled-1.1.24}/src/fastled/types.py +0 -0
  85. {fastled-1.1.23 → fastled-1.1.24}/src/fastled/util.py +0 -0
  86. {fastled-1.1.23 → fastled-1.1.24}/src/fastled/web_compile.py +0 -0
  87. {fastled-1.1.23 → fastled-1.1.24}/src/fastled.egg-info/dependency_links.txt +0 -0
  88. {fastled-1.1.23 → fastled-1.1.24}/src/fastled.egg-info/entry_points.txt +0 -0
  89. {fastled-1.1.23 → fastled-1.1.24}/src/fastled.egg-info/top_level.txt +0 -0
  90. {fastled-1.1.23 → fastled-1.1.24}/test +0 -0
  91. {fastled-1.1.23 → fastled-1.1.24}/tests/test_bad_ino.py +0 -0
  92. {fastled-1.1.23 → fastled-1.1.24}/tests/test_cli.py +0 -0
  93. {fastled-1.1.23 → fastled-1.1.24}/tests/test_compile_server.py +0 -0
  94. {fastled-1.1.23 → fastled-1.1.24}/tests/test_embedded_data.py +0 -0
  95. {fastled-1.1.23 → fastled-1.1.24}/tests/test_filechanger.py +0 -0
  96. {fastled-1.1.23 → fastled-1.1.24}/tests/test_ino/bad/bad.ino +0 -0
  97. {fastled-1.1.23 → fastled-1.1.24}/tests/test_ino/embedded/data/bigdata.dat +0 -0
  98. {fastled-1.1.23 → fastled-1.1.24}/tests/test_ino/embedded/wasm.ino +0 -0
  99. {fastled-1.1.23 → fastled-1.1.24}/tests/test_ino/wasm/wasm.ino +0 -0
  100. {fastled-1.1.23 → fastled-1.1.24}/tests/test_server_and_client_seperatly.py +0 -0
  101. {fastled-1.1.23 → fastled-1.1.24}/tests/test_webcompile.py +0 -0
  102. {fastled-1.1.23 → fastled-1.1.24}/upload_package.sh +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: fastled
3
- Version: 1.1.23
3
+ Version: 1.1.24
4
4
  Summary: FastLED Wasm Compiler
5
5
  Home-page: https://github.com/zackees/fastled-wasm
6
6
  Maintainer: Zachary Vorhies
@@ -19,6 +19,7 @@ Requires-Dist: filelock
19
19
  Requires-Dist: disklru>=2.0.1
20
20
  Requires-Dist: appdirs
21
21
  Requires-Dist: rapidfuzz
22
+ Requires-Dist: progress
22
23
 
23
24
  # FastLED Wasm compiler
24
25
 
@@ -160,9 +161,9 @@ A: `delay()` will block `loop()` which blocks the main thread of the browser. Th
160
161
  Q: How can I get the compiled size of my FastLED sketch smaller?
161
162
  A: A big chunk of space is being used by unnecessary javascript `emscripten` is bundling. This can be tweeked by the wasm_compiler_settings.py file in the FastLED repo.
162
163
 
163
-
164
164
  # Revisions
165
165
 
166
+ * 1.1.24 - Adds progress spinning bar for pulling images, which take a long time.
166
167
  * 1.1.23 - Various fixes for MacOS
167
168
  * 1.1.22 - Selecting sketch now allows strings and narrowing down paths if ambiguity
168
169
  * 1.1.21 - Now always watches for space/enter key events to trigger a recompile.
@@ -138,9 +138,9 @@ A: `delay()` will block `loop()` which blocks the main thread of the browser. Th
138
138
  Q: How can I get the compiled size of my FastLED sketch smaller?
139
139
  A: A big chunk of space is being used by unnecessary javascript `emscripten` is bundling. This can be tweeked by the wasm_compiler_settings.py file in the FastLED repo.
140
140
 
141
-
142
141
  # Revisions
143
142
 
143
+ * 1.1.24 - Adds progress spinning bar for pulling images, which take a long time.
144
144
  * 1.1.23 - Various fixes for MacOS
145
145
  * 1.1.22 - Selecting sketch now allows strings and narrowing down paths if ambiguity
146
146
  * 1.1.21 - Now always watches for space/enter key events to trigger a recompile.
@@ -20,6 +20,7 @@ dependencies = [
20
20
  "disklru>=2.0.1",
21
21
  "appdirs",
22
22
  "rapidfuzz",
23
+ "progress"
23
24
  ]
24
25
 
25
26
  dynamic = ["version"]
@@ -1,3 +1,3 @@
1
1
  """FastLED Wasm Compiler package."""
2
2
 
3
- __version__ = "1.1.23"
3
+ __version__ = "1.1.24"
@@ -20,6 +20,8 @@ from docker.models.containers import Container
20
20
  from docker.models.images import Image
21
21
  from filelock import FileLock
22
22
 
23
+ from fastled.spinner import Spinner
24
+
23
25
  CONFIG_DIR = Path(user_data_dir("fastled", "fastled"))
24
26
  CONFIG_DIR.mkdir(parents=True, exist_ok=True)
25
27
  DB_FILE = CONFIG_DIR / "db.db"
@@ -225,17 +227,17 @@ class DockerManager:
225
227
  return
226
228
 
227
229
  # Quick check for latest version
228
-
229
- print(f"Pulling newer version of {image_name}:{tag}...")
230
- _ = self.client.images.pull(image_name, tag=tag)
230
+ with Spinner(f"Pulling newer version of {image_name}:{tag}..."):
231
+ _ = self.client.images.pull(image_name, tag=tag)
231
232
  print(f"Updated to newer version of {image_name}:{tag}")
232
233
  local_image_hash = self.client.images.get(f"{image_name}:{tag}").id
233
234
  if remote_image_hash is not None:
234
235
  DISK_CACHE.put(local_image_hash, remote_image_hash)
235
236
 
236
237
  except docker.errors.ImageNotFound:
237
- print(f"Image {image_name}:{tag} not found. Downloading...")
238
- self.client.images.pull(image_name, tag=tag)
238
+ print(f"Image {image_name}:{tag} not found.")
239
+ with Spinner("Loading "):
240
+ self.client.images.pull(image_name, tag=tag)
239
241
  try:
240
242
  local_image = self.client.images.get(f"{image_name}:{tag}")
241
243
  local_image_hash = local_image.id
@@ -0,0 +1,34 @@
1
+ import _thread
2
+ import threading
3
+ import time
4
+ import warnings
5
+
6
+ from progress.spinner import Spinner as SpinnerImpl
7
+
8
+
9
+ class Spinner:
10
+ def __init__(self, message: str = ""):
11
+ self.spinner = SpinnerImpl(message)
12
+ self.event = threading.Event()
13
+ self.thread = threading.Thread(target=self._spin, daemon=True)
14
+ self.thread.start()
15
+
16
+ def _spin(self) -> None:
17
+ try:
18
+ while not self.event.is_set():
19
+ self.spinner.next()
20
+ time.sleep(0.1)
21
+ except KeyboardInterrupt:
22
+ _thread.interrupt_main()
23
+ except Exception as e:
24
+ warnings.warn(f"Spinner thread failed: {e}")
25
+
26
+ def stop(self) -> None:
27
+ self.event.set()
28
+ self.thread.join()
29
+
30
+ def __enter__(self):
31
+ return self
32
+
33
+ def __exit__(self, exc_type, exc_val, exc_tb):
34
+ self.stop()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: fastled
3
- Version: 1.1.23
3
+ Version: 1.1.24
4
4
  Summary: FastLED Wasm Compiler
5
5
  Home-page: https://github.com/zackees/fastled-wasm
6
6
  Maintainer: Zachary Vorhies
@@ -19,6 +19,7 @@ Requires-Dist: filelock
19
19
  Requires-Dist: disklru>=2.0.1
20
20
  Requires-Dist: appdirs
21
21
  Requires-Dist: rapidfuzz
22
+ Requires-Dist: progress
22
23
 
23
24
  # FastLED Wasm compiler
24
25
 
@@ -160,9 +161,9 @@ A: `delay()` will block `loop()` which blocks the main thread of the browser. Th
160
161
  Q: How can I get the compiled size of my FastLED sketch smaller?
161
162
  A: A big chunk of space is being used by unnecessary javascript `emscripten` is bundling. This can be tweeked by the wasm_compiler_settings.py file in the FastLED repo.
162
163
 
163
-
164
164
  # Revisions
165
165
 
166
+ * 1.1.24 - Adds progress spinning bar for pulling images, which take a long time.
166
167
  * 1.1.23 - Various fixes for MacOS
167
168
  * 1.1.22 - Selecting sketch now allows strings and narrowing down paths if ambiguity
168
169
  * 1.1.21 - Now always watches for space/enter key events to trigger a recompile.
@@ -75,6 +75,7 @@ src/fastled/open_browser.py
75
75
  src/fastled/paths.py
76
76
  src/fastled/select_sketch_directory.py
77
77
  src/fastled/sketch.py
78
+ src/fastled/spinner.py
78
79
  src/fastled/string_diff.py
79
80
  src/fastled/types.py
80
81
  src/fastled/util.py
@@ -7,3 +7,4 @@ filelock
7
7
  disklru>=2.0.1
8
8
  appdirs
9
9
  rapidfuzz
10
+ progress
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes