fastled 1.1.22__py2.py3-none-any.whl → 1.1.23__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 CHANGED
@@ -1,3 +1,3 @@
1
1
  """FastLED Wasm Compiler package."""
2
2
 
3
- __version__ = "1.1.22"
3
+ __version__ = "1.1.23"
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.auto_update = True
106
- elif args.no_auto_updates:
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
- sketch_directories = find_sketch_directories(maybe_sketch_dir)
129
- selected_dir = select_sketch_directory(sketch_directories, cwd_is_fastled)
130
- if selected_dir:
131
- print(f"Using sketch directory: {selected_dir}")
132
- args.directory = selected_dir
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
- print(
135
- "\nYou either need to specify a sketch directory or run in --server mode."
133
+ sketch_directories = find_sketch_directories(maybe_sketch_dir)
134
+ selected_dir = select_sketch_directory(
135
+ sketch_directories, cwd_is_fastled
136
136
  )
137
- sys.exit(1)
138
- elif args.directory is not None and os.path.isfile(args.directory):
139
- dir_path = Path(args.directory).parent
140
- if looks_like_sketch_directory(dir_path):
141
- print(f"Using sketch directory: {dir_path}")
142
- args.directory = str(dir_path)
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
- file_had_changes = (
272
- len(source_code_watcher.get_all_changes()) > 0
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 file_had_changes:
278
- print("Changes detected, triggering recompile...")
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
  )