Fails in a Proxy

So I have a simple Rack proxy in my Rails app that simply proxies certain requests...
require 'rack/proxy'

class Webpack::DevServerProxy < Rack::Proxy
  def perform_request(env)
    # does something here...

    @app.call(env)
  end
end

Running Fastentry results in an ArgumentError exception: Unsupported cache type on @app.call(env).
Any ideas? thx

Hi @joelmoss, thanks for reporting that issue. I'll try to setup an app with a proxy to investigate what might be the issue. In the meantime, if you figure out what's the problem, please let me know.

@joelmoss in order for me to accurately test what might be wrong, can you tell me what cache type are you using on your app? Thanks

@joelmoss in order for me to accurately test what might be wrong, can you tell me what cache type are you using on your app? Thanks

I've tested it with rack_proxy_examples/example_service_proxy and it seems to work just fine so it's probably something else.

hmm, will dig a little further. thx

@joelmoss closing for now but let me know if you still have any issues. Thanks


Escaped double-quote " is not shown as escaped in example

Tested on<EMAIL_ADDRESS>
My schema has a string field which stores JSON template like
body:
    type: string
    example: "{\"message\": \"test\"}"

or
body:
    type: string
    example: '{"message": "test"}'

But both of them are shown like

where double-quote " is shown directly, therefore the response exmple looks like broken.
I think doubel-quote are escaped and shown like \".

Closing as self-resolved.
We should write example with escaping like this.
example: '{\\"message\\": \\"test\\"}'

I think this is issue. Escape should be with single \, not `\'
    example: "{\"message\": \"test\"}"

Sorry many times.
` example: "{\"message\": \"test\"}"`

ReDoc can handle the above.


POC: Allow take to handle slicing

Proof of concept: change take to handle slicing.
See also #119 and #115

This is a cool extension of the API! I'm concerned about documenting this for students to use. Right now Table.take is documented and the removal of that (since _Taker is private) might not allow Table.take to be documented as well.
As an aside: This functionality probably wouldn't be taught to students (who already have a lot of trouble differentiating between when to use brackets and parens).

We could teach the next cohort to only use square brackets for indexing
(colums, take, etc.)
Good point about the documentation, although I think I can fix that fairly
easily. I'll give it a shot and update this PR!
On Oct 11, 2015 1:00 PM, "Sam Lau"<EMAIL_ADDRESS>wrote:

This is a cool extension of the API! I'm concerned about documenting this
for students to use. Right now Table.take is documented and the removal
of that (since _Taker is private) might not allow Table.take to be
documented as well.
As an aside: This functionality probably wouldn't be taught to students
(who already have a lot of trouble differentiating between when to use
brackets and parens).
—
Reply to this email directly or view it on GitHub
https://github.com/dsten/datascience/pull/120#issuecomment-147239677.

@stefanv, could you go into more detail about why you implemented a separate getitem method instead of just adding handling of slices to take.call (and sticking to the original method definition)?
 :D

Sure, it's because you cannot do t.take(:14).

Updated to alias take() to take[]

The docstring also seems to be fine, at least from inside IPython.

Does Table.take still show up on the docs after running make docs?

Fix the Sphinx doc.

Now depends on PR #127

Sorry for the delay on merging this! So the verdict on this is that:

The previous behavior of take is preserved, and we will teaching students that syntax (eg. table.take(range(5))).
The new behavior allows for more succinct taking of rows from a table.

To that end, could we write examples that call take using the old syntax first in the docs? Then, we can "translate them" to the indexing/slicing syntax with a note that the two are equivalent. The reason for this is that students will be looking at these docs to learn how to use the method and I'd err on the side of being clear.

I've updated the documentation—let me know if that is what you had in mind.

This looks great! Thanks for the hard work on this.


Anyway to restate theorem in external file?

Hi,
Thanks for maintaining this nice package. I was wondering if there's a way to use thm-restate so that the restatement is in a separate file? In particular, is there a way to integrate with the xr package?

New CTAN package reptheorem (https://www.ctan.org/pkg/reptheorem) may help.


fix: fix extra insert for count on dataset creation

SUMMARY

Removing additional count() metric save, when .fetch_metadata() actually handles that work 😅
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

TESTING INSTRUCTIONS

ADDITIONAL INFORMATION

[ ] Has associated issue:
[ ] Required feature flags:
[ ] Changes UI
[ ] Includes DB Migration (follow approval process in SIP-59)

[ ] Migration is atomic, supports rollback & is backwards-compatible
[ ] Confirm DB migration upgrade and downgrade tested
[ ] Runtime estimates and downtime expectations provided

[ ] Introduces new feature or API
[ ] Removes existing feature or API

🏷 preset:2023.27


eval-config.nix: there is no _module in lib.evalModules`s return

Also inherit (_module.args) pkgs; might be removed, it was broken for long time which ensures nobody uses it

Not relevant anymore, lib.evalModules returns _module (again?)


Popups preventing me from leaving page, always, why?

Azure documentation issue guidance
Thanks for opening an issue in the Azure technical documentation repository.
We use GitHub issues as the primary channel for customer and community feedback about the Azure documentation.
Creating an issue
We prefer that you create documentation feedback issues using the Feedback link on the published article - the feedback control on the doc page creates an issue that contains all the article details so you can focus on the feedback part.
You can also create a feedback issue here in the repo. If you do this, please make sure your issue lists:

[ ] The relevant Azure service or technology.
[ ] A link to the published documentation article that you have feedback about.
[ ] Clear, specific feedback that the author can act on.

Pull requests and article contributions
If you know the change that is needed in an article, we encourage you to submit the changes directly using a pull request. If the change is large, or if you want to contribute an entire article, follow these guidelines:

[ ] Don't surprise us with a big pull request or a pull request with a new article! Submit an issue that describes the details of the proposed large change or new article.
[ ] Include the service or technology area.

We'll route the issue to the appropriate content team for review and discussion.
Tech support and product feedback
If you would like to contact Microsoft about other things, such as product feedback or tech support, please review these guidelines:

If you need technical support using Azure, the paid and free support options are described here: https://azure.microsoft.com/support/options/.

Each article in the Azure technical documentation contains a product feedback button - it's best to submit product feedback directly from a relevant article. Otherwise, you can submit product feedback for most Azure products in the following product feedback forum: https://feedback.azure.com/d365community/forum/79b1327d-d925-ec11-b6e6-000d3a4f06a4.

@MatsSvenssonNewseed
It would be great if you could add a link to the documentation you are following for these steps? This would help us redirect the issue to the appropriate team. Thanks!

I haven't found any documentation for this.
But it happens om every single page with log queries, and plenty of other pages too.
I guess some junior dev just discovered the  beforeunload event, and really wanted to get a lot of use out of it.

Hi @MatsSvenssonNewseed
Thanks for your contribution. Please add your ideas in below link, so our production team can review it and update the same.
Ideas · Community (azure.com)

@MatsSvenssonNewseed
We are going to close this thread, if there are any further questions regarding the documentation, please tag me in your reply and we will be happy to continue the conversation.


Galactic - MoveIt Planning Library doesn't load

Running ROS2 Galactic and tried installing UR ROS2 drivers for Galactic from binary and source and get the same results.
Per the documentation, I run this command in one terminal without issue:
ros2 launch ur_bringup ur_control.launch.py ur_type:=ur5e robot_ip:=yyy.yyy.yyy.yyy use_fake_hardware:=true launch_rviz:=false initial_joint_controller:=joint_trajectory_controller
Then I run this command in another terminal to bring up Rviz and MoveIt:
ros2 launch ur_moveit_config ur_moveit.launch.py ur_type:=ur5e launch_rviz:=true
Rviz opens up with a UR5e, but motion planning library refuses to load.

Here is the terminal output from the ur_moveit.launch.py command:
cobot@cobot-Precision-7560:~$ ros2 launch ur_moveit_config ur_moveit.launch.py ur_type:=ur5e launch_rviz:=true
[INFO] [launch]: All log files can be found below /home/cobot/.ros/log/2022-07-15-21-52-22-195823-cobot-Precision-7560-92544
[INFO] [launch]: Default logging verbosity is set to INFO
[INFO] [move_group-1]: process started with pid [92552]
[ERROR] [move_group-1]: process has died [pid 92552, exit code 127, cmd '/opt/ros/galactic/lib/moveit_ros_move_group/move_group --ros-args --params-file /tmp/launch_params_6vdqrb6q --params-file /tmp/launch_params_vd7qwrh4 --params-file /home/cobot/workspace/ros_ur_driver/install/ur_moveit_config/share/ur_moveit_config/config/kinematics.yaml --params-file /tmp/launch_params_pf32um75 --params-file /tmp/launch_params_8y6py06t --params-file /tmp/launch_params_crp9a_qc --params-file /tmp/launch_params_766uk6lc --params-file /tmp/launch_params_8qh00f2d'].
[INFO] [mongo_wrapper_ros.py-2]: process started with pid [92554]
[INFO] [rviz2-3]: process started with pid [92556]
[INFO] [servo_node_main-4]: process started with pid [92558]
[ERROR] [servo_node_main-4]: process has died [pid 92558, exit code 127, cmd '/opt/ros/galactic/lib/moveit_servo/servo_node_main --ros-args --params-file /tmp/launch_params_yzlur3di --params-file /tmp/launch_params_jmcpi9xv --params-file /tmp/launch_params_66i3eir9'].
[move_group-1] /opt/ros/galactic/lib/moveit_ros_move_group/move_group: error while loading shared libraries: libbackward.so: cannot open shared object file: No such file or directory
[servo_node_main-4] /opt/ros/galactic/lib/moveit_servo/servo_node_main: error while loading shared libraries: libbackward.so: cannot open shared object file: No such file or directory
[mongo_wrapper_ros.py-2] [INFO] [1657936342.950759074] [mongodb]: Starting mongodb with db location /tmp/db listening on localhost:33829
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:22.979-0400 I CONTROL  [initandlisten] MongoDB starting : pid=92580 port=33829 dbpath=/tmp/db 64-bit host=cobot-Precision-7560
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:22.979-0400 I CONTROL  [initandlisten] db version v3.6.8
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:22.979-0400 I CONTROL  [initandlisten] git version: 8e540c0b6db93ce994cc548f000900bdc740f80a
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:22.979-0400 I CONTROL  [initandlisten] OpenSSL version: OpenSSL 1.1.1f  31 Mar 2020
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:22.979-0400 I CONTROL  [initandlisten] allocator: tcmalloc
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:22.979-0400 I CONTROL  [initandlisten] modules: none
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:22.979-0400 I CONTROL  [initandlisten] build environment:
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:22.979-0400 I CONTROL  [initandlisten]     distarch: x86_64
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:22.979-0400 I CONTROL  [initandlisten]     target_arch: x86_64
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:22.979-0400 I CONTROL  [initandlisten] options: { net: { port: 33829 }, storage: { dbPath: "/tmp/db" } }
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:22.980-0400 I -        [initandlisten] Detected data files in /tmp/db created by the 'wiredTiger' storage engine, so setting the active storage engine to 'wiredTiger'.
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:22.980-0400 I STORAGE  [initandlisten]
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:22.980-0400 I STORAGE  [initandlisten] ** WARNING: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:22.980-0400 I STORAGE  [initandlisten] **          See http://dochub.mongodb.org/core/prodnotes-filesystem
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:22.980-0400 I STORAGE  [initandlisten] wiredtiger_open config: create,cache_size=15142M,session_max=20000,eviction=(threads_min=4,threads_max=4),config_base=false,statistics=(fast),cache_cursors=false,compatibility=(release="3.0",require_max="3.0"),log=(enabled=true,archive=true,path=journal,compressor=snappy),file_manager=(close_idle_time=100000),statistics_log=(wait=0),verbose=(recovery_progress),
[rviz2-3] [INFO] [1657936343.111337742] [rviz2]: Stereo is NOT SUPPORTED
[rviz2-3] [INFO] [1657936343.111396487] [rviz2]: OpenGl version: 4.6 (GLSL 4.6)
[rviz2-3] [INFO] [1657936343.120059445] [rviz2]: Stereo is NOT SUPPORTED
[rviz2-3] Warning: class_loader.impl: SEVERE WARNING!!! A namespace collision has occured with plugin factory for class rviz_default_plugins::displays::InteractiveMarkerDisplay. New factory will OVERWRITE existing one. This situation occurs when libraries containing plugins are directly linked against an executable (the one running right now generating this message). Please separate plugins out into their own library or just don't link against the library and use either class_loader::ClassLoader/MultiLibraryClassLoader to open.
[rviz2-3]          at line 253 in /opt/ros/galactic/include/class_loader/class_loader_core.hpp
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:23.209-0400 I STORAGE  [initandlisten] WiredTiger message [1657936343:209372][92580:0x7f4d0140ff40], txn-recover: Main recovery loop: starting at 9/9472
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:23.267-0400 I STORAGE  [initandlisten] WiredTiger message [1657936343:267854][92580:0x7f4d0140ff40], txn-recover: Recovering log 9 through 10
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:23.310-0400 I STORAGE  [initandlisten] WiredTiger message [1657936343:310008][92580:0x7f4d0140ff40], txn-recover: Recovering log 10 through 10
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:23.339-0400 I STORAGE  [initandlisten] WiredTiger message [1657936343:339106][92580:0x7f4d0140ff40], txn-recover: Set global recovery timestamp: 0
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:23.351-0400 I CONTROL  [initandlisten]
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:23.351-0400 I CONTROL  [initandlisten] ** WARNING: Access control is not enabled for the database.
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:23.351-0400 I CONTROL  [initandlisten] **          Read and write access to data and configuration is unrestricted.
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:23.351-0400 I CONTROL  [initandlisten]
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:23.351-0400 I CONTROL  [initandlisten] ** WARNING: This server is bound to localhost.
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:23.351-0400 I CONTROL  [initandlisten] **          Remote systems will be unable to connect to this server.
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:23.351-0400 I CONTROL  [initandlisten] **          Start the server with --bind_ip <address> to specify which IP
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:23.351-0400 I CONTROL  [initandlisten] **          addresses it should serve responses from, or with --bind_ip_all to
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:23.351-0400 I CONTROL  [initandlisten] **          bind to all interfaces. If this behavior is desired, start the
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:23.351-0400 I CONTROL  [initandlisten] **          server with --bind_ip <IP_ADDRESS> to disable this warning.
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:23.351-0400 I CONTROL  [initandlisten]
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:23.373-0400 I FTDC     [initandlisten] Initializing full-time diagnostic data capture with directory '/tmp/db/diagnostic.data'
[mongo_wrapper_ros.py-2] 2022-07-15T21:52:23.373-0400 I NETWORK  [initandlisten] waiting for connections on port 33829
[rviz2-3] [ERROR] [1657936346.188811004] [moveit_ros_visualization.motion_planning_frame]: Action server: /recognize_objects not available
[rviz2-3] [INFO] [1657936346.260605419] [moveit_rdf_loader.rdf_loader]: Loaded robot model in 0.00230597 seconds
[rviz2-3] [INFO] [1657936346.260677196] [moveit_robot_model.robot_model]: Loading robot model 'ur'...
[rviz2-3] [INFO] [1657936346.260686887] [moveit_robot_model.robot_model]: No root/virtual joint specified in SRDF. Assuming fixed joint
[rviz2-3] Link base_link had 2 children
[rviz2-3] Link base had 0 children
[rviz2-3] Link base_link_inertia had 1 children
[rviz2-3] Link shoulder_link had 1 children
[rviz2-3] Link upper_arm_link had 1 children
[rviz2-3] Link forearm_link had 1 children
[rviz2-3] Link wrist_1_link had 1 children
[rviz2-3] Link wrist_2_link had 1 children
[rviz2-3] Link wrist_3_link had 2 children
[rviz2-3] Link flange had 1 children
[rviz2-3] Link tool0 had 0 children
[rviz2-3] Link ft_frame had 0 children
[rviz2-3] [INFO] [1657936346.305871489] [moveit_ros.planning_scene_monitor.planning_scene_monitor]: Starting planning scene monitor
[rviz2-3] [INFO] [1657936346.306438216] [moveit_ros.planning_scene_monitor.planning_scene_monitor]: Listening to '/monitored_planning_scene'
[rviz2-3] [INFO] [1657936346.454572329] [interactive_marker_display_94099554372016]: Connected on namespace: /rviz_moveit_motion_planning_display/robot_interaction_interactive_marker_topic
[rviz2-3] Link base_link had 2 children
[rviz2-3] Link base had 0 children
[rviz2-3] Link base_link_inertia had 1 children
[rviz2-3] Link shoulder_link had 1 children
[rviz2-3] Link upper_arm_link had 1 children
[rviz2-3] Link forearm_link had 1 children
[rviz2-3] Link wrist_1_link had 1 children
[rviz2-3] Link wrist_2_link had 1 children
[rviz2-3] Link wrist_3_link had 2 children
[rviz2-3] Link flange had 1 children
[rviz2-3] Link tool0 had 0 children
[rviz2-3] Link ft_frame had 0 children
[rviz2-3] [INFO] [1657936346.465233298] [interactive_marker_display_94099554372016]: Sending request for interactive markers
[rviz2-3] [INFO] [1657936346.498504723] [interactive_marker_display_94099554372016]: Service response received for initialization
[rviz2-3] [INFO] [1657936351.457437385] [moveit_ros.planning_scene_monitor.planning_scene_monitor]: Failed to call service get_planning_scene, have you launched move_group or called psm.providePlanningSceneService()?
[rviz2-3] [INFO] [1657936351.457607401] [moveit_ros_visualization.motion_planning_frame]: group ur_manipulator
[rviz2-3] [INFO] [1657936351.457618765] [moveit_ros_visualization.motion_planning_frame]: Constructing new MoveGroup connection for group 'ur_manipulator' in namespace ''
[rviz2-3] [WARN] [1657936351.457914700] [rcl.logging_rosout]: Publisher already registered for provided node name. If this is due to multiple nodes with the same name then all logs for that logger name will go out over the existing publisher. As soon as any node with that name is destructed it will unregister the publisher, preventing any further logs for that name from being published on the rosout topic.
[rviz2-3] [INFO] [1657936411.465258918] [move_group_interface]: Ready to take commands for planning group ur_manipulator.
[rviz2-3] [INFO] [1657936411.465295129] [move_group_interface]: Looking around: no
[rviz2-3] [INFO] [1657936411.465304769] [move_group_interface]: Replanning: no

Any assistance is greatly appreciated!  Thanks

This seems to be a dependency problem. We have recently updated the package's dependencies and have not made a binary release since.
Since you already tried a source install: Did you call the rosdep install command after cloning / updating to the latest galactic commit?
Could you please post the output of apt search ros-galactic-moveit? This should print the state of all moveit packages whether they are installed or not. If there's a package missing, we should find it there.

I have the same error with the galactic branch. I built from source and called  rosdep install . Here is the output of apt search ros-galactic-moveit:
ros-galactic-moveit/focal 2.3.4-1focal.20220526.154855 amd64
  Meta package that contains all essential packages of MoveIt 2

ros-galactic-moveit-chomp-optimizer-adapter/focal 2.3.4-1focal.20220514.025535 amd64
  MoveIt planning request adapter utilizing chomp for solution optimization

ros-galactic-moveit-chomp-optimizer-adapter-dbgsym/focal 2.3.4-1focal.20220514.025535 amd64
  debug symbols for ros-galactic-moveit-chomp-optimizer-adapter

ros-galactic-moveit-common/focal 2.3.4-1focal.20220430.053314 amd64
  Common support functionality used throughout MoveIt

ros-galactic-moveit-configs-utils/focal,now 2.3.4-1focal.20220526.150119 amd64 [installed,automatic]
  Python library for loading moveit config parameters in launch files

ros-galactic-moveit-core/focal,now 2.3.4-1focal.20220514.022605 amd64 [installed,automatic]
  Core libraries used by MoveIt

ros-galactic-moveit-core-dbgsym/focal 2.3.4-1focal.20220514.022605 amd64
  debug symbols for ros-galactic-moveit-core

ros-galactic-moveit-hybrid-planning/focal 2.3.4-1focal.20220601.135034 amd64
  Hybrid planning components of MoveIt 2

ros-galactic-moveit-hybrid-planning-dbgsym/focal 2.3.4-1focal.20220601.135034 amd64
  debug symbols for ros-galactic-moveit-hybrid-planning

ros-galactic-moveit-kinematics/focal,now 2.3.4-1focal.20220526.150941 amd64 [installed]
  Package for all inverse kinematics solvers in MoveIt

ros-galactic-moveit-kinematics-dbgsym/focal 2.3.4-1focal.20220526.150941 amd64
  debug symbols for ros-galactic-moveit-kinematics

ros-galactic-moveit-msgs/focal,now 2.2.0-1focal.20220430.125544 amd64 [installed,automatic]
  Messages, services and actions used by MoveIt

ros-galactic-moveit-msgs-dbgsym/focal 2.2.0-1focal.20220430.125544 amd64
  debug symbols for ros-galactic-moveit-msgs

ros-galactic-moveit-planners/focal 2.3.4-1focal.20220526.154721 amd64
  Meta package that installs all available planners for MoveIt

ros-galactic-moveit-planners-chomp/focal 2.3.4-1focal.20220514.025537 amd64
  The interface for using CHOMP within MoveIt

ros-galactic-moveit-planners-chomp-dbgsym/focal 2.3.4-1focal.20220514.025537 amd64
  debug symbols for ros-galactic-moveit-planners-chomp

ros-galactic-moveit-planners-ompl/focal,now 2.3.4-1focal.20220514.031330 amd64 [installed]
  MoveIt interface to OMPL

ros-galactic-moveit-planners-ompl-dbgsym/focal 2.3.4-1focal.20220514.031330 amd64
  debug symbols for ros-galactic-moveit-planners-ompl

ros-galactic-moveit-plugins/focal 2.3.4-1focal.20220514.025538 amd64
  Metapackage for MoveIt plugins.

ros-galactic-moveit-resources/focal 2.0.3-1focal.20220430.171124 amd64
  Resources used for MoveIt testing

ros-galactic-moveit-resources-fanuc-description/focal 2.0.3-1focal.20220124.200203 amd64
  Fanuc Resources used for MoveIt testing

ros-galactic-moveit-resources-fanuc-moveit-config/focal 2.0.3-1focal.20220430.143330 amd64
  MoveIt Resources for testing: Fanuc M-10iA.

ros-galactic-moveit-resources-panda-description/focal 2.0.3-1focal.20220124.200204 amd64
  panda Resources used for MoveIt testing

ros-galactic-moveit-resources-panda-moveit-config/focal 2.0.3-1focal.20220430.143338 amd64
  MoveIt Resources for testing: Franka Emika Panda A project-internal configuration for testing in MoveIt.

ros-galactic-moveit-resources-pr2-description/focal 2.0.3-1focal.20220124.200209 amd64
  PR2 Resources used for MoveIt! testing

ros-galactic-moveit-resources-prbt-ikfast-manipulator-plugin/focal 2.3.4-1focal.20220514.025121 amd64
  The prbt_ikfast_manipulator_plugin package

ros-galactic-moveit-resources-prbt-ikfast-manipulator-plugin-dbgsym/focal 2.3.4-1focal.20220514.025121 amd64
  debug symbols for ros-galactic-moveit-resources-prbt-ikfast-manipulator-plugin

ros-galactic-moveit-resources-prbt-moveit-config/focal 2.3.4-1focal.20220526.152506 amd64
  MoveIt Resources for testing: Pilz PRBT 6 A project-internal configuration for testing in MoveIt.

ros-galactic-moveit-resources-prbt-pg70-support/focal 2.3.4-1focal.20220526.152618 amd64
  PRBT support for Schunk pg70 gripper.

ros-galactic-moveit-resources-prbt-support/focal 2.3.4-1focal.20220430.111103 amd64
  Mechanical, kinematic and visual description of the Pilz light weight arm PRBT.

ros-galactic-moveit-ros/focal 2.3.4-1focal.20220526.154724 amd64
  Components of MoveIt that use ROS

ros-galactic-moveit-ros-benchmarks/focal 2.3.4-1focal.20220526.150739 amd64
  Enhanced tools for benchmarks in MoveIt

ros-galactic-moveit-ros-benchmarks-dbgsym/focal 2.3.4-1focal.20220526.150739 amd64
  debug symbols for ros-galactic-moveit-ros-benchmarks

ros-galactic-moveit-ros-control-interface/focal 2.3.4-1focal.20220601.133912 amd64
  ros_control controller manager interface for MoveIt

ros-galactic-moveit-ros-control-interface-dbgsym/focal 2.3.4-1focal.20220601.133912 amd64
  debug symbols for ros-galactic-moveit-ros-control-interface

ros-galactic-moveit-ros-move-group/focal,now 2.3.4-1focal.20220526.151449 amd64 [installed]
  The move_group node for MoveIt

ros-galactic-moveit-ros-move-group-dbgsym/focal 2.3.4-1focal.20220526.151449 amd64
  debug symbols for ros-galactic-moveit-ros-move-group

ros-galactic-moveit-ros-occupancy-map-monitor/focal,now 2.3.4-1focal.20220514.025105 amd64 [installed,automatic]
  Components of MoveIt connecting to occupancy map

ros-galactic-moveit-ros-occupancy-map-monitor-dbgsym/focal 2.3.4-1focal.20220514.025105 amd64
  debug symbols for ros-galactic-moveit-ros-occupancy-map-monitor

ros-galactic-moveit-ros-perception/focal 2.3.4-1focal.20220514.031328 amd64
  Components of MoveIt connecting to perception

ros-galactic-moveit-ros-perception-dbgsym/focal 2.3.4-1focal.20220514.031328 amd64
  debug symbols for ros-galactic-moveit-ros-perception

ros-galactic-moveit-ros-planning/focal,now 2.3.4-1focal.20220514.025542 amd64 [installed,automatic]
  Planning components of MoveIt that use ROS

ros-galactic-moveit-ros-planning-dbgsym/focal 2.3.4-1focal.20220514.025542 amd64
  debug symbols for ros-galactic-moveit-ros-planning

ros-galactic-moveit-ros-planning-interface/focal,now 2.3.4-1focal.20220526.153005 amd64 [installed,automatic]
  Components of MoveIt that offer simpler interfaces to planning and execution

ros-galactic-moveit-ros-planning-interface-dbgsym/focal 2.3.4-1focal.20220526.153005 amd64
  debug symbols for ros-galactic-moveit-ros-planning-interface

ros-galactic-moveit-ros-robot-interaction/focal,now 2.3.4-1focal.20220514.031334 amd64 [installed,automatic]
  Components of MoveIt that offer interaction via interactive markers

ros-galactic-moveit-ros-robot-interaction-dbgsym/focal 2.3.4-1focal.20220514.031334 amd64
  debug symbols for ros-galactic-moveit-ros-robot-interaction

ros-galactic-moveit-ros-visualization/focal,now 2.3.4-1focal.20220526.153157 amd64 [installed]
  Components of MoveIt that offer visualization

ros-galactic-moveit-ros-visualization-dbgsym/focal 2.3.4-1focal.20220526.153157 amd64
  debug symbols for ros-galactic-moveit-ros-visualization

ros-galactic-moveit-ros-warehouse/focal,now 2.3.4-1focal.20220514.031328 amd64 [installed,automatic]
  Components of MoveIt connecting to MongoDB

ros-galactic-moveit-ros-warehouse-dbgsym/focal 2.3.4-1focal.20220514.031328 amd64
  debug symbols for ros-galactic-moveit-ros-warehouse

ros-galactic-moveit-runtime/focal 2.3.4-1focal.20220526.154917 amd64
  moveit_runtime meta package contains MoveIt packages that are essential for its runtime (e.g.

ros-galactic-moveit-servo/focal,now 2.3.4-1focal.20220601.140103 amd64 [installed]
  Provides real-time manipulator Cartesian and joint servoing.

ros-galactic-moveit-servo-dbgsym/focal 2.3.4-1focal.20220601.140103 amd64
  debug symbols for ros-galactic-moveit-servo

ros-galactic-moveit-setup-assistant/focal 2.3.4-1focal.20220526.154731 amd64
  Generates a configuration package that makes it easy to use MoveIt

ros-galactic-moveit-setup-assistant-dbgsym/focal 2.3.4-1focal.20220526.154731 amd64
  debug symbols for ros-galactic-moveit-setup-assistant

ros-galactic-moveit-simple-controller-manager/focal,now 2.3.4-1focal.20220514.025116 amd64 [installed]
  A generic, simple controller manager plugin for MoveIt.

ros-galactic-moveit-simple-controller-manager-dbgsym/focal 2.3.4-1focal.20220514.025116 amd64
  debug symbols for ros-galactic-moveit-simple-controller-manager

@fmauch Same error here, I checked node list and rqt_graph but cannot find anything similar to move_group node.
I can see my robot when launch
ros2 launch ur_bringup ur_control.launch.py ur_type:=ur3 robot_ip:=yyy.yyy.yyy.yyy  launch_rviz:=true initial_joint_controller:=joint_trajectory_controller same pose as real robot.
but when launch moveit it shows No planning library loaded message and MotionPlanning status ⚠ also
planningScene message is Requesting inition scene failed.
I'm using Ros2 Galactic and semi-binary installed UR driver for UR3

Answer myself,
'sudo apt install ros-galactic-backward-ros' or 'sudo apt install ros--backward-ros'
Can solve this problem.

Answer myself, sudo apt install ros-galactic-backward-ros or sudo apt install ros-<ROS DISTRO>-backward-ros Can solve this problem.

As far as I can follow the package trace on my testing machine that should be installed with the current version, as the dependency goes like this: ur_moveit_config->moveit_simple_controller_manager->moveit_common->backward_ros. So this should be addressed since #392.

I had the same problem, I wrote a workaround in the moveit launch file which lets the rviz launch wait for the move_group being finished (it prints the message "You can start planning now"). It's a bit hacky but it does the job.
this is in my def launch_setup(context, *args, **kwargs):
from launch.actions import RegisterEventHandler
from launch.event_handlers import OnProcessIO
from launch.event import Event

# define your nodes here
rviz_node = ...
move_group_node = ...
mongodb_server_node = ...
servo_node = ...

move_group_loaded_message = "You can start planning now"
def on_output(event: Event):
    for line in event.text.decode().splitlines():
        # print('[{}] {}'.format(
        #     cast(ProcessIO, event).process_name, line))
        if move_group_loaded_message in line:
            return [rviz_node, move_group_interface_server]
delay_rviz = RegisterEventHandler(OnProcessIO(
    on_stdout=on_output,
    on_stderr=on_output,
))

nodes_to_start = [
    move_group_node,
    delay_rviz, # starts rviz once move group is ready
    mongodb_server_node,
    servo_node,
]

For reference see https://github.com/ros2/launch/blob/b78d87f31bb995c7226df66826e1a57079ae3a3f/launch/examples/launch_counters.py#L51-L62
and https://docs.ros.org/en/galactic/Tutorials/Intermediate/Launch/Using-Event-Handlers.html

@niemsoen really, that's the problem? Thanks for sharing this workaround! But I agree that it's a bit hacky and string matching from output is always a bit brittle (Although this output stayed the same as long as I can remember).

Since Galactic is not supported anymore and we don't have this issue in for the latest distros, I will close it.


🎨 style(DashboardPage.svelte): adjust column span for Recent Sales ca…

fix Recent Sales card span in md and smaller view

in the dashboard example page, the two cards are not aligned when viewport's width is smaller than 1024px

Thank you @mactanxin !

@huntabyte Hi, is there anything I need to do about this PR? Or other issues 😉

hey @mactanxin -  there was actually a big merge that should have addressed this! If not, please let me know!


New face's similarity is very high

I added several subjects, and then in the test, I uploaded a new photo(not in the subjects).But the result returned was actually finding a similar face with a high similarity value(0.9x),how to solve this problem?
the first pic is one of subjects,the second is the new I upload,they are the different person,but the program recognize the Similarity is 0.92

Been trying compreface for the first time and have the same problem. I found the recommendation of using some of the custom builds from the discussion in this issue #1212. I was able to try the SubCenter-ArcFace build and it showed better results.

Been trying compreface for the first time and have the same problem. I found the recommendation of using some of the custom builds from the discussion in this issue #1212. I was able to try the SubCenter-ArcFace build and it showed better results.

Hi, is there any other way to solve this beside using the SubCenter-ArcFace build, using that build is much much slower than the default build, I tried using the mobilenet build but it also return a high similarity.


Include batch update and batch delete into the  SqlTransaction

With the  https://github.com/zio/zio-sql/issues/645 the batch processing ( batch update and batch delete ) were implemented.
But they were not included in the SqlTransaction.
This issue modify  SqlTransaction trait to include both batch update and batch delete

Resolved  through the  PR https://github.com/zio/zio-sql/pull/900


tabcmd GET not working for Tableau Server 2023.1.13

We have recently upgraded Tableau Server from 2023.1.3 to 2023.1.13 on RHEL 8.9 environment.
Below is the get result for 2023.1.13.

Below is the get result for 2023.1.3.

I tried the latest version (v2.0.14) and it works fine. Thank you.


PollFetches take long time for the first fetch

I'm testing with development kafka node in local, and seem PollFetches always take few seconds to return for the first time,
is this normal? is there any way to set config that I'm missing?
here's my code
seeds := []string{"localhost:9093"}

	cl, err := kgo.NewClient(
		kgo.SeedBrokers(seeds...),
		kgo.ConsumerGroup("my-group-identifier"),
		kgo.ConsumeTopics(topic),
		kgo.DisableAutoCommit(),
		kgo.FetchMaxBytes(200),
		kgo.FetchMaxWait(time.Second),
	)
	if err != nil {
		panic(err)
	}
	defer cl.Close()
	for {
		l.Info("fetching...")
		fetches := cl.PollFetches(context.Background())
		if errs := fetches.Errors(); len(errs) > 0 {
			l.Error("got errs", "errs", errs)
			panic(errs)
		}
		l.Info("fetch complete", "count", len(fetches.Records()))
		for _, fetch := range fetches.Records() {
			l.Info("record", "data", string(fetch.Value))
		}
	}

result
time=2024-05-21T23:43:53.217+07:00 level=INFO msg=fetching...
time=2024-05-21T23:43:56.304+07:00 level=INFO msg="fetch complete" count=2
time=2024-05-21T23:43:56.304+07:00 level=INFO msg=record data="message: 1"
time=2024-05-21T23:43:56.304+07:00 level=INFO msg=record data="message: 2"
time=2024-05-21T23:43:56.304+07:00 level=INFO msg=fetching...
time=2024-05-21T23:43:56.314+07:00 level=INFO msg="fetch complete" count=2
time=2024-05-21T23:43:56.314+07:00 level=INFO msg=record data="message: 3"
time=2024-05-21T23:43:56.314+07:00 level=INFO msg=record data="message: 4"
time=2024-05-21T23:43:56.314+07:00 level=INFO msg=fetching...
time=2024-05-21T23:43:56.324+07:00 level=INFO msg="fetch complete" count=2
time=2024-05-21T23:43:56.324+07:00 level=INFO msg=record data="message: 5"
time=2024-05-21T23:43:56.324+07:00 level=INFO msg=record data="message: 6"
...

you can see the time diff for the first take up 3-4 secs.

I add a logger, it spent a lot of time on read JoinGroup
time=2024-05-23T10:45:17.230+07:00 level=DEBUG msg="read FindCoordinator v4" broker=1 bytes_read=57 read_wait=38.879µs time_to_read=4.379832ms err=<nil>
time=2024-05-23T10:45:17.231+07:00 level=DEBUG msg="opening connection to broker" addr=localhost:9093 broker=1
time=2024-05-23T10:45:17.231+07:00 level=DEBUG msg="connection opened to broker" addr=localhost:9093 broker=1
time=2024-05-23T10:45:17.231+07:00 level=DEBUG msg="connection initialized successfully" addr=localhost:9093 broker=1
time=2024-05-23T10:45:17.231+07:00 level=DEBUG msg="wrote JoinGroup v9" broker=1 bytes_written=137 write_wait=587.209µs time_to_write=13.092µs err=<nil>
time=2024-05-23T10:45:17.240+07:00 level=DEBUG msg="read JoinGroup v9" broker=1 bytes_read=66 read_wait=38.105µs time_to_read=8.385049ms err=<nil>
time=2024-05-23T10:45:17.240+07:00 level=INFO msg="join returned MemberIDRequired, rejoining with response's MemberID" group=my-group-identifier member_id=kgo-2d3e0e05-dd52-4cb6-bb09-fcc2969a1d7a
time=2024-05-23T10:45:17.240+07:00 level=DEBUG msg="wrote JoinGroup v9" broker=1 bytes_written=177 write_wait=26.809µs time_to_write=10.857µs err=<nil>
time=2024-05-23T10:45:52.167+07:00 level=DEBUG msg="read JoinGroup v9" broker=1 bytes_read=193 read_wait=30.731µs time_to_read=34.926236626s err=<nil>
time=2024-05-23T10:45:52.167+07:00 level=INFO msg="joined, balancing group" group=my-group-identifier member_id=kgo-2d3e0e05-dd52-4cb6-bb09-fcc2969a1d7a instance_id=<nil> generation=2 balance_protocol=sticky leader=true
time=2024-05-23T10:45:52.167+07:00 level=INFO msg="balancing group as leader"
time=2024-05-23T10:45:52.167+07:00 level=INFO msg="balance group member" id=kgo-2d3e0e05-dd52-4cb6-bb09-fcc2969a1d7a interests="interested topics: [foo], previously owned: "
time=2024-05-23T10:45:52.167+07:00 level=INFO msg=balanced plan=kgo-2d3e0e05-dd52-4cb6-bb09-fcc2969a1d7a{foo[0]}
time=2024-05-23T10:45:52.167+07:00 level=INFO msg=syncing group=my-group-identifier protocol_type=consumer protocol=sticky

There are two potential culprits,

On any new group, Kafka internally forces a 3s wait, check the config value group.initial.rebalance.delay.ms for more information
If you are restarting your consumer using the same group, then your new consumer gets a new member ID in the existing group. Kafka triggers a join group, and then only after the previous consumer "dies" (misses the session timeout) does Kafka allow the rebalance to continue. In your above code, I don't see any room for a ctrl+c to be handled / it doesn't look like there's a proper LeaveGroup. The defer cl.Close internally does a LeaveGroup, but your for loop is infinite, so the close is never properly leaving the group.

Given the timeout in the logs is 38s, I suspect it's (2).
Let me know if you think it's something else.


Ad hoc implementation of progress bar

The requested feature of a progress bar for reducing the output of info messages in the cli.

I'm fine. Could you add a test for this? Maybe just here, you might reuse some of the logging artifacts as well.

By the way:
This only overwrites the last line in the terminal.
If an info output spans multiple lines, then a prefix is still visible in the lines above.
One thing which I tried out is to save \0337 and restore \0338 the cursor, and to clear everything underneath the cursor \033[J, which seemed to be a promising way to handle multiline output.
However, this is only better than a bare carriage return in case the terminal has not scrolled in between.
Further research also yielded, that there is probably no way to achieve this using just bare terminal escape sequences.
So overall, I sticked to the simple and more consistent solution using carriage return and a line clear.

If an info output spans multiple lines, then a prefix is still visible in the lines above.

Good point. But I figure that info entries spanning mulitple lines are just too much. We could just disable the feature in case of multiline entries and just print the damn thing.

If an info output spans multiple lines, then a prefix is still visible in the lines above.

Good point. But I figure that info entries spanning mulitple lines are just too much. We could just disable the feature in case of multiline entries and just print the damn thing.

Well, maybe there is a little misunderstanding here.
A mutliline output in my previous comment means, that the output spans mutliple line on the terminal, no matter if it actually contains a newline or not.
So in the code, we actually do not know when an output spans multiple lines and therefore cannot disable the feature.
If we would know, when the output will result in multiple lines, then we might even be able to clear them properly in the first place.

A mutliline output in my previous comment means, that the output spans mutliple lines in the terminal, no matter if it actually contains a newline or not.

In this case in my opinion it is ok to accept broken output, since the user could just resize the terminal.

I'm fine. Could you add a test for this? Maybe just here, you might reuse some of the logging artifacts as well.

In principle yes.
In practice not really.
Because this functionality is guarded by a check of isatty(), this is probably never taking effect in the test cases, right?.

Because this functionality is guarded by a check of isatty(), this is probably never taking effect in the test cases, right?.

Fuck. For the colors, I introduced PENLOG_FORCE_COLORS or so. This case here unfortunate, since you might never want to enforce this behaviour. But IIRC you could allocate a pty and it should work as expected. We might steal this. :D

But IIRC you could allocate a pty and it should work as expected. We might steal this. :D
Seems a little overkill to me

Because this functionality is guarded by a check of isatty(), this is probably never taking effect in the test cases, right?.

Fuck. For the colors, I introduced PENLOG_FORCE_COLORS or so. This case here unfortunate, since you might never want to enforce this behaviour. But IIRC you could allocate a pty and it should work as expected. We might steal this. :D

Seems a little overkill

maybe or maybe not. let's skip the test for now. is this ready?

From my point of view it now is.

Currently testing this. Is cool.

merged


Version docker images and use git tags

Right now you have a separate docker image per go version. Unfortunately the images themselves are not versioned and all use the latest tag.
It would be nice to have a project level semver that is applied to all images, so one can chose a specific version of an image in the past and if it works be confident that it will never break in the future.
I encountered this because my cross compilation system (using xgo) suddenly broke with your latest releases, due to some obscure assembly error when compiling libwinhttp. Since there's only a latest, I'm unable to revert back to an older version of xgo at a given tag.
I think this would make xgo more reliable and production friendly.
I know a lot of people don't tag their docker images with versions or use semver, which is a shame.

Btw, I was able to setup a 0.5.x branch, which uses the pre-xenial base image, which fixed my windows issues.
See branch diff here: https://github.com/AaronO/xgo/compare/master...AaronO:v0.5.x


Difficulty overriding browser.waitForAngular

Hello,
My team is in a somewhat unusual position, and so we have a somewhat odd use-case. Instead of a single angular app on the page, we have one page-loader app that dynamically determines which other apps to show to the current user, loads those apps, and bootstraps them. (I can speak in more detail about why this design decision makes sense for us if you're interested but for the purposes of this issue let's just assume that it's reasonable.)
Additionally, we don't even have a rootElement for the page-loader - our entry point is a script tag which bootstraps the page-loader on a div that's not in the DOM. So because of our lack of a root element and because we have multiple angular apps, we need to implement custom logic for determining if our page is ready for protractor's tests to proceed.
We have this code that sets up a waitForStateTracker method on browser, which we adapted from protractor. This method is used by tests to specify which app / load phase they need to wait for to run:
if (typeof browser !== 'undefined') {
    browser.waitForStateTracker = function(module, phase) {
        // NB: this code is adapted from protractor.waitForAngular.
        return browser.driver.executeAsyncScript(
            waitForStateTracker,
            module,
            phase
        ).then(function(browserErr) {
            if (browserErr) {
                throw 'Error while waiting for Protractor to ' +
                    'sync with the page: ' + JSON.stringify(browserErr);
            }
        }).then(null, function(err) {
            var timeout;
            if (/asynchronous script timeout/.test(err.message)) {
                // Timeout on Chrome
                timeout = /-?[\d\.]*\ seconds/.exec(err.message);
            } else if (/Timed out waiting for async script/.test(err.message)) {
                // Timeout on Firefox
                timeout = /-?[\d\.]*ms/.exec(err.message);
            } else if (/Timed out waiting for an asynchronous script/.test(err.message)) {
                // Timeout on Safari
                timeout = /-?[\d\.]*\ ms/.exec(err.message);
            }
            if (timeout) {
                throw 'Timed out waiting for Protractor to synchronize with ' +
                    'the page after ' + timeout + '. Please see ' +
                    'https://github.com/angular/protractor/blob/master/docs/faq.md';
            } else {
                throw err;
            }
        });
    };
}

(The details of how stateTracker works is unimportant here, but again, I can share if you're curious.)
Then, we use this method to override browser.waitForAngular:
function waitForAngularWithStateTracker() {
    if (browser.ignoreSynchronization) {
        return originalWaitForAngular.call(browser);
    }

    return browser.waitForStateTracker(widgetName, xWebLookup.constants.INITIAL_READY_STATE);
}

if (typeof browser !== 'undefined') {
    originalWaitForAngular = browser.waitForAngular;

    browser.waitForAngular = waitForAngularWithStateTracker;

    browser.enableStateTracker = function() {
        browser.waitForAngular = waitForAngularWithStateTracker;
    };

    browser.disableStateTracker = function() {
        browser.waitForAngular = originalWaitForAngular;
    };
}

This all works fine, and our tests are able to wait for the proper events before running. However, if a test includes a call to browser.getTitle(), browser.getPageSource(), or browser.getCurrentUrl(), we fail with the following error:
   Error: done() invoked with non-Error: Error while waiting for Protractor to sync with the page: {}
 at /Users/nick.heiner/opower/x-web-taskmaster/node_modules/mocha/lib/runnable.js:222:25
      at /Users/nick.heiner/opower/x-web-taskmaster/node_modules/grunt-x-web-protractor-runner/node_modules/protractor/node_modules/selenium-webdriver/lib/goog/base.js:1243:15
      at webdriver.promise.ControlFlow.runInNewFrame_ (/Users/nick.heiner/opower/x-web-taskmaster/node_modules/grunt-x-web-protractor-runner/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:1539:20)

With some console logging, I can see that if a test contains those methods, then we use the original waitForAngular instead of our waitForAngular:
functions.waitForAngular = function(selector, callback) {
  var el = document.querySelector(selector);
  try {
    if (angular.getTestability) {
      angular.getTestability(el).whenStable(callback);
    } else {
      angular.element(el).injector().get('$browser').
          notifyWhenNoOutstandingRequests(callback);
    }
  } catch (e) {
    callback(e);
  }
};

We don't have a rootElement, so this will fail.
It appears that the reason for this is the following in protractor.js:
// These functions should delegate to the webdriver instance, but should
  // wait for Angular to sync up before performing the action. This does not
  // include functions which are overridden by protractor below.
  var methodsToSync = ['getCurrentUrl', 'getPageSource', 'getTitle'];

  // Mix all other driver functionality into Protractor.
  for (var method in webdriverInstance) {
    if(!this[method] && typeof webdriverInstance[method] == 'function') {
      if (methodsToSync.indexOf(method) !== -1) {
        mixin(this, webdriverInstance, method, this.waitForAngular.bind(this));
      } else {
        mixin(this, webdriverInstance, method);
      }
    }
  }

If I make the methodsToSync list empty, everything works as expected.
My questions are as follows:

Is this issue a symptom of our overall approach to overriding the waitForAngular logic being flawed?
Is overriding waitForAngular even an officially supported use-case?
Would you consider making this methodsToSync behavior optional? Or is there another workaround you would suggest?

Thanks!

We override our waitForAngular() method like this and add it to onPrepare():
'use strict';
overrideWaitForAngular();

function overrideWaitForAngular() {
  var common = new pages.CommonPage();
  var oldWaitForAngular = browser.waitForAngular;
  var callWaitForAnimation = true;

  browser.waitForAngular = function () {
    console.log('wait for angular');

    if (callWaitForAnimation) {
      oldWaitForAngular.apply(browser, arguments);
      callWaitForAnimation = false;
      common.waitForOverlay();
      common.waitForAllLoaders();
      return common.waitForAnimation().then(function () {
        callWaitForAnimation = true;
      });

    } else {
      return oldWaitForAngular.apply(browser, arguments);
    }
  };
}

@jlin412 Is it possible to override waitForAngular() so that it waits for jQuery requests to finish?

Closing stale issues - check out plugins, which allow you to finely control waiting: http://www.protractortest.org/#/plugins


Provide more detailed log

Hello ,  I encountered some difficulties in configuring error lookups.
Can you provide more detailed content in the logging content?  like the request URL and current error configuration.
This is the current logging content :
requestId: no request id, previousRequestId: no previous request id, message: DownstreamRouteFinderMiddleware setting pipeline errors. IDownstreamRouteFinder returned Error Code: UnableToFindDownstreamRouteError Message: UnableToFindDownstreamRouteError

and
requestId: no request id, previousRequestId: no previous request id, message: 1 pipeline errors found in ResponderMiddleware. Setting error response status code

When I have a lot of configuration, it's hard to find out which configuration item caused the error.
Thanks~!

@yuleyule66 I agree this could be a lot better.

I log errors at the end of the pipeline...would make more sense to log them as they happen.

@yuleyule66 what do you mean by "current error configuration"? asp.net core should indicate the type of log in the message e.g. error, debug etc

Maybe add url to log context, maybe we just need some sort of log context object with all these things on...it would be nice to just log when an error object is created (hook into this somehow)
Maybe an error object pool and when you take  from it, something calls the logger, no idea just throwing ideas out!

@TomPallister
"current error configuration" That is to say, I am currently configuring the wrong configuration item in configuration.json, such as "DownstreamHostAndPorts" to specify the wrong address or port. we can print them out when logging. I don't know if this is more difficult to implement,  just an idea !

@yuleyule66 yep that makes sense, I will see if we can make it better!

close after release

logging improved in version 5.5.0


I added two new features!

I have added two features:

Open popular websites. (Google, YouTube, Wikipedia and Amazon)
Search engines support. (Google, YouTube and Bing)

New commands:

open google opens https://www.google.com
open YouTube opens https://www.youtube.com
open wikipedia opens https://www.wikipedia.org
open amazon opens https://www.amazon.com
search google for <your search query here> searches on Google
search YouTube for <your search query here> searches on YouTube
search bing for <your search query here> searches on bing
solves #9

Great Work!!! @Jothin-kumar


Release 8.9.0

Lets do it.

Well, it's Tuesday already in Moscow I guess :-)

I think nobody will merge some other tasks today, so maybe its time, yay.

Thanks! Almost everything worked fine this time. There's a slight problem with the snippet on highlightjs.org not being highlighted. I'm on it.


[SPARK-15011] [SQL] [TEST] Ignore org.apache.spark.sql.hive.StatisticsSuite.analyze MetastoreRelation

This test always fail with sbt's hadoop 2.3 and 2.4 tests. Let'e disable it for now and investigate the problem.

Test build #57354 has started for PR 12783 at commit eb00016.

I am merging this.

Test build #57354 has finished for PR 12783 at commit eb00016.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/57354/
Test PASSed.


Create the contributing guidelines

The contributing guidelines should describe how to contribute to the project, how to write commits and how to create a PR.
Include the following details in the contributing.md file:

How to run the project in a local environment
List the tools required to run the project locally
Describe how to install packages
Describe how to create a new branch
Describe how to run local host
Describe how to commit changes and how to push them to GitHub

Here's a sample you can use for reference contributing guidelines

Thanks, Catherine - I'm thinking that I can work on 1-3, and then Faith could do 4-6?
Other than GitHub Copilot itself, are there any other specific tools/packages required for running the project that I should know of or mention? Just want to make sure we're all on the same page and I don't go off doing my own thing!

Hi @Kudzmat, yes you can work on the areas you prefer. Collaborate with Faith so that the guidelines are cohesive. The tools we'll use for the project are:

Frontend Library - ReactJS
CSS Framework - Tailwind CSS
Bundler/Build Tool - Vite
Test Runner - Vitest
Routing Implementation - React Router
Component Library - Flowbite
Icon Pack - Material Symbols by Google

@Kudzmat, we can collaborate on slack


64 integrate demo scene behaviour into normal scene

Changelog

Integrated Demo Behaviour into World Scene, which will be executed based on the mode the user chose
Dropped previous Demo Scene
Fixed an error caused by trying to set location before map was initialized

closes #64


3.5.4 - Raiders spawn after D2 activation not working

(I guess this one is not new but it's not listed)
Project "issue" is for:
Server
Expected result:
Activating D2 lever in reserve spawns raiders (with a % chance).
Actual result:
Raiders never spawn despite % not being 0. Changing it to 100% does not work too.
SPT 3.5.4. 3/28/23. No mods.

Originally written by Morphine

Just went into a reserve raid with just d2 lever raiders enabled with 100% chance.
They definitely spawn

Attachments

Raider Spawn after D2 Lever.png (64 KiB)

Originally written by Kaeno

Closing as confirmed working by a spt tester (Kaeno)

Originally written by chomp


Download fails with 0-byte files

@ttung  please clarify with a test case?

Closing - not enough information to reproduce

Upload a 0-byte file.
Attempt to download it.  Not sure what more information is needed.

Are you sure?  Did you actually try this?  IIRC, this fails because a http ranged GET fails when one does 0- on a 0-byte file.

I see. I did not try downloading a bundle.
I uploaded a file and performed a GET to "download" it. I'll look into downloading a bundle that contains a 0-byte file.


Add log_level config setting which defaults to 'info'.

This adds a config setting log_level which defaults to info, so the existing behavior is kept the same.
The log level can be set in a initializer like:
HealthCheck.setup do |config|
  config.log_level = 'error'
end

Hi @ianheggie, any update on this? We really need this change. It would be great if you have a look.
Thanks in advance.

@ FloHeinle and @a3vorobyov I have merged this into master, am doing a few more PR's then issuing a new v3 gem release


Singularity image: gwas-ssf: command not found #2

System information
RedHat Linux
Description of the Issue
I tried to install gwas sumstats tools using following the singularity instructions but was unsuccessful.
What is the path to the gwas-ssf tool within the Singularity image?
Error Message
bash: gwas-ssh: command not found
Command used and terminal output
singularity build gwas-sumstats-tools.sif docker://ebispot/gwas-sumstats-tools:latest
(base) [a72094@login2 ~]$ singularity shell gwas-sumstats-tools.sif
Singularity> gwas-ssf

First 10 Rows of the Input File
No response
Relevant files
No response

Hi @kauralasoo
Thank you for using the gwas-sumstats-tools and for reporting your issue.
It seems that the problem is due to differences in how Docker and Singularity handle the working directory. To proceed, try the following steps after entering the Singularity shell:
cd /application
python3 gwas_sumstats_tools/cli.py -h
python3 gwas_sumstats_tools/cli.py format -h

This should allow you to run the tools successfully.
We will work on improving the Docker image to make it more straightforward for use with Singularity in the future.


DBZ-7288 Unittest for hasCommitAlreadyBeenHandled in CommitScn Class

https://issues.redhat.com/browse/DBZ-7288

/packit test --labels oracle

hi @Naros, the CI job is failed due to timeout issue. Is it intermittent?

Sometimes they will do that @ilyasahsan123 but for this particular use case, it's unrelated.   The CommitScn class is only used by the LogMiner adapter and since those tasks passed, we're good to merge.  Thanks for the contributions :+1:


(com.aws.greengrass.Nucleus): Support downloading component artifacts from an S3 bucket on another account

Feature Description
When a component artifact is downloaded from S3, the Nucleus first issues an s3:GetBucketLocation API call followed by s3:GetObject. s3:GetObject to a bucket on another AWS account can be allowed using bucket policies and token exchange role policy. However, s3:GetBucketLocation is only available to the bucket owner. This causes downloading component artifacts stored in an S3 bucket on another AWS account to fail.
Use Case
We have an artifact bucket on one account that is shared across several AWS accounts.
Proposed Solution
Instead of first issuing s3:GetBucketLocation, do s3:GetObject directly
Other

[ ] :wave: I may be able to implement this feature request
[ ] :warning: This feature might incur a breaking change

Hi Santtu,
Thank you for your feedback, we'll look into this option.

Hi, is there any update on this?
I'm facing this issue while deploying at different customer. Each one has its one organization at the moment. Without this working, we basically need to have artifacts and components on each account, making the CI more complex than needed. Thank you

Hi @japsu and @Minipada, thanks for your patience. We found that simply replacing s3:GetBucketLocation with s3:GetObject is not a solution to this, we need to solve it in a way that allows us to perform integrity checks for cross account component artifacts, and it needs further discussion. We will post an update here once we have that.

Adding a +1 for the value of this.


[Task]: Write tests to ensure examples are working

Task description
Currently, not all examples are running. This gives a window of opportunity to write tests to see if the bindings work correctly. And to experiment with a mocking framework.
Requirements
Tests:

[ ] Create Account Manager
[ ] Create Account
[ ] Generate Address
[ ] Check Balance
[ ] Send Transfer
[ ] Backup
[ ] Restore
[ ] Events
[ ] Logger

Acceptance criteria
TBD
Creation checklist

[ ] I have assigned this task to the correct people
[ ] I have added the most appropriate labels
[ ] I have linked the correct milestone and/or project

I am trying to run the examples, or rather use the examples as the basis for making an application that uses wallet.rs.
Now I'm getting this error:  ClientError(Json(Error("missing field 'nodeinfo'", line: 1, column: 887)))
when my application hits this line
tracing back to this JSON error in iota.rs?
➕ for having automated test coverage to ensure all of the examples continue to work.  It is what 'outsiders' rely on to use this library in building IOTA applications.


Document op coverage

LGTM, I just added an empty line in every file.

Those file already have a newline at the end of every file. Right now this is consistent with all the other op coverage docs we have.

Those file already have a newline at the end of every file. Right now this is consistent with all the other op coverage docs we have.

Okay, they are not shown in the review interface. But fine if you checked.


chore: use cost in error

the InsufficientFunds check uses cost, so the error also should report this instead of the fee

Codecov Report

Merging #2213 (9958721) into main (cf93d64) will decrease coverage by 27.73%.
The diff coverage is 0.00%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@             Coverage Diff             @@
##             main    #2213       +/-   ##
===========================================
- Coverage   71.93%   44.21%   -27.73%
===========================================
  Files         462      462
  Lines       55689    55689
===========================================
- Hits        40061    24622    -15439
- Misses      15628    31067    +15439

Flag
Coverage Δ

integration-tests
18.80% <0.00%> (+0.01%)
:arrow_up:

unit-tests
37.43% <0.00%> (-29.37%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

crates/primitives/src/transaction/error.rs
100.00% <ø> (ø)

crates/transaction-pool/src/validate.rs
17.85% <0.00%> (ø)

... and 214 files with indirect coverage changes
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Incident Analysis Tools needs tests written

Incident Analysis Tools needs test written for the following tools:

[x] Cluster Analysis
[x] Count Incidents by LOC
[x] Find Percent Change
[x] Hot Spots by Area
[x] Incident Density
[x] Incident Hot Spots
[x] Incident Table To Point

@JudTown17 fixed in #385.


[e2e]: generic push main upload-tag-name slsa3

Repo: https://github.com/slsa-framework/example-package/tree/main
Run: https://github.com/slsa-framework/example-package/actions/runs/7361424634
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.generic.push.main.upload-tag-name.slsa3.yml
Workflow runs: https://github.com/slsa-framework/example-package/actions/workflows/e2e.generic.push.main.upload-tag-name.slsa3.yml
Trigger: push
Branch: main
Date: Sat Dec 30 02:24:00 UTC 2023

Repo: https://github.com/slsa-framework/example-package/tree/main
Run: https://github.com/slsa-framework/example-package/actions/runs/7367790090
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.generic.push.main.upload-tag-name.slsa3.yml
Workflow runs: https://github.com/slsa-framework/example-package/actions/workflows/e2e.generic.push.main.upload-tag-name.slsa3.yml
Trigger: push
Branch: main
Date: Sun Dec 31 02:31:02 UTC 2023
Tests are passing now. Closing this issue.


panic: runtime error: negative shift amount

Describe the bug
While running the init command with master it panics
To Reproduce
Steps to reproduce the behavior:

with the following definition:

type Type string

const (
	TypePerson   Type = "person"
	TypeBusiness Type = "business"
)

type customerIn struct {
	ClientId string `json:"client_id"`
	Type     string `json:"type"`
}

type customerOut struct {
	Id        string    `json:"id"`
	ClientId  string    `json:"client_id"`
	Type      string    `json:"type"`
	CreatedAt time.Time `json:"created_at"`
	UpdatedAt time.Time `json:"updated_at"`
}

type customersOut struct {
	Result []customerOut
}

run:
swag init -g service/server/server.go --pd
swag fmt -g service/server/server.go

Throws the error:
swag init -g service/server/server.go --pd
2022/11/22 08:09:45 Generate swagger docs....
2022/11/22 08:09:45 Generate general API Info, search dir:./
2022/11/22 08:09:45 warning: failed to get package name in dir: ./, error: execute go list command, exit status 1, stdout:, stderr:no Go files in /Users/nicolas.sassi/dev/soul/acaiah
panic: runtime error: negative shift amount

goroutine 1 [running]:
github.com/swaggo/swag.(*PackageDefinitions).evaluateConstValue(0xc00607e870, 0xc0068aa2d0?, 0xc00665ef60?, {0x165bee0?, 0xc005cecf90?}, {0x165a460, 0xc0001b1800}, 0x1c?)
        /Users/nicolas.sassi/go/pkg/mod/github.com/swaggo/swag@v1.8.8-0.20221122034606-e5d507dd4727/package.go:146 +0x102b
github.com/swaggo/swag.(*PackagesDefinitions).EvaluateConstValue(0xc00479f698?, 0xc00607e870, 0xc00682de00, 0x0)
        /Users/nicolas.sassi/go/pkg/mod/github.com/swaggo/swag@v1.8.8-0.20221122034606-e5d507dd4727/packages.go:282 +0x19d
github.com/swaggo/swag.(*PackagesDefinitions).evaluateAllConstVariables(...)
        /Users/nicolas.sassi/go/pkg/mod/github.com/swaggo/swag@v1.8.8-0.20221122034606-e5d507dd4727/packages.go:265
github.com/swaggo/swag.(*PackagesDefinitions).ParseTypes(0xc0001b1800)
        /Users/nicolas.sassi/go/pkg/mod/github.com/swaggo/swag@v1.8.8-0.20221122034606-e5d507dd4727/packages.go:110 +0x254
github.com/swaggo/swag.(*Parser).ParseAPIMultiSearchDir(0xc00027c000, {0xc0002780e0?, 0x1?, 0x0?}, {0x7ff7bfeff555?, 0x18?}, 0x64)
        /Users/nicolas.sassi/go/pkg/mod/github.com/swaggo/swag@v1.8.8-0.20221122034606-e5d507dd4727/parser.go:375 +0x3bf
github.com/swaggo/swag/gen.(*Gen).Build(0xc000249950, 0xc0002502a0)
        /Users/nicolas.sassi/go/pkg/mod/github.com/swaggo/swag@v1.8.8-0.20221122034606-e5d507dd4727/gen/gen.go:182 +0x637
main.initAction(0xc000266780?)
        /Users/nicolas.sassi/go/pkg/mod/github.com/swaggo/swag@v1.8.8-0.20221122034606-e5d507dd4727/cmd/swag/main.go:158 +0x7bd
github.com/urfave/cli/v2.(*Command).Run(0xc000220ea0, 0xc000262300)
        /Users/nicolas.sassi/go/pkg/mod/github.com/urfave/cli/v2@v2.3.0/command.go:163 +0x5dc
github.com/urfave/cli/v2.(*App).RunContext(0xc000195d40, {0x165cef0?, 0xc000196008}, {0xc00019c000, 0x5, 0x5})
        /Users/nicolas.sassi/go/pkg/mod/github.com/urfave/cli/v2@v2.3.0/app.go:313 +0xb7d
github.com/urfave/cli/v2.(*App).Run(...)
        /Users/nicolas.sassi/go/pkg/mod/github.com/urfave/cli/v2@v2.3.0/app.go:224
main.main()
        /Users/nicolas.sassi/go/pkg/mod/github.com/swaggo/swag@v1.8.8-0.20221122034606-e5d507dd4727/cmd/swag/main.go:229 +0x5c5
make: *** [swagger] Error 2

Expected behavior
Swagger created
Your swag version
go install github.com/swaggo/swag/cmd/swag@e5d507dd472777bec3a3744f7f9cc86065037530
Your go version
1.19.1
Desktop (please complete the following information):

OS: macOS Monterey 12.6.1

If I change the models for the following:
type Type string

const (
	TypePerson   Type = "person"   // person
	TypeBusiness Type = "business" /* business */
)

type customerIn struct {
	ClientId string `json:"client_id"`
	Type     Type   `json:"type"`
}

type customerOut struct {
	Id        string    `json:"id"`
	ClientId  string    `json:"client_id"`
	Type      Type      `json:"type"`
	CreatedAt time.Time `json:"created_at"`
	UpdatedAt time.Time `json:"updated_at"`
}

With the intention of using the new enums feature the error changes for the following:
swag init -g service/server/server.go --pd
2022/11/22 08:16:29 Generate swagger docs....
2022/11/22 08:16:29 Generate general API Info, search dir:./
2022/11/22 08:16:29 warning: failed to get package name in dir: ./, error: execute go list command, exit status 1, stdout:, stderr:no Go files in /Users/nicolas.sassi/dev/soul/acaiah
panic: interface conversion: interface {} is string, not int

goroutine 1 [running]:
github.com/swaggo/swag.(*PackageDefinitions).evaluateConstValue(0xc001020000, 0x1a63878?, 0x90?, {0x165bee0?, 0xc001536a20?}, {0x165a460, 0xc000089820}, 0x1066467?)
        /Users/nicolas.sassi/go/pkg/mod/github.com/swaggo/swag@v1.8.8-0.20221122034606-e5d507dd4727/package.go:132 +0x113f
github.com/swaggo/swag.(*PackageDefinitions).evaluateConstValue(0xc001020000, 0xc0090a8510?, 0xc006ba3e00?, {0x165bee0?, 0xc001536c60?}, {0x165a460, 0xc000089820}, 0xc0001d1aa0?)
        /Users/nicolas.sassi/go/pkg/mod/github.com/swaggo/swag@v1.8.8-0.20221122034606-e5d507dd4727/package.go:115 +0xd9
github.com/swaggo/swag.(*PackagesDefinitions).EvaluateConstValue(0xc005711698?, 0xc001020000, 0xc0058b8bc0, 0x0)
        /Users/nicolas.sassi/go/pkg/mod/github.com/swaggo/swag@v1.8.8-0.20221122034606-e5d507dd4727/packages.go:282 +0x19d
github.com/swaggo/swag.(*PackagesDefinitions).evaluateAllConstVariables(...)
        /Users/nicolas.sassi/go/pkg/mod/github.com/swaggo/swag@v1.8.8-0.20221122034606-e5d507dd4727/packages.go:265
github.com/swaggo/swag.(*PackagesDefinitions).ParseTypes(0xc000089820)
        /Users/nicolas.sassi/go/pkg/mod/github.com/swaggo/swag@v1.8.8-0.20221122034606-e5d507dd4727/packages.go:110 +0x254
github.com/swaggo/swag.(*Parser).ParseAPIMultiSearchDir(0xc000200000, {0xc0001fc0f0?, 0x1?, 0x0?}, {0x7ff7bfeff555?, 0x18?}, 0x64)
        /Users/nicolas.sassi/go/pkg/mod/github.com/swaggo/swag@v1.8.8-0.20221122034606-e5d507dd4727/parser.go:375 +0x3bf
github.com/swaggo/swag/gen.(*Gen).Build(0xc0001d1950, 0xc0001d82a0)
        /Users/nicolas.sassi/go/pkg/mod/github.com/swaggo/swag@v1.8.8-0.20221122034606-e5d507dd4727/gen/gen.go:182 +0x637
main.initAction(0xc0001eaa00?)
        /Users/nicolas.sassi/go/pkg/mod/github.com/swaggo/swag@v1.8.8-0.20221122034606-e5d507dd4727/cmd/swag/main.go:158 +0x7bd
github.com/urfave/cli/v2.(*Command).Run(0xc0001a6a20, 0xc0001e8300)
        /Users/nicolas.sassi/go/pkg/mod/github.com/urfave/cli/v2@v2.3.0/command.go:163 +0x5dc
github.com/urfave/cli/v2.(*App).RunContext(0xc0000bd380, {0x165cef0?, 0xc00002c108}, {0xc0000240a0, 0x5, 0x5})
        /Users/nicolas.sassi/go/pkg/mod/github.com/urfave/cli/v2@v2.3.0/app.go:313 +0xb7d
github.com/urfave/cli/v2.(*App).Run(...)
        /Users/nicolas.sassi/go/pkg/mod/github.com/urfave/cli/v2@v2.3.0/app.go:224
main.main()
        /Users/nicolas.sassi/go/pkg/mod/github.com/swaggo/swag@v1.8.8-0.20221122034606-e5d507dd4727/cmd/swag/main.go:229 +0x5c5
make: *** [swagger] Error 2

It seems odd.
As the exception reports,  there must be some const expressions like 1<<-1,  and "aaa"-"bbb", could you please find out what are they?

It seems odd. As the exception reports, there must be some const expressions like 1<<-1, and "aaa"-"bbb", could you please find out what are they?

The only consts declared are the ones in the models mentioned. There are no other const in the project that could affect the definition... Is it possible that the current implementation is falling because it tries to parse all consts in packages imported as well?

It seems odd. As the exception reports, there must be some const expressions like 1<<-1, and "aaa"-"bbb", could you please find out what are they?

The only consts declared are the ones in the models mentioned. There are no other const in the project that could affect the definition... Is it possible that the current implementation is falling because it tries to parse all consts in packages imported as well?

Yes, it will first parse and evaluate all the consts, including dependency if --pd set, because the type of a const may be implicit and need to  be evaluate out.

It seems odd. As the exception reports, there must be some const expressions like 1<<-1, and "aaa"-"bbb", could you please find out what are they?

The only consts declared are the ones in the models mentioned. There are no other const in the project that could affect the definition... Is it possible that the current implementation is falling because it tries to parse all consts in packages imported as well?

Yes, it will first parse and evaluate all the consts, including dependency if --pd set, because the type of a const may be implicit and need to be evaluate out.

Got it! This project is quite simple so the consts are only strings, there are no expressions... My question would be if the implementation might be also trying to evaluate third-party packages imported by the application. In this case there might be more consts with expressions but I wouldn't know.

I'll add some exception detecting code to output where it is

I'll add some exception detecting code to output where it is

Could you please try this new branch to find out the suspect expression as soon as possible?

I cloned the repo and checkout to the origin/parse-error-position branch. Then in the root of the repo I ran go install ..
Running
swag init -g service/server/server.go --pd
swag fmt -g service/server/server.go

In the service the output didn't change yet.
Am I missing something?

I got same problems, too.
But if I changed swaggo version to 1.8.7, everything is fine.
 But if I changed swaggo version to 1.8.7, everything is fine.
Your swag version go install<EMAIL_ADDRESS>Your go version 1.19.2 darwin/arm64
Desktop (please complete the following information):
OS: macOS Monterey 12.6

Thank you for feedback, however I want to know what expressions made this panic.
Can you please try the master branch swag to find out it?

====compile output====
panic: runtime error: negative shift amount
goroutine 1 [running]:
github.com/swaggo/swag.(*PackageDefinitions).evaluateConstValue(0x14000fc55e0, 0x140105e72c0?, 0x140105e81c8?, {0x1045f1298?, 0x14001646d80?}, {0x1045ef8c0, 0x14000075820}, 0x14003d8c428?)
/Users/faustfu/go/pkg/mod/github.com/swaggo/swag@v1.8.8/package.go:146 +0xdcc
github.com/swaggo/swag.(*PackagesDefinitions).EvaluateConstValue(0x1400e4bf668?, 0x14000fc55e0, 0x140101ce300, 0x0)
/Users/faustfu/go/pkg/mod/github.com/swaggo/swag@v1.8.8/packages.go:282 +0x144
github.com/swaggo/swag.(*PackagesDefinitions).evaluateAllConstVariables(...)
/Users/faustfu/go/pkg/mod/github.com/swaggo/swag@v1.8.8/packages.go:265
github.com/swaggo/swag.(*PackagesDefinitions).ParseTypes(0x14000075820)
/Users/faustfu/go/pkg/mod/github.com/swaggo/swag@v1.8.8/packages.go:110 +0x1d0
github.com/swaggo/swag.(*Parser).ParseAPIMultiSearchDir(0x140001e8000, {0x140001e2100?, 0x1?, 0x0?}, {0x10443af8a?, 0x7?}, 0x64)
/Users/faustfu/go/pkg/mod/github.com/swaggo/swag@v1.8.8/parser.go:375 +0x29c
github.com/swaggo/swag/gen.(*Gen).Build(0x140001af920, 0x140001a82a0)
/Users/faustfu/go/pkg/mod/github.com/swaggo/swag@v1.8.8/gen/gen.go:182 +0x4dc
main.initAction(0x140001d2780?)
/Users/faustfu/go/pkg/mod/github.com/swaggo/swag@v1.8.8/cmd/swag/main.go:158 +0x698
github.com/urfave/cli/v2.(*Command).Run(0x14000000c60, 0x140001d0340)
/Users/faustfu/go/pkg/mod/github.com/urfave/cli/v2@v2.3.0/command.go:163 +0x4fc
github.com/urfave/cli/v2.(*App).RunContext(0x140000a3520, {0x1045f22b0?, 0x14000024110}, {0x140000201e0, 0x6, 0x6})
/Users/faustfu/go/pkg/mod/github.com/urfave/cli/v2@v2.3.0/app.go:313 +0x860
github.com/urfave/cli/v2.(*App).Run(...)
/Users/faustfu/go/pkg/mod/github.com/urfave/cli/v2@v2.3.0/app.go:224
main.main()
/Users/faustfu/go/pkg/mod/github.com/swaggo/swag@v1.8.8/cmd/swag/main.go:229 +0x65c
make: *** [swag] Error 2

====compile output==== panic: runtime error: negative shift amount
goroutine 1 [running]: github.com/swaggo/swag.(*PackageDefinitions).evaluateConstValue(0x14000fc55e0, 0x140105e72c0?, 0x140105e81c8?, {0x1045f1298?, 0x14001646d80?}, {0x1045ef8c0, 0x14000075820}, 0x14003d8c428?) /Users/faustfu/go/pkg/mod/github.com/swaggo/swag@v1.8.8/package.go:146 +0xdcc github.com/swaggo/swag.(*PackagesDefinitions).EvaluateConstValue(0x1400e4bf668?, 0x14000fc55e0, 0x140101ce300, 0x0) /Users/faustfu/go/pkg/mod/github.com/swaggo/swag@v1.8.8/packages.go:282 +0x144 github.com/swaggo/swag.(*PackagesDefinitions).evaluateAllConstVariables(...) /Users/faustfu/go/pkg/mod/github.com/swaggo/swag@v1.8.8/packages.go:265 github.com/swaggo/swag.(*PackagesDefinitions).ParseTypes(0x14000075820) /Users/faustfu/go/pkg/mod/github.com/swaggo/swag@v1.8.8/packages.go:110 +0x1d0 github.com/swaggo/swag.(*Parser).ParseAPIMultiSearchDir(0x140001e8000, {0x140001e2100?, 0x1?, 0x0?}, {0x10443af8a?, 0x7?}, 0x64) /Users/faustfu/go/pkg/mod/github.com/swaggo/swag@v1.8.8/parser.go:375 +0x29c github.com/swaggo/swag/gen.(*Gen).Build(0x140001af920, 0x140001a82a0) /Users/faustfu/go/pkg/mod/github.com/swaggo/swag@v1.8.8/gen/gen.go:182 +0x4dc main.initAction(0x140001d2780?) /Users/faustfu/go/pkg/mod/github.com/swaggo/swag@v1.8.8/cmd/swag/main.go:158 +0x698 github.com/urfave/cli/v2.(*Command).Run(0x14000000c60, 0x140001d0340) /Users/faustfu/go/pkg/mod/github.com/urfave/cli/v2@v2.3.0/command.go:163 +0x4fc github.com/urfave/cli/v2.(*App).RunContext(0x140000a3520, {0x1045f22b0?, 0x14000024110}, {0x140000201e0, 0x6, 0x6}) /Users/faustfu/go/pkg/mod/github.com/urfave/cli/v2@v2.3.0/app.go:313 +0x860 github.com/urfave/cli/v2.(*App).Run(...) /Users/faustfu/go/pkg/mod/github.com/urfave/cli/v2@v2.3.0/app.go:224 main.main() /Users/faustfu/go/pkg/mod/github.com/swaggo/swag@v1.8.8/cmd/swag/main.go:229 +0x65c make: *** [swag] Error 2

This is not helpful to me, someone above have provided this log

====compile output==== panic: runtime error: negative shift amount
goroutine 1 [running]: github.com/swaggo/swag.(*PackageDefinitions).evaluateConstValue(0x14000fc55e0, 0x140105e72c0?, 0x140105e81c8?, {0x1045f1298?, 0x14001646d80?}, {0x1045ef8c0, 0x14000075820}, 0x14003d8c428?) /Users/faustfu/go/pkg/mod/github.com/swaggo/swag@v1.8.8/package.go:146 +0xdcc github.com/swaggo/swag.(*PackagesDefinitions).EvaluateConstValue(0x1400e4bf668?, 0x14000fc55e0, 0x140101ce300, 0x0) /Users/faustfu/go/pkg/mod/github.com/swaggo/swag@v1.8.8/packages.go:282 +0x144 github.com/swaggo/swag.(*PackagesDefinitions).evaluateAllConstVariables(...) /Users/faustfu/go/pkg/mod/github.com/swaggo/swag@v1.8.8/packages.go:265 github.com/swaggo/swag.(*PackagesDefinitions).ParseTypes(0x14000075820) /Users/faustfu/go/pkg/mod/github.com/swaggo/swag@v1.8.8/packages.go:110 +0x1d0 github.com/swaggo/swag.(*Parser).ParseAPIMultiSearchDir(0x140001e8000, {0x140001e2100?, 0x1?, 0x0?}, {0x10443af8a?, 0x7?}, 0x64) /Users/faustfu/go/pkg/mod/github.com/swaggo/swag@v1.8.8/parser.go:375 +0x29c github.com/swaggo/swag/gen.(*Gen).Build(0x140001af920, 0x140001a82a0) /Users/faustfu/go/pkg/mod/github.com/swaggo/swag@v1.8.8/gen/gen.go:182 +0x4dc main.initAction(0x140001d2780?) /Users/faustfu/go/pkg/mod/github.com/swaggo/swag@v1.8.8/cmd/swag/main.go:158 +0x698 github.com/urfave/cli/v2.(*Command).Run(0x14000000c60, 0x140001d0340) /Users/faustfu/go/pkg/mod/github.com/urfave/cli/v2@v2.3.0/command.go:163 +0x4fc github.com/urfave/cli/v2.(*App).RunContext(0x140000a3520, {0x1045f22b0?, 0x14000024110}, {0x140000201e0, 0x6, 0x6}) /Users/faustfu/go/pkg/mod/github.com/urfave/cli/v2@v2.3.0/app.go:313 +0x860 github.com/urfave/cli/v2.(*App).Run(...) /Users/faustfu/go/pkg/mod/github.com/urfave/cli/v2@v2.3.0/app.go:224 main.main() /Users/faustfu/go/pkg/mod/github.com/swaggo/swag@v1.8.8/cmd/swag/main.go:229 +0x65c make: *** [swag] Error 2

This is not helpful to me, someone above have provided this log

It seems odd. As the exception reports, there must be some const expressions like 1<<-1, and "aaa"-"bbb", could you please find out what are they?

@faustfu-WaveGIS

I used swaggo source to run and output is below.
2022/11/28 14:15:40 Generate swagger docs....
2022/11/28 14:15:40 Generate general API Info, search dir:/Users/faustfu/wave/wg_equipment_manager/iow-upload
2022/11/28 14:15:41 warning: failed to evaluate const uintSize at /usr/local/go/src/math/bits/bits.go:11:7, runtime error: negative shift amount
2022/11/28 14:15:41 warning: failed to evaluate const uintSize at /usr/local/go/src/math/bits/bits.go:11:7, runtime error: negative shift amount
2022/11/28 14:15:41 warning: failed to evaluate const uintSize at /usr/local/go/src/math/bits/bits.go:11:7, runtime error: negative shift amount
2022/11/28 14:15:41 warning: failed to evaluate const uintSize at /usr/local/go/src/math/bits/bits.go:11:7, runtime error: negative shift amount
2022/11/28 14:15:41 warning: failed to evaluate const MaxBase at /usr/local/go/src/math/big/natconv.go:24:7, interface conversion: interface {} is string, not int
2022/11/28 14:15:41 warning: failed to evaluate const maxBaseSmall at /usr/local/go/src/math/big/natconv.go:25:7, interface conversion: interface {} is string, not int
2022/11/28 14:15:41 warning: failed to evaluate const uintSize at /usr/local/go/src/math/bits/bits.go:11:7, runtime error: negative shift amount
2022/11/28 14:15:41 warning: failed to evaluate const maxArrayLen at /Users/faustfu/go/pkg/mod/github.com/ugorji/go/codec@v1.2.7/helper_internal.go:8:7, runtime error: negative shift amount
2022/11/28 14:15:41 warning: failed to evaluate const wordSizeBits at /Users/faustfu/go/pkg/mod/github.com/ugorji/go/codec@v1.2.7/helper.go:250:2, runtime error: negative shift amount
2022/11/28 14:15:41 warning: failed to evaluate const wordSizeBits at /Users/faustfu/go/pkg/mod/github.com/ugorji/go/codec@v1.2.7/helper.go:250:2, runtime error: negative shift amount
2022/11/28 14:15:41 warning: failed to evaluate const jsonU4Chk1 at /Users/faustfu/go/pkg/mod/github.com/ugorji/go/codec@v1.2.7/json.go:65:2, interface conversion: interface {} is string, not int
2022/11/28 14:15:41 warning: failed to evaluate const jsonU4Chk0 at /Users/faustfu/go/pkg/mod/github.com/ugorji/go/codec@v1.2.7/json.go:66:2, interface conversion: interface {} is string, not int
2022/11/28 14:15:41 warning: failed to evaluate const toLower at /usr/local/go/src/net/textproto/reader.go:602:7, interface conversion: interface {} is string, not int
2022/11/28 14:15:41 warning: failed to evaluate const tooBig at /usr/local/go/src/encoding/gob/decoder.go:18:7, runtime error: negative shift amount
2022/11/28 14:15:41 warning: failed to evaluate const uintSize at /usr/local/go/src/math/bits/bits.go:11:7, runtime error: negative shift amount
2022/11/28 14:15:41 warning: failed to evaluate const uintSize at /usr/local/go/src/math/bits/bits.go:11:7, runtime error: negative shift amount
2022/11/28 14:15:41 warning: failed to evaluate const UpperLower at /usr/local/go/src/unicode/letter.go:83:2, interface conversion: interface {} is int, not string
2022/11/28 14:15:41 warning: failed to evaluate const intSize at /usr/local/go/src/math/const.go:40:2, runtime error: negative shift amount
2022/11/28 14:15:41 warning: failed to evaluate const intSize at /usr/local/go/src/math/const.go:40:2, runtime error: negative shift amount
2022/11/28 14:15:41 warning: failed to evaluate const intSize at /usr/local/go/src/math/const.go:40:2, runtime error: negative shift amount
2022/11/28 14:15:41 warning: failed to evaluate const intSize at /usr/local/go/src/math/const.go:40:2, runtime error: negative shift amount
2022/11/28 14:15:41 warning: failed to evaluate const base at /Users/faustfu/go/pkg/mod/golang.org/x/text@v0.3.7/internal/language/lookup.go:76:7, interface conversion: interface {} is string, not int
2022/11/28 14:15:41 warning: failed to evaluate const intSize at /usr/local/go/src/strconv/atoi.go:52:7, runtime error: negative shift amount
2022/11/28 14:15:41 warning: failed to evaluate const intSize at /usr/local/go/src/strconv/atoi.go:52:7, runtime error: negative shift amount
2022/11/28 14:15:41 warning: failed to evaluate const uintSize at /usr/local/go/src/strconv/decimal.go:106:7, runtime error: negative shift amount
2022/11/28 14:15:41 warning: failed to evaluate const uintSize at /usr/local/go/src/strconv/decimal.go:106:7, runtime error: negative shift amount
2022/11/28 14:15:41 warning: failed to evaluate const intBits at /usr/local/go/src/fmt/scan.go:939:2, runtime error: negative shift amount
2022/11/28 14:15:41 create docs.go at  docs/docs.go
2022/11/28 14:15:41 create swagger.json at  docs/swagger.json
2022/11/28 14:15:41 create swagger.yaml at  docs/swagger.yaml

no, I did not use those statements in my code.

I used swaggo source to run and output is below.
2022/11/28 14:15:40 Generate swagger docs.... 2022/11/28 14:15:40 Generate general API Info, search dir:/Users/faustfu/wave/wg_equipment_manager/iow-upload 2022/11/28 14:15:41 warning: failed to evaluate const uintSize at /usr/local/go/src/math/bits/bits.go:11:7, runtime error: negative shift amount 2022/11/28 14:15:41 warning: failed to evaluate const uintSize at /usr/local/go/src/math/bits/bits.go:11:7, runtime error: negative shift amount 2022/11/28 14:15:41 warning: failed to evaluate const uintSize at /usr/local/go/src/math/bits/bits.go:11:7, runtime error: negative shift amount 2022/11/28 14:15:41 warning: failed to evaluate const uintSize at /usr/local/go/src/math/bits/bits.go:11:7, runtime error: negative shift amount 2022/11/28 14:15:41 warning: failed to evaluate const MaxBase at /usr/local/go/src/math/big/natconv.go:24:7, interface conversion: interface {} is string, not int 2022/11/28 14:15:41 warning: failed to evaluate const maxBaseSmall at /usr/local/go/src/math/big/natconv.go:25:7, interface conversion: interface {} is string, not int 2022/11/28 14:15:41 warning: failed to evaluate const uintSize at /usr/local/go/src/math/bits/bits.go:11:7, runtime error: negative shift amount 2022/11/28 14:15:41 warning: failed to evaluate const maxArrayLen at /Users/faustfu/go/pkg/mod/github.com/ugorji/go/codec@v1.2.7/helper_internal.go:8:7, runtime error: negative shift amount 2022/11/28 14:15:41 warning: failed to evaluate const wordSizeBits at /Users/faustfu/go/pkg/mod/github.com/ugorji/go/codec@v1.2.7/helper.go:250:2, runtime error: negative shift amount 2022/11/28 14:15:41 warning: failed to evaluate const wordSizeBits at /Users/faustfu/go/pkg/mod/github.com/ugorji/go/codec@v1.2.7/helper.go:250:2, runtime error: negative shift amount 2022/11/28 14:15:41 warning: failed to evaluate const jsonU4Chk1 at /Users/faustfu/go/pkg/mod/github.com/ugorji/go/codec@v1.2.7/json.go:65:2, interface conversion: interface {} is string, not int 2022/11/28 14:15:41 warning: failed to evaluate const jsonU4Chk0 at /Users/faustfu/go/pkg/mod/github.com/ugorji/go/codec@v1.2.7/json.go:66:2, interface conversion: interface {} is string, not int 2022/11/28 14:15:41 warning: failed to evaluate const toLower at /usr/local/go/src/net/textproto/reader.go:602:7, interface conversion: interface {} is string, not int 2022/11/28 14:15:41 warning: failed to evaluate const tooBig at /usr/local/go/src/encoding/gob/decoder.go:18:7, runtime error: negative shift amount 2022/11/28 14:15:41 warning: failed to evaluate const uintSize at /usr/local/go/src/math/bits/bits.go:11:7, runtime error: negative shift amount 2022/11/28 14:15:41 warning: failed to evaluate const uintSize at /usr/local/go/src/math/bits/bits.go:11:7, runtime error: negative shift amount 2022/11/28 14:15:41 warning: failed to evaluate const UpperLower at /usr/local/go/src/unicode/letter.go:83:2, interface conversion: interface {} is int, not string 2022/11/28 14:15:41 warning: failed to evaluate const intSize at /usr/local/go/src/math/const.go:40:2, runtime error: negative shift amount 2022/11/28 14:15:41 warning: failed to evaluate const intSize at /usr/local/go/src/math/const.go:40:2, runtime error: negative shift amount 2022/11/28 14:15:41 warning: failed to evaluate const intSize at /usr/local/go/src/math/const.go:40:2, runtime error: negative shift amount 2022/11/28 14:15:41 warning: failed to evaluate const intSize at /usr/local/go/src/math/const.go:40:2, runtime error: negative shift amount 2022/11/28 14:15:41 warning: failed to evaluate const base at /Users/faustfu/go/pkg/mod/golang.org/x/text@v0.3.7/internal/language/lookup.go:76:7, interface conversion: interface {} is string, not int 2022/11/28 14:15:41 warning: failed to evaluate const intSize at /usr/local/go/src/strconv/atoi.go:52:7, runtime error: negative shift amount 2022/11/28 14:15:41 warning: failed to evaluate const intSize at /usr/local/go/src/strconv/atoi.go:52:7, runtime error: negative shift amount 2022/11/28 14:15:41 warning: failed to evaluate const uintSize at /usr/local/go/src/strconv/decimal.go:106:7, runtime error: negative shift amount 2022/11/28 14:15:41 warning: failed to evaluate const uintSize at /usr/local/go/src/strconv/decimal.go:106:7, runtime error: negative shift amount 2022/11/28 14:15:41 warning: failed to evaluate const intBits at /usr/local/go/src/fmt/scan.go:939:2, runtime error: negative shift amount 2022/11/28 14:15:41 create docs.go at docs/docs.go 2022/11/28 14:15:41 create swagger.json at docs/swagger.json 2022/11/28 14:15:41 create swagger.yaml at docs/swagger.yaml

This is helpful to me, thank you

This also happened to me. There doesn't seem to be a reason really. We compile swagger in our PR pipeline and it happens across multiple services since last week. On my machine it works like a charm.
As the most basic example, we had a pr changing the string value of a const somewhere in the code and the error occured.

@AdrianCio Hi,  sorry to have made this bug.
Enums invole a lot of const evaluation,  and many cases to be considered. It is to be pefected gradually.
@faustfu-WaveGIS has provided useful imformation about panic to me,  and I have made an effort to fix it by PR #1440.

Don't worry about it, I wanted to provide as much info as I could to help in figuring out a solution :D

Great to see a fix is already in master @sdghchj when do you think we will get a release for that ?

we are releasing a new version every month.

Wonder how many folks, like myself, just pinned their version to 1.8.7 and will never upgrade it again.

@AdrianCio, we are releasing a new version every month. The latest version was released 7 days ago, so you can do the maths.
Meanwhile, you can test by building swag from the source.

This is an awful decision to be made by a developer of something used by others.  If the teams answer is we only release once a month, do the math.. that is ridiculous and pathetic from a developer.

And remember, you can simply go install github.com/swaggo/swag@master.

It might be rude but it is true. As a dev, if i completely break something that people rely on (i made the choice to give my time and break it, i will make the choice to spend my time and fix it as that is the right thing to do) i am saying this from a standpoint of making people wait instead of releasing a patch is absurd and it is.
And remember, consumers are not GO devs and should not be expected/forced to build and run from source as i already stated.
I totally get people make mistakes, hell i do it all the time! I also have the expectation if something gets completely broken (not just a small thing) it should be fixed. I expect that from myself as well.

@AdrianCio, we are releasing a new version every month. The latest version was released 7 days ago, so you can do the maths.
Meanwhile, you can test by building swag from the source.

How about Bugfix/Patch releases come out ASAP while feature release following regular cadence? Are you going to say same thing when another CVE appears in the wild and you're gonna be like "do the maths"?

so you can do the math

and expecting users to build from source are really the only rude comments here.

I agree that a release should be made, but you can ask nicely and not call devs "pathetic" when they are spending their free time to bring us such a highly useful project. Being an OSS maintainer is hard enough.

Bud, I said the decision.. Not the dev.
I am well aware the crap OSS devs deal with & this is all about the decision to not patch it for 3 weeks

Bud, I said the decision.. Not the dev.
I am well aware the crap OSS devs deal with & this is all about the decision to not patch it for 3 weeks

Staying polite and benevolent in all circumstances and for all, prevent to avoid extreme and negative decisions being taken by a confusion of understanding.

advocating

Contribution is not only about pushing codes. We are all here contributing to the project by discussing things, submitting bugs, using and advocating it on the internet. If release cadence is about baking and testing latest changes, I suggest you to read what the release candidate is. ;)
Good luck.

That's funny. If we had gone by the book, we probably didn't advance from v1.0.0 due to the bugs we go through after each release.
I'm doing this maintenance for the benefit of the community in my free time. And believe me, I can easily find better things to do.

For me, This isn't about a bug being released, I mentioned that. This also isn't an attack on a dev or devs. My point of view was strictly about the decision made to leave this kinda bug in a (what I thought) was stable/latest release. It is not hard to patch and build, then rebase the current dev wth that set of changes but that wasn't even an option or thought. Live with this bug or build from source for 3 weeks was the answer.
You are commenting about running a dev in a live env and yet that is exactly what yall are using as the way to go forward for weeks.

https://github.com/swaggo/swag/releases/tag/v1.8.9-rc2 is out, let's try out and leave feedback please.


hack: ignore TLS hostname verification for spotifycdn.com

Spotify seems to have misconfigured some of their hosts or TLS certs:
javax.net.ssl.SSLPeerUnverifiedException: Hostname audio4-gm-fb.spotifycdn.com not verified:
certificate: sha256/mikb4l8fq5rYJv+AdSiChROLrTKpCEENcVFH4engaDw=
DN: CN=audio-gm-off.spotifycdn.com
subjectAltNames: [audio-gm-off.spotifycdn.com]
This patch ignores the host / subdomain part if both the cert and the host we want to connect to end in spotifycdn.com.
This is a hack for misconfigured servers, but security implications should be close to zero.

I've been testing this out today and while it prevents the cert failure, it seems that the chunk is often not available on the server name provided and throws a 404.
We're really talking about audio4-gm-fb.spotifycdn.com which has been using the audio-gm-off.spotifycdn.com certificate, so this problem is possibly a little deeper in the spotify ecosystem.

I think #779 is better solution, disable certificate verification is generally not a good idea and it seems to be broken anyways.


Remove extraneous and problematic radix checks

Closes #4

You're right, this is incorrect. We should probably add a test case.


Check status of PreBackupPod Deployments after operator restart

Summary
Fixes #335

Checklist

[x] Keep pull requests small so they can be easily reviewed.
[x] Categorize the PR by setting a good title and adding one of the labels:
bug, enhancement, documentation, change, breaking,
as they show up in the changelog
[x] Update the documentation.
[x] Update tests.
[x] Link this PR to related issues.

I've rebased this PR onto #333 since that other PR introduces quite some changes to the integration test infrastructure. I've also changed the base of this PR, so that it does not show the changes of #333 as changes of this PR.

Replaced PreBackupPod's client creation logic with seiso's implementation.
Rebased onto master and organised the commits.

I can confirm with this PR I cannot reproduce the issue locally anymore :tada:


feat(scorpion): ledger explorer graphical user interface

Is your feature request related to a problem? Please describe.
We do not have any way to show data on ledgers.
The Hyperledger Explorer project only supports Fabric and the development has slowed so there is an opportunity for us to deliver value.
Describe the solution you'd like

A GUI package built with Angular that is called cactus-scorpion (the shortlist of names comes from Top 50 Amazing Sahara Desert Animals, special thanks to @hartm @takeutak and @sfuji822 for being on the impromptu naming committee for this)
The package is compatible with cmd-api-server so that it can be served the same way that the cactus-cockpit package used to be before it got deprecated
In fact, the former cactus-cockpit package is a great starting point for the scorpion package to the point that if you look up the git history you can extract the code for it and then copy+rename it to get going the easiest possible way.
The application should have a sliding menu
One of the menu items should be named Ledgers
When the user clicks on the Ledgers menu item they are taken to a list of ledgers that the current running instance of the API server is connected to.
When clicking on any of those ledgers on the list, some metadata is displayed and a list of blocks/transactions are also rendered.
What the block/tx data looks/contains/formatted like will be slightly different for each ledger since each ledger has some unique characteristics to it, this is not a problem. We want to make sure that all relevant data is displayed rather than only displaying the common types of pieces of information (lowest common denominator)
If a ledger is not yet supported by scorpion then some graceful handling must be done on the UI in a way that is non-ambiguous. For example we could still show the ledger in the list of ledgers but then when the user clicks on it we could show a message that says "The current version of scorpion does not yet support the $LEDGER_NAME". This is preferred to just not showing a ledger in the list at all if it's not yet supported because that confuse people into thinking that they did not configure something correctly.
The GUI has to be responsive, work and present well on handheld devices such as phones, tablets laptops and large desktop screens (4k, 5k, etc. resolutions)
It would be great if there was no polling involved and instead SocketIO endpoints could be used to stream data changes for each ledger.
End to end test coverage powered by Angular's Protractor that verify that certain block/tx data is indeed rendered on the GUI as it gets added to a ledger (the AIO containers can host the ledger and then an instance of cmd-api-server can host the GUI that protractor can run assertions against checking if the block data showed up on the GUI or not)

To be defined:

The data to show for each ledger (e.g. what columns to show on a grid)

Describe alternatives you've considered
There is another school of thought where we could just make explorer tooling part of a recommended reference deployment architecture and then we don't have to maintain any of the code for such a tool. It is unclear at the time of this writing if we could achieve sufficient coverage of supported ledgers though (e.g. is there such tooling for each ledgers or are we the trailblazers here)
Additional context
N/A

This is interesting!

@petermetz Can this be closed as implemented in https://github.com/hyperledger/cacti/issues/2224, or do we have plans on implementing separate GUI? If so, what additional featured beside viewing ledger state is planned for scorpion?

@petermetz Can this be closed as implemented in #2224, or do we have plans on implementing separate GUI? If so, what additional featured beside viewing ledger state is planned for scorpion?

@outSH Works for me! Thank you for keeping up to date with these!