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 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.5"
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,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fastled
3
- Version: 1.3.5
3
+ Version: 1.3.6
4
4
  Summary: FastLED Wasm Compiler
5
5
  Home-page: https://github.com/zackees/fastled-wasm
6
6
  Maintainer: Zachary Vorhies
@@ -1,6 +1,7 @@
1
1
  fastled/__init__.py,sha256=YLikXGRWKlKAqj7bpvGmJLejGTFF-FC1lv2z1jwRinA,6852
2
- fastled/__version__.py,sha256=6xEse_JpiXmulItwNgtYrtiaPTafPLvqPwVUn5wjXJ8,372
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=teSXmK4iHAxminn91bRe6ORC7fqhW0qhujSW1RuQOpk,9938
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=flMIgJkud7S1GGWK_gfTPzq-0ESoemWtc_ktalVGuXw,4925
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.5.dist-info/licenses/LICENSE,sha256=b6pOoifSXiUaz_lDS84vWlG3fr4yUKwB8fzkrH9R8bQ,1064
39
- fastled-1.3.5.dist-info/METADATA,sha256=_Q-LspcjyjrIlaoUBtXD7IYtulZi92t49J2c6eX581c,30049
40
- fastled-1.3.5.dist-info/WHEEL,sha256=Nw36Djuh_5VDukK0H78QzOX-_FQEo6V37m3nkm96gtU,91
41
- fastled-1.3.5.dist-info/entry_points.txt,sha256=RCwmzCSOS4-C2i9EziANq7Z2Zb4KFnEMR1FQC0bBwAw,101
42
- fastled-1.3.5.dist-info/top_level.txt,sha256=Bbv5kpJpZhWNCvDF4K0VcvtBSDMa8B7PTOrZa9CezHY,8
43
- fastled-1.3.5.dist-info/RECORD,,
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,,