[Other issue]: Can't build the rmf workspace

Before proceeding, is there an existing issue or discussion for this?

[X] I have done a search for similar issues and discussions.

Description
Running ROS humble on Ubuntu 22.04
Starting >>> rmf_demos_dashboard_resources
Starting >>> rmf_demos_assets
Starting >>> rmf_demos_fleet_adapter
Starting >>> rmf_demos_maps
Starting >>> rmf_demos_tasks
Starting >>> rmf_demos_bridges
Finished <<< rmf_demos_assets [3.16s]
Finished <<< rmf_demos_dashboard_resources [3.27s]
Starting >>> rmf_demos_panel
--- stderr: rmf_demos_maps
Traceback (most recent call last):
File "/opt/ros/humble/lib/rmf_building_map_tools/building_map_generator", line 33, in
sys.exit(load_entry_point('rmf-building-map-tools==1.6.2', 'console_scripts', 'building_map_generator')())
File "/opt/ros/humble/lib/python3.10/site-packages/building_map_generator/building_map_generator.py", line 24, in main
g.generate_ignition_sdf(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/generator.py", line 72, in generate_ignition_sdf
self.generate_sdf(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/generator.py", line 41, in generate_sdf
building.generate_sdf_models(output_models_dir)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/building.py", line 537, in generate_sdf_models
level.generate_sdf_model(model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 358, in generate_sdf_model
self.write_sdf(model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 343, in write_sdf
self.generate_floors(model_ele, model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 317, in generate_floors
floor.generate(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/floor.py", line 231, in generate
self.triangulate_polygon(self.polygon, triangles)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/floor.py", line 144, in triangulate_polygon
for item in geom:
TypeError: 'GeometryCollection' object is not iterable
Traceback (most recent call last):
File "/opt/ros/humble/lib/rmf_building_map_tools/building_map_generator", line 33, in
sys.exit(load_entry_point('rmf-building-map-tools==1.6.2', 'console_scripts', 'building_map_generator')())
File "/opt/ros/humble/lib/python3.10/site-packages/building_map_generator/building_map_generator.py", line 16, in main
g.generate_gazebo_sdf(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/generator.py", line 59, in generate_gazebo_sdf
self.generate_sdf(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/generator.py", line 41, in generate_sdf
building.generate_sdf_models(output_models_dir)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/building.py", line 537, in generate_sdf_models
level.generate_sdf_model(model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 358, in generate_sdf_model
self.write_sdf(model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 343, in write_sdf
self.generate_floors(model_ele, model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 317, in generate_floors
floor.generate(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/floor.py", line 231, in generate
self.triangulate_polygon(self.polygon, triangles)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/floor.py", line 144, in triangulate_polygon
for item in geom:
TypeError: 'GeometryCollection' object is not iterable
Traceback (most recent call last):
File "/opt/ros/humble/lib/rmf_building_map_tools/building_map_generator", line 33, in
sys.exit(load_entry_point('rmf-building-map-tools==1.6.2', 'console_scripts', 'building_map_generator')())
File "/opt/ros/humble/lib/python3.10/site-packages/building_map_generator/building_map_generator.py", line 16, in main
g.generate_gazebo_sdf(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/generator.py", line 59, in generate_gazebo_sdf
self.generate_sdf(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/generator.py", line 41, in generate_sdf
building.generate_sdf_models(output_models_dir)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/building.py", line 537, in generate_sdf_models
level.generate_sdf_model(model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 358, in generate_sdf_model
self.write_sdf(model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 343, in write_sdf
self.generate_floors(model_ele, model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 317, in generate_floors
floor.generate(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/floor.py", line 231, in generate
self.triangulate_polygon(self.polygon, triangles)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/floor.py", line 144, in triangulate_polygon
for item in geom:
TypeError: 'GeometryCollection' object is not iterable
gmake[2]: *** [CMakeFiles/generate_battle_royale_crowdsim_ign.dir/build.make:77: maps/battle_royale_ign/battle_royale.world] Erro 1
gmake[1]: *** [CMakeFiles/Makefile2:281: CMakeFiles/generate_battle_royale_crowdsim_ign.dir/all] Erro 2
gmake[1]: ** Esperando que outros processos terminem.
gmake[2]: *** [CMakeFiles/generate_battle_royale_crowdsim.dir/build.make:77: maps/battle_royale/battle_royale.world] Erro 1
gmake[1]: *** [CMakeFiles/Makefile2:255: CMakeFiles/generate_battle_royale_crowdsim.dir/all] Erro 2
gmake[2]: *** [CMakeFiles/generate_office_crowdsim.dir/build.make:77: maps/office/office.world] Erro 1
gmake[1]: *** [CMakeFiles/Makefile2:567: CMakeFiles/generate_office_crowdsim.dir/all] Erro 2
Traceback (most recent call last):
File "/opt/ros/humble/lib/rmf_building_map_tools/building_map_generator", line 33, in
sys.exit(load_entry_point('rmf-building-map-tools==1.6.2', 'console_scripts', 'building_map_generator')())
File "/opt/ros/humble/lib/python3.10/site-packages/building_map_generator/building_map_generator.py", line 24, in main
g.generate_ignition_sdf(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/generator.py", line 72, in generate_ignition_sdf
self.generate_sdf(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/generator.py", line 41, in generate_sdf
building.generate_sdf_models(output_models_dir)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/building.py", line 537, in generate_sdf_models
level.generate_sdf_model(model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 358, in generate_sdf_model
self.write_sdf(model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 343, in write_sdf
self.generate_floors(model_ele, model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 317, in generate_floors
floor.generate(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/floor.py", line 231, in generate
self.triangulate_polygon(self.polygon, triangles)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/floor.py", line 144, in triangulate_polygon
for item in geom:
TypeError: 'GeometryCollection' object is not iterable
Traceback (most recent call last):
File "/opt/ros/humble/lib/rmf_building_map_tools/building_map_generator", line 33, in
sys.exit(load_entry_point('rmf-building-map-tools==1.6.2', 'console_scripts', 'building_map_generator')())
File "/opt/ros/humble/lib/python3.10/site-packages/building_map_generator/building_map_generator.py", line 16, in main
g.generate_gazebo_sdf(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/generator.py", line 59, in generate_gazebo_sdf
self.generate_sdf(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/generator.py", line 41, in generate_sdf
building.generate_sdf_models(output_models_dir)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/building.py", line 537, in generate_sdf_models
level.generate_sdf_model(model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 358, in generate_sdf_model
self.write_sdf(model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 343, in write_sdf
self.generate_floors(model_ele, model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 317, in generate_floors
floor.generate(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/floor.py", line 231, in generate
self.triangulate_polygon(self.polygon, triangles)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/floor.py", line 144, in triangulate_polygon
for item in geom:
TypeError: 'GeometryCollection' object is not iterable
gmake[2]: *** [CMakeFiles/generate_hotel_crowdsim_ign.dir/build.make:77: maps/hotel_ign/hotel.world] Erro 1
gmake[1]: *** [CMakeFiles/Makefile2:515: CMakeFiles/generate_hotel_crowdsim_ign.dir/all] Erro 2
Traceback (most recent call last):
File "/opt/ros/humble/lib/rmf_building_map_tools/building_map_generator", line 33, in
sys.exit(load_entry_point('rmf-building-map-tools==1.6.2', 'console_scripts', 'building_map_generator')())
File "/opt/ros/humble/lib/python3.10/site-packages/building_map_generator/building_map_generator.py", line 24, in main
g.generate_ignition_sdf(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/generator.py", line 72, in generate_ignition_sdf
self.generate_sdf(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/generator.py", line 41, in generate_sdf
building.generate_sdf_models(output_models_dir)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/building.py", line 537, in generate_sdf_models
level.generate_sdf_model(model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 358, in generate_sdf_model
self.write_sdf(model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 343, in write_sdf
self.generate_floors(model_ele, model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 317, in generate_floors
floor.generate(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/floor.py", line 231, in generate
self.triangulate_polygon(self.polygon, triangles)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/floor.py", line 144, in triangulate_polygon
for item in geom:
TypeError: 'GeometryCollection' object is not iterable
gmake[2]: *** [CMakeFiles/generate_hotel_crowdsim.dir/build.make:77: maps/hotel/hotel.world] Erro 1
gmake[1]: *** [CMakeFiles/Makefile2:489: CMakeFiles/generate_hotel_crowdsim.dir/all] Erro 2
Traceback (most recent call last):
File "/opt/ros/humble/lib/rmf_building_map_tools/building_map_generator", line 33, in
sys.exit(load_entry_point('rmf-building-map-tools==1.6.2', 'console_scripts', 'building_map_generator')())
File "/opt/ros/humble/lib/python3.10/site-packages/building_map_generator/building_map_generator.py", line 16, in main
g.generate_gazebo_sdf(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/generator.py", line 59, in generate_gazebo_sdf
self.generate_sdf(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/generator.py", line 41, in generate_sdf
building.generate_sdf_models(output_models_dir)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/building.py", line 537, in generate_sdf_models
level.generate_sdf_model(model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 358, in generate_sdf_model
self.write_sdf(model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 343, in write_sdf
self.generate_floors(model_ele, model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 317, in generate_floors
floor.generate(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/floor.py", line 231, in generate
self.triangulate_polygon(self.polygon, triangles)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/floor.py", line 144, in triangulate_polygon
for item in geom:
TypeError: 'GeometryCollection' object is not iterable
gmake[2]: *** [CMakeFiles/generate_airport_terminal_crowdsim_ign.dir/build.make:77: maps/airport_terminal_ign/airport_terminal.world] Erro 1
gmake[1]: *** [CMakeFiles/Makefile2:203: CMakeFiles/generate_airport_terminal_crowdsim_ign.dir/all] Erro 2
gmake[2]: *** [CMakeFiles/generate_airport_terminal_crowdsim.dir/build.make:77: maps/airport_terminal/airport_terminal.world] Erro 1
gmake[1]: *** [CMakeFiles/Makefile2:177: CMakeFiles/generate_airport_terminal_crowdsim.dir/all] Erro 2
Traceback (most recent call last):
File "/opt/ros/humble/lib/rmf_building_map_tools/building_map_generator", line 33, in
sys.exit(load_entry_point('rmf-building-map-tools==1.6.2', 'console_scripts', 'building_map_generator')())
File "/opt/ros/humble/lib/python3.10/site-packages/building_map_generator/building_map_generator.py", line 24, in main
g.generate_ignition_sdf(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/generator.py", line 72, in generate_ignition_sdf
self.generate_sdf(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/generator.py", line 41, in generate_sdf
building.generate_sdf_models(output_models_dir)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/building.py", line 537, in generate_sdf_models
level.generate_sdf_model(model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 358, in generate_sdf_model
self.write_sdf(model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 343, in write_sdf
self.generate_floors(model_ele, model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 317, in generate_floors
floor.generate(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/floor.py", line 231, in generate
self.triangulate_polygon(self.polygon, triangles)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/floor.py", line 144, in triangulate_polygon
for item in geom:
TypeError: 'GeometryCollection' object is not iterable
Traceback (most recent call last):
File "/opt/ros/humble/lib/rmf_building_map_tools/building_map_generator", line 33, in
sys.exit(load_entry_point('rmf-building-map-tools==1.6.2', 'console_scripts', 'building_map_generator')())
File "/opt/ros/humble/lib/python3.10/site-packages/building_map_generator/building_map_generator.py", line 16, in main
g.generate_gazebo_sdf(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/generator.py", line 59, in generate_gazebo_sdf
self.generate_sdf(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/generator.py", line 41, in generate_sdf
building.generate_sdf_models(output_models_dir)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/building.py", line 537, in generate_sdf_models
level.generate_sdf_model(model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 358, in generate_sdf_model
self.write_sdf(model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 343, in write_sdf
self.generate_floors(model_ele, model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 317, in generate_floors
floor.generate(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/floor.py", line 231, in generate
self.triangulate_polygon(self.polygon, triangles)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/floor.py", line 144, in triangulate_polygon
for item in geom:
TypeError: 'GeometryCollection' object is not iterable
gmake[2]: *** [CMakeFiles/generate_clinic_crowdsim_ign.dir/build.make:77: maps/clinic_ign/clinic.world] Erro 1
gmake[1]: *** [CMakeFiles/Makefile2:437: CMakeFiles/generate_clinic_crowdsim_ign.dir/all] Erro 2
gmake[2]: *** [CMakeFiles/generate_clinic_crowdsim.dir/build.make:77: maps/clinic/clinic.world] Erro 1
gmake[1]: *** [CMakeFiles/Makefile2:411: CMakeFiles/generate_clinic_crowdsim.dir/all] Erro 2
Traceback (most recent call last):
File "/opt/ros/humble/lib/rmf_building_map_tools/building_map_generator", line 33, in
sys.exit(load_entry_point('rmf-building-map-tools==1.6.2', 'console_scripts', 'building_map_generator')())
File "/opt/ros/humble/lib/python3.10/site-packages/building_map_generator/building_map_generator.py", line 24, in main
g.generate_ignition_sdf(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/generator.py", line 72, in generate_ignition_sdf
self.generate_sdf(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/generator.py", line 41, in generate_sdf
building.generate_sdf_models(output_models_dir)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/building.py", line 537, in generate_sdf_models
level.generate_sdf_model(model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 358, in generate_sdf_model
self.write_sdf(model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 343, in write_sdf
self.generate_floors(model_ele, model_name, model_path)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/level.py", line 317, in generate_floors
floor.generate(
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/floor.py", line 231, in generate
self.triangulate_polygon(self.polygon, triangles)
File "/opt/ros/humble/lib/python3.10/site-packages/building_map/floor.py", line 144, in triangulate_polygon
for item in geom:
TypeError: 'GeometryCollection' object is not iterable
gmake[2]: *** [CMakeFiles/generate_office_crowdsim_ign.dir/build.make:77: maps/office_ign/office.world] Erro 1
gmake[1]: *** [CMakeFiles/Makefile2:593: CMakeFiles/generate_office_crowdsim_ign.dir/all] Erro 2
gmake: *** [Makefile:146: all] Erro 2
Failed   <<< rmf_demos_maps [3.50s, exited with code 2]
Aborted  <<< rmf_demos_panel [0.35s]
Aborted  <<< rmf_demos_bridges [3.59s]
Aborted  <<< rmf_demos_fleet_adapter [3.72s]
Aborted  <<< rmf_demos_tasks [3.64s]
Summary: 2 packages finished [4.73s]
1 package failed: rmf_demos_maps
4 packages aborted: rmf_demos_bridges rmf_demos_fleet_adapter rmf_demos_panel rmf_demos_tasks
4 packages had stderr output: rmf_demos_bridges rmf_demos_fleet_adapter rmf_demos_maps rmf_demos_tasks
3 packages not processed

So I was able to successfully build rmf_demos_maps with humble binaries. See terminal output below. I believe the reason for build failure above is that you have the pip version of shapely installed, ie 2.0 while we strongly recommend using ubuntu apt version 1.8 as the dependency is resolved by rosdep.
/opt/ros/humble/lib/python3.10/site-packages/building_map/floor.py:144: ShapelyDeprecationWarning: Iteration over multi-part geometries is deprecated and will be removed in Shapely 2.0. Use the `geoms` property to access the constituent parts of a multi-part geometry.
  for item in geom:
---
Finished <<< rmf_demos_maps [3min 33s]
Starting >>> rmf_demos
Finished <<< rmf_demos [1.28s]
Starting >>> rmf_demos_gz
Starting >>> rmf_demos_gz_classic
Finished <<< rmf_demos_gz [1.42s]
Finished <<< rmf_demos_gz_classic [1.46s]

Summary: 10 packages finished [3min 40s]
  5 packages had stderr output: rmf_demos_bridges rmf_demos_fleet_adapter rmf_demos_maps rmf_demos_panel rmf_demos_tasks

You can see the deprecation warning from python3-shapely but everything should still compile if you use the ubuntu apt version of this python package. Suggest to python3 -m pip uninstall shapely and then sudo apt install python3-shapely and try again.
yadunund@ubuntu-22-04:~/ws_rmf_demos$ dpkg -l | grep shapely
ii  python3-shapely                                    1.8.0-1build1                           amd64        geometric objects, predicates, and operations (Python 3)

Having said that, will merge @arjo129's PR into main but I don't think we need to backport it humble.

Encountered the same issue trying to build rmf_demo_maps, same as thread author.
Can confirm that reinstalling python package shapely as mentioned resolved it for me.
python3 -m pip uninstall shapely && sudo apt install python3-shapely

This should be fixed with the apt package as noted in the comment, but feel free to reopen if it is not the case!


Add an optional "untyped_declaration" warning

Addresses (and may close) https://github.com/godotengine/godot-proposals/issues/173
Adds a new property to ProjectSettings: debug/gdscript/warnings/untyped_declaration, which will print a warning or error if there are variables, parameters, or constants that aren't explicitly typed using : <type> or during initialization, :=.
var foo: int = 0 # Good
var bar := 0 # Also good
var baz = 0 # Warning will be thrown

A warning will also be thrown if a function does not have an explicit return type. This does not affect _init() as it shouldn't have a return type other than void anyways, and is always implicitly void.
func foo() -> int: # Good
    return 0

func bar(): # Warning will be thrown
    return 1

func _init(): # No warning
    print("Hey GitHub!")

Feel free to test! There will need to be a docs update because a new property is being added to ProjectSettings.

(also the failure of the "Test Godot Project" isn't related to this PR but a random error)

Went ahead and tested this with my own project. Everything appears to work as expected! 🥳

Issue with lambdas is fixed! I think it would now be ready for review!

Don't currently have time for a more thorough review, but since I didn't notice any explicit mention of class members, I assume this already works with them, because their declaration might work as an assignable? :)

Don't currently have time for a more thorough review, but since I didn't notice any explicit mention of class members, I assume this already works with them, because their declaration might work as an assignable? :)

Class member variables and functions work!

I'm not sure return values fall under "static typing" and warrants a separate error setting

Our static typing page claims they are.

The static type of the for loop variable. It is slightly different from the rest of the declarations.
I would personally prefer static typing for the for loop variable as well, but since it's a different case, I would appreciate other's feedback on this. I want to know what you think about this personally as well @dalexeev

Static types of signal parameters. The number and types of signal parameters are just metadata for the editor and documentation (both in GDScript and in the core). You can emit a signal with any arguments, ignoring its signature. There may be no error even at runtime, if the callback signatures are compatible.
In my opinion, for consistency, static typing should be expected here. If we warn for untyped declarations elsewhere, we should warn for untyped declarations here.

Sorry for the few force pushes in a row, I keep messing up the alphabetical order of the property list in ProjectSettings.xml. Should be in the proper order now (so many "/warning/un-" properties 😭

My newest change supports signals, as it seems that there is some consensus on letting signals warn for lack of static typing.
signal index_changed(index) # No bueno, warning issued

signal index_changed(index: int) # No warning

Statically typing signal parameters helps with callback signatures

Unless we want something to be done with for loops, I think this PR is finally ready.

No static typing needed (no warnings)
Static typing needed when loop variable cannot infer its type (whenever it defaults to variant, users could still specify Variant as the type explicitly)
Require a type annotation always (other mismatches could occur with this, such as the variable type not working for the list type)

Personally, I'm leaning towards Option 2. Not sure if there should be a warning only in case of weak Variant or in case of hard too. Also, the problem is that this overlaps with REDUNDANT_FOR_VARIABLE_TYPE and is inconsistent with INFERENCE_ON_VARIANT (however, type inference is implicit and user has no control here).

I also like option 2, and I'll be testing this and if it looks workable I'll see about updating the PR :)

Also, the problem is that this overlaps with REDUNDANT_FOR_VARIABLE_TYPE and is inconsistent with INFERENCE_ON_VARIANT (however, type inference is implicit and user has no control here).

I don't understand the point of the REDUNDANT_FOR_VARIABLE_TYPE warning... why are we warning folks for specifying a type even if it happens to be the inferred type? Seems to just be a verbosity check to me.

I don't understand the point of the REDUNDANT_FOR_VARIABLE_TYPE warning

See https://github.com/godotengine/godot/pull/80247#issuecomment-1681752759.

See #80247 (comment).

Bringing the full comment @dalexeev mentioned here:

@oparisy In my opinion, this is unusual behavior. If we can infer the iterator type, it's weird to specify a supertype. Only if you want to assign other value to the variable in this iteration, which is also weird in my opinion, programming languages usually recommend declaring new variables rather than using the same variable for different values.

Note that specifying the iterator type is somewhat different from other cases. The iterator already has a type inferred from the iterated value. You can specify a more specific type for convenience, although this is unsafe. I would not recommend specifying the iterator type if the inferred type suits your needs. Unlike regular variables where we recommend specifying the type explicitly and using := only the inferred type is obvious. Specifying type in each for would be too verbose.

That's why I added the warning. But this is just my opinion, let me know if you disagree and why. That's a good question for a future GDScript team meeting, thanks.

I disagree with the warning, I think is discourages explicit typing for the end user.

If we can infer the iterator type, it's weird to specify a supertype.

I wouldn't say it's weird. It's certainly redundant, but as a user who enjoys static typing for readability and intellisense purposes, I think it's useful regardless. Also, the end user doesn't always know what's being inferred until this error pops up.

Only if you want to assign other value to the variable in this iteration, which is also weird in my opinion, programming languages usually recommend declaring new variables rather than using the same variable for different values.

I'm not entirely sure what this means, are you saying someone changes the type of the iterator during the loop execution? Or declaring a different type on the iterator to be cast from the inferred type?

Note that specifying the iterator type is somewhat different from other cases. The iterator already has a type inferred from the iterated value. You can specify a more specific type for convenience, although this is unsafe. I would not recommend specifying the iterator type if the inferred type suits your needs.

Yeah, looking through the for loop code I can tell it's different. I still think that syntactically I prefer static typing warnings to be applied to everything, including for loop variables.
What I propose instead regarding for loop warnings is that a warning should only be thrown if the user specifies a type that is strictly a superclass of the inferred type. For example:
for i: Enemy in get_tree().get_nodes_in_group("Enemies"): # No error, type Enemy is a subclass of Node (Enemy extends Node)

for i: Node in get_tree().get_nodes_in_group("Enemies"): # No error, explicitly defining type shouldn't be warned against IMO (Node == Node)

for i: Variant in get_tree().get_nodes_in_group("Enemies"): # Not recommended, Variant is strictly a superclass of the inferred type (Node), should give a warning (Node extends Variant)

I'd love to hear your thoughts @dalexeev on what you think about this!

Since I do not want to delay this PR further, I am making a separate PR to discuss the possibility of modifying the REDUNDANT_FOR_VARIABLE_TYPE warning. Feel free to merge this PR though whenever!
The current support for warnings regarding static typing of for variables is consistent with what @dalexeev described in his diff in this comment: https://github.com/godotengine/godot/pull/81355#pullrequestreview-1616000455
I would like to discuss in another PR (I'll link to it once it's ready) modifying the REDUNDANT_FOR_VARIABLE_TYPE warning and also modifying the behavior of UNTYPED_DECLARATION with for loop variables.

@AThousandShips Since this PR is ready and approved, would it be possible to update the milestone to 4.2?

Needs a rebase.

Needs a rebase.

Done!

Thanks!

I am using 4.2 beta 3 and for some reason I get warnings when I don't specify the -> void return type, but in the PR description it says it's not required.

This does not affect _init() as it shouldn't have a return type other than void anyways, and is always implicitly void.

Did this changed at some point?

I am using 4.2 beta 3 and for some reason I get warnings when I don't specify the -> void return type, but in the PR description it says it's not required.

This does not affect _init() as it shouldn't have a return type other than void anyways, and is always implicitly void.

Did this changed at some point?

Init doesn't have a return type, and I think it actually warns you if you do use one, not sure.
For any other method, a warning is issued if there's no return type specified

This does not affect _init() as it shouldn't have a return type other than void anyways, and is always implicitly void.

Did this changed at some point?

If I remember correctly, this was originally implemented incorrectly. I've updated the first post.
I don't think we should make an exception for _init() and _static_init(), since explicit void is allowed for them (unlike some other languages) and is generated by autocompletion (if you enabled the text_editor/completion/add_type_hints editor setting). For _ready() you can also specify only void or no type at all, but the warning is generated.

What I'suggest is to make -> void optional. So if it's not added, and nothing is returned the function is void. It keeps the code shorter and cleaner. The same way we don't do f(void) if there are no arguments, (like we used to do in C) if there are no arguments we know it by the fact there aren't any, we don't have to explicitly say it. Well the same applies to the return type. If we don't return anything in the function then is void. If we return something then it isn't. And the compiler can check that

I added a feature request to Infer implicit void return type in GDScript for functions without return values


Crashplan 8.6.1 released

My webinterface in crashplan just showed "Code42 wasn't able to upgrade but will reattempt in one hour" and on https://www.crashplanpro.com/app/#/console/app-downloads there now showing a version 8.6.1 to download with the release notes here
Bug fixes
Fixed a rare issue where the Code42 app could stop backing up under certain circumstances and indefinitely display one of the following messages: "Synchronizing," "Waiting for connection," or "Unable to connect."

New image available !


Alternative methods of indexing

PostgreSQL supports this, would be nice to have it shippable with the program because it's effectively a cache.

Currently using permuterm indexes for queries, but they are huge, with the Tanaka Corpus blowing from 31MB to 255MB. JESC would probably blow up to 2GBs.

Half solved with DidacticalEnigma.Mem, we could do indexing by words for locally stored corpora.


⚠ Bofrost.de has degraded performance

In aff40e9, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1017 ms

Resolved: Bofrost.de performance has improved in 95b5d0e after 7 minutes.


Profiles Resetting Upon Launch

I noticed not long after the 6.45 patch that my Customize profile would reset upon booting the game, and I have to now manually re enter the numbers in the profile every time I play.
On a related note, when I go to edit a profile by hitting the button to bring up the bones sub menu it resets every value all over again. It's like it refuses to save the values I last entered.

Can you reproduce this and then check /xllog and see if it says anything? Preferably set the xllog to "Debug" before via the little cog icon in the window that appears when you type /xllog.

Is there anything in particular I should be looking for in the log?

So I deleted my profile and the plugin, went to reinstall it and got this in the debug log.

Is there any way to fix or change the config path, assuming it's the only issue?

I dunno if this helps at all, but while I can see my own scaling other players cannot. I assume that's because it's just storing a preview and can't actually save the scaling data because the path is invalid?

Oh hang on, I managed to fix it. I deleted my profiles, deactivated C+, deleted the config folder, and uninstalled C+.
I then went into the Experimental tab of Dalamud and deactivated the Sea of Stars plugin that gave me C+, saved and closed, then reactivated it and reinstalled C+. Now it's saving my profiles :D


Create CODEOWNERS for each product owner

Product documentation should have a more detailed, product-related Owner conduct a detailed review, rather than just having the documentation engineer check grammar or style.

+1 agree  @Ye-Ting
每个产品经理至少应该学会：

提 PR
提 Issue
看一看自己的文档，比较提出一些建议

而不是成天抱怨 network delay，为什么要用 git 流程，有的甚至一个月结束了肚子空空， 啥也输出不了


Brute-force attacks

First of all thank you for this package, I know some other developers (namely @kentonv from sandstorm) are also interested in a “passwordless” authentication for meteor applications.
Currently it seems that you aren't implementing anything to prevent brute-force attacks. Since the pass-code that is being sent by email has a very low entropy (it's a 4-digits string), brute-forcing it is trivial:
var tries = 0;
(function tryLogin(err, res) {
  if (!err) return; // No error, we are logged in!
  Meteor.loginWithPasswordless({
    selector: 'mquandalle',
    code: ('0000' + (tries++).toString()).slice(-4)
  }, tryLogin);
})('start');

Tested, and it works.
One possibility would be to invalidate the code after n unsuccessful tries. But that basically don't solve the problem because the attacker could just re-generate a new code and try n more times until he is successful. You could probably block the IP but (1) you'll have false positives (people that are blocked but didn't try to attack you) and (2) some attackers have a lot of IPs (botnets networks, or IPv6 ranges).
One other possibility would be to generate high-entropy one time password using for instance Random.secret() that have 256 bits of entropy which make brute-forcing strategies impossible to work, the drawback here being that if you receive the code on your mobile phone and want to input it on your computer you have to read and write a complex 43 chars string, which is super inconvenient.

Hello @mquandalle,
I juste commit a fix to add a delay if user try to brut force many time.
https://github.com/efounders/meteor-accounts-passwordless/commit/756a9c67c79990b41e018f0065dcffda17ca2bbe + plus a fix on next commit to not upsert nbTry.


Add conversions into [T;N]

For a while, we have had the ability to take any Rust array, i.e. [T; N] and send that to R. See From<[T;N]> in extendr-api for example.
But converting from say an R integer(n=5) to [i32; 5] should also be possible, despite the compile-time restriction. Because the array may be instantiated from a slice. This PR adds this capability to specify the expected vector size in the Rust API.

Thanks! I'm curious, what do you see the use case is for u8? Would this be from Raws?

Yes! U8 is bytes, same as raw in R.

@CGMossa I've added tests for the tuple array conversions. Please @ me when you're able to change the error message then I can give it the 👍🏼

Yes! Can you please avoid exporting these test functions. It is not necessary to run tests, and then we avoid issues with lack of doc strings.

Thank you. And yes, that's what I would've done.

Confirming (manually) that MSRV is preserved:
extendr-main on  from_array_and_tuple [$⇡] is 📦 v0.7.1 via 🦀 v1.83.0
❯ cargo msrv --path extendr-api verify
  [Meta]   cargo-msrv 0.17.1

Compatibility Check #1: Rust 1.65.0
  [OK]     Is compatible


Update CONTRIBUTING.md and fix syntax typo

This PR occurs for three reasons (commits):

There was a missing comma in the seeds file
The database_example.yml file did not exist
I want to make the contributing guide more good-looking (by only using markdown).

And thanks again :bouquet:


Added function for Leetcoode problem Length of Longest Substring.

Description
Added funcion for a Leetcode problem, Length of Longest Substring (https://leetcode.com/problems/longest-substring-without-repeating-characters/) in Python.
Type of change

[x] New feature (non-breaking change which adds functionality)

Checklist:

[x] My code follows the style guidelines(Clean Code) of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] My changes generate no new warnings

Is this PR eligible to the Hacktoberfest? Thanks!


Add more tests to travisci

Has this been fully migrated then @ryansb? It would seem so, so I'm closing.

Yup, migrated.


(Refactor) Manage page final form

Closes #784

Pull Request Test Coverage Report for Build 1962

47 of 82 (57.32%) changed or added relevant lines in 12 files are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage increased (+1.6%) to 21.635%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/components/manage/index.js
0
35
0.0%

Files with Coverage Reduction
New Missed Lines
%

src/components/manage/index.js
1
0.0%

Totals

Change from base Build 1948:
1.6%

Covered Lines:
603

Relevant Lines:
2426

💛  - Coveralls

@dennis00010011b could you check the e2e tests for this PR?
I changed the manage screen structure.

@fernando I changed e2e. Please update submodule token-wizard-test-automation and try again

@dennis00010011b I'm adding you as a reviewer, so we avoid merging this PR to production before a complete tests.
You can check this PR's changes directly in the netlify link: https://deploy-preview-795--ico-wizard.netlify.com/
Any feedback will be welcome


[Source Request]

PLEASE READ THIS
I acknowledge that:

I have checked that the extension does not already exist:

In the list of existing extensions in the application
In the multi-source spreadsheet: https://tachiyomi.org/extensions
By searching the GitHub repository for the extension and verify it does not appear in the code base

I have searched the existing GitHub issues and this extension does NOT have an open request
I will fill out the title and the information in this template

Note that the issue will be automatically closed if you do not fill out the title or requested information.
DELETE THIS SECTION IF YOU HAVE READ AND ACKNOWLEDGED IT

Source website

Name: arabhentai
Link: https://arabshentai.com/
Language(s): arabic

Other details

Duplicate of #730


Add support for D3D12_DEVICE_REMOVED_EXTENDED_DATA3

Add support for D3D12_DEVICE_REMOVED_EXTENDED_DATA3 so that trying to analyze DRED information can work better on newer versions of D3D

This is to fix #9


Pre-commit: Fix copyright_headers.py to run on all relevant files

It was only running on the first file passed by pre-commit, instead of all. Fixes compatibility with Windows paths to get the basename.
CC @KoBeWi @EIREXE I believe this should fix both issues you raised today.

Tried locally and it looks good to me


fix(tabs-extended): ensure accordion doesn't load on desktop, and tabs don't load on mobile

Related Ticket(s)
Closes #10618
Description
The extended tabs component was loading both the tabs component (shown on desktop) and the accordion component (shown on mobile) at the time of page load, despite the window size, and hiding one with CSS. This contributes to an excess of nodes loading in the DOM unnecessarily.
This PR changes the rendering of the tabs extended and tabs extended with media components to look at the window size and load either the accordion OR the tabs appropriately, thus decreasing nodes.
Running @andy-blum 's script on the popped out Tabs Extended with Media on Storybook before this code:

(index)
Value

nodes
2061

comments
287

inters
862

After this code:

(index)
Value

nodes
1261

comments
154

inters
465

Changelog
Changed

Tabs extended and Tabs Extended with Media now look at window size and load either tabs (desktop) or accordion (mobile), not both.

Analysis of the node count reduction on our Story's demo content based on the latest code:
Tabs Extended
Desktop

-
Before
After
Reduction

nodes
1249
821
34%

comments
149
82
45%

inters
481
254
47%

Mobile

-
Before
After
Reduction

nodes
1249
818
35%

comments
149
81
46%

inters
481
249
48%

Tabs Extended (with Media)
Desktop

-
Before
After
Reduction

nodes
2072
1265
39%

comments
287
154
46%

inters
867
468
46%

Mobile

-
Before
After
Reduction

nodes
2072
1261
39%

comments
287
153
47%

inters
867
463
47%


Origin of Laserscan is different from lidar position

Checklist

[X] I've read the contribution guidelines.
[X] I've searched other issues and no duplicate issues were found.
[X] I've agreed with the maintainers that I can plan this task.

Description
currently origin of laser scan is baselink but it's origin should be a position of lidar
Purpose
consider origin of lidar position and fusion laserscans for each if multilidar is available
Possible approaches

multi view occupancy grid
something else

Definition of done
implement to improve laser scan

this issue is solved by #624


Update free-programming-books-ru.md - added PostgreSQL basics book

What does this PR do?
Add resource(s)
For resources
Description
The training and practical manual covers the first, basic, part of the training course on the SQL language.
Why is this valuable (or not)?
It is one of the best desktop books on PostgreSQL, which covers the main topics necessary for a developer to work with this DBMS
How do we know it's really free?
It is available for download on one of the main PostgreSQL contributor's website - postgrespro.ru
For book lists, is it a book? For course lists, is it a course? etc.
Book which covers next topics:

Introduction to Databases and SQL
Creating a Working Environment
Basic Table Operations
PostgreSQL DBMS Data Types
Data Definition Language Basics
Queries
Modifying Data
Indexes
Transactions
Improving Performance

Checklist:

[+] Read our contributing guidelines.
[+] Search for duplicates.
[+] Include author(s) and platform where appropriate.
[+] Put lists in alphabetical order, correct spacing.
[+] Add needed indications (PDF, access notes, under construction).
[+] Used an informative name for this pull request.

Follow-up

Check the status of GitHub Actions and resolve any reported warnings!

Thanks, and welcome to free-programming-books!


Upgrade Ingress-nginx to v1.5.1

What Chart should be upgraded?
upstream/ingress-nginx chart-4.4.2
Why should this Chart be upgraded?

[ ] We need to perform a security upgrade.
[ ] We need it for a new feature: which feature (link to blocked issue).
[x] We need to keep up to prevent future issues.
[ ] Other: Write the reason here

Acceptance criteria

I checked the migration of the new Chart:

[ ] I upgraded a Chart and determined that no migration steps are needed.
[ ] I upgraded a Chart and added migration steps.

[ ] I tested the functionality provided by the new Chart (e.g., Auth flow, Grafana dashboards, etc.)

Please upgrade the chart to 4.4.2  - https://github.com/kubernetes/ingress-nginx/releases/tag/helm-chart-4.4.2 , which also upgrade the app version to 1.5.1 and fixed alot of security CVE


How to implement distributed transactions between Easy Batch and IBM MQ?

Anyone has integrated IBM MQ with Easy Batch, please?
Could you share the experience on how to deal with distributed transaction scenario. For example, read message in Reader class, and deal with some persistence operations in Processor, or Writer in  TRANSACTION mode. BTW, I am using Easy-Batch 4.0 version.
Thanks in advance

@czhifa I never worked with IBM MQ, but I can give some hints.

For example, read message in Reader class, and deal with some persistence operations in Processor, or Writer in TRANSACTION mode.

I would not recommend doing persistence operations in a record processor, it is better to implement them in a writer.
There is no global transactions in Easy Batch. What you can do is read a message from a queue, and if the transaction fails in the writer, send the item back to the queue for reprocessing (you can use the record header to add some infos like the number of times the record has been retried, etc).
This is basically the compensating action pattern, which is in my experience easier to implement and reason about than distributed transactions and 2PC. You can find some references here: Compensating Transaction pattern and Sagas. Hope this helps.

Thank you so much for taking the time to reply.


[Event Request] Codeunit 7304 "Whse. Jnl.-Register Batch" - OnCheckLinesOnBeforeCheckBin

Hi team,
In Codeunit 7304 "Whse. Jnl.-Register Batch" procedure CheckLines we would like to run some custom code before CheckBin, for that an event before CheckBin would be a good solution:

[IntegrationEvent(false, false)]
local procedure OnCheckLinesOnBeforeCheckBin(WhseJnlLine: Record "Warehouse Journal Line")

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.


Address feedback for logging PR

This PR addresses some of the feedback on the upstream logging PR.
This can be safely squash-merged after #12 does a commit-merge, or you can commit-merge this PR and close #12

@mxgrey - that should be a lot nicer for everybody to work with; thank you


Update safe-transmute to 0.11.0 rc

safe-transmute has a history of being a problematic library. This new version of the crate addresses many memory safety issues, making it magnitudes safer to use. Although it is an RC, a migration is still recommended from my point of view.

Haha, transmute_to_bytes is such a better name!


nixos/ssh: expose StreamLocalBindUnlink sshd config option

Motivation for this change
This option is needed on the server side for forwarding GnuPG agent connections over ssh to behave properly. With the option in question set, the directions given in https://wiki.gnupg.org/AgentForwarding work properly when connecting from a SSH client (with a hardware keystore accessible to the local agent) to a NixOS-based server (performing operations which requires those keys).
While this could otherwise be manually enabled by users using config.services.openssh.extraConfig, having high-utility functionality that depends on this flag being set to a non-default value argues in favor of exposing it directly.
Things done

[X] Tested via nixos-rebuild build-vm, and validating ssh -T within that guest.
[X] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[X] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] N/A Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] N/A Tested execution of all binary files (usually in ./result/bin/)
[ ] N/A Determined the impact on package closure size (by running nix path-info -S before and after)
[X] Fits CONTRIBUTING.md.

While this could otherwise be manually enabled by users using config.services.openssh.extraConfig, having high-utility functionality that depends on this flag being set to a non-default value argues in favor of exposing it directly.

There are reasons for not always directly exposing all options. Exposing all options adds code bloat, takes maintenance, and will typically lag the options provided by the tool. Of course, adding them does allow for (additional) validation.

On further consideration, I consider @FRidh's argument compelling, and am withdrawing this PR.


live_grep open buffers?

Is there a way currently to run a live_grep only on the current open buffers? What about the current buffer only? Or the results of a fuzzy search? I know that there is a glob feature but looking for something more than that. Thanks!

Is there a way currently to run a live_grep only on the current open buffers?

Not out of the box but you can probably very easily craft a command that first uses vim.api.nvim_list_bufs(), builds an rg command from it and feeds it to live_grep options as { cmd = ... }.
There is however :FzfLua lines which fuzzy searches all open buffers.

What about the current buffer only?

:FzfLua lgrep_curbuf which can transform into :FzfLua grep_curbuf (fuzzy) with ctrl-g (and vice versa, fuzzy back to live).
The xxx_curbuf variants have their own "resume context" so the fuzzy query/regex search arg are preserved between ctrl-g toggles and :FzfLua resume.

Or the results of a fuzzy search?

You can send the results the quick fix with alt-q and then use :FzfLua quickfix to fuzzy the quickfix.

Closing, feel free to reopen if you need more help.


Add ability to construct matrix from floats in shader

In glsl you can construct a matrix from any permutation of floats and vectors. In this PR I have added the ability to construct a matrix using an array of floats for mat2 this is 4 floats, 9 floats for mat3 and 16 floats for mat4.
I had to change a few magic numbers in order to make it work. The way it was previously set up didn't allow for constructors or functions with more than 4 input parameters I extended that up to 16 (MAX_ARGS is seventeen because all constructors have an additional TYPE_VOID).
I am not very familiar with shader_language.cpp. So forgive me if this is a bad idea, But I also think those magic numbers I changed should be able to access the MAX_ARGS variable so they are not simply magic numbers anymore.

We discussed it on IRC with @reduz and @JFonS and think it's not worth changing the max number of args supported for this edge use case:
15:49 <Akien> If GLSL allows it I'd say "why not", but I'm not sure it's worth the trouble to extend max args from 4 to 16 if nobody ever asked for the feature in the first place.
15:51 <Akien> And then we'd have to add support for stuff like `mat2(1.0, vec2(1.0, 1.0), 1.0)` and the like
15:52 <jfons> I'd say it's not worth it, you can refactor any copy-pasted GLSL code (that would be the main use case for that) pretty easily to work with the current system
15:52 <reduz> same here, not really worth it

I'll open an issue on the docs repo to make sure this is documented though.


Portable Launcher crash when firing a missile

Hi, I noticed, well more than just noticed, that whenever i launch a missile out of a portable launcher the missile just fly's up and keeps going up until eventually my server crashes. Just reporting this bug and hope it could get fixed soon

The portable launcher is mainly for developer testing. I would recommend using the small silo and the launch controllers to launch missiles with proper coordinates. I'm closing this since it's not really a problem, But if there's anything else feel free to comment.

@Hennamann its actually no longer just a dev tool and can be used as a normal launcher.
@jobensingh Going to need that crash log and the version you are using.

@DarkGuardsman Ah sorry my mistake.

Hi Sorry I didnt reply earlier I couldnt find this page but here is the crash report, Also Im pretty sure this is the correct crash report but I have a lot so im not 100% if this the right one, if its not let me know.
http://pastebin.com/2dbBZjGh

Also with the silo I cant find anywhere to input the coordinates

There should be block called: "Launcher controller" place that next to a silo and right click it and you can enter coordinated and fire missiles.

I tried that, but whenever i right click the launcher control it gives me this screen

The place next to auto linking is not coded yet. Instead you use the linking tool to connect up to 5 launchers to a single controller. Sneak-right click to save the link and right click to input it into the controller. You can also use the GPS flag to set the launching coords on the silo directly.

When I try to use the launcher to input coords it just gives me a blank screen that has an update button

and when I try to input the coords to the silo directly I can get the gps flag to turn green but when i right click a silo it goes to red without saying any information and why i try to launch the game crashes after a little while as usual.

All this leads to my original problem which was in the Title


FeatureAdded : Added TheaterMode On Video ,fixed button styles for Chapters Cleaned-Up the App-bar

PR Fixes:

Theater Mode Added

Without Chapters Toggled

With Chapters Toggled : Added Custom Styles for Chapters when the Theater Mode Is Toggled

Cleaned Up The App-Bar

[x] I have performed a self-review of my code
[x] I assure there is no similar/duplicate pull request regarding same issue

Please create a separate PR for the theatre mode feature.
The user profile drop-down issue was assigned to me and it's already raised before, so please remove that.


Added links to interactive guides, per request / approval from Mo Radwan

Module: All
Lab/Demo: All
Added links to the Microsoft-produced interactive guides to main read.me and all lab pages.

We're in the process of updating these labs to standardize with the rest of the portfolio


Warrior class config pops up on zone change

Weird issue since the refactoring, everytime I rezone on my warrior the class config pops up. I've tried clearing my vars but no luck

Fixed, thanks.


"Switch L/R" does not work when "Mono" is active

May sound like a non-issue or even a joke, but here is the explanation:
Sometimes you get videos, where one of the stereo sound channels has good audio, while the other has bad audio. Clicking on "Mono" in SoundFixer will (apparently) feed one of the channels to both ears and disregards the other one. However, when that channel happens to be the one with bad audio, I would expect activating "Switch L/R" to fix it. Instead, nothing changes.

Nah, it won't feed one channel to both ears, upmixing mono to stereo in Web Audio is defined as

Both input channels (L and R) are equally combined to produce the unique output channel (M). output.M = 0.5 * (input.L + input.R)

Does panning to the good channel (and setting mono) work?


AirDC++ settings page input issues

The hostname for AirDC++ should accept:

FQDN
IP addresses

Currently it does not accept IP addresses.

Fixed via https://github.com/rishighan/threetwo/pull/90/commits/bd35223f0f088562dea5bad6bdfd7229feb4b732


Added resampling if when previewing a PDF for better quality.

fix #71
part of divided MR : https://github.com/algoo/preview-generator/pull/73

@edwardvk merged :+1:


add Simplified Chinese translation for README

add Simplified Chinese README

@weditor 😀 中英文之间空格, 以及专有名词 Windows/Mac 这些单词大小写好像有点问题, 只是提个建议...

@Aaaaash 第一次翻译，不清楚这些，见笑了。:smile:

https://github.com/codercom/code-server/issues/47
It seems that they want to move these documents to somewhere else.

我认为现在还不是做文档本地化的最好时机，至少要等到项目的基础文档稳定下来，目前还远远不够。
I don't think it's the best time to do document localization. At least until the basic documentation of the project has stabilized.

#50
I would like to close this pull request.
I'll keep an eye on this project. I may open another pr if you still need document translation in the future,


Move query param fix upstream

The fix to share the bucket cache needs to be moved upstream to ember.
See https://github.com/dgeb/ember-engines/pull/166
As @rwjblue mentioned, the fix needs to go in here https://github.com/emberjs/ember.js/blob/master/packages/ember-application/lib/system/engine-instance.js#L180-L183 along with tests.

I will try to fix it upstream as well.

Fixed via #170 - thanks @dnachev :shipit:


Support DataLakeStorage 10-31-19 version

Latest improvements:
MSFT employees can try out our new experience at OpenAPI Hub  - one location for using our validation tools and finding your workflow.

Contribution checklist:

[ ] I have reviewed the documentation for the workflow.
[ ] Validation tools were run on swagger spec(s) and have all been fixed in this PR.
[ ] The OpenAPI Hub was used for checking validation status and next steps.

ARM API Review Checklist

[ ] Service team MUST add the "WaitForARMFeedback" label if the management plane API changes fall into one of the below categories.
adding/removing APIs.
adding/removing properties.
adding/removing API-version.
adding a new service in Azure.

Failure to comply may result in delays for manifest application. Note this does not apply to data plane APIs.

[ ] If you are blocked on ARM review and want to get the PR merged urgently, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.
Please follow the link to find more details on API review process.

Automation for azure-sdk-for-go

Automation for azure-sdk-for-python

Can one of the admins verify this patch?

hi @michaeljqzq   could you pls help to look at the breaking change failure? thanks.

Hi @erich-wang , after investigation @michaeljqzq  identified error in breakingChange tool is a tool issue, he will fix it. Pls ping me to force merge the PR when reviewing done. Thanks!

@DadanielZ , we're waiting for review from azure api board, that's why I added label WaitingForAzureAPIBoard. I'll ping them if no response next week.

Hi @erich-wang, could you help to ping azure api board to review? thanks!

Hi @erich-wang, could you help to ping azure api board to review? thanks!

Already sent email this morning.

@erich-wang thanks, anyone replied?

@erich-wang thanks, is there anyone reviewing this PR?

I've sent email to api review team and you were in the email thread.

Only one optional query parameter added. No need for full REST API review in front of board. Signed off.

/azp run public.rest-api-specs

Thank you for your help! @johanste @erich-wang @NullMDR @yungezz


CSS inline SVGs are not rendering in electron

CSS inline SVGs are not rendering in electron and i suppose that it's something related to encoding.
I experimented to make # symbol to %23 and it worked.

@jahsen Could you provide examples?

I abandoned the project.


Caption support

Attached optional caption property in the event info dictionary: sendImage and sendVideo methods

Guys, in general, why is this a fork from xinsight/matrix-ios-sdk and not matrix-org/matrix-ios-sdk ?

@danpe because of the missing Carthage support for MatrixSDK.

@danpe the fork base has been updated to matrix-org/matrix-ios-sdk :)


How to login microkernel

Frequently asked how to login microkernel  to  for debug, and what's the workflow and the user/passwd. document it here.
@RackHD/corecommitters @WangWinson

:+1:

:+1:


test: add create test with http auth provider

:tada: This PR is included in version 0.2.1-alpha.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 0.3.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Fix ignore annotation for gosec

Running gosec yielded two G403 high sev problems in pkg/pullrequest/scm.go although they are supposed to be ignored. This commit replaces the ignore annotation for gosec to the most current annotation as presented here.

Changes
This commit replaces the ignore annotation for gosec to the most current annotation as presented here.
/kind bug
Submitter Checklist
As the author of this PR, please check off the items in this checklist:

[x] Docs included if any changes are user facing
[x] Tests included if any functionality added or changed
[x] Follows the commit message standard
[x] Meets the Tekton contributor standards (including
functionality, content, code)
[x] Release notes block below has been filled in or deleted (only if no user facing changes)

NONE

/lgtm
Oops!

/assign @afrittoli

needs ok to test but the tests already ran 🤔
/ok-to-test

/retest

/test pull-tekton-pipeline-integration-tests
/test pull-tekton-pipeline-alpha-integration-tests

/lgtm

/test pull-tekton-pipeline-integration-tests
/test pull-tekton-pipeline-alpha-integration-tests

Submitted https://github.com/google/ko/pull/494 which should hopefully resolve integration. I'll see if there's a way to use a slightly older version of ko in our test suite until that's merged and released.

/test pull-tekton-pipeline-integration-tests

/test pull-tekton-pipeline-integration-tests

/test pull-tekton-pipeline-alpha-integration-tests


MousePressed Issue

Everything seems to be working fine until I add in the commented out part at the end, trying to do a mouseCheck so I can reference it and have the sphere disappear when you click inside it.  Any chance someone can see what I'm doing wrong?  here's a link to my current repo
https://github.com/JoleneTiffanyG/course-work/blob/master/Final Project/Game1/MediumGreen/sketch.js

Here's what it looks like before I add in the mouseCheck part.  And then when it's not commented out it just breaks completely.  So I'm pretty sure I've isolated the problem to that, but I'm not sure.  Do I need to define "destroy" somewhere else?
file:///C:/Users/logod/Documents/School/Creative%20Coding/Assignments/120-work/course-work/Final%20Project/Game1/MediumGreen/index.html

With those typos fixed the code will show up, but the mousePressed function still doesn't work.  Any idea why?

Were you able to update Line 55 and Line 59 from sphere2, to `spheres2' with an s?

No I missed that!  Oh my gosh it works now!!!!!!   THANK YOU!!


Automatically run all tests on each commit

This is now implemented. All tests are executed in an environment with python 3.7, 3.8, and 3.9:


[Feature Request] Sort mechanism of the Device list

Alphabetically sort the Device list.
Or possibly a way to filter the Device list into groups or names

No longer applicable in new version.


Public Ip; zones are removed on AzOpsPull command

Describe the bug
During an AzOpsPull cmd the Public IP settings for Zones are removed.
  ~ Microsoft.Network/publicIPAddresses/zone-1-pip [2022-07-01]
    - zones: [
        0: "1"
      ]

Push will then fail with the following ARM error as the Zone settings are no long present in the json:
New-AzResourceGroupDeployment: 13:48:12 - The deployment
'AzOps-microsoft.network_publicipaddresses-zone-1-pip-16FA' failed with
error(s). Showing 1 out of 1 error(s). Status Message: Resource
/subscriptions/XXXXXX/resourceGroups/zdk-we-p-rg-a
dds-2/providers/Microsoft.Network/publicIPAddresses/zone-1-pip has an existing
availability zone constraint 1 and the request has availability zone constraint
NoZone, which do not match. Zones cannot be added/updated/removed once the
resource is created. The resource cannot be updated from regional to zonal or
vice-versa. (Code: ResourceAvailabilityZonesCannotBeModified)   CorrelationId:
XXXXXXX

When re-adding the zone settings to the json a validate and push are working correctly, actions taken:

Create new branch
Re-apply zone settings in the pip json
Create PR
Validate will run successful
Merge
Push will run successful

Steps to reproduce

Create a public ip or use an existing
Start AzOpsPull

Screenshots

Thank you for raising this!
This unfortunately a known limitation of the resources API we take a dependency on to export the resources.
We are looking for ways to solve this (and also improve overall pull performance), but currently no workarounds other than deploying these resources with custom templates.

@daltondhcp, Thanks for answering this issue. Good to know, we will keep this in mind untill a solution is found.


DDO-1493 DDO-1493 Refactor for better decoupling/extensibility

The goal of this pr is to perform a reorganization of the code structure of sherloc's /services api end point group, with the idea that this organization structure will serve as a model for future more complex endpoint groups such as /builds and `/deploys.
There are two primary goals in this refactor.

Decouple the types used for modeling entites in the database from types used reading and writing responses to and from clients.
Decouple various layers in the system so that they are easily modifiable and testable. The goal here is to introduce separation of concerns between routing, middleware /business logic, and database /persistence layers in the code. This is achieved through the use of go's interface types. This will make routing behavior, business logic and database operations all unit testable separately and avoid dependencies in multiple parts of the system that require updates in expected locations when making code changes.

We also no longer need an extremely complex sql mocking library to unit test routing and validation or other business logic.

I actually pulled all of the changes into GoLand locally, and this looks great
The one comment I have is that I have is that we'll need to make sure we come up with some good documentation mechanism for the API. The way we have it set up now, there's no single file with all the routes. I think that makes sense from a code standpoint, just means we can't say "we don't have a swagger page but you can look at this one file for all the routes"

Great point. I think there is a tool we can use to code-gen the swagger page even if the routes are spread across multiple files but agreed with your point. This is something I need to keep in mind and look into a little more.


Refactor action related code, add Reading Commands from DB

Add reading commands from DB
Refactor actions related code, move them to actions package.

The UT failure is irrelevant, OK to merge

@huafengw Thanks. :)
Merged.


i18n(es): Update of getting-started.mdx, vercel.mdx , imports.md and markdown-content.md

What kind of changes does this PR include?

New or updated content
Translated content

Description

What does this PR change? Give us a brief description.
Updated content based on these commits as follows:
getting-started.mdx - e1b362b33161b8c1005fd0c4e941fd8478594fe2 & 7abc2abe98077d7596ebbd38b979b62c5d20ba4b
vercel.mdx - e78cc3677401b0f28e647ec8738c24e4cb50b9e0
imports.md - 7d9277c9341b01fd4128c089ecce9adeff084dc1
markdown-content.md - c065903f7f46727f4d93158141d3e3a9c8466ed1, 621b9f00498a8c5f96d839db4abd9fea7f202094, c68b05d2acef326c94b6ff42d983445e747dec0a & d7be2b759d34de14c4b1c06df0fab927150ebc25

Hey @dreyfus92! Heads up that there's one failing link here, and I bet it's because in English we changed the "Injecting frontmatter" heading to something like "modifying frontmatte programmatically." I think that's the only link that is angry right now!  :smile:

Thanks for the review @sarah11918

@kevinzunigacuellar muchas gracias por el review 💚

@kevinzunigacuellar ya hice los cambios

gracias @dreyfus92!


azure_instance class is broken

azure_instance class does not have inherited abstract methods, causes Traceback:
>>> i = azure_instance()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: Can't instantiate abstract class azure_instance with abstract methods instance_size, user_data

@syuu1228 i think the fix was done as part of https://github.com/scylladb/scylla-machine-image/pull/330, right? if yes, please close this issue

It fixed by https://github.com/scylladb/scylla-machine-image/pull/330, closing.


Implement Drawable for Pixel

In working with basic pixel examples for teaching I noticed some issues
I started on an embedded device and went with something like this which was agreeable
    display.draw((0..100).map(|i| Pixel(Point::new(i, i * 2), RgbColor::RED)));

When I wanted to draw pixels in a loop and I had to wrap in an iter, which is fine but I think we could impl for pixel?
    use embedded_graphics::pixelcolor::Rgb565;
    use core::iter;
    for x in 0..100 {
        let pixel = Pixel::<Rgb565>(Point::new(x, x * 2), RgbColor::RED);
        display.draw(iter::once(pixel));
    }

But then wanted to move to simulator and neither of those work. Simulator has drawtarget for draw_pixel so this does work but device doesnt have it so thats not ideal.
    for x in 0..100 {
        display.draw_pixel(Pixel(Point::new(x, x * 2), BinaryColor::On));
    }

I think we need to implement into iterator for pixels on simulator maybe?
Also I wanted to be able to a row column iterator to draw all the pixels in a region, basically like this
    display.draw((0..DISP_SIZE_X).rows(0..DISP_SIZE_Y).map(|(x, y)| {
        ///something clever
        Pixel::<Rgb565>(Point::new(xprime as i32, yprime as i32), color)
    }

but couldnt find a name for it. I PRed it to itertools to see if some variation can live there, otherwise maybe in here? Any thoughts/comments?
https://github.com/rust-itertools/itertools/pull/390

Aha, I guess that iterator IS in itertools as cartesian_product
    display.draw((0..DISP_SIZE_X).cartesian_product(0..DISP_SIZE_Y).map(|(x, y)| {
        ///something clever
        Pixel::<Rgb565>(Point::new(xprime as i32, yprime as i32), color)
    }

Id like to get a little simple pixel example with all this info for newbies

In working with basic pixel examples for teaching I noticed some issues

Great!
Which e-g version did you use? DrawTarget::draw_pixel will be available for all device drivers which support e-g 0.6, once it is released. And your code uses display.draw(drawable) which was changed to drawable.draw(&mut display) in master to make hardware acceleration possible.
Implementing Drawable for Pixel would make single pixels drawable without having to use iterators. IMO that would be a good addition to the API.

display.draw((0..DISP_SIZE_X).cartesian_product(0..DISP_SIZE_Y).map(|(x, y)| {
    ///something clever
    Pixel::<Rgb565>(Point::new(xprime as i32, yprime as i32), color)
}

Code like this will soon be supported by iterators for unstyled shapes. https://github.com/jamwaffles/embedded-graphics/issues/156#issuecomment-560014569 provides some example of these changes.

Looks like I was 0.6.0-alpha.2 in the toml but master in the simulator and that was my main problem. With 0.6.0-alpha.2 everywhere I can indeed do all three methods cross platform
    display.draw((0..100).map(|i| Pixel(Point::new(i, i * 2), BinaryColor::On)));

    use core::iter;
    for x in 0..100 {
        let pixel = Pixel::<BinaryColor>(Point::new(x, x * 4), BinaryColor::On);
        display.draw(iter::once(pixel));
    }

display.draw((0..DISP_SIZE_X).cartesian_product(0..DISP_SIZE_Y).map(|(x, y)| {
    ///something clever
    Pixel::<BinaryColor>(Point::new(xprime as i32, yprime as i32), color)
}

But I think the actionable item here would be as you said to Implementing Drawable for Pixel to remove the iter::once when people cant/wont use a functional style

I've implemented this in PR #222:
These examples all work with these changes applied:
(0..100).map(|i| Pixel(Point::new(i, i * 2), BinaryColor::On)).draw(&mut display);

for x in 0..100 {
    let pixel = Pixel::<BinaryColor>(Point::new(x, x * 4), BinaryColor::On);
    pixel.draw(&mut display);
}

use itertools::iproduct;

iproduct!(0..DISP_SIZE_X, 0..DISP_SIZE_Y)
    .map(|(x, y)| {
        let color = something_clever(x, y);
        Pixel::<BinaryColor>(Point::new(x as i32, y as i32), color)
    })
    .draw(&mut display);

I also have the 0.6.0 branch with  drawtarget implemented for st7735 https://github.com/jacobrosenthal/st7735-lcd-rs and that seems to be working.
How about cutting a new alpha release when this is merged?

I've been thinking it's about time for another alpha actually.
Looking at the issues list, I think I'd like to get #208 into master before doing another release, but that's the only thing I can see.


Tracking pixel causes 500 error?

Tried with starterkit v3.9.8 and v4.0.3
First I tried to set options like indicated in the docs:
// site/config/config.php

return [
   'debug' => true,
  'daandelange.simplestats.tracking.method' => \daandelange\SimpleStats\SimpleStatsTrackingMode::OnImage,
];

PHP promptly crashed...
I ended up changing the setting directly in src/config/options.php
Then I put <?= $page->simpleStatsImage() ?> right before the </body> tag, which generates the following:
<img alt="simplestats counter pixel" class="simplestats-image" height="1" loading="lazy" src="http://localhost:81/starterkit-4.0.3/notes/counter.png" style="position: absolute; right: 0; pointer-events: none; height: 1px; width: 1px; opacity: 0;" width="1">
The src URL is the page URL + /counter.png
However it fails to load and returns 500 error in the dev console, I'm assuming this is not the intended behavior and that tracking failed.

Hi, indeed, there's an issue : the plugin is not loaded when loading the config file : SimpleStatsTrackingMode is unknown ... no idea why this used to work correctly when I implemented it.
It was probably not a good idea to use a custom variable type in the config file.
As a temp workaround, you can add this in the top of your config file (correct the path if needed!) :
require_once("./site/plugins/kirby3-simplestats/src/models/SimpleStatsTrackingMode.php");

As a temp workaround, you can add this in the top of your config file (correct the path if needed!) : require_once("./site/plugins/kirby3-simplestats/src/models/SimpleStatsTrackingMode.php");

Great, this allows me to change the setting in site/config/config.php instead of src/config/options.php.
Still getting 500 error for the actual tracking pixel though.

Are you trying in Kirby 3 ? On my side it's working in the starterkit. (4 is not yet supported)

Yes, I'm testing it with v3.9.8

Weird, I'm using Starterkit 3.9.1, I hope that's not where the error lies.
Could you try using die('Something'); at different steps in these functions to find out where it goes wrong ?
https://github.com/Daandelange/kirby3-simplestats/blob/eacec7a5df43b1383877b3fc2a6f322867b4c775/src/config/routes.php#L18-L24
https://github.com/Daandelange/kirby3-simplestats/blob/eacec7a5df43b1383877b3fc2a6f322867b4c775/src/models/SimpleStats.php#L43-L77

Same issue with v3.9.1

Can't see anything after I put in the die statements:
<?php

namespace daandelange\SimpleStats;

//return (false===option('daandelange.simplestats.tracking.onLoad', true))?[]:[
//return (SimpleStatsTrackingMode::OnImage===option('daandelange.simplestats.tracking.method', SimpleStatsTrackingMode::OnLoad))?[]:[
//var_dump(option('daandelange.simplestats.tracking.method')); die();
return [
    // Intercept counter pixel on home page
    [
        'pattern' => 'counter.png',
        'language' => '*',
        'action' => function ($language) {
            die('route intercept before');
            return SimpleStats::trackPageAndServeImageResponse( site()->homePage() );
            die('route intercept after');
        },
    ],
    // On all other pages
    [
        'pattern' => '(:all)/counter.png',
        'language' => '*',
        'action' => function ($language, $id) {
            die('route intercept all before');
            return SimpleStats::trackPageAndServeImageResponse( page($id) );
            die('route intercept all after');
        },
    ],
];

    // Generates a router response for serving the tracker image
    public static function trackPageAndServeImageResponse(Page $page){

        die('trackPageAndServeImageResponse');

        // Correct tracking method ?
        if( SimpleStatsTrackingMode::OnImage === option('daandelange.simplestats.tracking.method', SimpleStatsTrackingMode::OnLoad) ){

            // Any tracking feature is enabled ?
            if(
                true===option('daandelange.simplestats.tracking.enableDevices' , true) ||
                true===option('daandelange.simplestats.tracking.enableVisits'  , true) ||
                true===option('daandelange.simplestats.tracking.enableReferers', true) ||
                true===option('daandelange.simplestats.tracking.enableVisitLanguages', true)
            ){

                // Does the page exist ?
                if( $page && $page->exists() && $page->isPublished() ){
                    SimpleStats::safeTrack( $page->id() );
                    //return var_dump(SimpleStats::safeTrack( $page->id() ));

                    die('image generation before');

                    return new Response(base64_decode('iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVQYV2NgYAAAAAMAAWgmWQ0AAAAASUVORK5CYII='), 'image/png', 200);

                    //header('Content-Type: image/png');
                    //header("Content-type: image/png");
                    //echo  base64_decode('image/png;base64,'); // Smallest transparent PNG
                    //echo  base64_decode('iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVQYV2NgYAAAAAMAAWgmWQ0AAAAASUVORK5CYII='); // Smallest transparent PNG

                    //header("Content-type: image/gif");
                    //echo  base64_decode('R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=='); // Smallest transparent GIF
                    //echo  base64_decode('R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7'); // Smallest transparent GIF
                    //exit;

                    die('image generation after');

                }
            }
            // Unknown kirby page  or nothing to track, return 404
            return new \Kirby\Exception\ErrorPageException(['httpCode'=>410]); // Gone / Removed (with error page)
        }
        return new \Kirby\Exception\ErrorPageException(['httpCode'=>404]); // Not found (with error page)
        //return new Response(null, null, 410); // Gone / Removed (no page is served)
        //return false; // generates error page
    }

Btw. are you scrolling down the page?

Yes, my image gets loaded without scrolling, I see a 1x1 image here for example : http://kirby-maegazine/en/photography/sky/counter.png.
But wait, I think I haven't tested in mono-language starterkit (mine is multilang), and there is a language argument in routes.php, so that's probably crashing your kirby.

Great! It's working now with the single language code snippet.
Let me know if you want me to close the issue or leave it open.

I'll leave it open as this needs to be fixed, thanks for your reports :)


[5.7] re-exported synthesized extensions need to go under the base module

Explanation: @_exported imports which include an extension of a foreign type, which itself introduces synthesized symbols, currently sort those synthesized symbols incorrectly, creating a situation where a symbol isn't in the same symbol graph as its parent. The check for whether a decl is from a module being re-exported incorrectly uses the decl's module instead of the calculated extension module. This PR updates that logic.
Scope: Affects symbol graph generation for projects in the situation mentioned above.
Bug: rdar://93928003
Risk: Low. The changes are restricted to SymbolGraphGen, and should not affect normal compilation.
Testing: A new lit test, SymbolGraph/Module/ThirdOrder.swift, has been added to verify this behavior. Existing automated tests still pass.

@swift-ci Please test


Defer the Release.description column

The vast bulk of the time, when querying against a Release we do not want the description column, because the column is very large and can easily spike memory and make queries take longer, particularly when loading multiple Releases.
Instead we will defer the column so that fetching it requires making another query or explicitly un-defering it. This will cause an extra query to happen on views that do not have direct control over the query (e.g. ones using the Pyramid Context objects) but the impact of a single extra query on these pages is pretty low while the impact of loading this column by default is playing a whack-a-mole game with any query against Release to add a load_only() or defer() option.

I'll create a second PR for the load_only() calls, wanted to keep them separate because some of the load_only() calls may still make sense.

🚢


Thief/Shadow Force's particle effect does not load properly

Steps to reproduce:

Enter any dungeon
Find a foe and use Thief on that foe
A debug magenta checkerboard texture will appear instead of a particle effect. The following error will be printed to the console:

Exception Depth: 0
System.Exception: Error loading /[PATH]/PMDO/Content/Particle/Shadow_Force_Hit.dir

 ---> System.IO.EndOfStreamException: Unable to read beyond the end of the stream.
   at System.IO.BinaryReader.InternalRead(Int32 numBytes)
   at System.IO.BinaryReader.ReadInt32()
   at RogueEssence.Content.DirSheet.Load(BinaryReader reader)
   at RogueEssence.Content.GraphicsManager.GetAttackSheet(String name)
   --- End of inner exception stack trace ---

Exception Depth: 1
System.IO.EndOfStreamException: Unable to read beyond the end of the stream.
   at System.IO.BinaryReader.InternalRead(Int32 numBytes)
   at System.IO.BinaryReader.ReadInt32()
   at RogueEssence.Content.DirSheet.Load(BinaryReader reader)
   at RogueEssence.Content.GraphicsManager.GetAttackSheet(String name)

Fix in
https://github.com/audinowho/PMDODump/commit/083eeb17557988764dd88807a227e974bab5a6c5


OpenCV Error: Assertion failed (The data should normally be NULL!)

This looks to be an issue with opencv and python 2.7 using the Flann sub modules
C:\Python27\python.exe C:/canming/flann.py
OpenCV Error: Assertion failed (The data should normally be NULL!) in NumpyAllocator::allocate, file C:\opencv\sources\modules\python\src2\cv2.cpp, line 163
Traceback (most recent call last):
File "C:/canming/flann.py", line 22, in
matches =  flann.knnMatch(des1,des2,k=2)
cv2.error: C:\opencv\sources\modules\python\src2\cv2.cpp:163: error: (-215) The data should normally be NULL! in function NumpyAllocator::allocate
Process finished with exit code 1

duplicate #5667


Documentation/Examples should include Content-Type header

Hi Guys, the examples omit the Content-Type header for the httpRequest while using POST body. Many http frameworks will ignore the POST body if no Content-Type-Request-Header is set. I think its bad practice to provide examples that probably wont work as expected because that header is missing.
Environment details

OS: GCF
Node.js version: 16
npm version: 8.13.2
@google-cloud/tasks version: ^3.0.0

Steps to reproduce

follow example
receive no req.body in URL that's being called (in my case a GCF using the node/http variety (express))

Hi @Mtillmann, thanks for taking the time to create this issue.
Do you mind adding a little more color so we can re-create the problem you found and resolve this issue effectively?
Will need the following:

Links to the exact sample/examples you saw this issue (if multiple, please list)
Your code that followed the examples. (If you ran one of the samples straight, please indicate)

I dispatch an http nodejs16 google cloud function from a task. When I initially followed the example the payload was never received by my cloud function. After some debugging I found out that express relies on the content-type request header to be present, otherwise it will not parse the post body. Of course this is a general issue but I feel that it should be included in the examples that show how to use the payload.

Basically the object here : https://github.com/googleapis/nodejs-tasks/blob/main/samples/createHttpTask.js#L52
should look like this

 const task = {
   httpRequest: {
   headers: {
      'Content-Type': 'application/json'
    },
     httpMethod: 'POST',
     url,
  },
};


Provide latest export

This removes the obscure syntax used for picking the latest package.
"latest" isn't the greatest name since this just corresponds to not
specifying a version. It could be taken from the pip cache and not be
the absolute latest.
Fixes #50

Codecov Report

Merging #85 (4656264) into master (ce5ee86) will decrease coverage by 1.18%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master      #85      +/-   ##
==========================================
- Coverage   92.78%   91.60%   -1.19%
==========================================
  Files           5        5
  Lines         499      500       +1
==========================================
- Hits          463      458       -5
- Misses         36       42       +6

Impacted Files
Coverage Δ

riot/__init__.py
100.00% <100.00%> (ø)

riot/riot.py
84.71% <0.00%> (-2.48%)
:arrow_down:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update ce5ee86...4656264. Read the comment docs.

Being a constant, we should use all caps.


Yearly copyright update

Requirements

Filling out the template is required. Any pull request that does not include enough information to be reviewed in a timely manner may be closed at the maintainers' discretion;
Review the contributing guidelines for this repository; remember in particular:

do not modify code without testing for regression
provide simple unit tests to test the changes
if you change the schema you must patch the test databases as well, see Updating the schema
the PR must not fail unit testing

Description
2019 yearly copyright update
Use case
Describe the problem. Please provide an example representing the motivation behind the need for having these changes in place.
Benefits
If applicable, describe the advantages the changes will have.
Possible Drawbacks
If applicable, describe any possible undesirable consequence of the changes.
Testing
Have you added/modified unit tests to test the changes?
If so, do the tests pass/fail?
Have you run the entire test suite and no regression was detected?

Pull Request Test Coverage Report for Build 594

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 82.148%

Totals

Change from base Build 589:
0.0%

Covered Lines:
4183

Relevant Lines:
5092

💛  - Coveralls


Readbility's title

Readability pulls its article title from the title tag right? Well more often than not, the title tag has a whole lot of other information besides just the title of the article. It usually includes the title of the site itself and sometimes a category.
I know the original readability script just grabbed the title, but I'm wondering if this version of the script can be modified to grab the actual title of the article from the markup. It seems as though the scoring system is set up to exclude the header tag that contains the article title.
Example:

Article title

      Claritatem insitam; est usus legentis in iis qui facit eorum claritatem.
      Investigationes demonstraverunt lectores legere me lius quod ii legunt
      saepius. Claritas est etiam processus dynamicus, qui sequitur mutationem
      consuetudium lectorum. Mirum est notare quam littera gothica, quam nunc
      putamus parum claram, anteposuerit litterarum formas humanitatis per seacula
      quarta decima et quinta decima. Eodem modo typi, qui nunc nobis videntur
      parum clari, fiant sollemnes in futurum.

      Nunc varius risus quis nulla. Vivamus vel magna. Ut rutrum. Aenean
      dignissim, leo quis faucibus semper, massa est faucibus massa, sit amet
      pharetra arcu nunc et sem. Aliquam tempor. Nam lobortis sem non urna.
      Pellentesque et urna sit amet leo accumsan volutpat. Nam molestie lobortis
      lorem. Quisque eu nulla. Donec id orci in ligula dapibus egestas. Donec sed
      velit ac lectus mattis sagittis.

In the above example, readability will always grab the content from .article-content and not the
 tag itself. What can I do to modify the script to grab the whole article, title and all?

Sorry to necro this issue. Yes, that's right @tybenz, it only scores
,  and their parents and grand parents.
Today I opened a pull request to allow you to specify other nodes to score, such as
 elements that might be nested inside a  element which would not be included in the list of candidates.
https://github.com/cantino/ruby-readability/pull/93


whitespace?: "preserve" | "condense" | undefined

Related plugins

[X] plugin-vue

[ ] plugin-vue-jsx

Describe the bug
I want to remove all spaces. How it works ?
whitespace?: "preserve" | "condense" | undefined
In vue-loader, use vue-template-compiler, but in vite, how to do it ?
just like it:
PreserveWhitespace

The default is true. This means that the compiled rendering function will retain all spaces between HTML tags. If set to false, spaces between labels will be ignored. This can slightly improve performance but may affect the layout of inline elements.

Reproduction
0
Steps to reproduce
No response
System Info
0

Used Package Manager
npm
Logs
No response
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Make sure this is a Vite issue and not a framework-specific issue. For example, if it's a Vue SFC related bug, it should likely be reported to vuejs/core instead.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [
    vue({
      template: {
        compilerOptions: {
          whitespace: 'condense'
        }
      }
    }),
  ]
})

https://vuejs.org/api/application.html#app-config-compileroptions-whitespace


Unable to use Python 3.12 due to aiohttp dependency unable to build wheel.

Describe the bug
I am sure that aiohttp will catch up, but meanwhile, I figure I would through this on your radar for potential work around.
To Reproduce
Running Python 3.12.0
pip install openai
Code snippets
No response
OS
any
Python version
3.12.0
Library version
current

Thanks, this is a known issue with the current SDK, however there are workarounds - https://github.com/openai/openai-python/issues/645.
This has been fixed in our v1 beta as we've switched to httpx which is a pure python library.

@RobertCraigie You are beautiful! Thank you! Playing in V1 beta now! Thanks!!! @RobertCraigie


V6.1.9 makes it extremely difficult to add style to the outer div of a Dialog component

Bug type
Component
Component name
MudDialog
What happened?
I am not able to reach the marked div, which seems to sit between the MudDialog and the DialogContent component.

It might be due to this change to MudFocusTrap, which adds a div without style or class.

Expected behavior
I would like to be able to reach all levels of the html tags e.g. divs, so I can control how the component behaves.
Reproduction link
I hope it is clear what the problem is
Reproduction steps
Doesn't seem relevant
Relevant log output
No response
Version (bug)
6.1.9
Version (working)
6.1.6
What browsers are you seeing the problem on?
Chrome
On what operating system are you experiencing the issue?
Windows
Pull Request

[ ] I would like to do a Pull Request

Code of Conduct

[X] I agree to follow this project's Code of Conduct

+1 on this one.
I'm having the same issue with my Fullscreen dialogs after updating.

Should be largely remedied by #8785.


Adjudicate "substantive changes" to the SharePoint Online Baseline Markdown

💡 Summary
This issue captures the high-level tasks required to convert the existing SHAREPOINT ONLINE Secure Configuration Baseline document to a new structure based on the existing markdown format.  The updates will include reordering and regrouping of existing policy items, additional fields for each policy item, and policy changes to clarify relative to existing implementation guidance.
Motivation and context
The new baseline policy document format will provide additional clarity to readers and support better automated assessment of baseline policy items for SHAREPOINT ONLINE.
Implementation notes
In order to make the changes referenced above, the following tasks will need to be accomplished:

[x] CREATE and NUMBER policy group statements based on existing policy areas using updated markdown files found in #212 and its associated branch

[ ] REMOVE “SHALL” and “SHOULD” language from new policy group statements
[x] RENAME policy groups to cover associated policies (Naming should be descriptive vice prescriptive)
[x] REGROUP baseline policies that are better orientated to the new Group Name if needed
[x] CREATE short 1-2 sentence summary for each policy group

[ ] ADD Rationale section and text for each policy
Note: Suggested format for Rationale

1st sentence: Security risk if policy is not implemented.
2nd sentence: How this policy minimizes this risk.

[x] UPDATE policy item description to match the desired best practice and synchronize with implementation steps (e.g., setting should be 30 days or less when implementation shows setting days to <= 30)

Acceptance criteria
How do we know when this work is done?

[x] SHAREPOINT ONLINE baseline markdown has been updated with new policy groups and all policy items reordered into those groups
[x] All SHAREPOINT ONLINE baseline policy groups have been numbered
[x] Each SHAREPOINT ONLINE policy group contains a concise and clear 1-2 sentence summary
[ ] Each SHAREPOINT ONLINE policy item contains a Rationale section using the suggested format
[x] Each SHAREPOINT ONLINE policy item has been reviewed and updated to synchronize with the implementation steps

2 Quick questions:

Should we have a tag or some sort of indicator for "optional steps"? This is when if a agency chooses to ignore or cannot do a specific policy that affects further policies down the line. Fore example A is not done, so they cannot do B. Or they cannot do A, so B should be done instead, but not done if A is.

Should we have an additional post script note in each policy that is being rolled over from the old baseline format? For example:
   MS.ONEDRIVE.2.1v1   OneDrive Client SHALL Be Restricted to Windows for Agency-Defined Domain(s).       •  Rationale: TODO       •  Last modified: June 2023   Note: Previous version 2.2

2 Quick questions:

Should we have a tag or some sort of indicator for "optional steps"? This is when if a agency chooses to ignore or cannot do a specific policy that affects further policies down the line. Fore example A is not done, so they cannot do B. Or they cannot do A, so B should be done instead, but not done if A is.
Should we have an additional post script note in each policy that is being rolled over from the old baseline format? For example:

    MS.ONEDRIVE.2.1v1
    OneDrive Client SHALL Be Restricted to Windows for Agency-Defined Domain(s).
        •  Rationale: TODO
        •  Last modified: June 2023
    Note: Previous version 2.2

My opinion:

I think we can add an note at the end of the policy indicate that if there is a dependency to clarify
Since we are starting to rewrite the baseline and giving it a v1 i think it might be okay not have that note, but i I would refer that question to @ahuynhMITRE for his input since we are trying to keep consistency throughout all docs

I agree with @Dylan-MITRE's notion of a note at the end of policy indicating dependencies.
no note at this time since this will be our v1.0; added and removed policies will have indicators going forward though!

Not the last question, but can dream. @ahuynhMITRE are you planning to have all the baseline changes in the branch 212-adjudicate-structural-changes-to-all-baseline-markdowns or make a separate branch for each baseline?

@tkol2022 I have updated the baseline for all the issues submitted, just need help with the rationals. Also for clarification are we still removing the should & shall language, because power bi is a current pull request without those changes. If so what is the preferred method to go about it. Thanks!

Thanks!

The SHALL and SHOULD is to be removed only from the group introduction paragraph. So check all your section intros.
Leave the Rationale empty. Assign a new issue to @schrolla to write the rationales.
Also, I believe the Implementation section needs to be associated with each detailed policy. So each policy will have its own implementation section. @ahuynhMITRE can you confirm this and ensure that everybody is clear on that so we have consistency across the board.

Thanks!

The SHALL and SHOULD is to be removed only from the group introduction paragraph. So check all your section intros.
Leave the Rationale empty. Assign a new issue to @schrolla to write the rationales.
Also, I believe the Implementation section needs to be associated with each detailed policy. So each policy will have its own implementation section. @ahuynhMITRE can you confirm this and ensure that everybody is clear on that so we have consistency across the board.

Confirm that the current direction is to have an implementation section for each policy. This was also a note Ethan stressed as well!

@ahuynhMITRE Just to tease out what exactly "an implementation for each policy" means... does that mean we have something like this:
MS.PRODUCT.1.1v1
Blah blah
Implementation
This is how we implement MS.PRODUCT.1.1v1.
MS.PRODUCT.1.2v1
Blah blah
Or more like how it shows now in SharePoint where we have all policies in a group and the separate Implementation section for ALL of them, but with each policy item getting its own section of the Implementation like so
Policies
MS.PRODUCT.1.1v1
Blah blah blah
#### MS.PRODUCT.1.2v1
Blah blah blah
#### MS.PRODUCT.1.3v1
blah blah blah
Implementation
MS.PRODUCT.1.1v1, in the Product admin center: do these things
MS.PRODUCT.1.2v1, Go to the Product settings page and do some other things
MS.PRODUCT.1.3v1, Go to the security settings and do yet more and different things here
Because both formats provide a separate implementation section for each policy, but are quite different in structure.

Good point on the clarification @schrolla! I am inclined to lean towards how is is shown in SharePoint with a single implementation section per group with distinct steps for each policy. Though this comes my bias that this will be easier when separating out the steps into the wiki / limit the human errors with cutting an reformatting if the steps are spread throughout the bodies of policies. Any preferences from anyone else?

I will type it up as a "style guide" and add the details to @Dylan-MITRE's issue #361 and tag all of the authors for awareness! I will also dictate section ordering as well to address @schrolla's issue #371

closed