fastled 1.2.86__tar.gz → 1.2.87__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.
- {fastled-1.2.86 → fastled-1.2.87}/PKG-INFO +1 -1
- {fastled-1.2.86 → fastled-1.2.87}/compiler/compile.py +9 -2
- {fastled-1.2.86 → fastled-1.2.87}/compiler/server.py +12 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/__init__.py +1 -1
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/compile_server_impl.py +6 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/docker_manager.py +6 -0
- fastled-1.2.87/src/fastled/print_filter.py +190 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled.egg-info/PKG-INFO +1 -1
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled.egg-info/SOURCES.txt +1 -0
- {fastled-1.2.86 → fastled-1.2.87}/test +8 -2
- fastled-1.2.87/tests/unit/test_experimental_cpp_filter.py +167 -0
- {fastled-1.2.86 → fastled-1.2.87}/tests/unit/test_fetch_source_files.py +12 -10
- fastled-1.2.86/src/fastled/print_filter.py +0 -75
- {fastled-1.2.86 → fastled-1.2.87}/.aiderignore +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/.dockerignore +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/.github/workflows/build_multi_docker_image.yml +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/.github/workflows/build_webpage.yml +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/.github/workflows/lint.yml +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/.github/workflows/publish_release.yml +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/.github/workflows/template_build_docker_image.yml +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/.github/workflows/test_build_exe.yml +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/.github/workflows/test_macos.yml +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/.github/workflows/test_ubuntu.yml +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/.github/workflows/test_win.yml +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/.gitignore +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/.pylintrc +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/.vscode/launch.json +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/.vscode/settings.json +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/.vscode/tasks.json +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/Dockerfile +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/LICENSE +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/MANIFEST.in +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/README.md +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/RELEASE.md +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/TODO.md +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/build_exe.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/build_local_docker.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/build_site.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/clean +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/CMakeLists.txt +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/__init__.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/arduino-pre-process.sh +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/build.sh +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/build_archive.sh +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/build_fast.sh +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/code_sync.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/compile_lock.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/debug.sh +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/entrypoint.sh +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/extra/100dots.html +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/extra/demo_threejs.html +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/extra/micdemo.html +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/extra/mp3upload.html +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/extra/webgl_postprocessing_unreal_bloom.html +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/final_prewarm.sh +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/init_runtime.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/install-arduino-cli.sh +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/libcompile/CMakeLists.txt +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/paths.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/pre-process.sh +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/prewarm.sh +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/process-ino.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/process_extended.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/pyproject.toml +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/run.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/sketch_hasher.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/compiler/wasm_compiler_flags.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/docker-compose.yml +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/install +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/install_linux.sh +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/lint +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/pyproject.toml +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/requirements.testing.txt +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/setup.cfg +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/setup.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/app.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/assets/example.txt +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/assets/localhost-key.pem +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/assets/localhost.pem +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/cli.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/cli_test.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/cli_test_interactive.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/client_server.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/compile_server.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/filewatcher.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/keyboard.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/keyz.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/live_client.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/open_browser.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/parse_args.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/paths.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/project_init.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/select_sketch_directory.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/server_flask.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/server_start.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/settings.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/site/build.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/site/examples.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/sketch.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/spinner.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/string_diff.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/test/can_run_local_docker_tests.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/test/examples.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/types.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/util.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled/web_compile.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled.egg-info/dependency_links.txt +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled.egg-info/entry_points.txt +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled.egg-info/requires.txt +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/src/fastled.egg-info/top_level.txt +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/tests/integration/test_build_examples.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/tests/integration/test_examples.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/tests/unit/html/index.html +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/tests/unit/test_api.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/tests/unit/test_bad_ino.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/tests/unit/test_cli.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/tests/unit/test_compile_server.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/tests/unit/test_docker_linux_on_windows.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/tests/unit/test_embedded_data.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/tests/unit/test_filechanger.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/tests/unit/test_http_server.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/tests/unit/test_ino/bad/bad.ino +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/tests/unit/test_ino/bad_platformio/bad_platformio.ino +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/tests/unit/test_ino/bad_platformio/platformio.ini +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/tests/unit/test_ino/embedded/data/bigdata.dat +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/tests/unit/test_ino/embedded/wasm.ino +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/tests/unit/test_ino/wasm/wasm.ino +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/tests/unit/test_print_filter.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/tests/unit/test_project_init.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/tests/unit/test_server_and_client_seperatly.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/tests/unit/test_string_diff.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/tests/unit/test_version.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/tests/unit/test_webcompile.py +0 -0
- {fastled-1.2.86 → fastled-1.2.87}/upload_package.sh +0 -0
@@ -116,6 +116,11 @@ def _banner(msg: str) -> str:
|
|
116
116
|
return banner
|
117
117
|
|
118
118
|
|
119
|
+
def _print_banner(msg: str) -> None:
|
120
|
+
"""Prints a banner with the given message."""
|
121
|
+
print(_banner(msg))
|
122
|
+
|
123
|
+
|
119
124
|
def _chunked_print(text: str, lines_per_print: int = 10) -> None:
|
120
125
|
"""Prints the text in chunks of the specified size."""
|
121
126
|
lines = text.splitlines()
|
@@ -189,13 +194,15 @@ def compile(
|
|
189
194
|
|
190
195
|
process.wait()
|
191
196
|
|
197
|
+
print(_banner("Compilation process Finsished."))
|
198
|
+
|
192
199
|
if process.returncode == 0:
|
193
|
-
print(
|
200
|
+
print("\nCompilation successful.\n")
|
194
201
|
return 0
|
195
202
|
else:
|
196
203
|
raise subprocess.CalledProcessError(process.returncode, ["pio", "run"])
|
197
204
|
except subprocess.CalledProcessError:
|
198
|
-
print(f"Compilation failed on attempt {attempt}")
|
205
|
+
print(_banner(f"Compilation failed on attempt {attempt}"))
|
199
206
|
if attempt == max_attempts:
|
200
207
|
print("Max attempts reached. Compilation failed.")
|
201
208
|
return 1
|
@@ -77,6 +77,12 @@ _LIVE_GIT_UPDATES_INTERVAL = int(
|
|
77
77
|
_ALLOW_SHUTDOWN = os.environ.get("ALLOW_SHUTDOWN", "false").lower() in ["true", "1"]
|
78
78
|
_NO_SKETCH_CACHE = os.environ.get("NO_SKETCH_CACHE", "false").lower() in ["true", "1"]
|
79
79
|
|
80
|
+
# debug is a 20mb payload for the symbol information.
|
81
|
+
_ONLY_QUICK_BUILDS = os.environ.get("ONLY_QUICK_BUILDS", "false").lower() in [
|
82
|
+
"true",
|
83
|
+
"0",
|
84
|
+
]
|
85
|
+
|
80
86
|
|
81
87
|
# TODO - cleanup
|
82
88
|
_NO_AUTO_UPDATE = (
|
@@ -255,6 +261,12 @@ def compile_source(
|
|
255
261
|
diff = time.time() - epoch
|
256
262
|
print(f" = SERVER {diff:.2f}s = {msg}")
|
257
263
|
|
264
|
+
if build_mode != "quick" and _ONLY_QUICK_BUILDS:
|
265
|
+
raise HTTPException(
|
266
|
+
status_code=400,
|
267
|
+
detail="Only quick builds are allowed in this version.",
|
268
|
+
)
|
269
|
+
|
258
270
|
_print("Starting compile_source")
|
259
271
|
global COMPILE_COUNT
|
260
272
|
global COMPILE_FAILURES
|
@@ -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.
|
17
|
+
__version__ = "1.2.87"
|
18
18
|
|
19
19
|
|
20
20
|
class Api:
|
@@ -25,6 +25,10 @@ SERVER_OPTIONS = [
|
|
25
25
|
"--no-auto-update", # Don't auto live updates from the git repo.
|
26
26
|
]
|
27
27
|
|
28
|
+
LOCAL_DOCKER_ENV = {
|
29
|
+
"ONLY_QUICK_BUILDS": "0" # When running docker always allow release and debug.
|
30
|
+
}
|
31
|
+
|
28
32
|
|
29
33
|
def _try_get_fastled_src(path: Path) -> Path | None:
|
30
34
|
fastled_src_dir: Path | None = None
|
@@ -310,6 +314,7 @@ class CompileServerImpl:
|
|
310
314
|
ports=ports,
|
311
315
|
volumes=volumes,
|
312
316
|
remove_previous=self.interactive or self.remove_previous or updated,
|
317
|
+
environment=LOCAL_DOCKER_ENV,
|
313
318
|
)
|
314
319
|
self.running_container = self.docker.attach_and_run(container)
|
315
320
|
assert self.running_container is not None, "Container should be running"
|
@@ -330,6 +335,7 @@ class CompileServerImpl:
|
|
330
335
|
command=cmd_str,
|
331
336
|
ports=ports,
|
332
337
|
volumes=volumes,
|
338
|
+
environment=LOCAL_DOCKER_ENV,
|
333
339
|
)
|
334
340
|
|
335
341
|
print("Exiting interactive mode")
|
@@ -533,6 +533,7 @@ class DockerManager:
|
|
533
533
|
volumes: list[Volume] | None = None,
|
534
534
|
ports: dict[int, int] | None = None,
|
535
535
|
remove_previous: bool = False,
|
536
|
+
environment: dict[str, str] | None = None,
|
536
537
|
) -> Container:
|
537
538
|
"""
|
538
539
|
Run a container from an image. If it already exists with matching config, start it.
|
@@ -617,6 +618,7 @@ class DockerManager:
|
|
617
618
|
tty=True,
|
618
619
|
volumes=volumes_dict,
|
619
620
|
ports=ports, # type: ignore
|
621
|
+
environment=environment,
|
620
622
|
remove=True,
|
621
623
|
)
|
622
624
|
return container
|
@@ -629,6 +631,7 @@ class DockerManager:
|
|
629
631
|
command: str | None = None,
|
630
632
|
volumes: list[Volume] | None = None,
|
631
633
|
ports: dict[int, int] | None = None,
|
634
|
+
environment: dict[str, str] | None = None,
|
632
635
|
) -> None:
|
633
636
|
# Convert volumes to the format expected by Docker API
|
634
637
|
volumes = _hack_to_fix_mac(volumes)
|
@@ -663,6 +666,9 @@ class DockerManager:
|
|
663
666
|
if ports:
|
664
667
|
for host_port, container_port in ports.items():
|
665
668
|
docker_command.extend(["-p", f"{host_port}:{container_port}"])
|
669
|
+
if environment:
|
670
|
+
for env_name, env_value in environment.items():
|
671
|
+
docker_command.extend(["-e", f"{env_name}={env_value}"])
|
666
672
|
docker_command.append(f"{image_name}:{tag}")
|
667
673
|
if command:
|
668
674
|
docker_command.append(command)
|
@@ -0,0 +1,190 @@
|
|
1
|
+
import re
|
2
|
+
import zlib
|
3
|
+
from abc import ABC, abstractmethod
|
4
|
+
from dataclasses import dataclass
|
5
|
+
from enum import Enum
|
6
|
+
|
7
|
+
|
8
|
+
class PrintFilter(ABC):
|
9
|
+
"""Abstract base class for filtering text output."""
|
10
|
+
|
11
|
+
def __init__(self, echo: bool = True) -> None:
|
12
|
+
self.echo = echo
|
13
|
+
|
14
|
+
@abstractmethod
|
15
|
+
def filter(self, text: str) -> str:
|
16
|
+
"""Filter the text according to implementation-specific rules."""
|
17
|
+
pass
|
18
|
+
|
19
|
+
def print(self, text: str | bytes) -> str:
|
20
|
+
"""Prints the text to the console after filtering."""
|
21
|
+
if isinstance(text, bytes):
|
22
|
+
text = text.decode("utf-8")
|
23
|
+
text = self.filter(text)
|
24
|
+
if self.echo:
|
25
|
+
print(text, end="")
|
26
|
+
return text
|
27
|
+
|
28
|
+
|
29
|
+
def _handle_ino_cpp(line: str) -> str:
|
30
|
+
if ".ino.cpp" in line[0:30]:
|
31
|
+
# Extract the filename without path and extension
|
32
|
+
match = re.search(r"src/([^/]+)\.ino\.cpp", line)
|
33
|
+
if match:
|
34
|
+
filename = match.group(1)
|
35
|
+
# Replace with examples/Filename/Filename.ino format
|
36
|
+
line = line.replace(
|
37
|
+
f"src/{filename}.ino.cpp", f"examples/{filename}/{filename}.ino"
|
38
|
+
)
|
39
|
+
else:
|
40
|
+
# Fall back to simple extension replacement if regex doesn't match
|
41
|
+
line = line.replace(".ino.cpp", ".ino")
|
42
|
+
return line
|
43
|
+
|
44
|
+
|
45
|
+
def _handle_fastled_src(line: str) -> str:
|
46
|
+
return line.replace("fastled/src", "src")
|
47
|
+
|
48
|
+
|
49
|
+
class PrintFilterDefault(PrintFilter):
|
50
|
+
"""Provides default filtering for FastLED output."""
|
51
|
+
|
52
|
+
def filter(self, text: str) -> str:
|
53
|
+
return text
|
54
|
+
|
55
|
+
|
56
|
+
class PrintFilterFastled(PrintFilter):
|
57
|
+
"""Provides filtering for FastLED output so that source files match up with local names."""
|
58
|
+
|
59
|
+
def __init__(self, echo: bool = True) -> None:
|
60
|
+
super().__init__(echo)
|
61
|
+
self.build_started = False
|
62
|
+
# self.compile_link_active = False
|
63
|
+
# self.compile_link_filter:
|
64
|
+
|
65
|
+
def filter(self, text: str) -> str:
|
66
|
+
lines = text.splitlines()
|
67
|
+
out: list[str] = []
|
68
|
+
for line in lines:
|
69
|
+
## DEBUG DO NOT SUBMIT
|
70
|
+
# print(line)
|
71
|
+
if "# WASM is building" in line:
|
72
|
+
self.build_started = True
|
73
|
+
line = _handle_fastled_src(
|
74
|
+
line
|
75
|
+
) # Always convert fastled/src to src for file matchups.
|
76
|
+
if self.build_started or " error: " in line:
|
77
|
+
line = _handle_ino_cpp(line)
|
78
|
+
out.append(line)
|
79
|
+
text = "\n".join(out)
|
80
|
+
return text
|
81
|
+
|
82
|
+
|
83
|
+
class CompileOrLink(Enum):
|
84
|
+
COMPILE = "compile"
|
85
|
+
LINK = "link"
|
86
|
+
|
87
|
+
|
88
|
+
@dataclass
|
89
|
+
class BuildArtifact:
|
90
|
+
timestamp: float
|
91
|
+
input_artifact: str | None
|
92
|
+
output_artifact: str | None
|
93
|
+
build_flags: str
|
94
|
+
compile_or_link: CompileOrLink
|
95
|
+
hash: int
|
96
|
+
|
97
|
+
def __str__(self) -> str:
|
98
|
+
return f"{self.timestamp} {self.output_artifact} {self.build_flags} {self.compile_or_link} {self.hash}"
|
99
|
+
|
100
|
+
@staticmethod
|
101
|
+
def parse(input_str: str) -> "BuildArtifact | None":
|
102
|
+
"""
|
103
|
+
Parse a single build-log line of the form:
|
104
|
+
"<timestamp> ... <some .cpp or .h file> ... <flags>"
|
105
|
+
|
106
|
+
Returns a BuildArtifact, or None if parsing failed.
|
107
|
+
"""
|
108
|
+
return _parse(input_str)
|
109
|
+
|
110
|
+
|
111
|
+
class TokenFilter(ABC):
|
112
|
+
@abstractmethod
|
113
|
+
def extract(self, tokens: list[str]) -> str | None:
|
114
|
+
"""
|
115
|
+
Scan `tokens`, remove any tokens this filter is responsible for,
|
116
|
+
and return the extracted string (or None if not found/invalid).
|
117
|
+
"""
|
118
|
+
...
|
119
|
+
|
120
|
+
|
121
|
+
class TimestampFilter(TokenFilter):
|
122
|
+
def extract(self, tokens: list[str]) -> str | None:
|
123
|
+
if not tokens:
|
124
|
+
return None
|
125
|
+
candidate = tokens[0]
|
126
|
+
try:
|
127
|
+
_ = float(candidate)
|
128
|
+
return tokens.pop(0)
|
129
|
+
except ValueError:
|
130
|
+
return None
|
131
|
+
|
132
|
+
|
133
|
+
class InputArtifactFilter(TokenFilter):
|
134
|
+
def extract(self, tokens: list[str]) -> str | None:
|
135
|
+
for i, tok in enumerate(tokens):
|
136
|
+
if tok.endswith(".cpp") or tok.endswith(".h"):
|
137
|
+
return tokens.pop(i)
|
138
|
+
return None
|
139
|
+
|
140
|
+
|
141
|
+
class OutputArtifactFilter(TokenFilter):
|
142
|
+
def extract(self, tokens: list[str]) -> str | None:
|
143
|
+
for i, tok in enumerate(tokens):
|
144
|
+
if tok == "-o" and i + 1 < len(tokens):
|
145
|
+
tokens.pop(i) # drop '-o'
|
146
|
+
return tokens.pop(i) # drop & return artifact
|
147
|
+
return None
|
148
|
+
|
149
|
+
|
150
|
+
class ActionFilter(TokenFilter):
|
151
|
+
def extract(self, tokens: list[str]) -> str | None:
|
152
|
+
if "-c" in tokens:
|
153
|
+
return CompileOrLink.COMPILE.value
|
154
|
+
return CompileOrLink.LINK.value
|
155
|
+
|
156
|
+
|
157
|
+
def _parse(line: str) -> BuildArtifact | None:
|
158
|
+
tokens = line.strip().split()
|
159
|
+
if not tokens:
|
160
|
+
return None
|
161
|
+
|
162
|
+
# instantiate in the order we need them
|
163
|
+
filters: list[TokenFilter] = [
|
164
|
+
TimestampFilter(),
|
165
|
+
InputArtifactFilter(),
|
166
|
+
OutputArtifactFilter(),
|
167
|
+
ActionFilter(),
|
168
|
+
]
|
169
|
+
|
170
|
+
# apply each filter
|
171
|
+
raw_ts = filters[0].extract(tokens)
|
172
|
+
raw_in = filters[1].extract(tokens)
|
173
|
+
raw_out = filters[2].extract(tokens)
|
174
|
+
raw_act = filters[3].extract(tokens)
|
175
|
+
|
176
|
+
if raw_ts is None or raw_in is None or raw_act is None:
|
177
|
+
return None
|
178
|
+
|
179
|
+
# the rest of `tokens` are the flags
|
180
|
+
flags_str = " ".join(tokens)
|
181
|
+
h = zlib.adler32(flags_str.encode("utf-8"))
|
182
|
+
|
183
|
+
return BuildArtifact(
|
184
|
+
timestamp=float(raw_ts),
|
185
|
+
input_artifact=raw_in,
|
186
|
+
output_artifact=raw_out,
|
187
|
+
build_flags=flags_str,
|
188
|
+
compile_or_link=CompileOrLink(raw_act),
|
189
|
+
hash=h,
|
190
|
+
)
|
@@ -112,6 +112,7 @@ tests/unit/test_cli.py
|
|
112
112
|
tests/unit/test_compile_server.py
|
113
113
|
tests/unit/test_docker_linux_on_windows.py
|
114
114
|
tests/unit/test_embedded_data.py
|
115
|
+
tests/unit/test_experimental_cpp_filter.py
|
115
116
|
tests/unit/test_fetch_source_files.py
|
116
117
|
tests/unit/test_filechanger.py
|
117
118
|
tests/unit/test_http_server.py
|
@@ -12,8 +12,14 @@ fi
|
|
12
12
|
|
13
13
|
. ./activate
|
14
14
|
|
15
|
-
|
16
|
-
|
15
|
+
# --full in args, then rebuild the docker image
|
16
|
+
if [[ "$*" == *"--full"* ]]; then
|
17
|
+
echo "Rebuilding docker image"
|
18
|
+
echo "Rebuilding from local image"
|
19
|
+
uv run build_local_docker.py
|
20
|
+
fi
|
21
|
+
|
22
|
+
|
17
23
|
|
18
24
|
pytest -x -v -s --durations=0 tests/unit "$@"
|
19
25
|
# uv run pytest -n auto tests -v
|
@@ -0,0 +1,167 @@
|
|
1
|
+
"""
|
2
|
+
Unit test file.
|
3
|
+
"""
|
4
|
+
|
5
|
+
import unittest
|
6
|
+
|
7
|
+
from fastled.print_filter import BuildArtifact
|
8
|
+
|
9
|
+
_BUILD_CONFIG_SAMPLE = """
|
10
|
+
6.01 ccache em++ -o .pio/build/wasm/libbb9/fastled/FastLED.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/FastLED.cpp
|
11
|
+
6.02 ccache em++ -o .pio/build/wasm/libbb9/fastled/bitswap.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/bitswap.cpp
|
12
|
+
6.04 ccache em++ -o .pio/build/wasm/libbb9/fastled/cled_controller.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/cled_controller.cpp
|
13
|
+
6.05 ccache em++ -o .pio/build/wasm/libbb9/fastled/colorpalettes.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/colorpalettes.cpp
|
14
|
+
6.07 ccache em++ -o .pio/build/wasm/libbb9/fastled/crgb.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/crgb.cpp
|
15
|
+
6.07 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/allocator.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/allocator.cpp
|
16
|
+
6.08 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/audio.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/audio.cpp
|
17
|
+
6.09 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/bilinear_expansion.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/bilinear_expansion.cpp
|
18
|
+
6.10 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/blur.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/blur.cpp
|
19
|
+
6.10 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/bytestreammemory.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler
|
20
|
+
src/fl/bytestreammemory.cpp
|
21
|
+
6.12 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/colorutils.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/colorutils.cpp
|
22
|
+
6.12 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/downscale.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/downscale.cpp
|
23
|
+
6.13 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/engine_events.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/engine_events.cpp
|
24
|
+
6.14 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/fft.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/fft.cpp
|
25
|
+
6.16 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/fft_impl.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline
|
26
|
+
-DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/fft_impl.cpp
|
27
|
+
6.17 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/file_system.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/file_system.cpp
|
28
|
+
6.17 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/fill.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/fill.cpp
|
29
|
+
6.19 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/five_bit_hd_gamma.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/five_bit_hd_gamma.cpp
|
30
|
+
6.19 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/gradient.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline
|
31
|
+
-DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/gradient.cpp
|
32
|
+
6.20 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/json.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/json.cpp
|
33
|
+
6.20 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/leds.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/leds.cpp
|
34
|
+
6.21 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/line_simplification.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/line_simplification.cpp
|
35
|
+
6.22 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/noise_woryley.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/noise_woryley.cpp
|
36
|
+
6.23 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/ptr.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/ptr.cpp
|
37
|
+
6.24 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/raster_sparse.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/raster_sparse.cpp
|
38
|
+
6.24 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/rectangular_draw_buffer.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/rectangular_draw_buffer.cpp
|
39
|
+
6.26 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/screenmap.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/screenmap.cpp
|
40
|
+
6.26 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/sin32.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/sin32.cpp
|
41
|
+
6.27 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/str.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/str.cpp
|
42
|
+
6.27 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/strstream.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/strstream.cpp
|
43
|
+
6.28 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/stub_main.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/stub_main.cpp
|
44
|
+
6.29 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/tile2x2.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/tile2x2.cpp
|
45
|
+
6.29 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/time_alpha.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/time_alpha.cpp
|
46
|
+
6.30 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/transform.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/transform.cpp
|
47
|
+
6.31 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/type_traits.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/type_traits.cpp
|
48
|
+
6.32 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/ui.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/ui.cpp
|
49
|
+
6.33 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/wave_simulation.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type
|
50
|
+
-I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/wave_simulation.cpp
|
51
|
+
6.34 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/wave_simulation_real.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined
|
52
|
+
-fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/wave_simulation_real.cpp
|
53
|
+
6.34 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/xmap.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/xmap.cpp
|
54
|
+
6.35 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/xymap.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/xymap.cpp
|
55
|
+
6.36 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/xypath.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/xypath.cpp
|
56
|
+
6.36 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/xypath_impls.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/xypath_impls.cpp
|
57
|
+
6.37 ccache em++ -o .pio/build/wasm/libbb9/fastled/fl/xypath_renderer.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type
|
58
|
+
-I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fl/xypath_renderer.cpp
|
59
|
+
6.39 ccache em++ -o .pio/build/wasm/libbb9/fastled/fx/2d/blend.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline
|
60
|
+
-DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fx/2d/blend.cpp
|
61
|
+
6.40 ccache em++ -o .pio/build/wasm/libbb9/fastled/fx/2d/noisepalette.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type
|
62
|
+
-I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fx/2d/noisepalette.cpp
|
63
|
+
6.41 ccache em++ -o .pio/build/wasm/libbb9/fastled/fx/2d/scale_up.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fx/2d/scale_up.cpp
|
64
|
+
6.42 ccache em++ -o .pio/build/wasm/libbb9/fastled/fx/2d/wave.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fx/2d/wave.cpp
|
65
|
+
6.42 ccache em++ -o .pio/build/wasm/libbb9/fastled/fx/frame.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fx/frame.cpp
|
66
|
+
6.43 ccache em++ -o .pio/build/wasm/libbb9/fastled/fx/fx_engine.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fx/fx_engine.cpp
|
67
|
+
6.44 ccache em++ -o .pio/build/wasm/libbb9/fastled/fx/time.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fx/time.cpp
|
68
|
+
6.45 ccache em++ -o .pio/build/wasm/libbb9/fastled/fx/video.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fx/video.cpp
|
69
|
+
6.46 ccache em++ -o .pio/build/wasm/libbb9/fastled/fx/video/frame_interpolator.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fx/video/frame_interpolator.cpp
|
70
|
+
6.46 ccache em++ -o .pio/build/wasm/libbb9/fastled/fx/video/frame_tracker.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fx/video/frame_tracker.cpp
|
71
|
+
6.47 ccache em++ -o .pio/build/wasm/libbb9/fastled/fx/video/pixel_stream.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/fx/video/pixel_stream.cpp
|
72
|
+
6.48 ccache em++ -o .pio/build/wasm/libbb9/fastled/fx/video/video_impl.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler
|
73
|
+
src/fx/video/video_impl.cpp
|
74
|
+
6.49 ccache em++ -o .pio/build/wasm/libbb9/fastled/hsv2rgb.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/hsv2rgb.cpp
|
75
|
+
6.50 ccache em++ -o .pio/build/wasm/libbb9/fastled/lib8tion.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/lib8tion.cpp
|
76
|
+
6.51 ccache em++ -o .pio/build/wasm/libbb9/fastled/noise.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/noise.cpp
|
77
|
+
6.52 ccache em++ -o .pio/build/wasm/libbb9/fastled/platforms.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/platforms.cpp
|
78
|
+
6.53 ccache em++ -o .pio/build/wasm/libbb9/fastled/platforms/arm/k20/clockless_objectfled.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/platforms/arm/k20/clockless_objectfled.cpp
|
79
|
+
6.54 ccache em++ -o .pio/build/wasm/libbb9/fastled/platforms/esp/32/clockless_i2s_esp32s3.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/platforms/esp/32/clockless_i2s_esp32s3.cpp
|
80
|
+
6.55 ccache em++ -o .pio/build/wasm/libbb9/fastled/platforms/esp/32/i2s/i2s_esp32dev.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/platforms/esp/32/i2s/i2s_esp32dev.cpp
|
81
|
+
6.56 ccache em++ -o .pio/build/wasm/libbb9/fastled/platforms/esp/32/rmt_4/idf4_rmt.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/platforms/esp/32/rmt_4/idf4_rmt.cpp
|
82
|
+
6.57 ccache em++ -o .pio/build/wasm/libbb9/fastled/platforms/esp/32/rmt_4/idf4_rmt_impl.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/platforms/esp/32/rmt_4/idf4_rmt_impl.cpp
|
83
|
+
6.59 ccache em++ -o .pio/build/wasm/libbb9/fastled/platforms/esp/32/rmt_5/idf5_rmt.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/platforms/esp/32/rmt_5/idf5_rmt.cpp
|
84
|
+
6.60 ccache em++ -o .pio/build/wasm/libbb9/fastled/platforms/esp/32/rmt_5/strip_rmt.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/platforms/esp/32/rmt_5/strip_rmt.cpp
|
85
|
+
6.61 ccache em++ -o .pio/build/wasm/libbb9/fastled/platforms/esp/32/spi_ws2812/strip_spi.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/platforms/esp/32/spi_ws2812/strip_spi.cpp
|
86
|
+
6.62 ccache em++ -o .pio/build/wasm/libbb9/fastled/platforms/wasm/active_strip_data.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/platforms/wasm/active_strip_data.cpp
|
87
|
+
6.63 ccache em++ -o .pio/build/wasm/libbb9/fastled/platforms/wasm/compiler/Arduino.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/platforms/wasm/compiler/Arduino.cpp
|
88
|
+
6.64 ccache em++ -o .pio/build/wasm/libbb9/fastled/platforms/wasm/engine_listener.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/platforms/wasm/engine_listener.cpp
|
89
|
+
6.65 ccache em++ -o .pio/build/wasm/libbb9/fastled/platforms/wasm/fs_wasm.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/platforms/wasm/fs_wasm.cpp
|
90
|
+
6.66 ccache em++ -o .pio/build/wasm/libbb9/fastled/platforms/wasm/js.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/platforms/wasm/js.cpp
|
91
|
+
6.66 ccache em++ -o .pio/build/wasm/libbb9/fastled/platforms/wasm/timer.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/platforms/wasm/timer.cpp
|
92
|
+
6.67 ccache em++ -o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/audio.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined
|
93
|
+
-fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/platforms/wasm/ui/audio.cpp
|
94
|
+
6.69 ccache em++ -o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/button.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/platforms/wasm/ui/button.cpp
|
95
|
+
6.70 ccache em++ -o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/checkbox.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/platforms/wasm/ui/checkbox.cpp
|
96
|
+
6.71 ccache em++ -o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/description.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/platforms/wasm/ui/description.cpp
|
97
|
+
6.72 ccache em++ -o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/number_field.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/platforms/wasm/ui/number_field.cpp
|
98
|
+
6.73 ccache em++ -o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/slider.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/platforms/wasm/ui/slider.cpp
|
99
|
+
6.74 ccache em++ -o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/title.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined
|
100
|
+
-fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/platforms/wasm/ui/title.cpp
|
101
|
+
6.74 ccache em++ -o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/ui_internal.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/platforms/wasm/ui/ui_internal.cpp
|
102
|
+
6.76 ccache em++ -o .pio/build/wasm/libbb9/fastled/platforms/wasm/ui/ui_manager.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/platforms/wasm/ui/ui_manager.cpp
|
103
|
+
6.77 ccache em++ -o .pio/build/wasm/libbb9/fastled/power_mgt.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/power_mgt.cpp
|
104
|
+
6.78 ccache em++ -o .pio/build/wasm/libbb9/fastled/rgbw.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/rgbw.cpp
|
105
|
+
6.79 ccache em++ -o .pio/build/wasm/libbb9/fastled/sensors/digital_pin.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler
|
106
|
+
src/sensors/digital_pin.cpp
|
107
|
+
6.80 ccache em++ -o .pio/build/wasm/libbb9/fastled/sensors/pir.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline
|
108
|
+
-DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/sensors/pir.cpp
|
109
|
+
6.81 ccache em++ -o .pio/build/wasm/libbb9/fastled/simplex.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/simplex.cpp
|
110
|
+
6.83 ccache emcc -o .pio/build/wasm/libbb9/fastled/third_party/cq_kernel/cq_kernel.o -c -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/third_party/cq_kernel/cq_kernel.c
|
111
|
+
6.84 ccache emcc -o .pio/build/wasm/libbb9/fastled/third_party/cq_kernel/kiss_fft.o -c -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler
|
112
|
+
src/third_party/cq_kernel/kiss_fft.c
|
113
|
+
6.84 ccache emcc -o .pio/build/wasm/libbb9/fastled/third_party/cq_kernel/kiss_fftr.o -c -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/third_party/cq_kernel/kiss_fftr.c
|
114
|
+
6.85 ccache emcc -o .pio/build/wasm/libbb9/fastled/third_party/espressif/led_strip/src/led_strip_api.o -c -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/third_party/espressif/led_strip/src/led_strip_api.c
|
115
|
+
6.86 ccache emcc -o .pio/build/wasm/libbb9/fastled/third_party/espressif/led_strip/src/led_strip_rmt_dev.o -c -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/third_party/espressif/led_strip/src/led_strip_rmt_dev.c
|
116
|
+
6.87 ccache emcc -o .pio/build/wasm/libbb9/fastled/third_party/espressif/led_strip/src/led_strip_rmt_encoder.o -c -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/third_party/espressif/led_strip/src/led_strip_rmt_encoder.c
|
117
|
+
6.88 ccache emcc -o .pio/build/wasm/libbb9/fastled/third_party/espressif/led_strip/src/led_strip_spi_dev.o -c -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/third_party/espressif/led_strip/src/led_strip_spi_dev.c
|
118
|
+
6.88 ccache em++ -o .pio/build/wasm/libbb9/fastled/third_party/object_fled/src/OjectFLED.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/third_party/object_fled/src/OjectFLED.cpp
|
119
|
+
6.89 ccache em++ -o .pio/build/wasm/libbb9/fastled/transpose8x1_noinline.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/transpose8x1_noinline.cpp
|
120
|
+
6.90 ccache em++ -o .pio/build/wasm/libbb9/fastled/wiring.o -c -std=c++17 -Werror=bad-function-cast -Werror=cast-function-type -I/js/src/platforms/wasm/compiler -g -O0 -gsource-map=inline -ffile-prefix-map=/=drawfsource/ -fsanitize=address -fsanitize=undefined -fno-inline -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc/platforms/wasm/compiler src/wiring.cpp
|
121
|
+
6.92 ccache em++ -o .pio/build/wasm/src/XYPath.ino.o -c -std=c++17 -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc -Isrc/platforms/wasm/compiler src/XYPath.ino.cpp
|
122
|
+
6.94 ccache em++ -o .pio/build/wasm/src/src/wave.o -c -std=c++17 -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc -Isrc/platforms/wasm/compiler src/src/wave.cpp
|
123
|
+
6.94 ccache em++ -o .pio/build/wasm/src/src/xypaths.o -c -std=c++17 -DPLATFORMIO=60117 -DFASTLED_NO_PINMAP -DHAS_HARDWARE_PIN_SUPPORT -DFASTLED_FORCE_SOFTWARE_SPI -Isrc -Isrc -Isrc/platforms/wasm/compiler src/src/xypaths.cpp
|
124
|
+
"""
|
125
|
+
|
126
|
+
|
127
|
+
class ExperimentalPrintFitlerCppTester(unittest.TestCase):
|
128
|
+
"""Main tester class."""
|
129
|
+
|
130
|
+
# def test_print_filter_no_build(self) -> None:
|
131
|
+
# """Tests that a project can be filtered"""
|
132
|
+
# # Test the PrintFilter class
|
133
|
+
# cbc = ChunkedBuildConfigGrouper()
|
134
|
+
|
135
|
+
# print(f"\n###Filtering:\n\n{_BUILD_CONFIG_SAMPLE}")
|
136
|
+
# out = cbc.filter(_BUILD_CONFIG_SAMPLE)
|
137
|
+
# #print(out)
|
138
|
+
# print(f"###Filtered: result was {out}")
|
139
|
+
# print("Done")
|
140
|
+
|
141
|
+
def test_build_artifact_parsing(self) -> None:
|
142
|
+
"""Tests that a project can be filtered"""
|
143
|
+
# Test the PrintFilter class
|
144
|
+
lines = _BUILD_CONFIG_SAMPLE.splitlines()
|
145
|
+
lines = [line.strip() for line in lines if line.strip()]
|
146
|
+
last_hash: int | None = None
|
147
|
+
for line in lines:
|
148
|
+
ba = BuildArtifact.parse(line)
|
149
|
+
if ba is None:
|
150
|
+
print("!!")
|
151
|
+
continue
|
152
|
+
|
153
|
+
if last_hash is None or ba.hash != last_hash:
|
154
|
+
# print out the build flags
|
155
|
+
print("Found new build flags:")
|
156
|
+
print(ba.build_flags)
|
157
|
+
# now set the hash to the new value
|
158
|
+
last_hash = ba.hash
|
159
|
+
|
160
|
+
# print the time and build output
|
161
|
+
print(f"{ba.timestamp} {ba.output_artifact}")
|
162
|
+
|
163
|
+
print("Done")
|
164
|
+
|
165
|
+
|
166
|
+
if __name__ == "__main__":
|
167
|
+
unittest.main()
|
@@ -81,16 +81,18 @@ class FetchSourceFileTester(unittest.TestCase):
|
|
81
81
|
url,
|
82
82
|
timeout=100,
|
83
83
|
)
|
84
|
-
|
85
|
-
|
86
|
-
#
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
84
|
+
|
85
|
+
# Work in progress: get system include files.
|
86
|
+
# if resp.status_code != 200:
|
87
|
+
# raise Exception(f"Failed to fetch source file: {resp.status_code}")
|
88
|
+
# # error drawfsource/js/drawfsour
|
89
|
+
# url = f"http://localhost:{http_port}/drawfsource/js/drawfsource/emsdk/upstream/emscripten/cache/sysroot/include/ctype.h"
|
90
|
+
# resp = httpx.get(
|
91
|
+
# url,
|
92
|
+
# timeout=100,
|
93
|
+
# )
|
94
|
+
# if resp.status_code != 200:
|
95
|
+
# raise Exception(f"Failed to fetch source file: {resp.status_code}")
|
94
96
|
|
95
97
|
|
96
98
|
if __name__ == "__main__":
|
@@ -1,75 +0,0 @@
|
|
1
|
-
import re
|
2
|
-
from abc import ABC, abstractmethod
|
3
|
-
|
4
|
-
|
5
|
-
class PrintFilter(ABC):
|
6
|
-
"""Abstract base class for filtering text output."""
|
7
|
-
|
8
|
-
def __init__(self, echo: bool = True) -> None:
|
9
|
-
self.echo = echo
|
10
|
-
|
11
|
-
@abstractmethod
|
12
|
-
def filter(self, text: str) -> str:
|
13
|
-
"""Filter the text according to implementation-specific rules."""
|
14
|
-
pass
|
15
|
-
|
16
|
-
def print(self, text: str | bytes) -> str:
|
17
|
-
"""Prints the text to the console after filtering."""
|
18
|
-
if isinstance(text, bytes):
|
19
|
-
text = text.decode("utf-8")
|
20
|
-
text = self.filter(text)
|
21
|
-
if self.echo:
|
22
|
-
print(text, end="")
|
23
|
-
return text
|
24
|
-
|
25
|
-
|
26
|
-
def _handle_ino_cpp(line: str) -> str:
|
27
|
-
if ".ino.cpp" in line[0:30]:
|
28
|
-
# Extract the filename without path and extension
|
29
|
-
match = re.search(r"src/([^/]+)\.ino\.cpp", line)
|
30
|
-
if match:
|
31
|
-
filename = match.group(1)
|
32
|
-
# Replace with examples/Filename/Filename.ino format
|
33
|
-
line = line.replace(
|
34
|
-
f"src/{filename}.ino.cpp", f"examples/{filename}/{filename}.ino"
|
35
|
-
)
|
36
|
-
else:
|
37
|
-
# Fall back to simple extension replacement if regex doesn't match
|
38
|
-
line = line.replace(".ino.cpp", ".ino")
|
39
|
-
return line
|
40
|
-
|
41
|
-
|
42
|
-
def _handle_fastled_src(line: str) -> str:
|
43
|
-
return line.replace("fastled/src", "src")
|
44
|
-
|
45
|
-
|
46
|
-
class PrintFilterDefault(PrintFilter):
|
47
|
-
"""Provides default filtering for FastLED output."""
|
48
|
-
|
49
|
-
def filter(self, text: str) -> str:
|
50
|
-
return text
|
51
|
-
|
52
|
-
|
53
|
-
class PrintFilterFastled(PrintFilter):
|
54
|
-
"""Provides filtering for FastLED output so that source files match up with local names."""
|
55
|
-
|
56
|
-
def __init__(self, echo: bool = True) -> None:
|
57
|
-
super().__init__(echo)
|
58
|
-
self.build_started = False
|
59
|
-
|
60
|
-
def filter(self, text: str) -> str:
|
61
|
-
lines = text.splitlines()
|
62
|
-
out: list[str] = []
|
63
|
-
for line in lines:
|
64
|
-
## DEBUG DO NOT SUBMIT
|
65
|
-
# print(line)
|
66
|
-
if "# WASM is building" in line:
|
67
|
-
self.build_started = True
|
68
|
-
line = _handle_fastled_src(
|
69
|
-
line
|
70
|
-
) # Always convert fastled/src to src for file matchups.
|
71
|
-
if self.build_started or " error: " in line:
|
72
|
-
line = _handle_ino_cpp(line)
|
73
|
-
out.append(line)
|
74
|
-
text = "\n".join(out)
|
75
|
-
return text
|
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
|
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
|
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
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|