fastled 1.3.5__py3-none-any.whl → 1.3.6__py3-none-any.whl
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/__version__.py +1 -1
- fastled/args.py +89 -0
- fastled/parse_args.py +1 -1
- fastled/types.py +1 -88
- {fastled-1.3.5.dist-info → fastled-1.3.6.dist-info}/METADATA +1 -1
- {fastled-1.3.5.dist-info → fastled-1.3.6.dist-info}/RECORD +10 -9
- {fastled-1.3.5.dist-info → fastled-1.3.6.dist-info}/WHEEL +0 -0
- {fastled-1.3.5.dist-info → fastled-1.3.6.dist-info}/entry_points.txt +0 -0
- {fastled-1.3.5.dist-info → fastled-1.3.6.dist-info}/licenses/LICENSE +0 -0
- {fastled-1.3.5.dist-info → fastled-1.3.6.dist-info}/top_level.txt +0 -0
fastled/__version__.py
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# IMPORTANT! There's a bug in github which will REJECT any version update
|
2
2
|
# that has any other change in the repo. Please bump the version as the
|
3
3
|
# ONLY change in a commit, or else the pypi update and the release will fail.
|
4
|
-
__version__ = "1.3.
|
4
|
+
__version__ = "1.3.6"
|
5
5
|
|
6
6
|
__version_url_latest__ = "https://raw.githubusercontent.com/zackees/fastled-wasm/refs/heads/main/src/fastled/__version__.py"
|
fastled/args.py
ADDED
@@ -0,0 +1,89 @@
|
|
1
|
+
import argparse
|
2
|
+
from dataclasses import dataclass
|
3
|
+
from pathlib import Path
|
4
|
+
|
5
|
+
|
6
|
+
@dataclass
|
7
|
+
class Args:
|
8
|
+
directory: Path | None
|
9
|
+
init: bool | str
|
10
|
+
just_compile: bool
|
11
|
+
web: str | None
|
12
|
+
interactive: bool
|
13
|
+
profile: bool
|
14
|
+
force_compile: bool
|
15
|
+
auto_update: bool | None
|
16
|
+
update: bool
|
17
|
+
localhost: bool
|
18
|
+
build: bool
|
19
|
+
server: bool
|
20
|
+
purge: bool
|
21
|
+
debug: bool
|
22
|
+
quick: bool
|
23
|
+
release: bool
|
24
|
+
ram_disk_size: str # suffixed liked "25mb" or "1gb"
|
25
|
+
|
26
|
+
@staticmethod
|
27
|
+
def from_namespace(args: argparse.Namespace) -> "Args":
|
28
|
+
assert isinstance(
|
29
|
+
args.directory, str | None
|
30
|
+
), f"expected str | None, got {type(args.directory)}"
|
31
|
+
assert isinstance(
|
32
|
+
args.init, bool | str | None
|
33
|
+
), f"expected bool, got {type(args.init)}"
|
34
|
+
assert isinstance(
|
35
|
+
args.just_compile, bool
|
36
|
+
), f"expected bool, got {type(args.just_compile)}"
|
37
|
+
assert isinstance(
|
38
|
+
args.web, str | None
|
39
|
+
), f"expected str | None, got {type(args.web)}"
|
40
|
+
assert isinstance(
|
41
|
+
args.interactive, bool
|
42
|
+
), f"expected bool, got {type(args.interactive)}"
|
43
|
+
assert isinstance(
|
44
|
+
args.profile, bool
|
45
|
+
), f"expected bool, got {type(args.profile)}"
|
46
|
+
assert isinstance(
|
47
|
+
args.force_compile, bool
|
48
|
+
), f"expected bool, got {type(args.force_compile)}"
|
49
|
+
assert isinstance(
|
50
|
+
args.no_auto_updates, bool | None
|
51
|
+
), f"expected bool | None, got {type(args.no_auto_updates)}"
|
52
|
+
assert isinstance(args.update, bool), f"expected bool, got {type(args.update)}"
|
53
|
+
assert isinstance(
|
54
|
+
args.localhost, bool
|
55
|
+
), f"expected bool, got {type(args.localhost)}"
|
56
|
+
assert isinstance(args.build, bool), f"expected bool, got {type(args.build)}"
|
57
|
+
assert isinstance(args.server, bool), f"expected bool, got {type(args.server)}"
|
58
|
+
assert isinstance(args.purge, bool), f"expected bool, got {type(args.purge)}"
|
59
|
+
assert isinstance(args.debug, bool), f"expected bool, got {type(args.debug)}"
|
60
|
+
assert isinstance(args.quick, bool), f"expected bool, got {type(args.quick)}"
|
61
|
+
assert isinstance(
|
62
|
+
args.release, bool
|
63
|
+
), f"expected bool, got {type(args.release)}"
|
64
|
+
init: bool | str = False
|
65
|
+
if args.init is None:
|
66
|
+
init = False
|
67
|
+
elif isinstance(args.init, bool):
|
68
|
+
init = args.init
|
69
|
+
elif isinstance(args.init, str):
|
70
|
+
init = args.init
|
71
|
+
return Args(
|
72
|
+
directory=Path(args.directory) if args.directory else None,
|
73
|
+
init=init,
|
74
|
+
just_compile=args.just_compile,
|
75
|
+
web=args.web,
|
76
|
+
interactive=args.interactive,
|
77
|
+
profile=args.profile,
|
78
|
+
force_compile=args.force_compile,
|
79
|
+
auto_update=not args.no_auto_updates,
|
80
|
+
update=args.update,
|
81
|
+
localhost=args.localhost,
|
82
|
+
build=args.build,
|
83
|
+
server=args.server,
|
84
|
+
purge=args.purge,
|
85
|
+
debug=args.debug,
|
86
|
+
quick=args.quick,
|
87
|
+
release=args.release,
|
88
|
+
ram_disk_size=args.ram_disk_size,
|
89
|
+
)
|
fastled/parse_args.py
CHANGED
@@ -3,6 +3,7 @@ import os
|
|
3
3
|
import sys
|
4
4
|
from pathlib import Path
|
5
5
|
|
6
|
+
from fastled.args import Args
|
6
7
|
from fastled.project_init import project_init
|
7
8
|
from fastled.select_sketch_directory import select_sketch_directory
|
8
9
|
from fastled.settings import DEFAULT_URL, IMAGE_NAME
|
@@ -11,7 +12,6 @@ from fastled.sketch import (
|
|
11
12
|
looks_like_fastled_repo,
|
12
13
|
looks_like_sketch_directory,
|
13
14
|
)
|
14
|
-
from fastled.types import Args
|
15
15
|
|
16
16
|
|
17
17
|
def _find_fastled_repo(start: Path) -> Path | None:
|
fastled/types.py
CHANGED
@@ -1,98 +1,11 @@
|
|
1
|
-
import argparse
|
2
1
|
from dataclasses import dataclass
|
3
2
|
from enum import Enum
|
4
|
-
from pathlib import Path
|
5
3
|
from typing import Any
|
6
4
|
|
5
|
+
from fastled.args import Args
|
7
6
|
from fastled.print_filter import PrintFilterFastled
|
8
7
|
|
9
8
|
|
10
|
-
@dataclass
|
11
|
-
class Args:
|
12
|
-
directory: Path | None
|
13
|
-
init: bool | str
|
14
|
-
just_compile: bool
|
15
|
-
web: str | None
|
16
|
-
interactive: bool
|
17
|
-
profile: bool
|
18
|
-
force_compile: bool
|
19
|
-
auto_update: bool | None
|
20
|
-
update: bool
|
21
|
-
localhost: bool
|
22
|
-
build: bool
|
23
|
-
server: bool
|
24
|
-
purge: bool
|
25
|
-
debug: bool
|
26
|
-
quick: bool
|
27
|
-
release: bool
|
28
|
-
ram_disk_size: str # suffixed liked "25mb" or "1gb"
|
29
|
-
|
30
|
-
@staticmethod
|
31
|
-
def from_namespace(args: argparse.Namespace) -> "Args":
|
32
|
-
assert isinstance(
|
33
|
-
args.directory, str | None
|
34
|
-
), f"expected str | None, got {type(args.directory)}"
|
35
|
-
assert isinstance(
|
36
|
-
args.init, bool | str | None
|
37
|
-
), f"expected bool, got {type(args.init)}"
|
38
|
-
assert isinstance(
|
39
|
-
args.just_compile, bool
|
40
|
-
), f"expected bool, got {type(args.just_compile)}"
|
41
|
-
assert isinstance(
|
42
|
-
args.web, str | None
|
43
|
-
), f"expected str | None, got {type(args.web)}"
|
44
|
-
assert isinstance(
|
45
|
-
args.interactive, bool
|
46
|
-
), f"expected bool, got {type(args.interactive)}"
|
47
|
-
assert isinstance(
|
48
|
-
args.profile, bool
|
49
|
-
), f"expected bool, got {type(args.profile)}"
|
50
|
-
assert isinstance(
|
51
|
-
args.force_compile, bool
|
52
|
-
), f"expected bool, got {type(args.force_compile)}"
|
53
|
-
assert isinstance(
|
54
|
-
args.no_auto_updates, bool | None
|
55
|
-
), f"expected bool | None, got {type(args.no_auto_updates)}"
|
56
|
-
assert isinstance(args.update, bool), f"expected bool, got {type(args.update)}"
|
57
|
-
assert isinstance(
|
58
|
-
args.localhost, bool
|
59
|
-
), f"expected bool, got {type(args.localhost)}"
|
60
|
-
assert isinstance(args.build, bool), f"expected bool, got {type(args.build)}"
|
61
|
-
assert isinstance(args.server, bool), f"expected bool, got {type(args.server)}"
|
62
|
-
assert isinstance(args.purge, bool), f"expected bool, got {type(args.purge)}"
|
63
|
-
assert isinstance(args.debug, bool), f"expected bool, got {type(args.debug)}"
|
64
|
-
assert isinstance(args.quick, bool), f"expected bool, got {type(args.quick)}"
|
65
|
-
assert isinstance(
|
66
|
-
args.release, bool
|
67
|
-
), f"expected bool, got {type(args.release)}"
|
68
|
-
init: bool | str = False
|
69
|
-
if args.init is None:
|
70
|
-
init = False
|
71
|
-
elif isinstance(args.init, bool):
|
72
|
-
init = args.init
|
73
|
-
elif isinstance(args.init, str):
|
74
|
-
init = args.init
|
75
|
-
return Args(
|
76
|
-
directory=Path(args.directory) if args.directory else None,
|
77
|
-
init=init,
|
78
|
-
just_compile=args.just_compile,
|
79
|
-
web=args.web,
|
80
|
-
interactive=args.interactive,
|
81
|
-
profile=args.profile,
|
82
|
-
force_compile=args.force_compile,
|
83
|
-
auto_update=not args.no_auto_updates,
|
84
|
-
update=args.update,
|
85
|
-
localhost=args.localhost,
|
86
|
-
build=args.build,
|
87
|
-
server=args.server,
|
88
|
-
purge=args.purge,
|
89
|
-
debug=args.debug,
|
90
|
-
quick=args.quick,
|
91
|
-
release=args.release,
|
92
|
-
ram_disk_size=args.ram_disk_size,
|
93
|
-
)
|
94
|
-
|
95
|
-
|
96
9
|
@dataclass
|
97
10
|
class CompileResult:
|
98
11
|
success: bool
|
@@ -1,6 +1,7 @@
|
|
1
1
|
fastled/__init__.py,sha256=YLikXGRWKlKAqj7bpvGmJLejGTFF-FC1lv2z1jwRinA,6852
|
2
|
-
fastled/__version__.py,sha256=
|
2
|
+
fastled/__version__.py,sha256=7a4fREDgqwqn8rf_S0Gr_RG5Ws6Mlha1HODKaTjPHU8,372
|
3
3
|
fastled/app.py,sha256=1N5Q486YccaWCRqnaI2F04ktL64NAVjAN6i4c-zgm1o,5818
|
4
|
+
fastled/args.py,sha256=E-CElEDTqRrI0wDyu-nt9Rj0FiTG6y-Xq_w91Dt0J_g,3186
|
4
5
|
fastled/cli.py,sha256=5EBsb02ueFUjlgrlg0GMdj3e5nnHVhvofmYyQRaw8uM,565
|
5
6
|
fastled/cli_test.py,sha256=qJB9yLRFR3OwOwdIWSQ0fQsWLnA37v5pDccufiP_hTs,512
|
6
7
|
fastled/cli_test_interactive.py,sha256=BjNhveZOk5aCffHbcrxPQQjWmAuj4ClVKKcKX5eY6yM,542
|
@@ -13,7 +14,7 @@ fastled/keyboard.py,sha256=UTAsqCn1UMYnB8YDzENiLTj4GeL45tYfEcO7_5fLFEg,3556
|
|
13
14
|
fastled/keyz.py,sha256=LO-8m_7CpNDiZLM-FXhQ30f9gN1bUYz5lOsUPTIbI-c,4020
|
14
15
|
fastled/live_client.py,sha256=yoAul8tVgbbPf1oEC79SUZSHkLECxlrXxgWR9XaBIp4,2957
|
15
16
|
fastled/open_browser.py,sha256=DFyMrc1qic4Go7eLNPqMaLuMvTaE73NixdfSKV0yyp8,3709
|
16
|
-
fastled/parse_args.py,sha256=
|
17
|
+
fastled/parse_args.py,sha256=EnJa0FZi8RPtIzldK-CJRJvQhl83rCzz-oQrIDok2e8,9937
|
17
18
|
fastled/paths.py,sha256=VsPmgu0lNSCFOoEC0BsTYzDygXqy15AHUfN-tTuzDZA,99
|
18
19
|
fastled/print_filter.py,sha256=oomBjrouWNPCgJY2guCpljTijFvNKRBVbipDrxIsszA,7426
|
19
20
|
fastled/project_init.py,sha256=bBt4DwmW5hZkm9ICt9Qk-0Nr_0JQM7icCgH5Iv-bCQs,3984
|
@@ -24,7 +25,7 @@ fastled/settings.py,sha256=dUVyJ8Mtprg0RwaS6oMWP8jBhr4C3R8fu4Hdx_Z1lCM,577
|
|
24
25
|
fastled/sketch.py,sha256=Ftbh55Nt-p4hmPuPpj8Q9HrMzvnUazhoG_q9FHcxkns,3473
|
25
26
|
fastled/spinner.py,sha256=VHxmvB92P0Z_zYxRajb5HiNmkHHvZ5dG7hKtZltzpcs,867
|
26
27
|
fastled/string_diff.py,sha256=NbtYxvBFxTUdmTpMLizlgZj2ULJ-7etj72GBdWDTGws,2496
|
27
|
-
fastled/types.py,sha256=
|
28
|
+
fastled/types.py,sha256=m7df4YxPPxl9GcfTAr_Lc9wSCE3fVzpcQf9-X0cMYuQ,1803
|
28
29
|
fastled/util.py,sha256=hw3gxS1qGc5LL_QN88_VIjut6T0-61ImDQpxGp11DXY,1189
|
29
30
|
fastled/version.py,sha256=TpBMiEVdO3_sUZEu6wmwN8Q4AgX2BiCxStCsnPKh6E0,1209
|
30
31
|
fastled/web_compile.py,sha256=R159Od1VqeXTW6y3rQY0_P9f0CJYbPuBiMLqb-zBCUQ,11526
|
@@ -35,9 +36,9 @@ fastled/site/build.py,sha256=2YKU_UWKlJdGnjdbAbaL0co6kceFMSTVYwH1KCmgPZA,13987
|
|
35
36
|
fastled/site/examples.py,sha256=s6vj2zJc6BfKlnbwXr1QWY1mzuDBMt6j5MEBOWjO_U8,155
|
36
37
|
fastled/test/can_run_local_docker_tests.py,sha256=LEuUbHctRhNNFWcvnz2kEGmjDJeXO4c3kNpizm3yVJs,400
|
37
38
|
fastled/test/examples.py,sha256=GfaHeY1E8izBl6ZqDVjz--RHLyVR4NRnQ5pBesCFJFY,1673
|
38
|
-
fastled-1.3.
|
39
|
-
fastled-1.3.
|
40
|
-
fastled-1.3.
|
41
|
-
fastled-1.3.
|
42
|
-
fastled-1.3.
|
43
|
-
fastled-1.3.
|
39
|
+
fastled-1.3.6.dist-info/licenses/LICENSE,sha256=b6pOoifSXiUaz_lDS84vWlG3fr4yUKwB8fzkrH9R8bQ,1064
|
40
|
+
fastled-1.3.6.dist-info/METADATA,sha256=ovogtrnJaVuIEeBvSWcCwu2-T8X0MsyWDN-96Prpvf0,30049
|
41
|
+
fastled-1.3.6.dist-info/WHEEL,sha256=Nw36Djuh_5VDukK0H78QzOX-_FQEo6V37m3nkm96gtU,91
|
42
|
+
fastled-1.3.6.dist-info/entry_points.txt,sha256=RCwmzCSOS4-C2i9EziANq7Z2Zb4KFnEMR1FQC0bBwAw,101
|
43
|
+
fastled-1.3.6.dist-info/top_level.txt,sha256=Bbv5kpJpZhWNCvDF4K0VcvtBSDMa8B7PTOrZa9CezHY,8
|
44
|
+
fastled-1.3.6.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|