fastled 1.2.91__tar.gz → 1.2.92__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 (127) hide show
  1. {fastled-1.2.91 → fastled-1.2.92}/PKG-INFO +79 -3
  2. {fastled-1.2.91 → fastled-1.2.92}/README.md +76 -0
  3. {fastled-1.2.91 → fastled-1.2.92}/compiler/init_runtime.py +1 -0
  4. {fastled-1.2.91 → fastled-1.2.92}/compiler/pyproject.toml +1 -1
  5. {fastled-1.2.91 → fastled-1.2.92}/compiler/run.py +2 -2
  6. {fastled-1.2.91 → fastled-1.2.92}/pyproject.toml +2 -2
  7. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/__init__.py +1 -1
  8. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/settings.py +2 -2
  9. {fastled-1.2.91 → fastled-1.2.92}/src/fastled.egg-info/PKG-INFO +79 -3
  10. {fastled-1.2.91 → fastled-1.2.92}/src/fastled.egg-info/SOURCES.txt +1 -5
  11. {fastled-1.2.91 → fastled-1.2.92}/src/fastled.egg-info/requires.txt +2 -2
  12. fastled-1.2.92/tests/unit/test_version_matches.py +70 -0
  13. fastled-1.2.91/compiler/build.sh +0 -3
  14. fastled-1.2.91/compiler/build_archive.sh +0 -28
  15. fastled-1.2.91/compiler/build_fast.sh +0 -54
  16. fastled-1.2.91/compiler/compile.py +0 -592
  17. fastled-1.2.91/compiler/pre-process.sh +0 -27
  18. {fastled-1.2.91 → fastled-1.2.92}/.aiderignore +0 -0
  19. {fastled-1.2.91 → fastled-1.2.92}/.dockerignore +0 -0
  20. {fastled-1.2.91 → fastled-1.2.92}/.github/workflows/build_multi_docker_image.yml +0 -0
  21. {fastled-1.2.91 → fastled-1.2.92}/.github/workflows/build_webpage.yml +0 -0
  22. {fastled-1.2.91 → fastled-1.2.92}/.github/workflows/lint.yml +0 -0
  23. {fastled-1.2.91 → fastled-1.2.92}/.github/workflows/publish_release.yml +0 -0
  24. {fastled-1.2.91 → fastled-1.2.92}/.github/workflows/template_build_docker_image.yml +0 -0
  25. {fastled-1.2.91 → fastled-1.2.92}/.github/workflows/test_build_exe.yml +0 -0
  26. {fastled-1.2.91 → fastled-1.2.92}/.github/workflows/test_macos.yml +0 -0
  27. {fastled-1.2.91 → fastled-1.2.92}/.github/workflows/test_ubuntu.yml +0 -0
  28. {fastled-1.2.91 → fastled-1.2.92}/.github/workflows/test_win.yml +0 -0
  29. {fastled-1.2.91 → fastled-1.2.92}/.gitignore +0 -0
  30. {fastled-1.2.91 → fastled-1.2.92}/.pylintrc +0 -0
  31. {fastled-1.2.91 → fastled-1.2.92}/.vscode/launch.json +0 -0
  32. {fastled-1.2.91 → fastled-1.2.92}/.vscode/settings.json +0 -0
  33. {fastled-1.2.91 → fastled-1.2.92}/.vscode/tasks.json +0 -0
  34. {fastled-1.2.91 → fastled-1.2.92}/Dockerfile +0 -0
  35. {fastled-1.2.91 → fastled-1.2.92}/LICENSE +0 -0
  36. {fastled-1.2.91 → fastled-1.2.92}/MANIFEST.in +0 -0
  37. {fastled-1.2.91 → fastled-1.2.92}/RELEASE.md +0 -0
  38. {fastled-1.2.91 → fastled-1.2.92}/TODO.md +0 -0
  39. {fastled-1.2.91 → fastled-1.2.92}/build_exe.py +0 -0
  40. {fastled-1.2.91 → fastled-1.2.92}/build_local_docker.py +0 -0
  41. {fastled-1.2.91 → fastled-1.2.92}/build_site.py +0 -0
  42. {fastled-1.2.91 → fastled-1.2.92}/clean +0 -0
  43. {fastled-1.2.91 → fastled-1.2.92}/compiler/CMakeLists.txt +0 -0
  44. {fastled-1.2.91 → fastled-1.2.92}/compiler/arduino-pre-process.sh +0 -0
  45. {fastled-1.2.91 → fastled-1.2.92}/compiler/debug.sh +0 -0
  46. {fastled-1.2.91 → fastled-1.2.92}/compiler/entrypoint.sh +0 -0
  47. {fastled-1.2.91 → fastled-1.2.92}/compiler/final_prewarm.sh +0 -0
  48. {fastled-1.2.91 → fastled-1.2.92}/compiler/install-arduino-cli.sh +0 -0
  49. {fastled-1.2.91 → fastled-1.2.92}/compiler/libcompile/CMakeLists.txt +0 -0
  50. {fastled-1.2.91 → fastled-1.2.92}/compiler/prewarm.sh +0 -0
  51. {fastled-1.2.91 → fastled-1.2.92}/compiler/process-ino.py +0 -0
  52. {fastled-1.2.91 → fastled-1.2.92}/demo/100dots.html +0 -0
  53. {fastled-1.2.91 → fastled-1.2.92}/demo/demo_threejs.html +0 -0
  54. {fastled-1.2.91 → fastled-1.2.92}/demo/micdemo.html +0 -0
  55. {fastled-1.2.91 → fastled-1.2.92}/demo/mp3upload.html +0 -0
  56. {fastled-1.2.91 → fastled-1.2.92}/demo/webgl_postprocessing_unreal_bloom.html +0 -0
  57. {fastled-1.2.91 → fastled-1.2.92}/docker-compose.yml +0 -0
  58. {fastled-1.2.91 → fastled-1.2.92}/install +0 -0
  59. {fastled-1.2.91 → fastled-1.2.92}/install_linux.sh +0 -0
  60. {fastled-1.2.91 → fastled-1.2.92}/lint +0 -0
  61. {fastled-1.2.91 → fastled-1.2.92}/requirements.testing.txt +0 -0
  62. {fastled-1.2.91 → fastled-1.2.92}/setup.cfg +0 -0
  63. {fastled-1.2.91 → fastled-1.2.92}/setup.py +0 -0
  64. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/app.py +0 -0
  65. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/assets/example.txt +0 -0
  66. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/assets/localhost-key.pem +0 -0
  67. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/assets/localhost.pem +0 -0
  68. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/cli.py +0 -0
  69. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/cli_test.py +0 -0
  70. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/cli_test_interactive.py +0 -0
  71. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/client_server.py +0 -0
  72. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/compile_server.py +0 -0
  73. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/compile_server_impl.py +0 -0
  74. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/docker_manager.py +0 -0
  75. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/filewatcher.py +0 -0
  76. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/keyboard.py +0 -0
  77. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/keyz.py +0 -0
  78. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/live_client.py +0 -0
  79. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/open_browser.py +0 -0
  80. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/parse_args.py +0 -0
  81. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/paths.py +0 -0
  82. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/print_filter.py +0 -0
  83. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/project_init.py +0 -0
  84. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/select_sketch_directory.py +0 -0
  85. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/server_flask.py +0 -0
  86. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/server_start.py +0 -0
  87. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/site/build.py +0 -0
  88. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/site/examples.py +0 -0
  89. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/sketch.py +0 -0
  90. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/spinner.py +0 -0
  91. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/string_diff.py +0 -0
  92. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/test/can_run_local_docker_tests.py +0 -0
  93. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/test/examples.py +0 -0
  94. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/types.py +0 -0
  95. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/util.py +0 -0
  96. {fastled-1.2.91 → fastled-1.2.92}/src/fastled/web_compile.py +0 -0
  97. {fastled-1.2.91 → fastled-1.2.92}/src/fastled.egg-info/dependency_links.txt +0 -0
  98. {fastled-1.2.91 → fastled-1.2.92}/src/fastled.egg-info/entry_points.txt +0 -0
  99. {fastled-1.2.91 → fastled-1.2.92}/src/fastled.egg-info/top_level.txt +0 -0
  100. {fastled-1.2.91 → fastled-1.2.92}/test +0 -0
  101. {fastled-1.2.91 → fastled-1.2.92}/tests/integration/test_build_examples.py +0 -0
  102. {fastled-1.2.91 → fastled-1.2.92}/tests/integration/test_examples.py +0 -0
  103. {fastled-1.2.91 → fastled-1.2.92}/tests/unit/html/index.html +0 -0
  104. {fastled-1.2.91 → fastled-1.2.92}/tests/unit/test_api.py +0 -0
  105. {fastled-1.2.91 → fastled-1.2.92}/tests/unit/test_bad_ino.py +0 -0
  106. {fastled-1.2.91 → fastled-1.2.92}/tests/unit/test_cli.py +0 -0
  107. {fastled-1.2.91 → fastled-1.2.92}/tests/unit/test_compile_server.py +0 -0
  108. {fastled-1.2.91 → fastled-1.2.92}/tests/unit/test_docker_linux_on_windows.py +0 -0
  109. {fastled-1.2.91 → fastled-1.2.92}/tests/unit/test_embedded_data.py +0 -0
  110. {fastled-1.2.91 → fastled-1.2.92}/tests/unit/test_experimental_cpp_filter.py +0 -0
  111. {fastled-1.2.91 → fastled-1.2.92}/tests/unit/test_fetch_source_files.py +0 -0
  112. {fastled-1.2.91 → fastled-1.2.92}/tests/unit/test_filechanger.py +0 -0
  113. {fastled-1.2.91 → fastled-1.2.92}/tests/unit/test_http_server.py +0 -0
  114. {fastled-1.2.91 → fastled-1.2.92}/tests/unit/test_ino/bad/bad.ino +0 -0
  115. {fastled-1.2.91 → fastled-1.2.92}/tests/unit/test_ino/bad_platformio/bad_platformio.ino +0 -0
  116. {fastled-1.2.91 → fastled-1.2.92}/tests/unit/test_ino/bad_platformio/platformio.ini +0 -0
  117. {fastled-1.2.91 → fastled-1.2.92}/tests/unit/test_ino/embedded/data/bigdata.dat +0 -0
  118. {fastled-1.2.91 → fastled-1.2.92}/tests/unit/test_ino/embedded/wasm.ino +0 -0
  119. {fastled-1.2.91 → fastled-1.2.92}/tests/unit/test_ino/wasm/wasm.ino +0 -0
  120. {fastled-1.2.91 → fastled-1.2.92}/tests/unit/test_print_filter.py +0 -0
  121. {fastled-1.2.91 → fastled-1.2.92}/tests/unit/test_project_init.py +0 -0
  122. {fastled-1.2.91 → fastled-1.2.92}/tests/unit/test_server_and_client_seperatly.py +0 -0
  123. {fastled-1.2.91 → fastled-1.2.92}/tests/unit/test_string_diff.py +0 -0
  124. {fastled-1.2.91 → fastled-1.2.92}/tests/unit/test_version.py +0 -0
  125. {fastled-1.2.91 → fastled-1.2.92}/tests/unit/test_webcompile.py +0 -0
  126. {fastled-1.2.91 → fastled-1.2.92}/upload_package.sh +0 -0
  127. {fastled-1.2.91 → fastled-1.2.92}/vscode-plugin/readme +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fastled
3
- Version: 1.2.91
3
+ Version: 1.2.92
4
4
  Summary: FastLED Wasm Compiler
5
5
  Home-page: https://github.com/zackees/fastled-wasm
6
6
  Maintainer: Zachary Vorhies
@@ -10,9 +10,9 @@ Classifier: Programming Language :: Python :: 3
10
10
  Requires-Python: >=3.10
11
11
  Description-Content-Type: text/markdown
12
12
  License-File: LICENSE
13
- Requires-Dist: docker>=7.1.0
14
13
  Requires-Dist: httpx>=0.28.1
15
14
  Requires-Dist: watchdog>=6.0.0
15
+ Requires-Dist: docker>=7.1.0
16
16
  Requires-Dist: filelock>=3.16.1
17
17
  Requires-Dist: appdirs>=1.4.4
18
18
  Requires-Dist: rapidfuzz>=3.10.1
@@ -20,7 +20,7 @@ Requires-Dist: progress>=1.6
20
20
  Requires-Dist: watchfiles>=1.0.5
21
21
  Requires-Dist: Flask>=3.0.0
22
22
  Requires-Dist: livereload
23
- Requires-Dist: fastled-wasm-server>=1.0.5
23
+ Requires-Dist: fastled-wasm-server>=1.0.6
24
24
  Dynamic: home-page
25
25
  Dynamic: license-file
26
26
  Dynamic: maintainer
@@ -393,3 +393,79 @@ A: A big chunk of space is being used by unnecessary javascript `emscripten` bun
393
393
 
394
394
 
395
395
  live-server --https --cert=src/fastled/assets/localhost.pem --key=src/fastled/assets/localhost-key.pem --port=5500
396
+
397
+
398
+ ## Performance
399
+
400
+ ```
401
+ ###############################
402
+ # Build started with command: #
403
+ # pio run -v #
404
+ ###############################
405
+
406
+ 0.41 Warning! Ignore unknown configuration option `build_dir` in section [env:wasm]
407
+ 0.41 Warning! Ignore unknown configuration option `force_verbose` in section [env:wasm]
408
+ 0.41 Processing wasm (platform: native; extra_scripts: post:wasm_compiler_flags.py; lib_compat_mode: off; build_flags: -std=c++17, -DFASTLED_NO_PINMAP, -DHAS_HARDWARE_PIN_SUPPORT, -DFASTLED_FORCE_SOFTWARE_SPI, -I/js/src/platforms/wasm/compiler; custom_wasm_export_name: fastled; lib_deps: FastLED=symlink://fastled; build_dir: build/wasm; force_verbose: yes)
409
+ 0.41 --------------------------------------------------------------------------------
410
+ 0.99 LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
411
+ 0.99 LDF Modes: Finder ~ chain, Compatibility ~ off
412
+ 0.99 Found 1 compatible libraries
413
+ 0.99 Scanning dependencies...
414
+ 1.40 Dependency Graph
415
+ 1.40 |-- FastLED @ 3.9.16 (License: MIT, Path: /js/fastled)
416
+ 1.49 Building in release mode
417
+ 1.49
418
+ 1.49 #########################
419
+ 1.49 # C++/C Compiler Flags: #
420
+ 1.49 #########################
421
+ 1.49
422
+ 1.49 CC/CXX flags:
423
+ 1.49 -DFASTLED_ENGINE_EVENTS_MAX_LISTENERS=50
424
+ 1.49 -DFASTLED_FORCE_NAMESPACE=1
425
+ 1.49 -DFASTLED_USE_PROGMEM=0
426
+ 1.49 -O1
427
+ 1.49 -DUSE_OFFSET_CONVERTER=0
428
+ 1.49 -std=gnu++17
429
+ 1.49 -fpermissive
430
+ 1.49 -Wno-constant-logical-operand
431
+ 1.49 -Wnon-c-typedef-for-linkage
432
+ 1.49 -Werror=bad-function-cast
433
+ 1.49 -Werror=cast-function-type
434
+ 1.49 -I
435
+ 1.49 src
436
+ 1.49 -I/js/src/platforms/wasm/compiler
437
+ 1.49
438
+ 1.49 #################
439
+ 1.49 # Linker Flags: #
440
+ 1.49 #################
441
+ 1.49
442
+ 1.49 --bind
443
+ 1.49 -fuse-ld=lld
444
+ 1.49 -sWASM=1
445
+ 1.49 -sALLOW_MEMORY_GROWTH=1
446
+ 1.49 -sINITIAL_MEMORY=134217728
447
+ 1.49 -sEXPORTED_RUNTIME_METHODS=['ccall','cwrap','stringToUTF8','lengthBytesUTF8']
448
+ 1.49 -sEXPORTED_FUNCTIONS=['_malloc','_free','_extern_setup','_extern_loop','_fastled_declare_files']
449
+ 1.49 --no-entry
450
+ 1.49 -sERROR_ON_WASM_CHANGES_AFTER_LINK
451
+ 1.49 -sMODULARIZE=1
452
+ 1.49 -sEXPORT_NAME=fastled
453
+ 1.49 -o
454
+ 1.49 /js/.pio/build/wasm/fastled.js
455
+ 1.49
456
+ 1.49 ##########################
457
+ 1.49 # FastLED Library Flags: #
458
+ 1.49 ##########################
459
+ 1.49
460
+ 1.49 --bind
461
+ 1.49 -Wl,--whole-archive,-fuse-ld=lld
462
+ 1.49 -Werror=bad-function-cast
463
+ 1.49 -Werror=cast-function-type
464
+ 1.49
465
+ 1.49 ################
466
+ 1.49 # End of Flags #
467
+ 1.49 ################
468
+ 1.49
469
+ 2.20 ccache em++ -o .pio/build/wasm/program --bind -fuse-ld=lld -sWASM=1 -sALLOW_MEMORY_GROWTH=1 -sINITIAL_MEMORY=134217728 -sEXPORTED_RUNTIME_METHODS=['ccall','cwrap','stringToUTF8','lengthBytesUTF8'] -sEXPORTED_FUNCTIONS=['_malloc','_free','_extern_setup','_extern_loop','_fastled_declare_files'] --no-entry -sERROR_ON_WASM_CHANGES_AFTER_LINK -sMODULARIZE=1 -sEXPORT_NAME=fastled -o /js/.pio/build/wasm/fastled.js .pio/build/wasm/libbb9/fastled/FastLED.o .pio/build/wasm/libbb9/fastled/bitswap.o .pio/build/wasm/libbb9/fastled/cled_controller.o .pio/build/wasm/libbb9/fastled/colorpalettes.o .pio/build/wasm/libbb9/fastled/crgb.o .pio/build/wasm/libbb9/fastled/fl/allocator.o .pio/build/wasm/libbb9/fastled/fl/audio.o .pio/build/wasm/libbb9/fastled/fl/bilinear_expansion.o .pio/build/wasm/libbb9/fastled/fl/blur.o .pio/build/wasm/libbb9/fastled/fl/bytestreammemory.o .pio/build/wasm/libbb9/fastled/fl/colorutils.o .pio/build/wasm/libbb9/fastled/fl/downscale.o .pio/build/wasm/libbb9/fastled/fl/engine_events.o .pio/build/wasm/libbb9/fastled/fl/fft.o .pio/build/wasm/libbb9/fastled/fl/fft_impl.o .pio/build/wasm/libbb9/fastled/fl/file_system.o .pio/build/wasm/libbb9/fastled/fl/fill.o .pio/build/wasm/libbb9/fastled/fl/five_bit_hd_gamma.o .pio/build/wasm/libbb9/fastled/fl/gradient.o .pio/build/wasm/libbb9/fastled/fl/json.o .pio/build/wasm/libbb9/fastled/fl/leds.o .pio/build/wasm/libbb9/fastled/fl/line_simplification.o .pio/build/wasm/libbb9/fastled/fl/noise_woryley.o .pio/build/wasm/libbb9/fastled/fl/ptr.o .pio/build/wasm/libbb9/fastled/fl/raster_sparse.o .pio/build/wasm/libbb9/fastled/fl/rectangular_draw_buffer.o .pio/build/wasm/libbb9/fastled/fl/screenmap.o .pio/build/wasm/libbb9/fastled/fl/sin32.o .pio/build/wasm/libbb9/fastled/fl/str.o .pio/build/wasm/libbb9/fastled/fl/strstream.o .pio/build/wasm/libbb9/fastled/fl/stub_main.o .pio/build/wasm/libbb9/fastled/fl/tile2x2.o .pio/build/wasm/libbb9/fastled/fl/time_alpha.o .pio/build/wasm/libbb9/fastled/fl/transform.o .pio/build/wasm/libbb9/fastled/fl/type_traits.o .pio/build/wasm/libbb9/fastled/fl/ui.o .pio/build/wasm/libbb9/fastled/fl/wave_simulation.o .pio/build/wasm/libbb9/fastled/fl/wave_simulation_real.o .pio/build/wasm/libbb9/fastled/fl/xmap.o .pio/build/wasm/libbb9/fastled/fl/xymap.o .pio/build/wasm/libbb9/fastled/fl/xypath.o .pio/build/wasm/libbb9/fastled/fl/xypath_impls.o .pio/build/wasm/libbb9/fastled/fl/xypath_renderer.o .pio/build/wasm/libbb9/fastled/fx/2d/blend.o .pio/build/wasm/libbb9/fastled/fx/2d/noisepalette.o .pio/build/wasm/libbb9/fastled/fx/2d/scale_up.o .pio/build/wasm/libbb9/fastled/fx/2d/wave.o .pio/build/wasm/libbb9/fastled/fx/frame.o .pio/build/wasm/libbb9/fastled/fx/fx_engine.o .pio/build/wasm/libbb9/fastled/fx/time.o .pio/build/wasm/libbb9/fastled/fx/video.o .pio/build/wasm/libbb9/fastled/fx/video/frame_interpolator.o .pio/build/wasm/libbb9/fastled/fx/video/frame_tracker.o .pio/build/wasm/libbb9/fastled/fx/video/pixel_stream.o .pio/build/wasm/libbb9/fastled/fx/video/video_impl.o .pio/build/wasm/libbb9/fastled/hsv2rgb.o .pio/build/wasm/libbb9/fastled/lib8tion.o .pio/build/wasm/libbb9/fastled/noise.o .pio/build/wasm/libbb9/fastled/platforms.o .pio/build/wasm/libbb9/fastled/platforms/arm/k20/clockless_objectfled.o .pio/build/wasm/libbb9/fastled/platforms/esp/32/clockless_i2s_esp32s3.o .pio/build/wasm/libbb9/fastled/platforms/esp/32/i2s/i2s_esp32dev.o .pio/build/wasm/libbb9/fastled/platforms/esp/32/rmt_4/idf4_rmt.o .pio/build/wasm/libbb9/fastled/platforms/esp/32/rmt_4/idf4_rmt_impl.o .pio/build/wasm/libbb9/fastled/platforms/esp/32/rmt_5/idf5_rmt.o .pio/build/wasm/libbb9/fastled/platforms/esp/32/rmt_5/strip_rmt.o .pio/build/wasm/libbb9/fastled/platforms/esp/32/spi_ws2812/strip_spi.o .pio/build/wasm/libbb9/fastled/platforms/wasm/active_strip_data.o .pio/build/wasm/libbb9/fastled/platforms/wasm/compiler/Arduino.o .pio/build/wasm/libbb9/fastled/platforms/wasm/engine_listener.o .pio/build/wasm/libbb9/fastled/platforms/wasm/fs_wasm.o .pio/build/wasm/libbb9/fastled/platforms/wasm/js.o .pio/build/wasm/libbb9/fastled/platforms/wasm/timer.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/audio.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/button.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/checkbox.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/description.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/number_field.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/slider.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/title.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/ui_internal.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/ui_manager.o .pio/build/wasm/libbb9/fastled/power_mgt.o .pio/build/wasm/libbb9/fastled/rgbw.o .pio/build/wasm/libbb9/fastled/sensors/digital_pin.o .pio/build/wasm/libbb9/fastled/sensors/pir.o .pio/build/wasm/libbb9/fastled/simplex.o .pio/build/wasm/libbb9/fastled/third_party/cq_kernel/cq_kernel.o .pio/build/wasm/libbb9/fastled/third_party/cq_kernel/kiss_fft.o .pio/build/wasm/libbb9/fastled/third_party/cq_kernel/kiss_fftr.o .pio/build/wasm/libbb9/fastled/third_party/espressif/led_strip/src/led_strip_api.o .pio/build/wasm/libbb9/fastled/third_party/espressif/led_strip/src/led_strip_rmt_dev.o .pio/build/wasm/libbb9/fastled/third_party/espressif/led_strip/src/led_strip_rmt_encoder.o .pio/build/wasm/libbb9/fastled/third_party/espressif/led_strip/src/led_strip_spi_dev.o .pio/build/wasm/libbb9/fastled/third_party/object_fled/src/OjectFLED.o .pio/build/wasm/libbb9/fastled/transpose8x1_noinline.o .pio/build/wasm/libbb9/fastled/wiring.o .pio/build/wasm/src/wasm.ino.o -L.pio/build/wasm
470
+ 3.61 ========================= [SUCCESS] Took 3.20 seconds =========================
471
+ ```
@@ -366,3 +366,79 @@ A: A big chunk of space is being used by unnecessary javascript `emscripten` bun
366
366
 
367
367
 
368
368
  live-server --https --cert=src/fastled/assets/localhost.pem --key=src/fastled/assets/localhost-key.pem --port=5500
369
+
370
+
371
+ ## Performance
372
+
373
+ ```
374
+ ###############################
375
+ # Build started with command: #
376
+ # pio run -v #
377
+ ###############################
378
+
379
+ 0.41 Warning! Ignore unknown configuration option `build_dir` in section [env:wasm]
380
+ 0.41 Warning! Ignore unknown configuration option `force_verbose` in section [env:wasm]
381
+ 0.41 Processing wasm (platform: native; extra_scripts: post:wasm_compiler_flags.py; lib_compat_mode: off; build_flags: -std=c++17, -DFASTLED_NO_PINMAP, -DHAS_HARDWARE_PIN_SUPPORT, -DFASTLED_FORCE_SOFTWARE_SPI, -I/js/src/platforms/wasm/compiler; custom_wasm_export_name: fastled; lib_deps: FastLED=symlink://fastled; build_dir: build/wasm; force_verbose: yes)
382
+ 0.41 --------------------------------------------------------------------------------
383
+ 0.99 LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
384
+ 0.99 LDF Modes: Finder ~ chain, Compatibility ~ off
385
+ 0.99 Found 1 compatible libraries
386
+ 0.99 Scanning dependencies...
387
+ 1.40 Dependency Graph
388
+ 1.40 |-- FastLED @ 3.9.16 (License: MIT, Path: /js/fastled)
389
+ 1.49 Building in release mode
390
+ 1.49
391
+ 1.49 #########################
392
+ 1.49 # C++/C Compiler Flags: #
393
+ 1.49 #########################
394
+ 1.49
395
+ 1.49 CC/CXX flags:
396
+ 1.49 -DFASTLED_ENGINE_EVENTS_MAX_LISTENERS=50
397
+ 1.49 -DFASTLED_FORCE_NAMESPACE=1
398
+ 1.49 -DFASTLED_USE_PROGMEM=0
399
+ 1.49 -O1
400
+ 1.49 -DUSE_OFFSET_CONVERTER=0
401
+ 1.49 -std=gnu++17
402
+ 1.49 -fpermissive
403
+ 1.49 -Wno-constant-logical-operand
404
+ 1.49 -Wnon-c-typedef-for-linkage
405
+ 1.49 -Werror=bad-function-cast
406
+ 1.49 -Werror=cast-function-type
407
+ 1.49 -I
408
+ 1.49 src
409
+ 1.49 -I/js/src/platforms/wasm/compiler
410
+ 1.49
411
+ 1.49 #################
412
+ 1.49 # Linker Flags: #
413
+ 1.49 #################
414
+ 1.49
415
+ 1.49 --bind
416
+ 1.49 -fuse-ld=lld
417
+ 1.49 -sWASM=1
418
+ 1.49 -sALLOW_MEMORY_GROWTH=1
419
+ 1.49 -sINITIAL_MEMORY=134217728
420
+ 1.49 -sEXPORTED_RUNTIME_METHODS=['ccall','cwrap','stringToUTF8','lengthBytesUTF8']
421
+ 1.49 -sEXPORTED_FUNCTIONS=['_malloc','_free','_extern_setup','_extern_loop','_fastled_declare_files']
422
+ 1.49 --no-entry
423
+ 1.49 -sERROR_ON_WASM_CHANGES_AFTER_LINK
424
+ 1.49 -sMODULARIZE=1
425
+ 1.49 -sEXPORT_NAME=fastled
426
+ 1.49 -o
427
+ 1.49 /js/.pio/build/wasm/fastled.js
428
+ 1.49
429
+ 1.49 ##########################
430
+ 1.49 # FastLED Library Flags: #
431
+ 1.49 ##########################
432
+ 1.49
433
+ 1.49 --bind
434
+ 1.49 -Wl,--whole-archive,-fuse-ld=lld
435
+ 1.49 -Werror=bad-function-cast
436
+ 1.49 -Werror=cast-function-type
437
+ 1.49
438
+ 1.49 ################
439
+ 1.49 # End of Flags #
440
+ 1.49 ################
441
+ 1.49
442
+ 2.20 ccache em++ -o .pio/build/wasm/program --bind -fuse-ld=lld -sWASM=1 -sALLOW_MEMORY_GROWTH=1 -sINITIAL_MEMORY=134217728 -sEXPORTED_RUNTIME_METHODS=['ccall','cwrap','stringToUTF8','lengthBytesUTF8'] -sEXPORTED_FUNCTIONS=['_malloc','_free','_extern_setup','_extern_loop','_fastled_declare_files'] --no-entry -sERROR_ON_WASM_CHANGES_AFTER_LINK -sMODULARIZE=1 -sEXPORT_NAME=fastled -o /js/.pio/build/wasm/fastled.js .pio/build/wasm/libbb9/fastled/FastLED.o .pio/build/wasm/libbb9/fastled/bitswap.o .pio/build/wasm/libbb9/fastled/cled_controller.o .pio/build/wasm/libbb9/fastled/colorpalettes.o .pio/build/wasm/libbb9/fastled/crgb.o .pio/build/wasm/libbb9/fastled/fl/allocator.o .pio/build/wasm/libbb9/fastled/fl/audio.o .pio/build/wasm/libbb9/fastled/fl/bilinear_expansion.o .pio/build/wasm/libbb9/fastled/fl/blur.o .pio/build/wasm/libbb9/fastled/fl/bytestreammemory.o .pio/build/wasm/libbb9/fastled/fl/colorutils.o .pio/build/wasm/libbb9/fastled/fl/downscale.o .pio/build/wasm/libbb9/fastled/fl/engine_events.o .pio/build/wasm/libbb9/fastled/fl/fft.o .pio/build/wasm/libbb9/fastled/fl/fft_impl.o .pio/build/wasm/libbb9/fastled/fl/file_system.o .pio/build/wasm/libbb9/fastled/fl/fill.o .pio/build/wasm/libbb9/fastled/fl/five_bit_hd_gamma.o .pio/build/wasm/libbb9/fastled/fl/gradient.o .pio/build/wasm/libbb9/fastled/fl/json.o .pio/build/wasm/libbb9/fastled/fl/leds.o .pio/build/wasm/libbb9/fastled/fl/line_simplification.o .pio/build/wasm/libbb9/fastled/fl/noise_woryley.o .pio/build/wasm/libbb9/fastled/fl/ptr.o .pio/build/wasm/libbb9/fastled/fl/raster_sparse.o .pio/build/wasm/libbb9/fastled/fl/rectangular_draw_buffer.o .pio/build/wasm/libbb9/fastled/fl/screenmap.o .pio/build/wasm/libbb9/fastled/fl/sin32.o .pio/build/wasm/libbb9/fastled/fl/str.o .pio/build/wasm/libbb9/fastled/fl/strstream.o .pio/build/wasm/libbb9/fastled/fl/stub_main.o .pio/build/wasm/libbb9/fastled/fl/tile2x2.o .pio/build/wasm/libbb9/fastled/fl/time_alpha.o .pio/build/wasm/libbb9/fastled/fl/transform.o .pio/build/wasm/libbb9/fastled/fl/type_traits.o .pio/build/wasm/libbb9/fastled/fl/ui.o .pio/build/wasm/libbb9/fastled/fl/wave_simulation.o .pio/build/wasm/libbb9/fastled/fl/wave_simulation_real.o .pio/build/wasm/libbb9/fastled/fl/xmap.o .pio/build/wasm/libbb9/fastled/fl/xymap.o .pio/build/wasm/libbb9/fastled/fl/xypath.o .pio/build/wasm/libbb9/fastled/fl/xypath_impls.o .pio/build/wasm/libbb9/fastled/fl/xypath_renderer.o .pio/build/wasm/libbb9/fastled/fx/2d/blend.o .pio/build/wasm/libbb9/fastled/fx/2d/noisepalette.o .pio/build/wasm/libbb9/fastled/fx/2d/scale_up.o .pio/build/wasm/libbb9/fastled/fx/2d/wave.o .pio/build/wasm/libbb9/fastled/fx/frame.o .pio/build/wasm/libbb9/fastled/fx/fx_engine.o .pio/build/wasm/libbb9/fastled/fx/time.o .pio/build/wasm/libbb9/fastled/fx/video.o .pio/build/wasm/libbb9/fastled/fx/video/frame_interpolator.o .pio/build/wasm/libbb9/fastled/fx/video/frame_tracker.o .pio/build/wasm/libbb9/fastled/fx/video/pixel_stream.o .pio/build/wasm/libbb9/fastled/fx/video/video_impl.o .pio/build/wasm/libbb9/fastled/hsv2rgb.o .pio/build/wasm/libbb9/fastled/lib8tion.o .pio/build/wasm/libbb9/fastled/noise.o .pio/build/wasm/libbb9/fastled/platforms.o .pio/build/wasm/libbb9/fastled/platforms/arm/k20/clockless_objectfled.o .pio/build/wasm/libbb9/fastled/platforms/esp/32/clockless_i2s_esp32s3.o .pio/build/wasm/libbb9/fastled/platforms/esp/32/i2s/i2s_esp32dev.o .pio/build/wasm/libbb9/fastled/platforms/esp/32/rmt_4/idf4_rmt.o .pio/build/wasm/libbb9/fastled/platforms/esp/32/rmt_4/idf4_rmt_impl.o .pio/build/wasm/libbb9/fastled/platforms/esp/32/rmt_5/idf5_rmt.o .pio/build/wasm/libbb9/fastled/platforms/esp/32/rmt_5/strip_rmt.o .pio/build/wasm/libbb9/fastled/platforms/esp/32/spi_ws2812/strip_spi.o .pio/build/wasm/libbb9/fastled/platforms/wasm/active_strip_data.o .pio/build/wasm/libbb9/fastled/platforms/wasm/compiler/Arduino.o .pio/build/wasm/libbb9/fastled/platforms/wasm/engine_listener.o .pio/build/wasm/libbb9/fastled/platforms/wasm/fs_wasm.o .pio/build/wasm/libbb9/fastled/platforms/wasm/js.o .pio/build/wasm/libbb9/fastled/platforms/wasm/timer.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/audio.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/button.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/checkbox.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/description.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/number_field.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/slider.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/title.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/ui_internal.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/ui_manager.o .pio/build/wasm/libbb9/fastled/power_mgt.o .pio/build/wasm/libbb9/fastled/rgbw.o .pio/build/wasm/libbb9/fastled/sensors/digital_pin.o .pio/build/wasm/libbb9/fastled/sensors/pir.o .pio/build/wasm/libbb9/fastled/simplex.o .pio/build/wasm/libbb9/fastled/third_party/cq_kernel/cq_kernel.o .pio/build/wasm/libbb9/fastled/third_party/cq_kernel/kiss_fft.o .pio/build/wasm/libbb9/fastled/third_party/cq_kernel/kiss_fftr.o .pio/build/wasm/libbb9/fastled/third_party/espressif/led_strip/src/led_strip_api.o .pio/build/wasm/libbb9/fastled/third_party/espressif/led_strip/src/led_strip_rmt_dev.o .pio/build/wasm/libbb9/fastled/third_party/espressif/led_strip/src/led_strip_rmt_encoder.o .pio/build/wasm/libbb9/fastled/third_party/espressif/led_strip/src/led_strip_spi_dev.o .pio/build/wasm/libbb9/fastled/third_party/object_fled/src/OjectFLED.o .pio/build/wasm/libbb9/fastled/transpose8x1_noinline.o .pio/build/wasm/libbb9/fastled/wiring.o .pio/build/wasm/src/wasm.ino.o -L.pio/build/wasm
443
+ 3.61 ========================= [SUCCESS] Took 3.20 seconds =========================
444
+ ```
@@ -77,6 +77,7 @@ def make_links() -> None:
77
77
  # Define file patterns to include
78
78
  patterns = [
79
79
  "*.h",
80
+ "*.py",
80
81
  "*.hpp",
81
82
  "*.cpp",
82
83
  "*.sh",
@@ -15,7 +15,7 @@ dependencies = [
15
15
  "disklru==2.0.0",
16
16
  "psutil==6.1.1",
17
17
  "wormhole-tx",
18
- "fastled-wasm-server>=1.0.4",
18
+ "fastled-wasm-server>=1.0.6",
19
19
  ]
20
20
 
21
21
  [tool.setuptools]
@@ -7,7 +7,7 @@ from pathlib import Path
7
7
  from typing import Tuple
8
8
 
9
9
  from fastled_wasm_server.code_sync import CodeSync
10
- from fastled_wasm_server.paths import FASTLED_SRC, VOLUME_MAPPED_SRC
10
+ from fastled_wasm_server.paths import VOLUME_MAPPED_SRC
11
11
 
12
12
  _PORT = os.environ.get("PORT", 80)
13
13
 
@@ -106,7 +106,7 @@ def main() -> int:
106
106
 
107
107
  code_sync = CodeSync(
108
108
  volume_mapped_src=VOLUME_MAPPED_SRC,
109
- rsync_dest=FASTLED_SRC,
109
+ rsync_dest=Path("/invalid/path"),
110
110
  )
111
111
  code_sync.sync_source_directory_if_volume_is_mapped()
112
112
 
@@ -11,10 +11,10 @@ keywords = ["template-python-cmd"]
11
11
  license = { text = "BSD 3-Clause License" }
12
12
  classifiers = ["Programming Language :: Python :: 3"]
13
13
  dependencies = [
14
- "docker>=7.1.0",
15
14
  "httpx>=0.28.1",
16
15
  "watchdog>=6.0.0",
17
16
  ########## Begin Docker Manager Dependencies
17
+ "docker>=7.1.0",
18
18
  "filelock>=3.16.1",
19
19
  "appdirs>=1.4.4",
20
20
  "rapidfuzz>=3.10.1",
@@ -24,7 +24,7 @@ dependencies = [
24
24
  "Flask>=3.0.0",
25
25
  "livereload",
26
26
  ###### WASM SERVER ######
27
- "fastled-wasm-server>=1.0.5", # This version can float upwards, while the docker is pinned.
27
+ "fastled-wasm-server>=1.0.6", # This version can float upwards, while the docker is pinned.
28
28
  ]
29
29
 
30
30
  dynamic = ["version"]
@@ -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.91"
17
+ __version__ = "1.2.92"
18
18
 
19
19
 
20
20
  class Api:
@@ -5,12 +5,12 @@ FILE_CHANGED_DEBOUNCE_SECONDS = 2.0
5
5
  MACHINE = platform.machine().lower()
6
6
  IS_ARM: bool = "arm" in MACHINE or "aarch64" in MACHINE
7
7
  PLATFORM_TAG: str = "-arm64" if IS_ARM else ""
8
- CONTAINER_NAME = f"fastled-wasm-compiler{PLATFORM_TAG}"
8
+ CONTAINER_NAME = f"fastled-wasm-container{PLATFORM_TAG}"
9
9
  DEFAULT_URL = str(os.environ.get("FASTLED_URL", "https://fastled.onrender.com"))
10
10
  SERVER_PORT = 9021
11
11
 
12
12
  IMAGE_NAME = "niteris/fastled-wasm"
13
- DEFAULT_CONTAINER_NAME = "fastled-wasm-compiler"
13
+ DEFAULT_CONTAINER_NAME = "fastled-wasm-container"
14
14
  # IMAGE_TAG = "latest"
15
15
 
16
16
  DOCKER_FILE = (
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fastled
3
- Version: 1.2.91
3
+ Version: 1.2.92
4
4
  Summary: FastLED Wasm Compiler
5
5
  Home-page: https://github.com/zackees/fastled-wasm
6
6
  Maintainer: Zachary Vorhies
@@ -10,9 +10,9 @@ Classifier: Programming Language :: Python :: 3
10
10
  Requires-Python: >=3.10
11
11
  Description-Content-Type: text/markdown
12
12
  License-File: LICENSE
13
- Requires-Dist: docker>=7.1.0
14
13
  Requires-Dist: httpx>=0.28.1
15
14
  Requires-Dist: watchdog>=6.0.0
15
+ Requires-Dist: docker>=7.1.0
16
16
  Requires-Dist: filelock>=3.16.1
17
17
  Requires-Dist: appdirs>=1.4.4
18
18
  Requires-Dist: rapidfuzz>=3.10.1
@@ -20,7 +20,7 @@ Requires-Dist: progress>=1.6
20
20
  Requires-Dist: watchfiles>=1.0.5
21
21
  Requires-Dist: Flask>=3.0.0
22
22
  Requires-Dist: livereload
23
- Requires-Dist: fastled-wasm-server>=1.0.5
23
+ Requires-Dist: fastled-wasm-server>=1.0.6
24
24
  Dynamic: home-page
25
25
  Dynamic: license-file
26
26
  Dynamic: maintainer
@@ -393,3 +393,79 @@ A: A big chunk of space is being used by unnecessary javascript `emscripten` bun
393
393
 
394
394
 
395
395
  live-server --https --cert=src/fastled/assets/localhost.pem --key=src/fastled/assets/localhost-key.pem --port=5500
396
+
397
+
398
+ ## Performance
399
+
400
+ ```
401
+ ###############################
402
+ # Build started with command: #
403
+ # pio run -v #
404
+ ###############################
405
+
406
+ 0.41 Warning! Ignore unknown configuration option `build_dir` in section [env:wasm]
407
+ 0.41 Warning! Ignore unknown configuration option `force_verbose` in section [env:wasm]
408
+ 0.41 Processing wasm (platform: native; extra_scripts: post:wasm_compiler_flags.py; lib_compat_mode: off; build_flags: -std=c++17, -DFASTLED_NO_PINMAP, -DHAS_HARDWARE_PIN_SUPPORT, -DFASTLED_FORCE_SOFTWARE_SPI, -I/js/src/platforms/wasm/compiler; custom_wasm_export_name: fastled; lib_deps: FastLED=symlink://fastled; build_dir: build/wasm; force_verbose: yes)
409
+ 0.41 --------------------------------------------------------------------------------
410
+ 0.99 LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
411
+ 0.99 LDF Modes: Finder ~ chain, Compatibility ~ off
412
+ 0.99 Found 1 compatible libraries
413
+ 0.99 Scanning dependencies...
414
+ 1.40 Dependency Graph
415
+ 1.40 |-- FastLED @ 3.9.16 (License: MIT, Path: /js/fastled)
416
+ 1.49 Building in release mode
417
+ 1.49
418
+ 1.49 #########################
419
+ 1.49 # C++/C Compiler Flags: #
420
+ 1.49 #########################
421
+ 1.49
422
+ 1.49 CC/CXX flags:
423
+ 1.49 -DFASTLED_ENGINE_EVENTS_MAX_LISTENERS=50
424
+ 1.49 -DFASTLED_FORCE_NAMESPACE=1
425
+ 1.49 -DFASTLED_USE_PROGMEM=0
426
+ 1.49 -O1
427
+ 1.49 -DUSE_OFFSET_CONVERTER=0
428
+ 1.49 -std=gnu++17
429
+ 1.49 -fpermissive
430
+ 1.49 -Wno-constant-logical-operand
431
+ 1.49 -Wnon-c-typedef-for-linkage
432
+ 1.49 -Werror=bad-function-cast
433
+ 1.49 -Werror=cast-function-type
434
+ 1.49 -I
435
+ 1.49 src
436
+ 1.49 -I/js/src/platforms/wasm/compiler
437
+ 1.49
438
+ 1.49 #################
439
+ 1.49 # Linker Flags: #
440
+ 1.49 #################
441
+ 1.49
442
+ 1.49 --bind
443
+ 1.49 -fuse-ld=lld
444
+ 1.49 -sWASM=1
445
+ 1.49 -sALLOW_MEMORY_GROWTH=1
446
+ 1.49 -sINITIAL_MEMORY=134217728
447
+ 1.49 -sEXPORTED_RUNTIME_METHODS=['ccall','cwrap','stringToUTF8','lengthBytesUTF8']
448
+ 1.49 -sEXPORTED_FUNCTIONS=['_malloc','_free','_extern_setup','_extern_loop','_fastled_declare_files']
449
+ 1.49 --no-entry
450
+ 1.49 -sERROR_ON_WASM_CHANGES_AFTER_LINK
451
+ 1.49 -sMODULARIZE=1
452
+ 1.49 -sEXPORT_NAME=fastled
453
+ 1.49 -o
454
+ 1.49 /js/.pio/build/wasm/fastled.js
455
+ 1.49
456
+ 1.49 ##########################
457
+ 1.49 # FastLED Library Flags: #
458
+ 1.49 ##########################
459
+ 1.49
460
+ 1.49 --bind
461
+ 1.49 -Wl,--whole-archive,-fuse-ld=lld
462
+ 1.49 -Werror=bad-function-cast
463
+ 1.49 -Werror=cast-function-type
464
+ 1.49
465
+ 1.49 ################
466
+ 1.49 # End of Flags #
467
+ 1.49 ################
468
+ 1.49
469
+ 2.20 ccache em++ -o .pio/build/wasm/program --bind -fuse-ld=lld -sWASM=1 -sALLOW_MEMORY_GROWTH=1 -sINITIAL_MEMORY=134217728 -sEXPORTED_RUNTIME_METHODS=['ccall','cwrap','stringToUTF8','lengthBytesUTF8'] -sEXPORTED_FUNCTIONS=['_malloc','_free','_extern_setup','_extern_loop','_fastled_declare_files'] --no-entry -sERROR_ON_WASM_CHANGES_AFTER_LINK -sMODULARIZE=1 -sEXPORT_NAME=fastled -o /js/.pio/build/wasm/fastled.js .pio/build/wasm/libbb9/fastled/FastLED.o .pio/build/wasm/libbb9/fastled/bitswap.o .pio/build/wasm/libbb9/fastled/cled_controller.o .pio/build/wasm/libbb9/fastled/colorpalettes.o .pio/build/wasm/libbb9/fastled/crgb.o .pio/build/wasm/libbb9/fastled/fl/allocator.o .pio/build/wasm/libbb9/fastled/fl/audio.o .pio/build/wasm/libbb9/fastled/fl/bilinear_expansion.o .pio/build/wasm/libbb9/fastled/fl/blur.o .pio/build/wasm/libbb9/fastled/fl/bytestreammemory.o .pio/build/wasm/libbb9/fastled/fl/colorutils.o .pio/build/wasm/libbb9/fastled/fl/downscale.o .pio/build/wasm/libbb9/fastled/fl/engine_events.o .pio/build/wasm/libbb9/fastled/fl/fft.o .pio/build/wasm/libbb9/fastled/fl/fft_impl.o .pio/build/wasm/libbb9/fastled/fl/file_system.o .pio/build/wasm/libbb9/fastled/fl/fill.o .pio/build/wasm/libbb9/fastled/fl/five_bit_hd_gamma.o .pio/build/wasm/libbb9/fastled/fl/gradient.o .pio/build/wasm/libbb9/fastled/fl/json.o .pio/build/wasm/libbb9/fastled/fl/leds.o .pio/build/wasm/libbb9/fastled/fl/line_simplification.o .pio/build/wasm/libbb9/fastled/fl/noise_woryley.o .pio/build/wasm/libbb9/fastled/fl/ptr.o .pio/build/wasm/libbb9/fastled/fl/raster_sparse.o .pio/build/wasm/libbb9/fastled/fl/rectangular_draw_buffer.o .pio/build/wasm/libbb9/fastled/fl/screenmap.o .pio/build/wasm/libbb9/fastled/fl/sin32.o .pio/build/wasm/libbb9/fastled/fl/str.o .pio/build/wasm/libbb9/fastled/fl/strstream.o .pio/build/wasm/libbb9/fastled/fl/stub_main.o .pio/build/wasm/libbb9/fastled/fl/tile2x2.o .pio/build/wasm/libbb9/fastled/fl/time_alpha.o .pio/build/wasm/libbb9/fastled/fl/transform.o .pio/build/wasm/libbb9/fastled/fl/type_traits.o .pio/build/wasm/libbb9/fastled/fl/ui.o .pio/build/wasm/libbb9/fastled/fl/wave_simulation.o .pio/build/wasm/libbb9/fastled/fl/wave_simulation_real.o .pio/build/wasm/libbb9/fastled/fl/xmap.o .pio/build/wasm/libbb9/fastled/fl/xymap.o .pio/build/wasm/libbb9/fastled/fl/xypath.o .pio/build/wasm/libbb9/fastled/fl/xypath_impls.o .pio/build/wasm/libbb9/fastled/fl/xypath_renderer.o .pio/build/wasm/libbb9/fastled/fx/2d/blend.o .pio/build/wasm/libbb9/fastled/fx/2d/noisepalette.o .pio/build/wasm/libbb9/fastled/fx/2d/scale_up.o .pio/build/wasm/libbb9/fastled/fx/2d/wave.o .pio/build/wasm/libbb9/fastled/fx/frame.o .pio/build/wasm/libbb9/fastled/fx/fx_engine.o .pio/build/wasm/libbb9/fastled/fx/time.o .pio/build/wasm/libbb9/fastled/fx/video.o .pio/build/wasm/libbb9/fastled/fx/video/frame_interpolator.o .pio/build/wasm/libbb9/fastled/fx/video/frame_tracker.o .pio/build/wasm/libbb9/fastled/fx/video/pixel_stream.o .pio/build/wasm/libbb9/fastled/fx/video/video_impl.o .pio/build/wasm/libbb9/fastled/hsv2rgb.o .pio/build/wasm/libbb9/fastled/lib8tion.o .pio/build/wasm/libbb9/fastled/noise.o .pio/build/wasm/libbb9/fastled/platforms.o .pio/build/wasm/libbb9/fastled/platforms/arm/k20/clockless_objectfled.o .pio/build/wasm/libbb9/fastled/platforms/esp/32/clockless_i2s_esp32s3.o .pio/build/wasm/libbb9/fastled/platforms/esp/32/i2s/i2s_esp32dev.o .pio/build/wasm/libbb9/fastled/platforms/esp/32/rmt_4/idf4_rmt.o .pio/build/wasm/libbb9/fastled/platforms/esp/32/rmt_4/idf4_rmt_impl.o .pio/build/wasm/libbb9/fastled/platforms/esp/32/rmt_5/idf5_rmt.o .pio/build/wasm/libbb9/fastled/platforms/esp/32/rmt_5/strip_rmt.o .pio/build/wasm/libbb9/fastled/platforms/esp/32/spi_ws2812/strip_spi.o .pio/build/wasm/libbb9/fastled/platforms/wasm/active_strip_data.o .pio/build/wasm/libbb9/fastled/platforms/wasm/compiler/Arduino.o .pio/build/wasm/libbb9/fastled/platforms/wasm/engine_listener.o .pio/build/wasm/libbb9/fastled/platforms/wasm/fs_wasm.o .pio/build/wasm/libbb9/fastled/platforms/wasm/js.o .pio/build/wasm/libbb9/fastled/platforms/wasm/timer.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/audio.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/button.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/checkbox.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/description.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/number_field.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/slider.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/title.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/ui_internal.o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/ui_manager.o .pio/build/wasm/libbb9/fastled/power_mgt.o .pio/build/wasm/libbb9/fastled/rgbw.o .pio/build/wasm/libbb9/fastled/sensors/digital_pin.o .pio/build/wasm/libbb9/fastled/sensors/pir.o .pio/build/wasm/libbb9/fastled/simplex.o .pio/build/wasm/libbb9/fastled/third_party/cq_kernel/cq_kernel.o .pio/build/wasm/libbb9/fastled/third_party/cq_kernel/kiss_fft.o .pio/build/wasm/libbb9/fastled/third_party/cq_kernel/kiss_fftr.o .pio/build/wasm/libbb9/fastled/third_party/espressif/led_strip/src/led_strip_api.o .pio/build/wasm/libbb9/fastled/third_party/espressif/led_strip/src/led_strip_rmt_dev.o .pio/build/wasm/libbb9/fastled/third_party/espressif/led_strip/src/led_strip_rmt_encoder.o .pio/build/wasm/libbb9/fastled/third_party/espressif/led_strip/src/led_strip_spi_dev.o .pio/build/wasm/libbb9/fastled/third_party/object_fled/src/OjectFLED.o .pio/build/wasm/libbb9/fastled/transpose8x1_noinline.o .pio/build/wasm/libbb9/fastled/wiring.o .pio/build/wasm/src/wasm.ino.o -L.pio/build/wasm
470
+ 3.61 ========================= [SUCCESS] Took 3.20 seconds =========================
471
+ ```
@@ -35,16 +35,11 @@ upload_package.sh
35
35
  .vscode/tasks.json
36
36
  compiler/CMakeLists.txt
37
37
  compiler/arduino-pre-process.sh
38
- compiler/build.sh
39
- compiler/build_archive.sh
40
- compiler/build_fast.sh
41
- compiler/compile.py
42
38
  compiler/debug.sh
43
39
  compiler/entrypoint.sh
44
40
  compiler/final_prewarm.sh
45
41
  compiler/init_runtime.py
46
42
  compiler/install-arduino-cli.sh
47
- compiler/pre-process.sh
48
43
  compiler/prewarm.sh
49
44
  compiler/process-ino.py
50
45
  compiler/pyproject.toml
@@ -113,6 +108,7 @@ tests/unit/test_project_init.py
113
108
  tests/unit/test_server_and_client_seperatly.py
114
109
  tests/unit/test_string_diff.py
115
110
  tests/unit/test_version.py
111
+ tests/unit/test_version_matches.py
116
112
  tests/unit/test_webcompile.py
117
113
  tests/unit/html/index.html
118
114
  tests/unit/test_ino/bad/bad.ino
@@ -1,6 +1,6 @@
1
- docker>=7.1.0
2
1
  httpx>=0.28.1
3
2
  watchdog>=6.0.0
3
+ docker>=7.1.0
4
4
  filelock>=3.16.1
5
5
  appdirs>=1.4.4
6
6
  rapidfuzz>=3.10.1
@@ -8,4 +8,4 @@ progress>=1.6
8
8
  watchfiles>=1.0.5
9
9
  Flask>=3.0.0
10
10
  livereload
11
- fastled-wasm-server>=1.0.5
11
+ fastled-wasm-server>=1.0.6
@@ -0,0 +1,70 @@
1
+ """
2
+ Unit test file.
3
+ """
4
+
5
+ import shlex
6
+ import unittest
7
+ from pathlib import Path
8
+
9
+ HERE = Path(__file__).parent
10
+ PROJECT_ROOT = HERE.parent.parent
11
+
12
+ OUR_PY_PROJECT_TOML = PROJECT_ROOT / "pyproject.toml"
13
+ CONTAINER_PY_PROJECT_TOML = PROJECT_ROOT / "compiler" / "pyproject.toml"
14
+
15
+
16
+ def get_version_from_toml(toml_path: Path) -> str:
17
+ """
18
+ Extracts the fastled-wasm-server version from the pyproject.toml file.
19
+ """
20
+ needle = "fastled-wasm-server"
21
+ version = ""
22
+ text = toml_path.read_text()
23
+ lines = text.splitlines()
24
+ for line in lines:
25
+ if needle in line:
26
+ # use the regular expression to extract the version, be mindful of '"', and >= == < > and so on
27
+ # match = re.search(rf"{needle}.*?=\s*\"(.*?)\"", line)
28
+ # fails for "fastled-wasm-server>=1.0.5", # This version can float upwards, while the docker is pinned.
29
+ # remove comments
30
+ line = line.split("#")[0]
31
+ line = line.replace("'", '"')
32
+ line = line.replace('"', "")
33
+ line = line.replace(",", "")
34
+ line = line.replace(">", " ")
35
+ line = line.replace("<", " ")
36
+ line = line.replace("=", " ")
37
+ parts = shlex.split(line)
38
+ if len(parts) < 2:
39
+ return "any"
40
+ version = parts[1]
41
+ return version
42
+ if not version:
43
+ raise ValueError(f"Version not found in {toml_path}")
44
+ return version
45
+
46
+
47
+ class VersionMatchesTester(unittest.TestCase):
48
+ """Main tester class."""
49
+
50
+ def test_sanity(self) -> None:
51
+ self.assertTrue(
52
+ OUR_PY_PROJECT_TOML.exists(),
53
+ f"Expected {OUR_PY_PROJECT_TOML} to exist",
54
+ )
55
+ self.assertTrue(
56
+ CONTAINER_PY_PROJECT_TOML.exists(),
57
+ f"Expected {CONTAINER_PY_PROJECT_TOML} to exist",
58
+ )
59
+
60
+ our_version = get_version_from_toml(OUR_PY_PROJECT_TOML)
61
+ container_version = get_version_from_toml(CONTAINER_PY_PROJECT_TOML)
62
+ self.assertEqual(
63
+ our_version,
64
+ container_version,
65
+ f"Versions do not match: {our_version} in {OUR_PY_PROJECT_TOML} != {container_version} in {CONTAINER_PY_PROJECT_TOML}",
66
+ )
67
+
68
+
69
+ if __name__ == "__main__":
70
+ unittest.main()
@@ -1,3 +0,0 @@
1
- #!/bin/bash
2
-
3
- python compile.py --no-platformio
@@ -1,28 +0,0 @@
1
- #!/bin/bash
2
- set -e # Exit immediately if a command exits with a non-zero status
3
- set -x
4
-
5
- # if /include does not exist
6
- if [ ! -d "/precompiled/include" ]; then
7
- echo "include directory does not exist, copying header include tree"
8
- # echo "include directory does not exist, copying header include tree"
9
- # copy *.h,*.hpp files from fastled/src/** to /include
10
- mkdir -p /precompiled/include
11
- cd fastled/src
12
- find . -name "*.h*" -exec cp --parents {} /precompiled/include \;
13
- cd ../../
14
- fi
15
-
16
- # if /precompiled/libfastled.a does not exist
17
- if [ ! -f "/precompiled/libfastled.a" ]; then
18
- # echo "libfastled.a does not exist, compiling static library"
19
- echo "libfastled.a does not exist, compiling static library"
20
- cd fastled/src/platforms/wasm/compiler/lib
21
- mkdir -p build
22
- cd build
23
- emcmake cmake -DCMAKE_VERBOSE_MAKEFILE=ON ..
24
- emmake cmake --build . -v -j
25
- cp fastled/libfastled.a /precompiled/libfastled.a
26
- cd ../../../../../
27
- fi
28
-
@@ -1,54 +0,0 @@
1
- #!/bin/bash
2
- set -e # Exit immediately if a command exits with a non-zero status
3
- set -x
4
-
5
- #################################
6
- # Compile fastled lib
7
- #################################
8
-
9
-
10
- ./build_archive.sh
11
-
12
- # first compile if build doesn't exist
13
- first_compile=false
14
-
15
- # if build directory doesn't exist
16
- if [ ! -d "build" ]; then
17
- # Create the build directory if it doesn't exist and mark as first compile.
18
- mkdir -p build
19
- # if /js/src/CMakeCache.txt exists then delete it
20
-
21
- first_compile=true
22
- fi
23
-
24
- cd build
25
-
26
- # Set build mode: QUICK, DEBUG, or RELEASE (default is QUICK)
27
- export BUILD_MODE=${1:-QUICK}
28
-
29
- # Check for an optional second parameter to activate PROFILE
30
- # PROFILE_FLAG="-DPROFILE=ON"
31
-
32
- # touch CMakeLists.txt to force reconfigure
33
- touch /js/CMakeLists.txt
34
-
35
-
36
- # always delete CMakeCache.txt
37
- if [ -f "/js/fastled/src/CMakeCache.txt" ]; then
38
- rm -rf /js/fastled/src/CMakeCache.txt
39
- fi
40
-
41
-
42
- if [ "$first_compile" = true ]; then
43
- # Configure with CMake
44
- # If you want verbose build output, you can enable CMAKE_VERBOSE_MAKEFILE.
45
- echo "Configuring build with CMake..."
46
- emcmake cmake -DCMAKE_VERBOSE_MAKEFILE=ON ..
47
- else
48
- # If the build directory already exists, reconfigure with CMake.
49
- echo "Skipping CMake configuration as build directory already exists."
50
- fi
51
-
52
- # Build the project using CMake
53
- emmake cmake --build . -v -j
54
-