fastled 1.1.22__py2.py3-none-any.whl → 1.1.24__py2.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/__init__.py +1 -1
- fastled/app.py +51 -36
- fastled/client_server.py +7 -6
- fastled/docker_manager.py +532 -526
- fastled/keyboard.py +8 -6
- fastled/select_sketch_directory.py +1 -1
- fastled/spinner.py +34 -0
- {fastled-1.1.22.dist-info → fastled-1.1.24.dist-info}/METADATA +5 -2
- {fastled-1.1.22.dist-info → fastled-1.1.24.dist-info}/RECORD +13 -12
- {fastled-1.1.22.dist-info → fastled-1.1.24.dist-info}/LICENSE +0 -0
- {fastled-1.1.22.dist-info → fastled-1.1.24.dist-info}/WHEEL +0 -0
- {fastled-1.1.22.dist-info → fastled-1.1.24.dist-info}/entry_points.txt +0 -0
- {fastled-1.1.22.dist-info → fastled-1.1.24.dist-info}/top_level.txt +0 -0
fastled/__init__.py
CHANGED
fastled/app.py
CHANGED
@@ -70,6 +70,7 @@ def parse_args() -> argparse.Namespace:
|
|
70
70
|
)
|
71
71
|
parser.add_argument(
|
72
72
|
"--update",
|
73
|
+
"--upgrade",
|
73
74
|
action="store_true",
|
74
75
|
help="Update the wasm compiler (if necessary) before running",
|
75
76
|
)
|
@@ -101,45 +102,51 @@ def parse_args() -> argparse.Namespace:
|
|
101
102
|
cwd_is_fastled = looks_like_fastled_repo(Path(os.getcwd()))
|
102
103
|
|
103
104
|
args = parser.parse_args()
|
104
|
-
if args.update:
|
105
|
-
args.
|
106
|
-
|
107
|
-
args.auto_update = False
|
108
|
-
else:
|
109
|
-
args.auto_update = None
|
110
|
-
|
111
|
-
if not cwd_is_fastled and not args.localhost and not args.web and not args.server:
|
112
|
-
print(f"Using web compiler at {DEFAULT_URL}")
|
113
|
-
args.web = DEFAULT_URL
|
114
|
-
if cwd_is_fastled and not args.web and not args.server:
|
115
|
-
print("Forcing --local mode because we are in the FastLED repo")
|
116
|
-
args.localhost = True
|
117
|
-
if args.localhost:
|
118
|
-
args.web = "localhost"
|
119
|
-
if args.interactive and not args.server:
|
120
|
-
print("--interactive forces --server mode")
|
121
|
-
args.server = True
|
122
|
-
if args.directory is None and not args.server:
|
123
|
-
# does current directory look like a sketch?
|
124
|
-
maybe_sketch_dir = Path(os.getcwd())
|
125
|
-
if looks_like_sketch_directory(maybe_sketch_dir):
|
126
|
-
args.directory = str(maybe_sketch_dir)
|
105
|
+
if not args.update:
|
106
|
+
if args.no_auto_updates:
|
107
|
+
args.auto_update = False
|
127
108
|
else:
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
109
|
+
args.auto_update = None
|
110
|
+
|
111
|
+
if (
|
112
|
+
not cwd_is_fastled
|
113
|
+
and not args.localhost
|
114
|
+
and not args.web
|
115
|
+
and not args.server
|
116
|
+
):
|
117
|
+
print(f"Using web compiler at {DEFAULT_URL}")
|
118
|
+
args.web = DEFAULT_URL
|
119
|
+
if cwd_is_fastled and not args.web and not args.server:
|
120
|
+
print("Forcing --local mode because we are in the FastLED repo")
|
121
|
+
args.localhost = True
|
122
|
+
if args.localhost:
|
123
|
+
args.web = "localhost"
|
124
|
+
if args.interactive and not args.server:
|
125
|
+
print("--interactive forces --server mode")
|
126
|
+
args.server = True
|
127
|
+
if args.directory is None and not args.server:
|
128
|
+
# does current directory look like a sketch?
|
129
|
+
maybe_sketch_dir = Path(os.getcwd())
|
130
|
+
if looks_like_sketch_directory(maybe_sketch_dir):
|
131
|
+
args.directory = str(maybe_sketch_dir)
|
133
132
|
else:
|
134
|
-
|
135
|
-
|
133
|
+
sketch_directories = find_sketch_directories(maybe_sketch_dir)
|
134
|
+
selected_dir = select_sketch_directory(
|
135
|
+
sketch_directories, cwd_is_fastled
|
136
136
|
)
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
137
|
+
if selected_dir:
|
138
|
+
print(f"Using sketch directory: {selected_dir}")
|
139
|
+
args.directory = selected_dir
|
140
|
+
else:
|
141
|
+
print(
|
142
|
+
"\nYou either need to specify a sketch directory or run in --server mode."
|
143
|
+
)
|
144
|
+
sys.exit(1)
|
145
|
+
elif args.directory is not None and os.path.isfile(args.directory):
|
146
|
+
dir_path = Path(args.directory).parent
|
147
|
+
if looks_like_sketch_directory(dir_path):
|
148
|
+
print(f"Using sketch directory: {dir_path}")
|
149
|
+
args.directory = str(dir_path)
|
143
150
|
|
144
151
|
return args
|
145
152
|
|
@@ -167,6 +174,13 @@ def run_server(args: argparse.Namespace) -> int:
|
|
167
174
|
|
168
175
|
def main() -> int:
|
169
176
|
args = parse_args()
|
177
|
+
if args.update:
|
178
|
+
# Force auto_update to ensure update check happens
|
179
|
+
compile_server = CompileServer(interactive=False, auto_updates=True)
|
180
|
+
compile_server.stop()
|
181
|
+
print("Finished updating.")
|
182
|
+
return 0
|
183
|
+
|
170
184
|
if args.server:
|
171
185
|
print("Running in server only mode.")
|
172
186
|
return run_server(args)
|
@@ -178,6 +192,7 @@ def main() -> int:
|
|
178
192
|
if __name__ == "__main__":
|
179
193
|
try:
|
180
194
|
os.chdir("../fastled")
|
195
|
+
sys.argv.append("--upgrade")
|
181
196
|
sys.exit(main())
|
182
197
|
except KeyboardInterrupt:
|
183
198
|
print("\nExiting from main...")
|
fastled/client_server.py
CHANGED
@@ -268,14 +268,15 @@ def run_client_server(args: argparse.Namespace) -> int:
|
|
268
268
|
space_bar_pressed = SpaceBarWatcher.watch_space_bar_pressed(
|
269
269
|
timeout=1.0
|
270
270
|
)
|
271
|
-
|
272
|
-
|
273
|
-
|
274
|
-
if space_bar_pressed or file_had_changes:
|
271
|
+
file_changes = source_code_watcher.get_all_changes()
|
272
|
+
|
273
|
+
if space_bar_pressed or file_changes:
|
275
274
|
if space_bar_pressed:
|
276
275
|
print("Space bar pressed, triggering recompile...")
|
277
|
-
elif
|
278
|
-
print(
|
276
|
+
elif file_changes:
|
277
|
+
print(
|
278
|
+
f"Changes detected in {','.join(file_changes)}, triggering recompile..."
|
279
|
+
)
|
279
280
|
last_compiled_result = compile_function(
|
280
281
|
last_hash_value=None
|
281
282
|
)
|