fastled 1.2.87__tar.gz → 1.2.89__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 (133) hide show
  1. {fastled-1.2.87 → fastled-1.2.89}/Dockerfile +1 -0
  2. {fastled-1.2.87 → fastled-1.2.89}/PKG-INFO +1 -1
  3. {fastled-1.2.87 → fastled-1.2.89}/compiler/server.py +3 -2
  4. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/__init__.py +1 -1
  5. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/app.py +34 -0
  6. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/parse_args.py +5 -2
  7. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/server_flask.py +1 -1
  8. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/sketch.py +4 -2
  9. {fastled-1.2.87 → fastled-1.2.89}/src/fastled.egg-info/PKG-INFO +1 -1
  10. {fastled-1.2.87 → fastled-1.2.89}/.aiderignore +0 -0
  11. {fastled-1.2.87 → fastled-1.2.89}/.dockerignore +0 -0
  12. {fastled-1.2.87 → fastled-1.2.89}/.github/workflows/build_multi_docker_image.yml +0 -0
  13. {fastled-1.2.87 → fastled-1.2.89}/.github/workflows/build_webpage.yml +0 -0
  14. {fastled-1.2.87 → fastled-1.2.89}/.github/workflows/lint.yml +0 -0
  15. {fastled-1.2.87 → fastled-1.2.89}/.github/workflows/publish_release.yml +0 -0
  16. {fastled-1.2.87 → fastled-1.2.89}/.github/workflows/template_build_docker_image.yml +0 -0
  17. {fastled-1.2.87 → fastled-1.2.89}/.github/workflows/test_build_exe.yml +0 -0
  18. {fastled-1.2.87 → fastled-1.2.89}/.github/workflows/test_macos.yml +0 -0
  19. {fastled-1.2.87 → fastled-1.2.89}/.github/workflows/test_ubuntu.yml +0 -0
  20. {fastled-1.2.87 → fastled-1.2.89}/.github/workflows/test_win.yml +0 -0
  21. {fastled-1.2.87 → fastled-1.2.89}/.gitignore +0 -0
  22. {fastled-1.2.87 → fastled-1.2.89}/.pylintrc +0 -0
  23. {fastled-1.2.87 → fastled-1.2.89}/.vscode/launch.json +0 -0
  24. {fastled-1.2.87 → fastled-1.2.89}/.vscode/settings.json +0 -0
  25. {fastled-1.2.87 → fastled-1.2.89}/.vscode/tasks.json +0 -0
  26. {fastled-1.2.87 → fastled-1.2.89}/LICENSE +0 -0
  27. {fastled-1.2.87 → fastled-1.2.89}/MANIFEST.in +0 -0
  28. {fastled-1.2.87 → fastled-1.2.89}/README.md +0 -0
  29. {fastled-1.2.87 → fastled-1.2.89}/RELEASE.md +0 -0
  30. {fastled-1.2.87 → fastled-1.2.89}/TODO.md +0 -0
  31. {fastled-1.2.87 → fastled-1.2.89}/build_exe.py +0 -0
  32. {fastled-1.2.87 → fastled-1.2.89}/build_local_docker.py +0 -0
  33. {fastled-1.2.87 → fastled-1.2.89}/build_site.py +0 -0
  34. {fastled-1.2.87 → fastled-1.2.89}/clean +0 -0
  35. {fastled-1.2.87 → fastled-1.2.89}/compiler/CMakeLists.txt +0 -0
  36. {fastled-1.2.87 → fastled-1.2.89}/compiler/__init__.py +0 -0
  37. {fastled-1.2.87 → fastled-1.2.89}/compiler/arduino-pre-process.sh +0 -0
  38. {fastled-1.2.87 → fastled-1.2.89}/compiler/build.sh +0 -0
  39. {fastled-1.2.87 → fastled-1.2.89}/compiler/build_archive.sh +0 -0
  40. {fastled-1.2.87 → fastled-1.2.89}/compiler/build_fast.sh +0 -0
  41. {fastled-1.2.87 → fastled-1.2.89}/compiler/code_sync.py +0 -0
  42. {fastled-1.2.87 → fastled-1.2.89}/compiler/compile.py +0 -0
  43. {fastled-1.2.87 → fastled-1.2.89}/compiler/compile_lock.py +0 -0
  44. {fastled-1.2.87 → fastled-1.2.89}/compiler/debug.sh +0 -0
  45. {fastled-1.2.87 → fastled-1.2.89}/compiler/entrypoint.sh +0 -0
  46. {fastled-1.2.87 → fastled-1.2.89}/compiler/extra/100dots.html +0 -0
  47. {fastled-1.2.87 → fastled-1.2.89}/compiler/extra/demo_threejs.html +0 -0
  48. {fastled-1.2.87 → fastled-1.2.89}/compiler/extra/micdemo.html +0 -0
  49. {fastled-1.2.87 → fastled-1.2.89}/compiler/extra/mp3upload.html +0 -0
  50. {fastled-1.2.87 → fastled-1.2.89}/compiler/extra/webgl_postprocessing_unreal_bloom.html +0 -0
  51. {fastled-1.2.87 → fastled-1.2.89}/compiler/final_prewarm.sh +0 -0
  52. {fastled-1.2.87 → fastled-1.2.89}/compiler/init_runtime.py +0 -0
  53. {fastled-1.2.87 → fastled-1.2.89}/compiler/install-arduino-cli.sh +0 -0
  54. {fastled-1.2.87 → fastled-1.2.89}/compiler/libcompile/CMakeLists.txt +0 -0
  55. {fastled-1.2.87 → fastled-1.2.89}/compiler/paths.py +0 -0
  56. {fastled-1.2.87 → fastled-1.2.89}/compiler/pre-process.sh +0 -0
  57. {fastled-1.2.87 → fastled-1.2.89}/compiler/prewarm.sh +0 -0
  58. {fastled-1.2.87 → fastled-1.2.89}/compiler/process-ino.py +0 -0
  59. {fastled-1.2.87 → fastled-1.2.89}/compiler/process_extended.py +0 -0
  60. {fastled-1.2.87 → fastled-1.2.89}/compiler/pyproject.toml +0 -0
  61. {fastled-1.2.87 → fastled-1.2.89}/compiler/run.py +0 -0
  62. {fastled-1.2.87 → fastled-1.2.89}/compiler/sketch_hasher.py +0 -0
  63. {fastled-1.2.87 → fastled-1.2.89}/compiler/wasm_compiler_flags.py +0 -0
  64. {fastled-1.2.87 → fastled-1.2.89}/docker-compose.yml +0 -0
  65. {fastled-1.2.87 → fastled-1.2.89}/install +0 -0
  66. {fastled-1.2.87 → fastled-1.2.89}/install_linux.sh +0 -0
  67. {fastled-1.2.87 → fastled-1.2.89}/lint +0 -0
  68. {fastled-1.2.87 → fastled-1.2.89}/pyproject.toml +0 -0
  69. {fastled-1.2.87 → fastled-1.2.89}/requirements.testing.txt +0 -0
  70. {fastled-1.2.87 → fastled-1.2.89}/setup.cfg +0 -0
  71. {fastled-1.2.87 → fastled-1.2.89}/setup.py +0 -0
  72. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/assets/example.txt +0 -0
  73. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/assets/localhost-key.pem +0 -0
  74. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/assets/localhost.pem +0 -0
  75. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/cli.py +0 -0
  76. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/cli_test.py +0 -0
  77. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/cli_test_interactive.py +0 -0
  78. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/client_server.py +0 -0
  79. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/compile_server.py +0 -0
  80. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/compile_server_impl.py +0 -0
  81. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/docker_manager.py +0 -0
  82. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/filewatcher.py +0 -0
  83. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/keyboard.py +0 -0
  84. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/keyz.py +0 -0
  85. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/live_client.py +0 -0
  86. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/open_browser.py +0 -0
  87. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/paths.py +0 -0
  88. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/print_filter.py +0 -0
  89. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/project_init.py +0 -0
  90. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/select_sketch_directory.py +0 -0
  91. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/server_start.py +0 -0
  92. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/settings.py +0 -0
  93. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/site/build.py +0 -0
  94. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/site/examples.py +0 -0
  95. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/spinner.py +0 -0
  96. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/string_diff.py +0 -0
  97. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/test/can_run_local_docker_tests.py +0 -0
  98. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/test/examples.py +0 -0
  99. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/types.py +0 -0
  100. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/util.py +0 -0
  101. {fastled-1.2.87 → fastled-1.2.89}/src/fastled/web_compile.py +0 -0
  102. {fastled-1.2.87 → fastled-1.2.89}/src/fastled.egg-info/SOURCES.txt +0 -0
  103. {fastled-1.2.87 → fastled-1.2.89}/src/fastled.egg-info/dependency_links.txt +0 -0
  104. {fastled-1.2.87 → fastled-1.2.89}/src/fastled.egg-info/entry_points.txt +0 -0
  105. {fastled-1.2.87 → fastled-1.2.89}/src/fastled.egg-info/requires.txt +0 -0
  106. {fastled-1.2.87 → fastled-1.2.89}/src/fastled.egg-info/top_level.txt +0 -0
  107. {fastled-1.2.87 → fastled-1.2.89}/test +0 -0
  108. {fastled-1.2.87 → fastled-1.2.89}/tests/integration/test_build_examples.py +0 -0
  109. {fastled-1.2.87 → fastled-1.2.89}/tests/integration/test_examples.py +0 -0
  110. {fastled-1.2.87 → fastled-1.2.89}/tests/unit/html/index.html +0 -0
  111. {fastled-1.2.87 → fastled-1.2.89}/tests/unit/test_api.py +0 -0
  112. {fastled-1.2.87 → fastled-1.2.89}/tests/unit/test_bad_ino.py +0 -0
  113. {fastled-1.2.87 → fastled-1.2.89}/tests/unit/test_cli.py +0 -0
  114. {fastled-1.2.87 → fastled-1.2.89}/tests/unit/test_compile_server.py +0 -0
  115. {fastled-1.2.87 → fastled-1.2.89}/tests/unit/test_docker_linux_on_windows.py +0 -0
  116. {fastled-1.2.87 → fastled-1.2.89}/tests/unit/test_embedded_data.py +0 -0
  117. {fastled-1.2.87 → fastled-1.2.89}/tests/unit/test_experimental_cpp_filter.py +0 -0
  118. {fastled-1.2.87 → fastled-1.2.89}/tests/unit/test_fetch_source_files.py +0 -0
  119. {fastled-1.2.87 → fastled-1.2.89}/tests/unit/test_filechanger.py +0 -0
  120. {fastled-1.2.87 → fastled-1.2.89}/tests/unit/test_http_server.py +0 -0
  121. {fastled-1.2.87 → fastled-1.2.89}/tests/unit/test_ino/bad/bad.ino +0 -0
  122. {fastled-1.2.87 → fastled-1.2.89}/tests/unit/test_ino/bad_platformio/bad_platformio.ino +0 -0
  123. {fastled-1.2.87 → fastled-1.2.89}/tests/unit/test_ino/bad_platformio/platformio.ini +0 -0
  124. {fastled-1.2.87 → fastled-1.2.89}/tests/unit/test_ino/embedded/data/bigdata.dat +0 -0
  125. {fastled-1.2.87 → fastled-1.2.89}/tests/unit/test_ino/embedded/wasm.ino +0 -0
  126. {fastled-1.2.87 → fastled-1.2.89}/tests/unit/test_ino/wasm/wasm.ino +0 -0
  127. {fastled-1.2.87 → fastled-1.2.89}/tests/unit/test_print_filter.py +0 -0
  128. {fastled-1.2.87 → fastled-1.2.89}/tests/unit/test_project_init.py +0 -0
  129. {fastled-1.2.87 → fastled-1.2.89}/tests/unit/test_server_and_client_seperatly.py +0 -0
  130. {fastled-1.2.87 → fastled-1.2.89}/tests/unit/test_string_diff.py +0 -0
  131. {fastled-1.2.87 → fastled-1.2.89}/tests/unit/test_version.py +0 -0
  132. {fastled-1.2.87 → fastled-1.2.89}/tests/unit/test_webcompile.py +0 -0
  133. {fastled-1.2.87 → fastled-1.2.89}/upload_package.sh +0 -0
@@ -135,6 +135,7 @@ RUN pio settings set enable_telemetry 0
135
135
  # pre-warm cycle is "sticky" and tends to stay in the cache for a long time since docker is very relaxed about
136
136
  # invalidating cache layers that clone a github repo.
137
137
 
138
+ RUN echo "force update3"
138
139
  ARG FASTLED_BUILD_DAY=echo $(date +'%Y-%m-%d')
139
140
  ENV FASTLED_BUILD_DAY=${FASTLED_BUILD_DAY}
140
141
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fastled
3
- Version: 1.2.87
3
+ Version: 1.2.89
4
4
  Summary: FastLED Wasm Compiler
5
5
  Home-page: https://github.com/zackees/fastled-wasm
6
6
  Maintainer: Zachary Vorhies
@@ -80,7 +80,7 @@ _NO_SKETCH_CACHE = os.environ.get("NO_SKETCH_CACHE", "false").lower() in ["true"
80
80
  # debug is a 20mb payload for the symbol information.
81
81
  _ONLY_QUICK_BUILDS = os.environ.get("ONLY_QUICK_BUILDS", "false").lower() in [
82
82
  "true",
83
- "0",
83
+ "1",
84
84
  ]
85
85
 
86
86
 
@@ -261,7 +261,7 @@ def compile_source(
261
261
  diff = time.time() - epoch
262
262
  print(f" = SERVER {diff:.2f}s = {msg}")
263
263
 
264
- if build_mode != "quick" and _ONLY_QUICK_BUILDS:
264
+ if build_mode.lower() != "quick" and _ONLY_QUICK_BUILDS:
265
265
  raise HTTPException(
266
266
  status_code=400,
267
267
  detail="Only quick builds are allowed in this version.",
@@ -439,6 +439,7 @@ def get_settings() -> dict:
439
439
  "UPLOAD_LIMIT": _UPLOAD_LIMIT,
440
440
  "VOLUME_MAPPED_SRC": str(VOLUME_MAPPED_SRC),
441
441
  "VOLUME_MAPPED_SRC_EXISTS": VOLUME_MAPPED_SRC.exists(),
442
+ "ONLY_QUICK_BUILDS": _ONLY_QUICK_BUILDS,
442
443
  }
443
444
  return settings
444
445
 
@@ -14,7 +14,7 @@ from .types import BuildMode, CompileResult, CompileServerError, FileResponse
14
14
  # IMPORTANT! There's a bug in github which will REJECT any version update
15
15
  # that has any other change in the repo. Please bump the version as the
16
16
  # ONLY change in a commit, or else the pypi update and the release will fail.
17
- __version__ = "1.2.87"
17
+ __version__ = "1.2.89"
18
18
 
19
19
 
20
20
  class Api:
@@ -10,6 +10,13 @@ from fastled.client_server import run_client_server
10
10
  from fastled.compile_server import CompileServer
11
11
  from fastled.filewatcher import file_watcher_set
12
12
  from fastled.parse_args import Args, parse_args
13
+ from fastled.sketch import find_sketch_directories, looks_like_fastled_repo
14
+
15
+ # from fastled.sketch import (
16
+ # find_sketch_directories,
17
+ # looks_like_fastled_repo,
18
+ # looks_like_sketch_directory,
19
+ # )
13
20
 
14
21
 
15
22
  def run_server(args: Args) -> int:
@@ -53,10 +60,37 @@ def main() -> int:
53
60
  just_compile: bool = args.just_compile
54
61
  # directory: Path | None = Path(args.directory).absolute() if args.directory else None
55
62
  directory: Path | None = Path(args.directory) if args.directory else None
63
+ cwd_looks_like_fastled_repo = looks_like_fastled_repo()
56
64
 
57
65
  # now it is safe to print out the version
58
66
  print(f"FastLED version: {__version__}")
59
67
 
68
+ # Resolve some of the last interactive arguments
69
+ # 1. If interactive is set and the sketch directory is not given,
70
+ # then prompt the user for a sketch directory.
71
+ # 2. Tell the user they can use --server --interactive to
72
+ # skip this prompt.
73
+
74
+ from fastled.select_sketch_directory import select_sketch_directory
75
+
76
+ if interactive and cwd_looks_like_fastled_repo and directory is None:
77
+ answer = input(
78
+ "No sketch directory selected, would you like to select one? (y/n): "
79
+ )
80
+ if answer.lower() == "y":
81
+ sketch_list: list[Path] = find_sketch_directories()
82
+ if sketch_list:
83
+ maybe_dir: str | None = select_sketch_directory(
84
+ sketch_list, cwd_looks_like_fastled_repo
85
+ )
86
+ if maybe_dir is not None:
87
+ directory = Path(maybe_dir)
88
+ if not directory.exists():
89
+ print(
90
+ f"Directory {directory} does not exist, entering interactive mode without project mapped in."
91
+ )
92
+ directory = None
93
+
60
94
  if update:
61
95
  # Force auto_update to ensure update check happens
62
96
  compile_server = CompileServer(interactive=False, auto_updates=True)
@@ -30,9 +30,7 @@ FastLED WASM Compiler - Useful options:
30
30
  --init [example] Initialize one of the top tier WASM examples
31
31
  --web [url] Use web compiler
32
32
  --server Run the compiler server
33
- --debug Build with debug symbols for dev-tools debugging
34
33
  --quick Build in quick mode (default)
35
- --release Build in optimized release mode
36
34
  --profile Enable profiling the C++ build system
37
35
  --update Update the docker image for the wasm compiler
38
36
  --purge Remove all FastLED containers and images
@@ -44,6 +42,11 @@ Examples:
44
42
  fastled my_sketch --web (compiles using the web compiler only)
45
43
  fastled --init Blink (initializes a new sketch directory with the Blink example)
46
44
  fastled --server (runs the compiler server in the current directory)
45
+
46
+ For those using Docker:
47
+ --debug Build with debug symbols for dev-tools debugging
48
+
49
+ --release Build in optimized release mode
47
50
  """
48
51
 
49
52
 
@@ -8,7 +8,7 @@ import httpx
8
8
  from livereload import Server
9
9
 
10
10
  # Logging configuration
11
- _ENABLE_LOGGING = False # Set to False to disable logging
11
+ _ENABLE_LOGGING = True # Set to False to disable logging
12
12
 
13
13
  if _ENABLE_LOGGING:
14
14
  logging.basicConfig(
@@ -4,7 +4,9 @@ from pathlib import Path
4
4
  _MAX_FILES_SEARCH_LIMIT = 10000
5
5
 
6
6
 
7
- def find_sketch_directories(directory: Path) -> list[Path]:
7
+ def find_sketch_directories(directory: Path | None = None) -> list[Path]:
8
+ if directory is None:
9
+ directory = Path(".")
8
10
  file_count = 0
9
11
  sketch_directories: list[Path] = []
10
12
  # search all the paths one level deep
@@ -60,7 +62,7 @@ def get_sketch_files(directory: Path) -> list[Path]:
60
62
  return files
61
63
 
62
64
 
63
- def looks_like_fastled_repo(directory: Path) -> bool:
65
+ def looks_like_fastled_repo(directory: Path = Path(".")) -> bool:
64
66
  libprops = directory / "library.properties"
65
67
  if not libprops.exists():
66
68
  return False
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fastled
3
- Version: 1.2.87
3
+ Version: 1.2.89
4
4
  Summary: FastLED Wasm Compiler
5
5
  Home-page: https://github.com/zackees/fastled-wasm
6
6
  Maintainer: Zachary Vorhies
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
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