CDC typing, execution and Events

Two main aspects:

Add "Event" concept to, at relatively low cost (hopefully), group RawChange:s into events, with easy access preimage, delta etc.
Move execution model to a wholly executor based operation mode

The former is to ensure user does not need complete concept of how to reconstruct events from change rows, and more importantly, introduce the concept of not updating a stream (task) state until at end-or-event. This because when we (later) implement proper persistence of position states and allow to restore them properly, we don't restart in the middle of an event (if we crashed there), but instead re-do the full event.
The latter is god because a.) Threads are lame and b.) It allows for more user control w.r. to concurrency and over-provisioning  concurrency.
Right now, in the D3 world, we can't really share executors with driver in a useful manner. But the goal should be to be able to run wholly reactor-like, all layers of execution.
Minor changes:

Type encapsulation
Raw bytes access of cells
Consumer overloading

Seems my eclipse somehow decided to ignore/reset my git line endings settings. Thus several changes here turned into whole-file-replace. Rebased and should be fixed now.

ping?

Issues addressed.

I have no further objections to first "half" of commits:

999894b Add concept of "frozen" and "atomic" to DataType
d70d3d5 Add more info to ColumnDefinition
7630ddf Make Cell and Field opaque interfaces
1bb880b Add cell accessors to get "meta" cell for deletion
fea5c5a Add "raw bytes" accessor to cells/change
9d70420 Add isDeleted and deprecate getIsDeleted
66cc58e Reduce implementation class visibility
d062eab Reduce implementation type visibility
c256642 Make worker/taskaction execution (almost) fully Executor+future
05dcbab Add opaque wrapper for consumer interfaces
c709557 Simplify OperationType resolution
47afcae Add sequence number and end-of-batch accessors to RawChange

I am thinking about merging this half right now (and continue discussion on the second half).
I have few issues with Event abstraction. First, wouldn't BatchRawChange name better describe it? (and later I show how you still have to think in terms of RawChange when using Event)
Maybe a bit outside of scope of this PR, but I thought about having even higher-level abstraction. This could be built on top of Event (and it would make it much easier to do), but I'm worried it would add too much confusion - 3 ways of consuming: RawChange, Event and this even higher-level way. And there could be some performance problems regarding transforming the output between those 3 representations.
If this is not a problem and/or we go ahead with Event, those are my only objections:

(Maybe) rename Event to BatchRawChange
Update README.md in Printer and project top-level README - those are meant as a introduction to the library (but if the third abstraction is later introduced wouldn't it confuse people a suggested way of consuming was changed 3 times?)
Remove/revamp Event::getPreImage() and Event::getPostImage() - in the current form they are only useful when the batch contains only 1 delta (see below).

My proposed higher-level abstraction would solve two problems which are still not fixed by Event (although made easier by using Event):

Pair delta rows with pre-image and post-image rows. Note that it's not simple - in the "attached example" there was only a one 1 pre-image row (but 4 post-image rows) and you have to match them with proper delta row by looking at primary keys.
Event::getPreImage() and Event::getPostImage() don't help much as they only return a single RawChange for entire Event and in this example those images are of different rows - could confuse the user of library and make them miss data in BATCH operations.

Pairing row range delete CDC log rows. Operations such as DELETE FROM ks.t WHERE pk = 1 AND ck > 0 AND ck < 2; generate two CDC rows (in one Event), but you have to do the pairing yourself.

Here's a rough sketch of my proposed higher-level abstraction:
class UserProvidedConsumer implements HigherLevelConsumer { // dummy name
    CompletableFuture<Void> consumeInsert(InsertChange change) {
        change.getPartitonKey();
        change.getCell("column1");

        // 1. Pairing of pre/post-image rows
        change.getPreImage();
        change.hasPostImage();
        change.getPostImage();
    }
    // similar for update, (single row) delete

     // 2. Pairing row-range deletes
     CompletableFuture<Void> consumeRowRangeDelete(RowRangeDeleteChange change) {
         change.getPartitionKey();
         change.getClusteringKeyStart();
         change.getClusteringKeyEnd();
     }
     // similar for partition delete

}

Attached example
For example, consider such a table with CDC enabled with pre and post-images:
CREATE TABLE ks.t(pk int, ck int, v int, PRIMARY KEY (pk, ck)) WITH cdc = {'enabled': true, 'preimage': 'full', 'postimage': true};

Consider such a batch (note: there was a (pk=1, ck=1, v=4) row before):
BEGIN BATCH
UPDATE ks.t SET v = 11 WHERE pk = 1 AND ck = 1;
UPDATE ks.t SET v = 12 WHERE pk = 1 AND ck = 2;
UPDATE ks.t SET v = 13 WHERE pk = 1 AND ck = 3;
INSERT INTO ks.t(pk, ck, v) VALUES (1, 7, 7);
UPDATE ks.t SET v = 14 WHERE pk = 1 AND ck = 4;
UPDATE ks.t SET v = 15 WHERE pk = 1 AND ck = 5;
DELETE FROM ks.t WHERE pk = 1 AND ck > 4;
APPLY BATCH ;

And this is generated CDC log table:
 cdc$stream_id                      | cdc$time                             | cdc$batch_seq_no | cdc$deleted_v | cdc$end_of_batch | cdc$operation | cdc$ttl | ck   | pk | v
------------------------------------+--------------------------------------+------------------+---------------+------------------+---------------+---------+------+----+------
 0xc574000000000000b3501463a8000461 | 3d282330-985d-11eb-b079-2d2b3c882bdf |                0 |          null |             null |             0 |    null |    1 |  1 |    4
 0xc574000000000000b3501463a8000461 | 3d282330-985d-11eb-b079-2d2b3c882bdf |                1 |          null |             null |             2 |    null |    7 |  1 |    7
 0xc574000000000000b3501463a8000461 | 3d282330-985d-11eb-b079-2d2b3c882bdf |                2 |          null |             null |             1 |    null |    1 |  1 |   11
 0xc574000000000000b3501463a8000461 | 3d282330-985d-11eb-b079-2d2b3c882bdf |                3 |          null |             null |             1 |    null |    2 |  1 |   12
 0xc574000000000000b3501463a8000461 | 3d282330-985d-11eb-b079-2d2b3c882bdf |                4 |          null |             null |             1 |    null |    3 |  1 |   13
 0xc574000000000000b3501463a8000461 | 3d282330-985d-11eb-b079-2d2b3c882bdf |                5 |          null |             null |             1 |    null |    4 |  1 |   14
 0xc574000000000000b3501463a8000461 | 3d282330-985d-11eb-b079-2d2b3c882bdf |                6 |          null |             null |             1 |    null |    5 |  1 |   15
 0xc574000000000000b3501463a8000461 | 3d282330-985d-11eb-b079-2d2b3c882bdf |                7 |          null |             null |             6 |    null |    4 |  1 | null
 0xc574000000000000b3501463a8000461 | 3d282330-985d-11eb-b079-2d2b3c882bdf |                8 |          null |             null |             7 |    null | null |  1 | null
 0xc574000000000000b3501463a8000461 | 3d282330-985d-11eb-b079-2d2b3c882bdf |                9 |          null |             null |             9 |    null |    1 |  1 |   11
 0xc574000000000000b3501463a8000461 | 3d282330-985d-11eb-b079-2d2b3c882bdf |               10 |          null |             null |             9 |    null |    2 |  1 |   12
 0xc574000000000000b3501463a8000461 | 3d282330-985d-11eb-b079-2d2b3c882bdf |               11 |          null |             null |             9 |    null |    3 |  1 |   13
 0xc574000000000000b3501463a8000461 | 3d282330-985d-11eb-b079-2d2b3c882bdf |               12 |          null |             True |             9 |    null |    4 |  1 |   14

/cc @haaawk @elcallio

Naming aside (I honestly dislike RawChange, since it is imho even less descriptive - a simple Row or ChangeRow would be better - but I am not married to either approach). You are right in that the Event definition is incomplete. The pre-image/post-image should be at least Collections.
As for a higher abstraction, it can really just be a post-processing listener adaptor that breaks up an Event (or ChangeSet?) using pk/ck grouping and build operation specific structures. This is a good idea. I like it.
But I would suggest three types of groupings: Original RawChange (ChangeRow!), BatchRawChange (RawChangeSet/RawChangeBatch/´RawChangeSet?) and the actual Event` on top of it, that is actually exactly one "type" of operation (let's treat row delete start/end as a category - i.e. partition operation types by generative association), with opt single pre and post image.
Then a user can still subscribe to the last "high" level object type using a single lambda! :-)

Renamed, changed pre/post image definition. Changed patch order so it all builds up to the mighty batch sequence. ;-)

It seems that you're doing multiple unrelated things here @elcallio Could you please split the change into smaller PRs that can be easier reviewed?

@elcallio I think that we should split this PR into smaller PRs. Not only for the sake of easier reviews but also for the sake of keeping the development history clean. That would also mean merging parts of this PR sooner as they are less disputable than other while still discussing the remaining parts. For example switch to executors deserves it's own PR. So does introduction of events.

It seems that you're doing multiple unrelated things here @elcallio Could you please split the change into smaller PRs that can be easier reviewed?

I could, but it would be akin to busy-work. You would instead have X PR:s that all depend on each other and potentially require even more convoluted rebases eventually. While I get your sentiment, I would honestly prefer not to. This is still a fairly fluid library.

It seems that you're doing multiple unrelated things here @elcallio Could you please split the change into smaller PRs that can be easier reviewed?

I could, but it would be akin to busy-work. You would instead have X PR:s that all depend on each other and potentially require even more convoluted rebases eventually. While I get your sentiment, I would honestly prefer not to. This is still a fairly fluid library.

My biggest concern is that it's borderline impossible to properly review a big PR like this in a reasonable timeframe. The library is not so fluid any more because @avelanarius has made a lot of effort to test it thoroughly. New changes should now go through a rigid review so that we don't waste 3 weeks @avelanarius spent on testing. Unless of course you have time and desire to repeat this 3 weeks long testing cycle @elcallio :)? I do realize this is kind of busy-work but it is what's require. We want this project to keep high Scylla standards and you would be asked to split the change if it was to Scylla, wouldn't you?
If you don't want to do this busy-work then I can suggest that we will do it but it will have to wait until we find time for that. Many commits in this PR are no-brainers which could be just committed. That's why I'd rather got them in and focus on small parts that are more complex.

What I don't want is waiting for X PR:s to be merged, whist continuously updating+rebasing said X branches over and over again. But sure, I'll split it into three PR:s - interface/opaque/api richness (first section), executors (second) and batch sequence consumer (last).


The last action goal to "get_path" has been REJECTED

I found 5 questions while running the test file. Can you answer me if you have time?
The error is as follows
[ WARN] [1631606718.884913666]: No controllers plugins configured! - Use the param "controllers", which must be a list of tuples with a name and a type.
[ WARN] [1631606718.885140817]: No recovery_behaviors plugins configured! - Use the param "recovery_behaviors", which must be a list of tuples with a name and a type.
[ WARN] [1631606724.687575918]: No plugin loaded with the given name "navfn/NavfnROS"!
[ERROR] [1631606724.687814551]: The last action goal to "get_path" has been REJECTED
[ WARN] [1631606730.663607135]: No plugin loaded with the given name "navfn/NavfnROS"!
[ERROR] [1631606730.663776138]: The last action goal to "get_path" has been REJECTED
[ WARN] [1631606732.279851432]: No plugin loaded with the given name "navfn/NavfnROS"!
[ERROR] [1631606732.280002554]: The last action goal to "get_path" has been REJECTED

This is my terminal log
wuxi@wuxi-ThinkBook-14-G2-ITL:~/keenon_move_base$ roslaunch full_coverage_path_planner test_full_coverage_path_planner_plugin.launch
... logging to /home/wuxi/.ros/log/7fd69b74-1532-11ec-a2e1-683e26832183/roslaunch-wuxi-ThinkBook-14-G2-ITL-31140.log
Checking log directory for disk usage. This may take a while.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://wuxi-ThinkBook-14-G2-ITL:45917/

SUMMARY
========

PARAMETERS
 * /grid_server/frame_id: /map
 * /mobile_robot_simulator/odometry_topic: /odom
 * /mobile_robot_simulator/publish_map_transform: True
 * /mobile_robot_simulator/publish_rate: 10.0
 * /mobile_robot_simulator/velocity_topic: /move_base/cmd_vel
 * /move_base_flex/SpiralSTC/robot_radius: 0.1
 * /move_base_flex/SpiralSTC/tool_radius: 0.1
 * /move_base_flex/global_costmap/robot_radius: 0.1
 * /move_base_flex/local_costmap/global_frame: odom
 * /move_base_flex/local_costmap/height: 5.0
 * /move_base_flex/local_costmap/publish_frequency: 5.0
 * /move_base_flex/local_costmap/resolution: 0.05
 * /move_base_flex/local_costmap/robot_base_frame: base_link
 * /move_base_flex/local_costmap/rolling_window: True
 * /move_base_flex/local_costmap/static_map: False
 * /move_base_flex/local_costmap/update_frequency: 10.0
 * /move_base_flex/local_costmap/width: 5.0
 * /move_base_flex/planners: [{'type': 'full_c...
 * /move_base_flex/tf_timeout: 1.5
 * /rosdistro: melodic
 * /rosversion: 1.14.11

NODES
  /
    grid_server (map_server/map_server)
    mobile_robot_simulator (mobile_robot_simulator/mobile_robot_simulator_node)
    move_base (mbf_costmap_nav/move_base_legacy_relay.py)
    move_base_flex (mbf_costmap_nav/mbf_costmap_nav)
    rviz (rviz/rviz)

auto-starting new master
process[master]: started with pid [31150]
ROS_MASTER_URI=http://localhost:11311

setting /run_id to 7fd69b74-1532-11ec-a2e1-683e26832183
process[rosout-1]: started with pid [31161]
started core service [/rosout]
process[move_base_flex-2]: started with pid [31168]
process[move_base-3]: started with pid [31169]
process[grid_server-4]: started with pid [31170]
process[mobile_robot_simulator-5]: started with pid [31176]
process[rviz-6]: started with pid [31184]
[ INFO] [1631606718.514820481]: Initialized mobile robot simulator
[ INFO] [1631606718.515173672]: --- Starting MobileRobot simulator
[ INFO] [1631606718.615366346]: Started mobile robot simulator update loop, listening on cmd_vel topic
[ WARN] [1631606718.817455280]: local_costmap: Parameter "plugins" not provided, loading pre-Hydro parameters
[ INFO] [1631606718.819886797]: local_costmap: Using plugin "obstacle_layer"
[ INFO] [1631606718.822719159]:     Subscribed to Topics:
[ INFO] [1631606718.826130201]: local_costmap: Using plugin "inflation_layer"
[ WARN] [1631606718.843952612]: global_costmap: Parameter "plugins" not provided, loading pre-Hydro parameters
[ INFO] [1631606718.846914747]: global_costmap: Using plugin "obstacle_layer"
[ INFO] [1631606718.848340734]:     Subscribed to Topics:
[ INFO] [1631606718.852268482]: global_costmap: Using plugin "inflation_layer"
[ INFO] [1631606718.884641199]: The plugin with the type "full_coverage_path_planner/SpiralSTC" has been loaded successfully under the name "SpiralSTC".
[ WARN] [1631606718.884913666]: No controllers plugins configured! - Use the param "controllers", which must be a list of tuples with a name and a type.
[ WARN] [1631606718.885140817]: No recovery_behaviors plugins configured! - Use the param "recovery_behaviors", which must be a list of tuples with a name and a type.
[ WARN] [1631606724.687575918]: No plugin loaded with the given name "navfn/NavfnROS"!
[ERROR] [1631606724.687814551]: The last action goal to "get_path" has been REJECTED
[ WARN] [1631606730.663607135]: No plugin loaded with the given name "navfn/NavfnROS"!
[ERROR] [1631606730.663776138]: The last action goal to "get_path" has been REJECTED
[ WARN] [1631606732.279851432]: No plugin loaded with the given name "navfn/NavfnROS"!
[ERROR] [1631606732.280002554]: The last action goal to "get_path" has been REJECTED

No plugin loaded with the given name "navfn/NavfnROS"!
Looks like you didn't install navfn? Or did not configure it as a plugin. How does your parameter file look?

Thank you very much for replying to me, I have solved this problem, I would like to ask again, I put this plug-in in move Base alone, after getting the global path, I will track the path with PID. If I want to track the path and avoid obstacles in the track path, what should I do? Do you have any suggestions or your feature pack that can
achieve path tracking and obstacle avoidance? Thank you!

You cannot avoid obstacles with the PID. It's sole function is to track the path exactly. Avoiding obstacles would deviate from that purpose.
In that case most other local planners will probably do!

Is there any mathematical principle derivation and blog recommendation for full path coverage in your feature pack? I would like to learn the mathematical principle first and then look at the code, thank you!Is there any mathematical principle derivation and blog recommendation for full path coverage in your feature pack? I would like to learn the mathematical principle first and then look at the code, thank you!

Hello, I met the same problem as you, how did you solve it

您的功能包中是否有任何数学原理推导和博客推荐用于完整路径覆盖？想先学数学原理再看代码，谢谢！你们的feature pack里有全路径覆盖的数学原理推导和博客推荐吗？想先学习数学原理再看代码，谢谢！

非常感谢回复我已经解决了，想再教一下，我把这个插件直接移动到基地里，把路径指向路径后，如果PID跟踪。我想用跟踪并跟踪问题路径您的障碍物，我该怎么办？
实现路径和避障？谢谢！

Hello, I met the same problem as you, how did you solve it

Thank you very much for replying to me, I have solved this problem, I would like to ask again, I put this plug-in in move Base alone, after getting the global path, I will track the path with PID. If I want to track the path and avoid obstacles in the track path, what should I do? Do you have any suggestions or your feature pack that can
achieve path tracking and obstacle avoidance? Thank you!

Hello, I met the same problem as you, how did you solve it?  thank you

I am also getting the similar error

SUMMARY
========

PARAMETERS

/controller/Kd_lat: 0.3
/controller/Kd_long: 0.5
/controller/Ki_lat: 0.0
/controller/Ki_long: 0.0
/controller/Kp_lat: 4.0
/controller/Kp_long: 2.0
/controller/controller_debug_enabled: True
/controller/l: 0.5
/controller/track_base_link: True
/coverage_progress/coverage_radius: 0.3
/coverage_progress/map_frame: /coverage_map
/coverage_progress/target_area/x: 10
/coverage_progress/target_area/y: 10
/grid_server/frame_id: map
/interpolator/target_x_vel: 0.5
/interpolator/target_yaw_vel: 0.4
/mobile_robot_simulator/odometry_topic: /odom
/mobile_robot_simulator/publish_map_transform: True
/mobile_robot_simulator/publish_rate: 10.0
/mobile_robot_simulator/velocity_topic: /move_base/cmd_vel
/move_base/base_global_planner: SpiralSTC
/move_base_flex/SpiralSTC/robot_radius: 0.3
/move_base_flex/SpiralSTC/tool_radius: 0.3
/move_base_flex/global_costmap/robot_radius: 0.3
/move_base_flex/local_costmap/global_frame: odom
/move_base_flex/local_costmap/height: 5.0
/move_base_flex/local_costmap/publish_frequency: 5.0
/move_base_flex/local_costmap/resolution: 0.05
/move_base_flex/local_costmap/robot_base_frame: base_link
/move_base_flex/local_costmap/rolling_window: True
/move_base_flex/local_costmap/static_map: False
/move_base_flex/local_costmap/update_frequency: 10.0
/move_base_flex/local_costmap/width: 5.0
/move_base_flex/planners: [{'type': 'full_c...
/move_base_flex/tf_timeout: 1.5
/rosdistro: melodic
/rosversion: 1.14.13

NODES
/
controller (tracking_pid/controller)
coverage_progress (full_coverage_path_planner/coverage_progress)
grid_server (map_server/map_server)
interpolator (tracking_pid/path_interpolator)
map_to_coveragemap (tf/static_transform_publisher)
mobile_robot_simulator (mobile_robot_simulator/mobile_robot_simulator_node)
move_base (mbf_costmap_nav/move_base_legacy_relay.py)
move_base_flex (mbf_costmap_nav/mbf_costmap_nav)
publish_simple_goal (rostopic/rostopic)
rviz (rviz/rviz)
auto-starting new master
process[master]: started with pid [15681]
ROS_MASTER_URI=http://localhost:11311
setting /run_id to 7a4fbeba-119e-11ed-8edd-c858c025e6d0
process[rosout-1]: started with pid [15703]
started core service [/rosout]
process[move_base_flex-2]: started with pid [15710]
process[move_base-3]: started with pid [15711]
process[mobile_robot_simulator-4]: started with pid [15712]
process[grid_server-5]: started with pid [15717]
process[interpolator-6]: started with pid [15724]
process[controller-7]: started with pid [15727]
process[map_to_coveragemap-8]: started with pid [15734]
process[coverage_progress-9]: started with pid [15736]
process[publish_simple_goal-10]: started with pid [15739]
process[rviz-11]: started with pid [15750]
[ INFO] [1659360788.553002393]: CONTROLLER PARAMETERS
[ INFO] [1659360788.553596440]: -----------------------------------------
[ INFO] [1659360788.553612603]: Controller enabled: 1
[ INFO] [1659360788.553620264]: Controller DEBUG enabled: 1
[ INFO] [1659360788.553632370]: Distance L: 0.500000
[ INFO] [1659360788.553640764]: Feedback (long, lat, ang): (1, 1, 1)
[ INFO] [1659360788.553649345]: Feedforward (long, lat, ang): (1, 1, 0)
[ INFO] [1659360788.553662447]: Longitudinal gains: (Kp: 2.000000, Ki, 0.000000, Kd, 0.500000)
[ INFO] [1659360788.553673810]: Lateral gains: (Kp: 4.000000, Ki, 0.000000, Kd, 0.300000)
[ INFO] [1659360788.553682997]: Angular gains: (Kp: 1.000000, Ki, 0.000000, Kd, 0.300000)
[ INFO] [1659360788.553691386]: Robot type (holonomic): (0)
[ INFO] [1659360788.553699701]: Track base link: (1)
[ INFO] [1659360788.553707756]: LPF cutoff frequency: 1/4 of sampling rate
[ INFO] [1659360788.553718839]: Integral-windup limit: 1000.000000
[ INFO] [1659360788.553727990]: Saturation limits xy: 10.000000/-10.000000
[ INFO] [1659360788.553736852]: Saturation limits ang: 10.000000/-10.000000
[ INFO] [1659360788.553745810]: map frame:
[ INFO] [1659360788.553753665]: base_link frame:
[ INFO] [1659360788.553761725]: -----------------------------------------
[ INFO] [1659360788.607664433]: Initialized mobile robot simulator
[ INFO] [1659360788.608945345]: --- Starting MobileRobot simulator
[ INFO] [1659360788.709176627]: Started mobile robot simulator update loop, listening on cmd_vel topic
[ WARN] [1659360788.911329727]: local_costmap: Parameter "plugins" not provided, loading pre-Hydro parameters
[ INFO] [1659360788.914934950]: local_costmap: Using plugin "obstacle_layer"
[ INFO] [1659360788.921080871]:     Subscribed to Topics:
[ INFO] [1659360788.928310284]: local_costmap: Using plugin "inflation_layer"
[ WARN] [1659360788.962279748]: global_costmap: Parameter "plugins" not provided, loading pre-Hydro parameters
[ INFO] [1659360788.965696277]: global_costmap: Using plugin "obstacle_layer"
[ INFO] [1659360788.967469647]:     Subscribed to Topics:
[ INFO] [1659360788.968902216]: Transform between map and base_link found
[ INFO] [1659360788.971587875]: global_costmap: Using plugin "inflation_layer"
[ERROR] [1659360789.011080322]: Failed to load the mapping: No parameter controllers
[ INFO] [1659360789.014115755]: The plugin with the type "full_coverage_path_planner/SpiralSTC" has been loaded successfully under the name "SpiralSTC".
[ WARN] [1659360789.014442883]: No controllers plugins configured! - Use the param "controllers", which must be a list of tuples with a name and a type.
[ WARN] [1659360789.014825923]: No recovery_behaviors plugins configured! - Use the param "recovery_behaviors", which must be a list of tuples with a name and a type.
[ INFO] [1659360789.051131579]: Odometry received on topic odom
[ INFO] [1659360790.094073178]: Initialized!
[ INFO] [1659360790.094168248]: Requesting grid!!
[ INFO] [1659360790.095654134]: nRows: 600 nCols: 600 nodeSize: 12
[ INFO] [1659360790.199630266]: naive cpp completed!
[ INFO] [1659360790.199681608]: Converting path to plan
[ INFO] [1659360790.199709763]: Received goalpoints with length: 858
[ INFO] [1659360790.200215487]: Plan ready containing 800 goals!
[ INFO] [1659360790.200232602]: Total visited: 802
[ INFO] [1659360790.200249078]: Total re-visited: 283
[ INFO] [1659360790.200264330]: Total accessible cells: 519
[ INFO] [1659360790.200282756]: Total accessible area: 186.840015
[ INFO] [1659360790.200298828]: Publishing plan!
[ INFO] [1659360790.200718708]: Plan published!
elapsed time: 0.110723
[ WARN] [1659360790.205153197]: No plugins loaded at all!

[ INFO] [1659360818.778214899]: Cancel all goals for "get_path".
[ WARN] [1659360818.778264179]: Cancel planning failed or is not supported by the plugin. Wait until the current planning finished!
[ INFO] [1659360818.778381381]: Cancel all goals for "exe_path".
[ INFO] [1659360818.778419442]: Cancel all goals for "recovery".
[ INFO] [1659360818.778500762]: Stopping local and global costmap for shutdown
Warning: class_loader.ClassLoader: SEVERE WARNING!!! Attempting to unload library while objects created by this loader exist in the heap! You should delete your objects before attempting to unload the library or destroying the ClassLoader. The library will NOT be unloaded.
at line 122 in /tmp/binarydeb/ros-melodic-class-loader-0.4.1/src/class_loader.cpp
[rosout-1] killing on exit
[master] killing on exit
shutting down processing monitor...
... shutting down processing monitor complete
done

[ WARN] [1659360790.205153197]: No plugins loaded at all!
[ERROR] [1659360790.205392502]: The last action goal to "exe_path" has been REJECTED

Seems like you did not configure a local planner? What does your yaml file look like?

i'm new at this and i don't know what file i should throw away so i will share them all
controllers.yaml:
controllers:

name: 'tracking_pid'
type: 'tracking_pid/TrackingPidLocalPlanner'

controller:
holonomic_robot: false
mbf_tolerance_check: true
dist_tolerance: 0.2
angle_tolerance: 0.5
planners.yaml:
planners:

name: 'SpiralSTC'
type: 'full_coverage_path_planner/SpiralSTC'
name: 'navfn/NavfnROS'
type: 'navfn/NavfnROS'

local_costmap_params.yaml:
local_costmap:
global_frame: odom
robot_base_frame: base_link
update_frequency: 10.0
publish_frequency: 5.0
width: 5.0
height: 5.0
resolution: 0.05
static_map: false
rolling_window: true

im working on turtlebot2 and fccp code is working on rviz. when i connect my computer and turtlebot2 i can add robotmodel and its moving on rviz but not in realtime.

FCPP is a global planner plugin, but the TrackingPID is not!. For an example on how to use FCPP in combination with TrackingPID, please see:
https://github.com/nobleo/full_coverage_path_planner/blob/master/test/full_coverage_path_planner/test_full_coverage_path_planner.launch

i configured my launch file like this:
is this the right approach?

<!--Move base flex, using the full_coverage_path_planner-->
<node pkg="mbf_costmap_nav" type="mbf_costmap_nav" respawn="false" name="move_base_flex" output="screen" required="true">
    <param name="tf_timeout" value="1.5"/>
    <rosparam file="$(find full_coverage_path_planner)/test/full_coverage_path_planner/param/planners.yaml" command="load" />
    <rosparam file="$(find full_coverage_path_planner)/test/full_coverage_path_planner/param/local_costmap_params.yaml" command="load" />
    <param name="SpiralSTC/robot_radius" value="$(arg robot_radius)"/>
    <param name="SpiralSTC/tool_radius" value="$(arg tool_radius)"/>
    <param name="global_costmap/robot_radius" value="$(arg robot_radius)"/>
    <remap from="odom" to="/odom"/>
    <remap from="scan" to="/scan"/>

    <remap from="/move_base_flex/SpiralSTC/plan" to="/move_base/SpiralSTC/plan"/>
    <remap from="/move_base_flex/tracking_pid/interpolator" to="/move_base/TrackingPidLocalPlanner/interpolator"/>
</node>

<!-- Move Base backwards compatibility -->
<node pkg="mbf_costmap_nav" type="move_base_legacy_relay.py" name="move_base" >
    <param name="base_global_planner" value="SpiralSTC" />
    <param name="base_local_planner" value="DWAPlannerROS" />
</node>

<!-- Mobile robot simulator -->
<node pkg="mobile_robot_simulator" type="mobile_robot_simulator_node" name="mobile_robot_simulator" output="screen">
    <param name="publish_map_transform" value="true"/>
    <param name="publish_rate" value="10.0"/>
    <param name="velocity_topic" value="/move_base/cmd_vel"/>
    <param name="odometry_topic" value="/odom"/>
</node>

<!--We need a map to fully cover-->
<node name="grid_server" pkg="map_server" type="map_server" args="$(arg map)">
    <param name="frame_id" value="map"/>
</node>

<!--Tracking_pid cannot just accept a nav_msgs/Path, it can only go to a PoseStamped,
   so the path_interpolator drags a PoseStamped over a Path at a given speed-->
<node name="interpolator" pkg="tracking_pid" type="path_interpolator">
    <param name="target_x_vel" value="$(arg target_x_vel)"/>
    <param name="target_yaw_vel" value="$(arg target_yaw_vel)"/>
    <remap from="path" to="/move_base/SpiralSTC/plan"/>
</node>

<!--Tracking_pid tries to get the robot as close to it's goal point as possible-->
<node name="controller" pkg="tracking_pid" type="controller" output="screen">
    <remap from="move_base/cmd_vel" to="/move_base/cmd_vel"/>
    <remap from="local_trajectory" to="trajectory"/>
    <param name="controller_debug_enabled" value="True"/>
    <param name="track_base_link" value="true"/>
    <param name="l" value="0.5"/>
    <param name="Ki_long" value="0.0"/>
    <param name="Kp_long" value="2.0"/>
    <param name="Kd_long" value="0.5"/>
    <param name="Ki_lat" value="0.0"/>
    <param name="Kp_lat" value="4.0"/>
    <param name="Kd_lat" value="0.3"/>
</node>

<!-- Launch coverage progress tracking -->
<node pkg="tf" type="static_transform_publisher" name="map_to_coveragemap" args="$(arg coverage_area_offset) map coverage_map 100" />
<node pkg="full_coverage_path_planner" type="coverage_progress" name="coverage_progress">
    <param name="~target_area/x" value="$(arg coverage_area_size_x)" />
    <param name="~target_area/y" value="$(arg coverage_area_size_y)" />
    <param name="~coverage_radius" value="$(arg tool_radius)" />
    <remap from="reset" to="coverage_progress/reset" />
    <param name="~map_frame" value="/coverage_map"/>
</node>

<!-- Trigger planner by publishing a move_base goal -->
<node name="publish_simple_goal" pkg="rostopic" type="rostopic"  launch-prefix="bash -c 'sleep 1.0; $0 $@' "
    args="pub --latch /move_base/goal move_base_msgs/MoveBaseActionGoal --file=$(find full_coverage_path_planner)/test/simple_goal.yaml"/>

<!-- rviz -->
<node if="$(eval rviz)" name="rviz" pkg="rviz" type="rviz" args="-d $(find full_coverage_path_planner)/test/full_coverage_path_planner/fcpp.rviz" />

您的邮件已经收到，我将尽快回复！
                                                      ——李应林


Spark data locality in standalone?

I've got HDFS up and running and can run the example hadoop container and cat a file and see I'm always coming from the local node (woohoo!)
I just want to confirm, in order to have data locality I need to be running kubespark (spark standalone in kubernetes won't work?)

That’s correct - there were modifications to Spark to make locality work.
Sean
On July 26, 2017 at 9:41:30 PM, Jason Piper<EMAIL_ADDRESS>wrote:
I've got HDFS up and running and can run the example hadoop container and
cat a file and see I'm always coming from the local node (woohoo!)
I just want to confirm, in order to have data locality I need to be running
kubespark (spark standalone in kubernetes won't work?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/apache-spark-on-k8s/kubernetes-HDFS/issues/17, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AB2E2xBU1C9HDnfdfkU86uQLtnhZwCPiks5sSBT5gaJpZM4OkyP6
.

Fantastic, I thought so! I'm just about to give it all a spin, fingers crossed!


cmake install failing after action update

Description
An action is now failing possibly after the runner-images update yesterday, manifesting within the last 4 hours (re-running pipeline that worked fails with no changes). Action was working for cmake  3.30.5, it's installed using pip3, which now looks like:
Run pip3 install cmake
Collecting cmake
Downloading cmake-3.31.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (6.4 kB)
But is now giving the error:
Run cmake -B _build -G Ninja -DCMAKE_INSTALL_PREFIX=${PWD}/_install -DCMAKE_BUILD_TYPE=Debug ${CMAKE_OPTIONS} -DWITH_MPI=${WITH_MPI}
CMake Error: Could not find CMAKE_ROOT !!!
CMake has most likely not been installed correctly.
Modules directory not found in
/opt/hostedtoolcache/Python/3.12.7/x64/share/cmake-3.31
CMake Error: Error executing cmake::LoadCache(). Aborting.
Error: Process completed with exit code 1.
Platforms affected

[ ] Azure DevOps
[x] GitHub Actions - Standard Runners
[ ] GitHub Actions - Larger Runners

Runner images affected

[ ] Ubuntu 20.04
[ ] Ubuntu 22.04
[X] Ubuntu 24.04
[ ] macOS 12
[ ] macOS 13
[ ] macOS 13 Arm64
[ ] macOS 14
[ ] macOS 14 Arm64
[ ] macOS 15
[ ] macOS 15 Arm64
[ ] Windows Server 2019
[ ] Windows Server 2022

Image version and build link
Attempt 2 fails :
https://github.com/dftbplus/dftbplus/actions/runs/11758461511
Is it regression?
Yes, Attempt 1 for action from ~4 hours ago succeeds: https://github.com/dftbplus/dftbplus/actions/runs/11758461511/attempts/1
Expected behavior
Paths for cmake OK, and action proceeds to next stage of building project.
Actual behavior
Error from cmake about probably not installing correctly:
Run cmake -B _build -G Ninja -DCMAKE_INSTALL_PREFIX=${PWD}/_install -DCMAKE_BUILD_TYPE=Debug ${CMAKE_OPTIONS} -DWITH_MPI=${WITH_MPI}
CMake Error: Could not find CMAKE_ROOT !!!
CMake has most likely not been installed correctly.
Modules directory not found in
/opt/hostedtoolcache/Python/3.12.7/x64/share/cmake-3.31
CMake Error: Error executing cmake::LoadCache(). Aborting.
Error: Process completed with exit code 1.
Repro steps

Install cmake via pip3
call cmake in pipeline

Hi @bhourahine  , Thanks for confirming. Closing this issue.


Is it even possible to build tensorflow on Windows?

System information

Windows 10 Pro x64 - 19043.1237
TensorFlow installed from (source or binary): source
TensorFlow version: 2.4
Python version: 3.8
Installed using virtualenv? pip? conda?: no
Bazel version (if compiling from source): 3.7.1
GCC/Compiler version (if compiling from source): VC 14.29.30133
CUDA/cuDNN version: 11.0/8.0
GPU model and memory: Nvidia GTX 1080

I checked the the build from source page and followed the instructions. I have the repository cloned, I checked out 2.4 and I configured it with default settings except for 'cuda support' which I enabled.

ERROR: Config value 'cuda' is not defined in any .rc file

Even if I give up on cuda option, it still fails:
bazel build -c opt --define=no_tensorflow_py_deps=true --copt=-nvcc_options=disable-warnings //tensorflow:tensorflow.so --verbose_failures

ERROR: no such target '//tensorflow:tensorflow.dll': target 'tensorflow.dll' not declared in package 'tensorflow'

Then I tried a suggestion to use libtensorflow_cc.so:
bazel build -c opt --define=no_tensorflow_py_deps=true --copt=-nvcc_options=disable-warnings //tensorflow:libtensorflow_cc.so --verbose_failures

ERROR: no such target '//tensorflow:libtensorflow_cc.so': target 'libtensorflow_cc.so' not declared in package 'tensorflow'

In other words, nothing is even remotely working.
I don't understand anything about anything at this point. Is it not supposed to work? Was support for Windows removed?

@ammarsalman94 Could you please try to Build from Source  using TF latest stable version 2.6.0 and have a look at the similar issue link , Please let us know if it helps? Thanks!

I tried with version 2.6, same issues. I looked at the SO answer provided, in summary it says Bazel doesn't work on Windows and I have to build for Linux. If I wanted to run Tensorflow on Linux I wouldn't be trying to build it for Windows. So that defeats the whole purpose. Is that the conclusion? It simply doesn't build on Windows and the whole instruction pages are pretty much a waste of time?

@ammarsalman94
As per guide it is possible to have bazel on windows, please verify the system requirements and hardware requirements. [refer to link]

@ammarsalman94
Thank you for your response, glad the issue is resolved.


Changing the context of an API is not supported

Description:
Currently, APIM product does not support changing the context of an API. It cannot be done without creating a new API. It would be great if we can support this feature in an upcoming version and it would be useful especially in the development time.

Closing the issue as this is older than 3 years. Please reopen if the issue is valid still.


Auth client-credentials issues

Multiple issues found:

After release 0.9.0, the auth client-credentials command no longer supports --client-id and --client-secret.

Issue due to the fact https://github.com/opentdf/otdfctl/blob/main/docs/man/auth/client-credentials.md and https://github.com/opentdf/platform/blob/main/Consuming.md both still reference them

--with-client-creds and --with-client-creds-file not stopping the prompt from coming up.

When running: go run auth client-credentials \
     --host http://localhost:8080 \
     --with-client-creds '{"clientId":"opentdf","clientSecret":"secret"}'

The below screenshot is gotten:

The same thing happens using --with-client-creds-file with that same content in the file

After getting past entering the data, if running keycloak in docker I always get this error:
ERROR    could not authenticate: failed to get platform configuration: Get "http://keycloak:8888/auth/realms/opentdf/.well-known/openid-configuration": dial tcp: lookup keycloak: no such host

This is even when setting --host http://localhost:8080.

When testing I tested all releases from that had name otdfctl and only 0.6.0 - 0.9.0 worked properly for me, number 2 wasn't really tested though with these ones but in later releases it was.

I'd be willing to submit a PR to help with these issues.
However, would 1 be solved by:

Updating the docs to reference with --with-client-creds and/or --with-client-creds-file
Adding support for --client-id and client-secret back in?

Hi @shanedell, thanks for raising this! The best fix is to remove the reference to those flags in the documentation/manual. There are a few reasons for this:

Passing secrets into the shell via argument or flag value leaks the secret into shell history.
The auth client-credentials command is intended to be a person entity user flow where the credentials are passed in interactively so they are not leaked into shell history and are saved to the OS keyring under the profile. Most person users will also be better off with the auth login browser-driven OAuth flow instead.
If client credentials are utilized to authenticate the CLI as an automation rather than a person user, the more secure option that avoids leaking the secret into shell history is --with-client-creds-file. In an automation scenario there is no need for a profile and keyring/profile support on Linux is untested.

Longer-term, it is my opinion that --with-client-creds should be deprecated completely (in favor of solely --with-client-creds-file) so that there is no scenario where a client secret can be found in shell history, but this is subject to change.

See related issue: https://github.com/opentdf/otdfctl/issues/417

@jakedoublev So I have tried using the --with-client-creds-file but would still get prompted for my clientId and clientSecret like shown in the screenshot. Is that supposed to happen or am I supposed to with that flag with a different command than client-credentials?
For my 3rd issue would a possible fix be allowing the opentdf platform sdk to all setting the token endpoint host? Then adding a flag to this CLI that gets passed to the sdk.New that will set it. Asking because if you follow the guide here https://github.com/opentdf/platform/blob/main/Consuming.md you will get the same error I got in number 3. This due to when fully running in docker the issuer host needs to be the keycloak docker service for some of the other containers. However, when running the CLI this default of trying to hit keycloak causes the error mentioned so it would be nice to be able to reroute to localhost instead.

Ah, @shanedell I did not remember we had added arguments for the client id and secret. Are you able to authenticate your profile with ./otdfctl auth client-credentials opentdf secret assuming you have not changed the default client ID and secret provisioned into the platform's keycloak container?
I believe the third issue you experienced is not addressable here within otdfctl, but seems like it is due to doc drift in the opentdf platform repo as docker compose up appears to starts keycloak at http://localhost:8888.

@jakedoublev Yes I was able to authenticate with ./otdfctl auth client-credentials opentdf secret. I will create a PR to update the docs.
As for the 3rd issue should open an issue in the platform repo that gives more detail?

@jakedoublev I have created a new issue for the platform here: https://github.com/opentdf/platform/issues/1785. I will create a PR soon to update the information here with client-credentials.


Repackaging - Oracle Cloud Infrastructure (using Azure Function)

Required items, please complete
Change(s):

See guidance below

Reason for Change(s):

See guidance below

Version Updated:

Required only for Detections/Analytic Rule templates
See guidance below

Testing Completed:

See guidance below

/Package

/Package


NASNet Model

Dear @moskomule,
Thank your for your nice repository. Recently the Google Brain Team released a fantastic CNN model, NASNet, in TF-slim, which achieved the state-of-the-art Top-1 Accuracy on ImageNet by 82.7 %. According to your ability by implementing the SENet Model in PyTorch, would you please kindly implement or port this model into PyTorch?

Hi @ahkarami,
I'm not sure if I can implement it or not but I'll try.

Thank you very much.


Windows 11 Pro 22H2 (22621.1105) doesn't work

Hi,
my windows just got upgraded from 10 to 11. I uninstalled RDP Wrapper and reinstalled it.
I have info that my terminal services are not supported

but then when I run RDP_CnC I get info that everything is fine.

However, I can only open one RDP session at the moment.

Try:

Download RDP Wrapper 1.6.2 and extract this to any directory.
Place rdpwrap.ini in the same directory.
Open CMD as administrator
Execute this commands

cd C:\path\to\directory\
rdpwinst -u -k
rdpwinst -i

Enjoy!

Original message: https://t.me/rdpwrap/49131

One termsrv.dll version = one opened issue.
This issue will closed as duplicate of first with this version.

Duplicate of https://github.com/stascorp/rdpwrap/issues/2006


[H001049] Sen. Kay Hagan

Sen. Kay Hagan:
http://www.hagan.senate.gov
Likely contact form URL to start with:
http://www.hagan.senate.gov/?p=contact

YAML file lost. I am working on it.


PT-1650 | chore: switch from KuVa to Platta environments

Description :sparkles:
chore: switch from KuVa to Platta environments
refs PT-1650
Issues :bug:
Closes :no_good_woman:
–
Related :handshake:
PT-1650
Testing :alembic:
Automated tests :gear:
Manual testing :construction_worker_man:
Screenshots :camera_flash:
Additional notes :spiral_notepad:

kultus-ui branch is deployed to platta: https://kultus-ui-pr276.dev.hel.ninja :rocket::rocket::rocket:


Aniplay: Failed to Bypass Cloidflare

Source information
Aniplay 14.7 (English)
Source language
English
Steps to reproduce
Step 1: on Aniyomi, view "Anime Sources" in the Browse section.
Step 2: click on Aniplay.
Step 3: it shows the Cloudflare error immediately.
Expected behavior
You should be able to click on Aniplay and view the anime listed.
Actual behavior
Instead, it shows the "Failed to Bypass Cloudflare" error.
Which app are you using?
Aniyomi
App version
<IP_ADDRESS>
Android version
Android 13
Other details

Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
[X] I have written a short but informative title.
[X] I have updated all installed extensions.
[X] I have tried the troubleshooting guide.
[X] I will fill out all of the requested information in this form.

It worked for me

Try Changing your user agent
Navigate to More -> Settings -> Advanced.
Modify Default user agent string to another value.
Here's yours everyone have different user agents
Restart the app and retry.

Thanks you guys, it works now. Appreciate it.


iOS fat binary creation does not work.

Operating system or device - Godot version:
OS X Yosemite 10.10.5,  Godot 2.1-stable, Xcode 7.2.

In docs http://docs.godotengine.org/en/stable/reference/compiling_for_ios.html there is an instruction

$ scons p=iphone tools=no bits=32 target=release
$ scons p=iphone tools=no bits=64 target=release
$ lipo -create bin/godot.iphone.opt.32 arm64 bin/godot.iphone.opt.64 -output bin/godot.iphone.opt.universal

So I renamed the godot.iphone.opt.arm files I got after compilation accordingly, but lipo errors with
fatal error:

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/lipo: can't open input file: arm64 (No such file or directory)

When I try to correct the typo and add -arch before arm64, to indicate the architecture of the input file:
lipo -create bin/godot.iphone.opt.32 -arch arm64 bin/godot.iphone.opt.64 -output ./bin/godot.iphone.opt.universal

I get error:

lipo: specifed architecture type (arm64) for file (./godot.iphone.opt.64) does not match its cputype (12) and cpusubtype (9) (should be cputype (16777228) and cpusubtype (0))

UPDATE: I additionally checked lipo -info godot.iphone.opt.64 and it shows that it's armv7 architecture?! I am sure I did compile it with bits=64 option.
I also tried -arch arm64v8 and that ended with similar error.
I assume there is an error in docs, or there is a bug with compiling 64 bit version of iphone template.
I would appreciate if someone push me in the right direction how to compile fat binary for iOS.

That's likely an issue with the docs. Given https://github.com/GodotBuilder/godot-builds/blob/master/.travis.yml, the correct process is:
scons platform=iphone arch=arm target=release
scons platform=iphone arch=arm64 target=release
lipo -create -arch armv7 bin/godot.iphone.opt.arm -arch arm64 bin/godot.iphone.opt.arm64 -output bin/godot.iphone.opt.universal

First of all thank you for your report and sorry for the delay.
We released Godot 3.0 in January 2018 after 18 months of work, fixing many old issues either directly, or by obsoleting/replacing the features they were referring to.
We still have hundreds of issues whose relevance/reproducibility needs to be checked against the current stable version, and that's where you can help us.
Could you check if the issue that you described initially is still relevant/reproducible in Godot 3.0 or any newer version, and comment about it here?
For bug reports, please also make sure that the issue contains detailed steps to reproduce the bug and, if possible, a zipped project that can be used to reproduce it right away. This greatly speeds up debugging and bugfixing tasks for our contributors.
Our Bugsquad will review this issue more in-depth in 15 days, and potentially close it if its relevance could not be confirmed.
Thanks in advance.
Note: This message is being copy-pasted to many "stale" issues (90+ days without activity). It might happen that it is not meaningful for this specific issue or appears oblivious of the issue's context, if so please comment to notify the Bugsquad about it.

Our Bugsquad will review this issue more in-depth in 15 days, and potentially close it if its relevance could not be confirmed.

As there was no update since the previous post, we close this issue.
If it is still relevant in the way it was described and discussed above, please comment to ask for it to be reevaluated. If it is only partly relevant, or if the original issue has changed, it would be better to open a new issue (potentially referring to this one) focused on the current state.


Fix late-coming issues.

Joint work with @jeffdaily.

@AlexVlx you forgot to add NVCC path related changes. Either add those or disable hipMemcpyWithStream test on NVCC for now.

Thank you @gargrahul, that is a very useful contribution indeed.


HNC: consider preventing orphans

 Issue by adrianludwin
Wednesday May 13, 2020 at 17:17 GMT
Originally opened as https://github.com/kubernetes-sigs/multi-tenancy/issues/717

Currently, HNC lets you delete parents of full namespaces without any restrictions, e.g.:
k create ns parent
k create ns child
k hns set child -p parent
k delete ns parent # ok; `child` now has CritParentMissing

Since our admission webhooks stop you from creating most other critical conditions, I'm wondering if we should do the same thing here? E.g., maybe we should insist that all (full) children are removed from this tree before allowing deletion? Or maybe it would need to integrate with allowCascadingDelete in some way (though this isn't really cascading deletion so we may need a new name for it).

 Comment by adrianludwin
Wednesday May 13, 2020 at 17:17 GMT

/assign @yiqigao217
Again this isn't for HNC v0.4

 Comment by yiqigao217
Wednesday Aug 12, 2020 at 14:09 GMT

/remove-lifecycle stale

 Comment by fejta-bot
Tuesday Aug 11, 2020 at 17:33 GMT

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.
If this issue is safe to close now please do so with /close.
Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle stale

 Comment by fejta-bot
Tuesday Nov 10, 2020 at 14:58 GMT

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.
If this issue is safe to close now please do so with /close.
Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle stale

 Comment by fejta-bot
Thursday Dec 10, 2020 at 15:43 GMT

Stale issues rot after 30d of inactivity.
Mark the issue as fresh with /remove-lifecycle rotten.
Rotten issues close after an additional 30d of inactivity.
If this issue is safe to close now please do so with /close.
Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle rotten

 Comment by fejta-bot
Wednesday Mar 10, 2021 at 17:59 GMT

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.
If this issue is safe to close now please do so with /close.
Send feedback to sig-contributor-experience at kubernetes/community.
/lifecycle stale

 Comment by adrianludwin
Thursday Dec 10, 2020 at 17:07 GMT

/remove-lifecycle rotten
On Thu, Dec 10, 2020 at 10:43 AM fejta-bot<EMAIL_ADDRESS>wrote:

Stale issues rot after 30d of inactivity.
Mark the issue as fresh with /remove-lifecycle rotten.
Rotten issues close after an additional 30d of inactivity.
If this issue is safe to close now please do so with /close.
Send feedback to sig-testing, kubernetes/test-infra and/or fejta
https://github.com/fejta.
/lifecycle rotten
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/kubernetes-sigs/multi-tenancy/issues/717#issuecomment-742602242,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AE43PZBLYNVLWK63DXB7UWTSUDUDNANCNFSM4M76XLPA
.

 Comment by fejta-bot
Thursday Apr 15, 2021 at 15:19 GMT

Stale issues rot after 30d of inactivity.
Mark the issue as fresh with /remove-lifecycle rotten.
Rotten issues close after an additional 30d of inactivity.
If this issue is safe to close now please do so with /close.
Send feedback to sig-contributor-experience at kubernetes/community.
/lifecycle rotten

 Comment by yiqigao217
Tuesday Mar 16, 2021 at 15:03 GMT

/remove-lifecycle stale
@adrianludwin this can remain in backlog and not into v0.8 milestone.

 Comment by yiqigao217
Wednesday May 05, 2021 at 18:32 GMT

/remove-lifecycle rotten


Add new permission

https://github.com/discord/discord-api-docs/pull/3805

Fixed in https://github.com/nextcord/nextcord/commit/41c9223f4e4b3eab012d143cc3245b1a072e71f5


MINOR Added APIs to build schema registry version

@raju-saravanan Added version related classes into common-client module so that clients cal also get to know which library version are they using. Can you review the latest commit?


feat: improve performance by delaying computation of fixes for diagnostics

bors r+
🤖

closes #8268

bors r+


Bugs

🐞 Problem

🎯 Goal

💡 Possible solutions

📋  Steps to solve the problem

Comment below about what you've started working on.
Add, commit, push your changes
Submit a pull request and add this in comments - Addresses #<put issue number here>
Ask for a review in comments section of pull request
Celebrate your contribution to this project 🎉

Closing as no content was provided.


Fix order of accounts in ledger coinbase witness

This PR cherry-picks https://github.com/MinaProtocol/mina/pull/13860 onto berkeley, and adds a test that passes only when the fix is applied. All credit goes to @sebastiencs.
Checklist:

[ ] Dependency versions are unchanged

Notify Velocity team if dependencies must change in CI

[ ] Modified the current draft of release notes with details on what is completed or incomplete within this project
[ ] Document code purpose, how to use it

Mention expected invariants, implicit constraints

[ ] Tests were added for the new behavior

Document test purpose, significance of failures
Test names should reflect their purpose

[ ] All tests pass (CI will check this if you didn't)
[ ] Serialized types are in stable-versioned modules
[ ] Does this close issues? List them

!ci-build-me

!ci-build-me


Find has accessed to unpublished attribute

I've added a feed attribute to the user object, but haven't published it. Yet in a test case, the Meteor.user() object has a feeds attribute. When accessing the mirror through the browser, the feeds is undefined. Any idea why?

Maybe:

It's a server test
You have autopublish intalled

Its a client integration test. Rechecked: autopublish is not installed.

I'm also getting a strange issue where test case expect statements are interchanged.

Can you post your test code please.

Ah yes, sorry.  Heres the user login spec:
describe("Users", function(){
beforeAll(function(done){
	Accounts.createUser({username: "test_user", email: "test@example", password: "123"}, function(error){
	Meteor.logout();
   done();
});

})

it("should be able to login", function(){
Meteor.loginWithPassword("test_user","123",function(){
  expect(Meteor.user().username).toEqual("test_user");
});

});

it("should be able to add a feed", function(){
Meteor.call('addFeedToUser',Meteor.userId(),{feedId: 1, starred: true},function(){
feeds = Meteor.user().feeds;
expect(feeds).toEqual([{feedId: 1, starred: true}]);
});
});
})
And heres the unrelated People spec:
describe("People", function(){
it("should be able to create new person", function () {
	var person = {name: "Omer", address: "Bahri", email<EMAIL_ADDRESS>mobile: "0918415254"}
	var personId = Meteor.call('addPerson', person, function(error, person_id) {
			expect(People.find(person_id).name).toEqual("Omer");

		}
	);

});

it("should be able to update an exsiting person", function () {
	var person = People.findOne();
	person.name = "Omer Ali";

	Meteor.call('updatePerson', person._id, person);
	expect(People.findOne().name).toEqual("Omer Ali");
	expect(People.findOne().email).toEqual("omar.bahri@gmail.com");
});

});
I'm getting this result from the first two test cases:
Expected undefined to equal 'Omer'.

My bad. After reviewing the tests, most of it seems to be asynchronous issues, which I believe I've managed to clear up. Tests seem to be working as expected. Thank you for your time.


Stop hitting master/state.json in mesos collector

Please see PAASTA-13169 for more context.
Summary:
The fullerite mesos collector was using /master/state.json endpoint to figure out the ip address of the elected mesos master. This is an extremely expensive call which returns a json blob of mesos masters internal state. There is another endpoint 'metrics/snapshot' which can be used to check if the master we are using is the elected leader or not. This endpoint is much lighter than 'master/state.json'.
The change I made:
Removed mesos leader utility and switched to 'metrics/snapshot' to get metrics.
Testing:
Manually tested.
Unit tests are passing.
Added a test to make sure that my change works.

lgtm, but I'd wait for Avadhut's review

Going to wait for @avadhutp's approval before merging this.

lgtm; ship-it :shipit:


Problem of Build Fabric Private Chaincode

When I build FPC as Build Fabric Private Chaincode.  "Make docker" is no problem. When I tap make, the problem is as follow:
make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/utils'
make[1]: Entering directory '/project/src/github.com/hyperledger/fabric-private-chaincode/integration'
./auction_test.sh
auction_test.sh: FABRIC_BIN_DIR not properly defined as '/project/src/github.com/hyperledger/fabric-private-chaincode/fabric/_internal/bin'
make[1]: *** [Makefile:13: auction_test] Error 111
make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/integration'
make: *** [Makefile:22: test] Error 2
Another problem is as below:
ERROR  (/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/pdo-crypto-c-wrapper.cpp:62) error at /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/pdo-crypto-c-wrapper.cpp:62: Crypto Error (deserializeECDSAPublicKey): Could not deserialize public ECDSA key
ERROR  (/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/pdo-crypto-c-wrapper.cpp:130) error at /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/pdo-crypto-c-wrapper.cpp:130: Crypto Error (deserializeRSAPublicKey): Could not deserialize public RSA key
ERROR  (/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/pdo-crypto-c-wrapper.cpp:166) error at /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/pdo-crypto-c-wrapper.cpp:166: Crypto Error (deserializeRSAPrivateKey): Could not deserialize private RSA key
ERROR  (/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/pdo-crypto-c-wrapper.cpp:199) error at /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/pdo-crypto-c-wrapper.cpp:199: Crypto Error (EncryptMessage): Wrong AES-GCM key length
ERROR  (/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/pdo-crypto-c-wrapper.cpp:232) error at /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/pdo-crypto-c-wrapper.cpp:232: Crypto Error (DecryptMessage): Wrong AES-GCM key length
Expected behavior
How can solve the problems?

Hi!

make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/utils'
make[1]: Entering directory '/project/src/github.com/hyperledger/fabric-private-chaincode/integration'
./auction_test.sh
auction_test.sh: FABRIC_BIN_DIR not properly defined as '/project/src/github.com/hyperledger/fabric-private-chaincode/fabric/_internal/bin'
make[1]: *** [Makefile:13: auction_test] Error 111
make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/integration'
make: *** [Makefile:22: test] Error 2

FABRIC_BIN_DIR should be set via the config.mk. Please check that $FPC_PATH/fabric/_internal/bin exists. It should be downloaded automatically when running make. I suggest that you run make clean to tidy up your environment. Then make build to just build all the FPC components and see that this works. Finally, run make test.
For the other error related to the common/crypto package I am missing a bit of context. I could be that this fails as other tests already have failed?!

Hi!

make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/utils'
make[1]: Entering directory '/project/src/github.com/hyperledger/fabric-private-chaincode/integration'
./auction_test.sh
auction_test.sh: FABRIC_BIN_DIR not properly defined as '/project/src/github.com/hyperledger/fabric-private-chaincode/fabric/_internal/bin'
make[1]: *** [Makefile:13: auction_test] Error 111
make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/integration'
make: *** [Makefile:22: test] Error 2

FABRIC_BIN_DIR should be set via the config.mk. Please check that $FPC_PATH/fabric/_internal/bin exists. It should be downloaded automatically when running make. I suggest that you run make clean to tidy up your environment. Then make build to just build all the FPC components and see that this works. Finally, run make test.
For the other error related to the common/crypto package I am missing a bit of context. I could be that this fails as other tests already have failed?

Hi!

make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/utils'
make[1]: Entering directory '/project/src/github.com/hyperledger/fabric-private-chaincode/integration'
./auction_test.sh
auction_test.sh: FABRIC_BIN_DIR not properly defined as '/project/src/github.com/hyperledger/fabric-private-chaincode/fabric/_internal/bin'
make[1]: *** [Makefile:13: auction_test] Error 111
make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/integration'
make: *** [Makefile:22: test] Error 2

FABRIC_BIN_DIR should be set via the config.mk. Please check that $FPC_PATH/fabric/_internal/bin exists. It should be downloaded automatically when running make. I suggest that you run make clean to tidy up your environment. Then make build to just build all the FPC components and see that this works. Finally, run make test.
For the other error related to the common/crypto package I am missing a bit of context. I could be that this fails as other tests already have failed?

I just remove all containers and repeat the building progrecess. The problem are still there. There is no $FPC_PATH/fabric/_internal/bin exists. How can solve the problems?

Do you use the FPC docker dev container?
You can run make -C $FPC_PATH/fabric. That should download the binaries into fabric/_internal/bin


[DBZ-602] - Allow locking mode to bypass table locks.

PR is a work in progress / rough draft for https://issues.jboss.org/browse/DBZ-602
Removes/Renames snapshot.minimal.locks configuration option to snapshot.locking.mode set by an enumerated list of values: “extended”, “minimal”, “none”.
“extended” would be the same as snapshot.minimal.locks = false.
“minimal” would be the same as snapshot.minimal.locks = true.
“none” would be the new behavior which avoids all table locks at the risk of the user.

Thanks for the feedback @gunnarmorling !  I'll take a look today and make your suggested edits.  Many thanks!

@gunnarmorling I think this is ready for another look when you have a free moment.
Thanks!

@Crim, awesome, thanks! I'll check it out tomorrow.

Hey @Crim, quick heads-up: we've planned to do the 0.7.4 release Wednesday this week. It'd be nice to include this change, should you have a chance to address the remaining comments by then. If not, it's no issue, too, releases ship every three weeks. Also, if you need any help or want to discuss anything, just let us now.

Hey @gunnarmorling I'll try to wrap this up today, apologies last week was a bit packed for me.  I'll look back over this shortly and let you know if I have any remaining questions.

Cool; thanks a lot for your quick reply and your efforts!

I'm going to let travis do its thing and if all the tests pass, I'll validate it manually here to be sure it reads the settings correctly.

So I tested manually the following and all seemed to work as I would have expected.

✅  Deploy new connector using snapshot.minimal.locks = true and no snapshot.locking.mode defined.  Connector deployed with snapshot locking mode = minimal.
✅ Deployed new connector using snapshot.minimal.locks = false and no snapshot.locking.mode defined.  Connector deployed with snapshot locking mode = extended.
✅ Deployed new connector with no snapshot.minimal.locks defined, and snapshot.locking.mode = none.
✅ Deployed a new connector with both snapshot.minimal.locks defined and snapshot.locking.mode defined and received a validation error.
✅ Deployed a new connector snapshot.locking.mode set to NONE and snapshot.mode set to initial and received a validation error.

I'll look at creating a PR to update the documentation next.

PR for documentation here: https://github.com/debezium/debezium.github.io/pull/127

Hey @Crim, all looks good. Squashed into a single commit and merged. Thanks a lot!


Question regarding Cropping motions in dataloader

Had some questions from the dataloader part.

Why do we want to Crop the motions into times of 4 in the dataloader? As in here.
If we have a motion of length that is not divisible by 4 and less than maximum motion length, we are going to pad it with zero's anyways, as in here.
While testing as I have a constraint in my task that I cannot crop my input motion, would ignoring this cropping my input motion result in bad behavior from MDM?
Also, instead of cropping, would padding the input with duplicate start/end frames to make it divisible by 4 be fine?

Thanks!

That's not necessary for MDM/ProrMDM just a legacy from https://github.com/EricGuo5513/text-to-motion
No
Just remove the cropping feature all together, it's redundant in our context

Hope it helps:)

Thanks!


Intermittently Pass key enrolment is not working.

Describe the Issue:
Intermittently Pass key enrolment is not working.
How To Reproduce:

Login to console
Create customer user
Login to my account with the customer user (My account tenanted path)
Navigate to the security page
Select pass key add button
Select use a phone, tablet and security key
Scan the QR code from phone (here intermittently )

Expected behavior:
QR scanning complete and pass key generate success.
Environment information (Please complete the following information; remove  any unnecessary fields) :

Product Version: [e.g., IS 5.10.0, IS 5.9.0]
OS: [e.g., Windows, Linux, Mac]
Database: [e.g., MySQL, H2]
Userstore: [e.g., LDAP, JDBC]

Optional Fields
Related issues:

Suggested labels:

Closing the issue since the behavior is expected due to the network slowness.


[bug]  Containers cannot exit normally, but frameworks exit and reallocate the resources they occupy。

Organization Name:
NEL-BITA
Short summary about the issue/question:
Due to hardware, OS level or docker problems, containers cannot exit normally when the framework exits.
The key problem is that the resources occupied by these containers (gpu, port and memory) are reallocated, resulting in frequent errors in user submission tasks. For example, GPU oom and occupied ports.
Therefore, our requirement is to improve the framework exit mechanism, that is, to detect containers that do not exit normally and isolate the resources they occupy.

what is the version you are using?

0.8.3

I remember NM will detect unmanged GPU and Port usage, and avoid to allocated resource on the. @mzmssg for the YARN related investigation.

@hirolsj, can we sync it privately. we'd like to have the first hand information (e.g., ssh to the servers) to understand what is going on.

Ok, contact me<EMAIL_ADDRESS>by email.

可以加我的微信leihiro943215，商量一下这个问题的怎么解决。
<EMAIL_ADDRESS>发件人： fan yang
发送时间： 2019-02-18 11:27
收件人： Microsoft/pai
抄送： leishengjun; Mention
主题： Re: [Microsoft/pai] [bug] Containers cannot exit normally, but frameworks exit and reallocate the resources they occupy。 (#2152)
@hirolsj, can we sync it privately. we'd like to have the first hand information (e.g., ssh to the servers) to understand what is going on.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

@hirolsj - 关于问题的在线讨论，请加入https://gitter.im/Microsoft/pai， Gitter有iOS and Android客户端，国内也能访问。PAI Dev会在Gitter Chat Room answer questions.

ok
<EMAIL_ADDRESS>发件人： Scarlett Li
发送时间： 2019-02-18 13:52
收件人： Microsoft/pai
抄送： leishengjun; Mention
主题： Re: [Microsoft/pai] [bug] Containers cannot exit normally, but frameworks exit and reallocate the resources they occupy。 (#2152)
@hirolsj - 关于问题的在线讨论，请加入https://gitter.im/Microsoft/pai， Gitter有iOS and Android客户端，国内也能访问。PAI Dev会在Gitter Chat Room answer questions.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

https://github.com/Microsoft/pai/pull/1646
this is the PR addressing zombie container issue.

the customer reports the process in a job container goes to D state because of uninterruptible-sleep due to I/O ops, probably due to NFS issue. https://eklitzke.org/uninterruptible-sleep. When this happened, the Docker container cannot exit, and Docke itself is in unhealthy state. Admin has to reboot Docker daemon to resolve it.

it seems will should monitor job container state here and hold the yarn container as long as possible, unless yarn gave up.

Thanks！

A workaround to avoid rebooting is killing the shimd process(The parent process of container root process), then host initd will adopt the D processes and container can exit.
Of course it's not recommanded

Containers should be in some status like stopping in this case. But currently it finished directly.
@yqwang-ms
GPU conflict is because NM only detect memory leak, no other detection.
Port conflict is a known bug to fix.https://github.com/Microsoft/pai/issues/1983

@mzmssg
I synced with Qingcha who implement GPU and ported the Port codes, he said NM has the GPU and Port detection.
And for the Port issue, it should be easy to fix, please take a look.

Double synced with Qingcha, we confirmed that current unmanaged GPU detection is not work.

@hirolsj
More details to help you understand this topic:
Currently, we have 2 docker cotaniners associated to 1 yarn container. One is yarn container script(contaienr A), the other is the real job container(container B).
When killing job, YARN only care about A and kill it, then B could detect it, suicide and release resource. The issue happens because  B's suicide is blocked by kernal mode processes.
Back to your question: why can't we keep container  before resource released.
Because we rely on YARN, but YARN only besteffect kill container, won't wait until the processes exit and resource released. Change hadoop code might work, but it could bring potential issues. We need carefully evaluate the risk.

Add  related hadoop code, node manager will only send SIGTERM or SIGKILL to container PID, then delete process PID info, won't verify process status.
try {

        ...

        final Signal signal = sleepDelayBeforeSigKill > 0
          ? Signal.TERM
          : Signal.KILL;

        boolean result = exec.signalContainer(
            new ContainerSignalContext.Builder()
                .setContainer(container)
                .setUser(user)
                .setPid(processId)
                .setSignal(signal)
                .build());
        ...

        if (sleepDelayBeforeSigKill > 0) {
          new DelayedProcessKiller(container, user,
              processId, sleepDelayBeforeSigKill, Signal.KILL, exec).start();
        }
      }
    } catch (Exception e) {
      ...
    } finally {
      // cleanup pid file if present
      if (pidFilePath != null) {
        FileContext lfs = FileContext.getLocalFSFileContext();
        lfs.delete(pidFilePath, false);
        lfs.delete(pidFilePath.suffix(EXIT_CODE_FILE_SUFFIX), false);
      }
    }
  }

According to @mzmssg, here is a possible fix.

in Yarn NM, do not change the state to container-completed, until NM makes sure the Yarn container quits.
Currently NM sends a SIGKILL and it believes the YarnContainer must exit, so it changes the state without making sure the YarnContainer state. (that's why it is best-effort). Normally, this is ok but not in your case.
A possible solution is to modify NM's state machine and let NM waits in a state until the YarnContainer exits.

in YarnContainer, do not quit until it makes sure DockerContainer quit.
Unfortunately, YarnContainer will be terminated if NM sends a SIGKILL. There is no way to ignore it . One way around is to modify NM so that it does not send SIGKILL. (this is dangerous in general but ok if you only run YarnContainerScript in PAI) .

For 1), we need to be careful to ensure the fix on state machine of NM is correct. This requires time. For 2), the fix will reduce the generality of PAI: the fix implies the container managed by NM will honor other SIGNAL (e.g., SIGTERM). but malicious container can exploit this to become a rogue container: it can hold on the resource infinitely.
My suggestion to to fix the uninterrupted-sleep issue, rather than applying 1 and 2. If you cannot fix that, 1 and 2 can be a workaround, but we cannot take it as a general solution at current stage. Does that make sense?

BTW, NM is NOT so "best effort", if NM does not restart, NM will wait until it has confirmed that the root process (i.e. the container A mentioned by mzmssg above) is exited, then tell RM to release its resource.
Another option is to detect the unmanaged resource which is not used by YARN, and RM will not allocate container for these resource.

@fanyangCS Ok. It's a  reasonable solution. It would be nice to have a alert and a tool (decommission/recommission nodes) for such cases.
Thanks!

@hirolsj
The decommission tool will be added in v0.10. We are focusing on alert now.
@yqwang-ms
It's an option, but there is a latency for the hardware detection, so jobs still might be scheduled to this node.

I have not dived into code, but seems not really, the total utilized resource are always unchanged, and RM should not always allocate resource on it. So, I cannot see latency or race condition here from my first sight, you can dive into code if you have time, and point out where is the latency you mentioned.

the total utilized resource are always unchanged, and RM should not always allocate resource on it

The total utilized resource means utilized by external processes, such as zombie container or host processes? If so, it should be changed by hardware detection.
Or I misunderstand something?

The total utilized resource means the machine total utilization, including all utilizations on the machine, such as container utilization + YARN external utilization + YARN itself utilization, etc.

The "always" word, I mean, the duration that a managed YARN container becomes a unmanaged external processes.
And for this case, before NM wrongly release container, Total Used (1) = Container GPU Used (1) + External Used (0), after NM wrongly release container, Total Used (1) = Container GPU Used (0) + External Used (1). You can see, the Total Used (1) is unchanged, and across all the time, RM should not allocated new container on the already "Total Used (1)".

@yqwang-ms
That's the point, after NM wrongly release container, we need the transistion is
(container[1], external[0]) ->(container[0], external[1])

But actually it might be
(container[1], external[0]) -> (container[0], external[0]) -> (container[0], external[1])

The fisrt -> is NM release container, the second -> is NM detect the zombie container.
I remember that NM implementaion is:
One thread to detect hardware and store in memory.
Another thread to heart-beat the info to RM.
If the heart-beat thread runs after releasing container, but before detection thread, it would be in the intermedia state (container[0], external[0]).

Note that you always directly get Total Used from OS system, then External Used is got from Total Used - Container Used. Anyway, the Total Used is unchanged.
The intermedia state (container[0], external[0]). can be avoided, because you can send Total Used to RM, and in any time, the Total Used is unchanged.

I get you, so NM only report utilized GPU, RM union it with allocated GPU. Then the supplementary is available for scheduler?

Yes

BTW, I do not know you "only report" mean, suggest to keep current report info and add new if required.

close as no response for a long time.


himanshukurapati-nau

The Readme file is currently lengthy and complex, making it challenging for newcomers to comprehend how to contribute effectively to the project.
To enhance accessibility and clarity, I propose relocating the Contributing section to the beginning of the Readme file and streamlining its content where feasible.
I kindly request assistance from anyone willing to dedicate time to address this issue and improve the project's accessibility for all contributors. Thank you!

Hi, myself Himanshu Kurapati studying master's in computer science in NAU. I am willing to contribute to open source projects which would help me in learning new things. I am interested to solve this issue. I am assigning it to myself.

Hi @caiton1 I would like to get your help as this is my first time doing it.

I have moved contribution section to top.


feat(home-manager)!: add support for global cursors

Closes #158

i've adopted the new option naming in the catppuccin namespace as discussed above, and also made this a replacement for the original gtk module. this will resolve deprecation warnings for those only using that (as it's not actually deprecated or archived like the upstream gtk port) and prevent this PR from introducing another option that basically does the same thing as the old one

thanks!


Join to a new thread on exhaustion

As an idea for fallback: on unsupported platforms spawn a new thread and join the current thread to the newly created. This is portable but works only with std though.

Perhaps! I think the only downside is that TLS wouldn't work, but perhaps that just means this could be opt-in?

An additional concern is that we would be limited to executing callbacks that are Send only, which would introduce an unnecessary constraint on platforms which do support switching.
We currently support a fair number of targets and it is not unfeasible to add more, so I think this issue is and will become less relevant over time.


The C/Cpp Language Server server crashed 5 times in the last 3 minutes. The server will not be restarted.

VSCode Version: Code 1.8.1 (ee428b0eead68bf0fb99ab5fdc4439be227b6281, 2016-12-19T14:49:23.350Z)
OS Version: Windows_NT ia32 10.0.10586
Extensions:

Extension
Author
Version

code-gnu-global
austin
0.2.1

cpptools
ms-vscode
0.9.3

Steps to Reproduce:

Install the c/c++ intellisense, complete C/C++ language support including code-editing and debugging.
restart and start coding, it gives the error mentioned in the title bar.

same problem on the environment below:

VSCode Version: Code 1.9.1 (f9d0c687ff2ea7aabd85fb9a43129117c0ecf519, 2017-02-08T23:44:55.542Z)
OS Version: Linux x64 4.9.0-1-amd64
Extensions:

Extension
Author
Version

vscode-theme-onedark
akamud
1.1.0

python
donjayamanne
0.5.8

code-runner
formulahendry
0.6.9

cpptools
ms-vscode
0.10.0

Ruby
rebornix
0.10.4

java
redhat
0.0.10

todotasks
sandy081
0.4.0

shader
slevesque
0.2.2

when this error comes out, the memory usage of process "~/.vscode/extensions/ms-vscode.cpptools-0.10.0/bin/Microsoft.VSCode.CPP.Extension.linux" will be increasing until all the ram run out.


Support for AIML2 - training files

https://github.com/creatorrr/pyAIML

Can you give some example(s) showing how can we utilize this?

https://github.com/pandorabots/rosie/tree/master/lib/aiml

@johndpope Thanks for sharing.
AIML seems to take a rule-based approach in building a question-answering system, where most of the responses would have to be hard coded. I think JARVIS would not scale with such a limitation. Also, most of the projects/libraries around AIML are not currently maintained. I suppose we could stick to a text-mining based approach rather than a hard coded rule-based one.
@swapagarwal Your thoughts?

Hi @johndpope, I took a look at AIML and I totally agree with @KartikKannapur.
JARVIS aims to learn from human language and respond accordingly. Using AIML will restrict it to a fixed set of queries and scaling it would be quite a tedious task.

I will close this ticket -
fyi

https://docs.api.ai/docs/concept-entities#system-entities

@johndpope we're using an api.ai alternative, see https://wit.ai/swapagarwal/JARVIS-on-Messenger/


Having problem when using ubuntu 20.04 build Sloth

Environment:
Virtual Machine: Vmware WorkStation 16
OS: Ubuntu 20.04
I try to modify the /resources/examples/Skia/Makefile and using the ndk-build. However I got the this exception below.

The error seems to be cause of the the FULL_PATH_TO_ROOTFS variable inside Android.mk file. Can you try pointing to your rootfs folder?

Thanks your reply, I success build the previous process (poiniting my rootfs as you said). However I got the failed on the linker.  Sorry to bother you🙇


English support coming soon?

Will there be support for the English UI?

There may be updates to this in the future, but for now it's mostly about refining the basics first

Got it! Wish you the best in this endevour!

Thanks！

OCR can deal with it! Or just take a photo and translate it with ai

OCR can deal with it! Or just take a photo and translate it with ai

thanks,I know how to deal with it,I just need time to perfect the basics first


[Feature Request] PEP 602-compliant ParamSpec(...).args and ParamSpec(...).kwargs support

I was happy with beartype_all() while running tests, but after some updates I discovered markupsafe in my requirements. And something terrible happened.
prepare:
pip install beartype markupsafe

failure with lib:
from beartype.claw import beartype_all
beartype_all()

import markupsafe

or with example code:
from beartype.claw import beartype_all
beartype_all()

import run_me

run_me.py
import functools
import typing as t

if t.TYPE_CHECKING:
    import typing_extensions as te

    _P = te.ParamSpec("_P")

def _simple_escaping_wrapper(func: "t.Callable[_P, str]") -> "t.Callable[_P, Markup]":
    @functools.wraps(func)
    def wrapped(self: "Markup", *args: "_P.args", **kwargs: "_P.kwargs") -> "Markup":
        return self.__class__(func(self, *args, **kwargs))

    return wrapped

class Markup(str):
    capitalize = _simple_escaping_wrapper(str.capitalize)

Exception:
beartype/_util/error/utilerrwarn.py:105: BeartypeClawDecorWarning: Method run.str.capitalize() in file "run.py" line 13:
    Traceback (most recent call last):
      File "beartype/_decor/decorcore.py", line 214, in _beartype_object_nonfatal
        return _beartype_object_fatal(obj, conf=conf, **kwargs)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "beartype/_decor/decorcore.py", line 136, in _beartype_object_fatal
        beartype_nontype(obj, **kwargs)  # type: ignore[return-value]
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "beartype/_decor/_decornontype.py", line 188, in beartype_nontype
        return beartype_func(obj, **kwargs)  # type: ignore[return-value]
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "beartype/_decor/_decornontype.py", line 275, in beartype_func
        func_wrapper_code = generate_code(decor_meta)
                            ^^^^^^^^^^^^^^^^^^^^^^^^^
      File "beartype/_decor/wrap/wrapmain.py", line 122, in generate_code
        code_check_params = _code_check_args(decor_meta)
                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "beartype/_decor/wrap/_wrapargs.py", line 346, in code_check_args
        reraise_exception_placeholder(
      File "beartype/_util/error/utilerrraise.py", line 137, in reraise_exception_placeholder
        raise exception.with_traceback(exception.__traceback__)
      File "beartype/_decor/wrap/_wrapargs.py", line 201, in code_check_args
        hint = sanify_hint_root_func(
               ^^^^^^^^^^^^^^^^^^^^^^
      File "beartype/_check/convert/convsanify.py", line 131, in sanify_hint_root_func
        hint = decor_meta.func_arg_name_to_hint[pith_name] = coerce_func_hint_root(
                                                             ^^^^^^^^^^^^^^^^^^^^^^
      File "beartype/_check/convert/convcoerce.py", line 141, in coerce_func_hint_root
        hint = resolve_hint(
               ^^^^^^^^^^^^^
      File "beartype/_check/forward/fwdmain.py", line 260, in resolve_hint
        func_locals = get_func_locals(
                      ^^^^^^^^^^^^^^^^
      File "beartype/_util/func/utilfuncscope.py", line 440, in get_func_locals
        func_frame_module_name = func_frame.f_globals['__name__']
                                 ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^
    KeyError: '__name__'

I was happy with beartype_all() while running tests...

:face_with_open_eyes_and_hand_over_mouth:
...omg. Really? Someone's actually happy with beartype_all()? beartype_all() worked? No kidding? I'm kinda stunned. Honestly, I never expected that import hook to ever work for anyone. It was pretty much just a vanity function; I defined it because I was too proud not to define it. But this is the first time anybody has confirmed that hook worked for even five minutes! Admittedly, that hook stopped working as soon as you installed a new dependency. Oh, well. What you gonna do, huh?
I take what I can get around here. Today, I have learned to smile.
In the Beginning There Was @beartype
Firstly, this:
from beartype.claw import beartype_all
beartype_all()

import markupsafe

...is fine for me. No exceptions or warnings. Are you seeing exceptions or warnings from just that? If so, that's awful. Try upgrading to the newest @beartype 0.19.0rc0 pre-release via:
pip3 install --upgrade --pre beartype

Still exceptions or warnings? If so, please copy-and-paste me an exception or warning traceback. I will then be sad.
Moving On to Other Boring Stuff That is Boring
There are a few intersecting issues here. Some of these issues are @beartype's fault. That's bad for us. But some of these issues are not @beartype's fault. That's bad for you. Since everybody is behaving badly, nobody has to feel bad. Bad behaviour in your run_me.py script includes:
if t.TYPE_CHECKING:
    import typing_extensions as te

    _P = te.ParamSpec("_P")

def _simple_escaping_wrapper(func: "t.Callable[_P, str]") -> "t.Callable[_P, Markup]":

...that's bad. You've conditionally hidden the definition of the _P type hint behind a t.TYPE_CHECKING guard. This means that only static type-checkers like mypy and pyright will be able to parse this code. Runtime type-checkers like @beartype and typeguard will fail, because t.TYPE_CHECKING is only True for static type-checkers; that if conditional is False at runtime and thus False for @beartype.
To resolve this on your end, consider either:

Requiring typing_extensions as a mandatory dependency and refactor the above logic to resemble:
import typing_extensions as te

_P = te.ParamSpec("_P")

def _simple_escaping_wrapper(func: "t.Callable[_P, str]") -> "t.Callable[_P, Markup]":

Requiring Python ≥ 3.10 as a mandatory dependency, dropping typing_extensions entirely, and refactor the above logic to resemble:
_P = t.ParamSpec("_P")

def _simple_escaping_wrapper(func: "t.Callable[_P, str]") -> "t.Callable[_P, Markup]":

Either's fine. You know. All up to you. The power is in your calloused hands! :fist_raised:  :zap: :fist_raised:
But What About That Dumb KeyError?
...heh. Yeah.  That's totally @beartype's fault. Let me dig deep into this tonight. It's time to roll up the sleeves and get greasy with some code that I haven't looked at in years, folks. </gulp>

Partially resolved by 747f9a24424adc. Technically, this resolves the horrifying KeyError: '__name__' exception you're seeing here. Pragmatically, this still isn't good enough. Why? Because...
@beartype doesn't actually support PEP 602-compliant ParamSpec(...).args or ParamSpec(...).kwargs type hints. Why? Because... nobody ever complained about that before. You are the first. Congratulations! Sucks to be the first, huh?
Let's upgrade this bug to a feature request for PEP 602 compliance. Since this is kinda critical, this is now my highest priority. Why doesn't @beartype just work already? :face_exhaling:

...is fine for me.
Also content of run_me.py was copied from markupsafe/__init__.py file, its not my code.

What you gonna do, huh?

For now I've limited the list of packages to just my own (with beartype_packages), but maybe I should do more.

PEP 602 compliance

It’s unreal that you took on this because of that issue. Thank you so much for your work and wonderful library.

I never expected that import hook to ever work for anyone

As i, but a few months ago I just tried and it works (until yesterday).
I only needed to wrap all typing.Protocols with @runtime_checkable.
Magic (and your missed hours of sleep), that's what it's about.

ok, maybe u have different markupsafe version, thats what i have:

Ah-ha! That must be it. I'm on markupsafe 2.1.5, which... actually, that's not it. I've just manually inspected the markupsafe.__init__ submodule for markupsafe 2.1.5 and, indeed, it's exactly as you describe. I sigh.
Oh, well. That's life on GitHub, huh? I can't replicate this, so I'll quietly pretend I've already solved this issue for you. :smile:

Also content of run_me.py was copied from markupsafe/__init__.py file, its not my code.

Ah-ha. Now I get it. On the bright side, this means that you no longer have bugs you need to fix. Rejoice! On the dark side, this means that markupsafe has bugs that it needs to fix. In fact, markupsafe 2.1.5 is even worse in this respect than markupsafe 2.1. This is what I'm seeing in the markupsafe.__init__ submodule for markupsafe 2.1.5:
if t.TYPE_CHECKING:
    import typing_extensions as te

    class HasHTML(te.Protocol):
        def __html__(self) -> str:
            pass

    _P = te.ParamSpec("_P")

That's horrible! They're not only defining the type alias _P but also the public protocol HasHTML behind a TYPE_CHECKING guard. I am gagging on my own tongue. This means that runtime type-checkers like @beartype and typeguard cannot support current versions of markupsafe, because those versions are buggy.
Basically, markupsafe needs to:

Require typing_extensions as a mandatory runtime dependency. That's fine. Everybody requires typing_extensions as a mandatory runtime dependency. markupsafe devs shouldn't have any issues with that.
Refactor the above logic to resemble:

import typing_extensions as te

class HasHTML(te.Protocol):
    def __html__(self) -> str:
        pass

_P = te.ParamSpec("_P")

Would you mind submitting an upstream markupsafe issue about this, @minmax?

For now I've limited the list of packages to just my own (with beartype_packages), but maybe I should do more.

...yeah. That's exactly what I'd do – for now. As @beartype slowly becomes more powerful and ribbed with muscle, the beartype_all() import hook should "eventually" become usable. However, "eventually" could be a very long time indeed. :face_holding_back_tears:

It’s unreal that you took on this because of that issue. Thank you so much for your work and wonderful library.

Aww! Thanks so much for the kind words. Unreal blood sacrifice for Python is what @beartype is all about.

I only needed to wrap all typing.Protocols with @runtime_checkable.

Ho, ho, ho. The truth is finally revealed. Monkey-patching typing.Protocol, huh? Sounds good to me. Would you mind sharing your monkey-patch? That might be something @beartype itself should offer as a new BeartypeConf(is_protocol_monkeypatch=True) configuration option.
I'd think that pretty much everybody who wants to call beartype_all() would also want to enable that option. Maybe? Seems reasonable. Anyway, thanks so much again and have a great Summer.

Jeez. Sure is boiling hot here in Canada... Even the cat is sweating buckets.

Monkey-patching typing.Protocol

No, i mean all child classes, derived from typing.Protocol.

Would you mind submitting an upstream markupsafe issue about this, @minmax?

I will try, but when i fix in locally, another import was failed, what a live.
jinja2 also like to hide code in TYPE_CHECKING block.
if t.TYPE_CHECKING:
    import typing_extensions as te

 NEWLINE_SEQUENCE: "te.Literal['\\n', '\\r\\n', '\\r']" = "\n"

because they use typing_extensions.Self

...hmm. I am squinting. typing_extensions.Self should still work under Python < 3.11. Isn't that the whole point of typing_extensions, after all? typing backports to older Python versions?
What do I know, though. I just eat popcorn and pet cats all day. Not exactly a glamorous lifestyle.

this time with the library jinja2, TYPE_CHECKING block again.

...lol. Even jinja2 is broke af, huh? This is why we can't have good QA. :face_exhaling:

Maybe it will be useful if beartype_all function will have a ignore_packages: Iterable[str] argument?

Yes. YES. So much yes! Excellent idea. I know I'm beating a dead horse until it's even deader here, but would you mind submitting a new @beartype feature request about that? This feature request is gettin' kinda crowded. I'm claustrophobic already.
ignore_packages: Iterable[str] is exactly what beartype_all() needs, though. Without that, beartype_all() is pretty much unusable in practice because users have no means of working around breakage in either @beartype itself or other third-party bad guys. Let's make this happen! Bear bros unite. :muscle: :bearded_person:

Resolved by 0c9dc1c4f1a2daeb. Aaaaaand... that was shockingly brutal. As a beneficial side-effect of being shockingly brutal, @beartype 0.19.0 not only supports PEP 612 but now also deeply type-checks annotated variadic keyword parameters (e.g., **kwargs: int):
>>> from beartype import beartype
>>> @beartype
... def awful_func(**kwargs: int) -> None: pass
>>> awful_func(this_func='is awful')
  File "<@beartype(__main__.awful_func) at 0x7fb03f0a45e0>", line 25, in awful_func
beartype.roar.BeartypeCallHintParamViolation: Function __main__.awful_func() parameter kwargs='is awful' violates type hint <class 'int'>, as str 'is awful' not instance of int.

Nobody ever complained about @beartype not doing that. Nobody annotates variadic keyword parameters, huh? Fair. That's fair.  Of course, I'd do that anyway. Let's craft some alchemy for the kingdom, Atelier Rorona! :partying_face:


feat: add source_invite_code to guildmemberdata

Drafting this pull request until it is officially added to Discord API, though it is soft released just not announced. Will undraft it when it is timed to merge it.
Link: https://github.com/discord/discord-api-docs/discussions/3210#discussioncomment-7503972

This change has been slowly coming out for all users, though it seems Discord has not made any pull request for their API documentations for this. Thank you for having me! <3
I just committed a new version with your changes, let me know if there's anything else I can do!

Thanks a lot for your first PR! ❤ Do you know more about the nature of this new field than the discussion you linked?

No yet announced from Discord officially, but we've seen ``source_invite_code show up in the Members page on people's discord server, and it is in the member search endpoint.
We've gotten an update from Discord Support on X that pushed things along wayyy quicker, so if you want to wait on them for the official announcement of this change, that's fine by me.


Synthetic Sequencing error handling for metagenomic applications

Can't seem to find too much about this error handling.
additionally, it is worth considering the type of input data. Metagenomic samples may arise in the form of unassembled contigs

look at frag gene scan.
This problem is sometimes ignored by programs/ solutions


Backup Status does not work with Mac OS Sequoia ?

Hi, Backup Status will run under Mac OS Sequoia but will not find my TimeMachine Volume (Network). There is no volume listed (yes my TimeMachine works).

Will there be an Update for Mac OS Sequoia ?
Graetz
Markus

Backup Status only works with locally mounted volumes, hence not with backup disks connected via the network.

Dear Niels,
Backup Status worked well under Mac OS Sonoma with our network attached TimeMachine (still works for my wife’s mac with Sonoma).
Since the Update it does not work anymore, because there is no disk listet.
Is there a way to „re-grant permission“ to the com.apple.TimeMachine.plist file ?
Graetz
Markus
￼￼

Am 21.09.2024 um 10:12 schrieb Niels Mouthaan @.***>:
Backup Status only works with locally mounted volumes, hence not with backup disks connected via the network.
—
Reply to this email directly, view it on GitHub https://github.com/nielsmouthaan/backup-status/issues/13#issuecomment-2365055508, or unsubscribe https://github.com/notifications/unsubscribe-auth/AXDXZCLDDLOAROGMV6W3IZLZXUS7RAVCNFSM6AAAAABOTIQ3T6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGNRVGA2TKNJQHA.
You are receiving this because you authored the thread.

If you're sure the issue is related to Seqoiua, please refer to this issue.

Dear Niels,
thx for the link to the issue.
The tip from EnumC:
"Quick temporary workaround without having to rebuild the project: System Preferences -> Privacy & Security -> Full Disk Access -> Click the plus button and add the app.“
works fine. Now the widget shows the network timemachine volume.
Graetz
Markus

Am 22.09.2024 um 09:08 schrieb Niels Mouthaan @.***>:
If you're sure the issue is related to Seqoiua, please refer to this issue https://github.com/nielsmouthaan/backup-status/issues/10.
—
Reply to this email directly, view it on GitHub https://github.com/nielsmouthaan/backup-status/issues/13#issuecomment-2365642454, or unsubscribe https://github.com/notifications/unsubscribe-auth/AXDXZCK326DPNUBXRAGVZBTZXZUGJAVCNFSM6AAAAABOTIQ3T6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGNRVGY2DENBVGQ.
You are receiving this because you authored the thread.