KeyframeTrack and Interpolants

This Pull Request introduces keyframe animation functionality and implements a fast interpolation algorithm.
This "Interpolant" based on binary search and caching mechanism can effectively improve the efficiency of interpolation lookups.

For linear access crossing at most 2 intervals, the time complexity is O(1);
For random access cases, the time complexity is O(log2(n)), where n is the number of positions.

Meanwhile, following the glTF standard, four specific interpolation methods are implemented:
See: https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html#appendix-c-interpolation

Linear Interpolation
Spherical Linear Interpolant
Step Interpolation
Cubic Spline Interpolation

The "skinning_animation.py" example and "morph_facecap.py“example have been updated to use the new keyframe interpolation algorithm, which can provide very smooth animation effects.
Additionally, with this Pull Request, the frame rate of the "skinning_animation.py" example on my computer has improved from 80fps to 150+fps; while the frame rate of the "morph_facecap.py“ example can easily reach 500+fps.

The example runs perfectly fine, but the CI tests fail, indicating a FloatinPointError. I can also reproduce this issue locally using "pytest -v examples".

Does anyone know what might be causing this? @almarklein @Korijn

Using np.seterr(under="ignore") temporarily ignores this exception to pass the CI tests (not sure if it's appropriate, 😅 ).
This PR aims to implement an interpolation algorithm for keyframe animation to fully and accurately present the original effects of GLTF model animation data. However, to facilitate demonstration, I've included a very simple animation system (and objects).

I also have some additional code related to the animation system (like the animation mixer) that hasn’t been submitted yet, which still needs more organization and consideration. To make code review easier, I prefer not to expand the scope of this PR, I plan to continue developing the animation system in separate PRs.

I clicked the "Update branch" button, because I wondered whether that would work, given the many formatting changes applied recently. But it worked!

I just returned from my vacation and took some time to investigate this issue in depth.
There are two points I’ve found a bit puzzling.
The first is that the underflow occurs in the AffineTransform callback function, which should happen when setting the Transform (position, rotation, scale) of a WorldObject. However, in the skeletal animation demonstrated in the example, there is no transformation of WorldObjects; only the Transform updates of Bone objects are involved. Due to PR #746 , Bone objects have their own special logic and do not use AffineTransform, so this code should not be called, which makes it quite strange.
I traced the code and found that there are indeed some non-bone WorldObject nodes in the animation track. They exist in the glTF model file and the animation data, but not in the scene. I suspect these nodes might be rigid body objects used for the physics engine or control endpoints for IK. The issue is that these objects have not actually been added to the scene, so their matrix calculations are completely unnecessary. Currently, our matrix updates occur immediately (when setting position, rotation, or scale) rather than being based on the scene graph before rendering, which leads to this problem. Typically, in most engines, these rigid bodies are not added to the scene graph, so their matrix updates are generally managed by the physics engine instead of the renderer.
The second point is that I am confident the glTF loader and keyframe interpolator use float32 data types, and the outputs are also float32. I had traced the code again to confirm this. So, how does the conversion from float64 to float32 occur?
Upon further investigation, I found instances in our code where ndarray is initialized with dtype=float ,
For example:
https://github.com/pygfx/pygfx/blob/94e59391c521dc1212e881b04cb547df45e67bc3/pygfx/utils/transform.py#L564-L565
I believe that 64-bit precision is unnecessary, and we should perhaps standardize on using dtype=np.float32 to initialize them.

I believe that 64-bit precision is unnecessary, and we should perhaps standardize on using dtype=np.float32 to initialize them.

I don't expect it will matter much in performance, but using float64 will likely avoid a range of issues concerning float32 precision.

The issue is that these objects are not actually added to the scene, making any matrix calculations involving them unnecessary. However, our matrix updates occur immediately (when setting position, rotation, or scale) rather than being based on the scene graph before rendering, which leads to this problem.

This is an interesting problem. Something to consider when we attack the problem of the transforms being slow.
For now I hope we can find a quick solution that is good enough to wrap up this PR :)

I don't expect it will matter much in performance, but using float64 will likely avoid a range of issues concerning float32 precision.

Yes, that's what I meant. And I think 32-bit precision is sufficient because data is also computed with 32-bit precision in GPUs. Unifying internal data types in Pygfx should also have some benefits.

For now I hope we can find a quick solution that is good enough to wrap up this PR :)

I have updated the code as per your comments here.
The investigation above was only meant to understand the root cause of the issue and is not related to the main content of this PR, 😅


Possible to resume progress if program is interrupted?

Either locally or in colab, is it possible to resume progress of a 20-epoch run of 1500 iterations (for example) that is interrupted at epoch 4?
I tried priming the next run with the last image from the previous run but that just ended up 'imagining' that last image (no progress was made so to speak).

Wish this was a feature!


Add Tag Control, Reorganize Controls

Adds new tag custom control. Filters the tags, and supports select all functionality.
Reorganizes some of the controls and adding a custom control component that wil make it easier to construct new controls.

TODO: Currently I'm just setting the opacity to 0, but they can still be clicked. Will have to find a different way to bring them completely off the map


Regenerate docs on compile

Added dodoc config, so that the documentation is regenerated every time the contracts are compiled.

#125 didn't have the docs, so I added this, to make sure the docs are compiled. Better to be redundant, than to miss it 🤔 The alternative is to disable it and just rely that we remember to regenerate the docs manually using the checklist in the PR template.. This could help us speed up the tests, while still reminding us to regenerate docs.
Maybe we could also add a custom script:
    "prepare": "dodoc && prettier --write ."

If you have any additional ideas on what to add to this script, so that all of the final actions should be taken, please let me know.


test: increase coverage after reviewing some reports

Issue or need
After reviewing some coverage reports both locally and on app.codecov.io, seems there are some quick coverage wins (on branches coverage)

Proposed changes
Apply them hehe

Quick reminders

🤝 I will follow Code of Conduct
✅ No existing pull request already does almost same changes
👁 Contributing docs are something I've taken a look at
📝 Commit messages convention has been followed
💬 TSDoc comments have been added or updated indicating API visibility if API surface has changed.
🧪 Tests have been added if needed. For instance, if adding new features or fixing a bug. Or removed if removing features.
⚙ API Report has been updated if API surface is altered.

#720  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @davidlj95 and the rest of your teammates on  Graphite


Receive page still blocked after completing sync

I finished syncing, restarted the app multiple times but receive page is still telling me to wait for synchronization.

this was fixed here https://github.com/raedahgroup/dcrlibwallet/pull/125


Minor changes to resolve PE-D issues

Codecov Report
Patch and project coverage have no change.

Comparison is base (56674b1) 55.24% compared to head (b4ea17e) 55.24%.

Additional details and impacted files
@@            Coverage Diff            @@
##             master     #152   +/-   ##
=========================================
  Coverage     55.24%   55.24%
  Complexity      495      495
=========================================
  Files           107      107
  Lines          2051     2051
  Branches        212      212
=========================================
  Hits           1133     1133
  Misses          847      847
  Partials         71       71

Impacted Files
Coverage Δ

.../java/seedu/address/logic/commands/AddCommand.java
100.00% <ø> (ø)

...c/main/java/seedu/address/model/tag/ModuleTag.java
70.00% <ø> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Support for Flutter Web?

Hey,
is there an implementation for flutter web planned as well?  On pub.dev it said that web is supported, however, I tried it and it did not work.
Thanks! :)

It worked for me.  The MemoryFileSystem() is from this package: https://pub.dev/packages/file
import 'dart:ui' as ui;
import 'package:file/memory.dart';
import 'package:image_crop_widget/image_crop_widget.dart';

Future<File> crop(File imageFile) async {
   File croppedFile = MemoryFileSystem().file('');
   final key = GlobalKey<ImageCropState>();
   final codec = await ui.instantiateImageCodec(imageFile.readAsBytesSync());
   final frame = await codec.getNextFrame();
   await Navigator.of(context).push(
      MaterialPageRoute(builder: (context) => ImageCrop(key: key, image: frame.image))
   );
   ui.Image croppedImage = await key.currentState.cropImage();
   final bytes = await croppedImage.toByteData(format: ui.ImageByteFormat.png);
   final byteList = bytes.buffer.asUint8List();
   return await croppedFile.writeAsBytes(byteList);
}


delay broken in firefox

Running firefox 60, if delay is set as any positive number then you can no longer drag any elements.
See the delay example given in the readme: http://jsbin.com/xizeh/edit?html,js,output

Mmm, seems to work intermittently in chrome as a fiddle with the numbers. Can't work out a pattern though.

Same problem, doesn't work me either on Firefox and Chrome.

works on master branch


Edit comments in Trello

Hi,
Is there a way to edit comments from Manatee.Trello to trello.com?
Thanks!

Yes!  Comments are just Actions with a CommentCard type.
action.Data.Text = "updated comment";

You'll get an error if the authenticated user didn't create the comment or if the action isn't a comment.


Fold all stats per shard in the same doc for CCR

In this PR we are modifying the CCR stats telemetry device to store all stats per shard (along with fields about the index name and shard number) in one doc in the metrics store. This is contrary to the existing approach where a separate doc gets created for every metric field.

Thanks for the review, I've addressed the comments.


Dispatch more C0 control characters from the VT state machine

Summary of the Pull Request
This PR moves the handling of the BEL, BS, TAB, and CR controls characters into the state machine (when in VT mode), instead of forwarding them on to the default string writer, which would otherwise have to parse them out all over again.
This doesn't cover all the control characters, but ESC, SUB, and CAN are already an integral part of the StateMachine itself; NUL is filtered out by the OutputStateMachineEngine; and LF, FF, and VT  are due to be implemented as part of PR #3271.
Once all of these controls are handled at the state machine level, we can strip out all the VT-specific code from the WriteCharsLegacy function, which should simplify it considerably. This would also let us simplify the Terminal::_WriteBuffer implementation, and the planned replacement stream writer for issue #780.
References
#3271, #780, #3628, #4046
PR Checklist

[ ] Closes #xxx
[x] CLA signed. If not, go over here and sign the CLA
[x] Tests added/passed
[ ] Requires documentation to be updated
[x] I've discussed this with core contributors already. If not checked, I'm ready to accept this work might be rejected in favor of a different grand plan. Issue number where discussion took place: https://github.com/microsoft/terminal/issues/780#issuecomment-570287435

Detailed Description of the Pull Request / Additional comments
On the conhost side, the implementation is handled as follows:

The BS control is dispatched to the existing CursorBackward method, with a distance of 1.
The TAB control is dispatched to the existing ForwardTab method, with a tab count of 1.
The CR control required a new dispatch method, but the implementation was a simple call to the new _CursorMovePosition method from PR #3628.
The BEL control also required a new dispatch method, as well as an additional private API in the ConGetSet interface. But that's mostly boilerplate code - ultimately it just calls the SendNotifyBeep method.

On the Windows Terminal side, not all dispatch methods are implemented.

There is an existing CursorBackward implementation, so BS works OK.
There isn't a ForwardTab implementation, but TAB isn't currently required by the conpty protocol.
I had to implement the CarriageReturn dispatch method, but that was a simple call to Terminal::SetCursorPosition.
The WarningBell method I've left unimplemented, because that functionality wasn't previously supported anyway, and there's an existing issue for that (#4046).

Validation Steps Performed
I've added a state machine test to confirm that the updated control characters are now forwarded to the appropriate dispatch handlers. But since the actual implementation is mostly relying on existing functionality, I'm assuming that code is already adequately tested elsewhere. That said, I have also run various manual tests of my own, and confirmed that everything still worked as well as before.

Note that I haven't made any changes to WriteCharsLegacy or Terminal::_WriteBuffer in this PR, but I'm planning to do that in a follow up PR. The one reason is because we need to have both this and #3271 merged before we can do that cleanup properly. The other reason is it's the dreaded WriteCharsLegacy, which I know nobody wants to touch, so I expect it'll take much longer to review.

:tada: Once again, thanks for the contribution!
This pull request was included in a set of conhost changes that was just
released with Windows Insider Build 19603.


Add ability to enumerate the set of running Snabb processes

Right now snabb top just prints a list of PIDs, with no indication of what those processes are doing.  Now that Snabb applications can have names, probably we should also allow them to declare a short description indicating their function.  In any case "snabb top" should list Snabb programs by name as well as or instead of listing by PID.

Example output:
$ sudo ./snabb top
Multiple Snabb instances found. Select one:
12369
12365
8231
5741
3063
2929
2808
2696
1050
32511
31862
30956
22653
12640
12633
12512

This is what snabb ps returns now:
$ sudo ./snabb ps
12339
12365   [lwaftr2] *
12367
  \- 12369   worker for 12365
12433
12469
12512

The * indicates processes that are listening for "snabb config" connections.


Add suport for daily build feature

This PR contains the following modifcations/features:

Add support for the daily build feature.
Add error handling for gathering of dmesg logs (LinuxTest stage)
Add --network host docker argument to expose host network to docker containers. This enables virtual NIC (e.g pluto) to be discovered by the tests running on that containers.

Passed tests 👍


James Longdev

Please reference the Slurm Charms Change Summary Document for an in-depth explanation of these changes.
These changes enhance the slurmd charm by:

Improve the way slurmd sends slurmctld its partition and node parameter options
Add an action, node-config to get and set unit-level  node-configuration
Add partition-config charm configuration that allows an operator to set
partition configuration
Consolidate the yaml files into charmcraft.yaml
Remove unused code
Remove slurm-ops-manager
Replace nhc resource with nhc in build process in charmcraft.yaml
Remove dependencies on slurmdbd

Depends on https://github.com/charmed-hpc/slurmctld-operator/pull/26/files

Hey @jamesbeedy :wave:
Could you please update this branch with the changes that you made to both the slurmdbd and slurmctld operators? Per our discussion yesterday during the Ubuntu HPC community call, we agreed that we would add some guardrails to the actions that enable administrators to modify the partition/node/slurm configuration. We can work on that in a follow-up pull request if that's good for you?

Great, lets do it. +1 from me!


Make Generators.disposable iterable.

Related #40.

Enabling this type of usage might actually be bad, since yield* won’t call generator.return. Specifically, a yield* or for-of loop won’t call generator.return if the generator is already done (which is always is in the case of Generators.disposable); it only calls it if the loop breaks early.


Deprecation warning in Ember 3.0

DEPRECATION: ember-cli-babel 5.x has been deprecated. Please upgrade to at least ember-cli-babel 6.6. Version 5.2.8 located: site-xxx-> ember-light-table -> ember-scrollable -> ember-element-resize-detector -> ember-cli-babel

This should be fixed in your apps by v0.2.0


:repeat:: Updated plugins loading workflow to be able to store them o…

:repeat:: Updated plugins loading workflow to be able to store them on  separate directories

@microsoft-github-policy-service agree

Thanks for the contribution.
But we have some concerns with it. I can see it breaking some unit test cases. This might be easy to fix. However, this change makes it incompatible with the existing setting, so there requires an explicit upgrade operation for users who has already been using the code repo. So, the better approach is to support both separated folders and putting files in the plugins folder directly.


Webpack trying to find config for shared package instead of target package

Hi,
I'm trying to set up a monorepo with workspaces. I have this structure:
/monorepo/
    /services/
         /my-project/
                .babelrc
                package.json
                webpack.config.js
        /common/
              /src/
                  index.jsx (react component)

I load all this into docker using volumes then from my-project I run webpack, but i get this error:

Resolve error: Cannot find module /monorepo/services/common/webpack.config.js

It seems like webpack is trying to find a config file within common but I want to use the one that's in my-project.
Am I suppose to create another webpack config inside common or can I reuse the config from my-project

Do you have an example repo at github to look at?


Does not work properly in Windows

I spawn a python Process in my Electron App. On the python process runs a Flask server. In my Electron App I spawn the Python process with
const { spawn } = require('child_process');
const treeKill = require('tree-kill');
const path = require('path');

const projectPath = path.join(__dirname, '../');
const pathToPython = path.join(projectPath, '/Venv/Scripts/python');
const pythonOptions = [path.join(projectPath, '/pythonBackend/app.py')];

let ls = spawn(pathToPython, pythonOptions);

I later kill the process with
treeKill(ls.pid);

I can see in the Process Explorer from Microsoft that the tree also gets killed,but after a milisecond, the python process somehow respawns as a standalone process.
If I kill the exact same process tree in the Process Explorer from Windows, then the tree gets killed and there is no crazy respawn of the python process. I don't know why its respawning with the tree-kill module. Any Ideas?
UPDATE
I use now the module tree-kill-promise. https://www.npmjs.com/package/tree-kill-promise This worked for me.

wtf xdddd its basically the same code
https://github.com/dword-design/tree-kill-promise/blob/3d2ca856e1bc3d55d967d9a3eebd516615c086b2/src/index.js#L3

get the same problems, the java process somehow respawns as a standalone process.
await this.findAvailablePort(PRINT_SERVER_PORT);     const childPrintProcess = child_process.spawn('cmd.exe', [       '/c',       jrePath,       '-jar',       '-Dfile.encoding=UTF-8',       -Dserver.port=${this.availablePort}`,
'-Ddisable.waiter=merge_table,temp_dish,campaign_dish,old_combo,member_center,full_reduce,charge_quit',
'-Ddisable.link.upgrade=true',
printServicePath,
]);
this.printSocketProcess = childPrintProcess.pid;
// some thing
treeKill(this.printSocketProcess, 'SIGKILL', resolve);
`


Metric about compute apps

Do we have any metrics / Is it worthy to add a metric about the GPU allocated compute process, just like the following output of nvidia-smi:
> nvidia-smi --query-compute-apps=gpu_uuid,name --format=csv
gpu_uuid, process_name
GPU-d0180485-9584-433c-6782-c335d5df2cb3, vgpu
GPU-777ead31-954e-837f-590f-6c4974d8e571, vgpu
GPU-777ead31-954e-837f-590f-6c4974d8e571, vgpu

Hi @onstring,
There are no such metrics as of today. DCGM does not have fields with such information, but there is an API to collect information about running PIDs.
What form would you want to see this information, and what utility should it have?
I can imagine a metric with the total number of processes occupying a GPU, but I do not see how exact processes could be represented or used here. Could you elaborate?

The scenario is in our cloud platform, besides those instances using GPU, we also have many instances only using normal compute/CPU resources. So we would like to know the statistics about how many the GPU is occupied.
For example, from the above nvidia-smi output,  we would like to know the number of processes(maybe processes names):
GPU-d0180485-9584-433c-6782-c335d5df2cb3, 1
GPU-777ead31-954e-837f-590f-6c4974d8e571, 2


support docker pull/push from private registry?

Is there any plan to support docker pull/push from private registry?
It should add a header in the http request, But it is no easy to do so, it needs lots of changes.

I think this just needs to have a way to specify credentials in the configuration and supply that as needed to the registry via the X-Registry-Auth header on the REST requests.

I haven't looked into this mysql but I'd be open to a pr


[#5873] feat(gvfs-fuse): add debug log for FuseApiHandle

What changes were proposed in this pull request?
Implement FuseApiHandleDebug so we can log all input arguments and return values of FuseApiHandle.
Fix: #5873
Does this PR introduce any user-facing change?
No.
How was this patch tested?
tested with fuse_test.rs, along with MemoryFileSystem.
Now, FuseApiHandleDebug will wrap FuseApiHandle and log all input arguments and returned values, if return value is Result, we use match to extract and log the status of result, note that error will be logged if occured.
To test this PR, run:
cd ./clients/filesystem-fuse
RUST_LOG=gvfs_fuse::fuse_api_handle=debug make test

Here's some example logging generated by test_fuse_system_with_auto in fuse_test.rs:
2024-12-28T11:41:19.047767Z DEBUG gvfs_fuse::fuse_api_handle: lookup [id=5]: error: Errno(2)
2024-12-28T11:41:19.049341Z DEBUG gvfs_fuse::fuse_api_handle: statfs [id=6]: req: Request { unique: 6, uid: 501, gid: 20, pid: 646 }, inode: 1

...

2024-12-28T11:41:20.029194Z DEBUG gvfs_fuse::fuse_api_handle: write [id=13]: reply: ReplyWrite { written: 9 }
2024-12-28T11:41:20.029519Z DEBUG gvfs_fuse::fuse_api_handle: getattr [id=15]: req: Request { unique: 15, uid: 501, gid: 20, pid: 76092 }, inode: 10001, fh: None, flags: 0
2024-12-28T11:41:20.029728Z DEBUG gvfs_fuse::fuse_api_handle: getattr [id=15]: reply: ReplyAttr { ttl: 1s, attr: FileAttr { ino: 10001, size: 9, blocks: 1, atime: Timestamp { sec:<PHONE_NUMBER>, nsec: 29724000 }, mtime: Timestamp { sec:<PHONE_NUMBER>, nsec: 29724000 }, ctime: Timestamp { sec:<PHONE_NUMBER>, nsec: 29724000 }, crtime: Timestamp { sec:<PHONE_NUMBER>, nsec: 29724000 }, kind: RegularFile, perm: 420, nlink: 1, uid: 501, gid: 20, rdev: 0, flags: 0, blksize: 4096 } }

Please refer to other PRs for the format of PR titles and descriptions.

Finally, we need to verify the log format to see if it meets expectations. This needs to be validated in the #5886, and you can wait for it to be merged.

Since #5886 is done, I'll continue my work.

close and reopen to run workflow

@diqiu50 Please help review this PR, Thanks.


Tilemap tool hand cursor issue

Tilemap tool's mouse hand cursor loses half the sprites when it goes near the left edge

This was fixed


RpLidar A1M8 stops spinning when calling roslaunch turtlebot3_bringup turtlebot3_robot.launch

ISSUE TEMPLATE ver. 0.4.0

Which TurtleBot3 platform do you use?

[x ] Burger
[ ] Waffle
[ ] Waffle Pi

Which ROS is working with TurtleBot3?

[ ] ROS 1 Kinetic Kame
[ ] ROS 1 Melodic Morenia
[ ] ROS 1 Noetic Ninjemys
[ ] ROS 2 Dashing Diademata
[ ] ROS 2 Eloquent Elusor
[x ] ROS 2 Foxy Fitzroy
[ ] etc (Please specify your ROS Version here)

Which SBC(Single Board Computer) is working on TurtleBot3?

[ ] Intel Joule 570x
[x ] Raspberry Pi 3B+
[ ] Raspberry Pi 4
[ ] etc (Please specify your SBC here)

Which OS you installed on SBC?

[ ] Raspbian distributed by ROBOTIS
[ ] Ubuntu MATE (16.04/18.04/20.04)
[x ] Ubuntu preinstalled server (18.04/20.04)
[ ] etc (Please specify your OS here)

Which OS you installed on Remote PC?

[ ] Ubuntu 16.04 LTS (Xenial Xerus)
[ ] Ubuntu 18.04 LTS (Bionic Beaver)
[x] Ubuntu 20.04 LTS (Focal Fossa)
[ ] Windows 10
[ ] MAC OS X (Specify version)
[ ] etc (Please specify your OS here)

Specify the software and firmware version(Can be found from Bringup messages)

Software version: [x.x.x]
Firmware version: [x.x.x]

Specify the commands or instructions to reproduce the issue.

ros2 launch turtlebot3_bringup robot.launch.py

Copy and Paste the error messages on terminal.

ubuntu@ubuntu:~$ ros2 launch turtlebot3_bringup robot.launch.py
[INFO] [launch]: All log files can be found below /home/ubuntu/.ros/log/2022-10-02-18-28-35-412562-ubuntu-2047
[INFO] [launch]: Default logging verbosity is set to INFO
urdf_file_name : turtlebot3_burger.urdf
[INFO] [robot_state_publisher-1]: process started with pid [2049]
[INFO] [ld08_driver-2]: process started with pid [2051]
[INFO] [turtlebot3_ros-3]: process started with pid [2053]
[turtlebot3_ros-3] [INFO] [1664735318.531024794] [turtlebot3_node]: Init TurtleBot3 Node Main
[turtlebot3_ros-3] [INFO] [1664735318.536900308] [turtlebot3_node]: Init DynamixelSDKWrapper
[turtlebot3_ros-3] [INFO] [1664735318.545365547] [DynamixelSDKWrapper]: Succeeded to open the port(/dev/ttyACM0)!
[turtlebot3_ros-3] [INFO] [1664735318.555682422] [DynamixelSDKWrapper]: Succeeded to change the baudrate!
[robot_state_publisher-1] Parsing robot urdf xml string.
[robot_state_publisher-1] Link base_link had 5 children
[robot_state_publisher-1] Link caster_back_link had 0 children
[robot_state_publisher-1] Link imu_link had 0 children
[robot_state_publisher-1] Link base_scan had 0 children
[robot_state_publisher-1] Link wheel_left_link had 0 children
[robot_state_publisher-1] Link wheel_right_link had 0 children
[robot_state_publisher-1] [INFO] [1664735318.586357432] [robot_state_publisher]: got segment base_footprint
[robot_state_publisher-1] [INFO] [1664735318.587990899] [robot_state_publisher]: got segment base_link
[robot_state_publisher-1] [INFO] [1664735318.588248023] [robot_state_publisher]: got segment base_scan
[robot_state_publisher-1] [INFO] [1664735318.588383746] [robot_state_publisher]: got segment caster_back_link
[robot_state_publisher-1] [INFO] [1664735318.588491658] [robot_state_publisher]: got segment imu_link
[robot_state_publisher-1] [INFO] [1664735318.588590663] [robot_state_publisher]: got segment wheel_left_link
[robot_state_publisher-1] [INFO] [1664735318.588693680] [robot_state_publisher]: got segment wheel_right_link
[turtlebot3_ros-3] [INFO] [1664735318.595027975] [turtlebot3_node]: Start Calibration of Gyro
[ld08_driver-2] /dev/ttyACM0    OpenCR Virtual ComPort in FS Mode
[ld08_driver-2] /dev/ttyUSB0    CP2102 USB to UART Bridge Controller
[ld08_driver-2] FOUND LiDAR_
[ld08_driver-2] LiDAR_ started successfully
[turtlebot3_ros-3] [INFO] [1664735323.596290544] [turtlebot3_node]: Calibration End
[turtlebot3_ros-3] [INFO] [1664735323.596640115] [turtlebot3_node]: Add Motors
[turtlebot3_ros-3] [INFO] [1664735323.598648695] [turtlebot3_node]: Add Wheels
[turtlebot3_ros-3] [INFO] [1664735323.600147448] [turtlebot3_node]: Add Sensors
[turtlebot3_ros-3] [INFO] [1664735323.616320352] [turtlebot3_node]: Succeeded to create battery state publisher
[turtlebot3_ros-3] [INFO] [1664735323.633280522] [turtlebot3_node]: Succeeded to create imu publisher
[turtlebot3_ros-3] [INFO] [1664735323.644526975] [turtlebot3_node]: Succeeded to create sensor state publisher
[turtlebot3_ros-3] [INFO] [1664735323.649147291] [turtlebot3_node]: Succeeded to create joint state publisher
[turtlebot3_ros-3] [INFO] [1664735323.649481551] [turtlebot3_node]: Add Devices
[turtlebot3_ros-3] [INFO] [1664735323.650206110] [turtlebot3_node]: Succeeded to create motor power server
[turtlebot3_ros-3] [INFO] [1664735323.663987948] [turtlebot3_node]: Succeeded to create reset server
[turtlebot3_ros-3] [INFO] [1664735323.669797079] [turtlebot3_node]: Succeeded to create sound server
[turtlebot3_ros-3] [INFO] [1664735323.678061703] [turtlebot3_node]: Run!
[turtlebot3_ros-3] [INFO] [1664735323.775078401] [diff_drive_controller]: Init Odometry
[turtlebot3_ros-3] [INFO] [1664735323.821200996] [diff_drive_controller]: Run!

Please describe the issue in detail.

When I power my turtlebot3 robot, the lidar is spinning by default. But when I run   ros2 launch turtlebot3_bringup robot.launch.py command,  my lidar stops spinning and  not receiving any scan values in the ros2 topic echo /scan.
In the log file I see:
[ld08_driver-2] /dev/ttyUSB0    CP2102 USB to UART Bridge Controller
[ld08_driver-2] FOUND LiDAR_
[ld08_driver-2] LiDAR_ started successfully

but lidar not spinning and not send any data in topic /scan.
I installed the SBC base on https://emanual.robotis.com/docs/en/platform/turtlebot3/sbc_setup/#sbc-setup  manual "FOXY" tabs

@DarekLin Apologies for the delayed response. We have assembled a TF team to address TurtleBot3 issues and are actively working on resolutions. Please note that we do not support EOL (End-of-Life) ROS versions; our support currently extends to Noetic and Humble versions. We kindly ask that you try again with the latest version. If the same issue arises, please feel free to resubmit it, and we will address it promptly.


(Bug) Step3: field gas price custom empty by default

Steps:

Start creating Minted (or Dutch) crowdsale
Proceed to Step 3 with valid data
Select gas price -> custom

Expected result:

field gas price custom should has value 0.1 by default

Actual  result:

field gas price empty
user able to continue with empty gas price custom field

If you are reporting a problem with Token Wizard, please include the following information:
Which network did you use? (Mainnet, Kovan, Rinkeby, etc.)
n/a
If you were able to create it, what is the URL of your crowdsale?
n/a
Do you have screenshots showing the problem?

Do you see errors in the dev console? If yes, please include a screenshot
To open the dev console in Google Chrome, press F12, or go to View -> Developer -> Developer Tools, and open the Console tab
If you see errors, please right click on them and "Save as..". Zip saved file and attach it to the Issue.
no

This issue is reproducible again in branch https://github.com/poanetwork/token-wizard/tree/integration/%231082-new-design
Relates https://github.com/poanetwork/token-wizard/pull/1203

@dennis00010011b
It seems that the commit was lost in some merge with the integration branch, added in new PR #1225


Clarification of App HTML structure and division of responsibilities (for Container writers)

Clarification.
From reading the F2 docs and code, the diagram below is my understanding of what an archetypal F2 HTML structure is like. While I have gone beyond what F2 has proscribed in some places (notably the panels to the left and right of the central app content and the footer panel), please verify that what I have down is correct.

If this is correct, I'll follow up with some documentation/api clarification requests.

the examples page provides the ability to highlight the container (press c) or apps (press a).


extract api client

asana
https://app.asana.com/0/22730822790060/64966662605378
problem
we want to use the api client in our many applications, but it is currently bundled in the nodeapi
solution
pull it out!  release it on it's own!  see halfpenny

Thanks for getting this done.
@swashcap : does coinstac use the nodeapi SDK currently? If so, we'll want to update it to use halfpenny instead before this gets merged.

@dylancwood Nope, COINSTAC has login rolled into https://github.com/MRN-Code/coinstac/blob/master/app/js/services/auth.js. We should definitely update it to use halfpenny.

we'll want to update it to use halfpenny instead before this gets merged.

@dylancwood, i dont understand why updating coinstac should be a gating item to closure.  they are independent of each other.  we should still definitely do it, but it won't break anything to merge this PR


Running mod on server causes strings not to be translated properly within the console

Tested with Fabric server 1.21 versions 1.0.1 and 1.0.0, Quad 1.2.7 and 1.3.0, always happens. Mod list:
        - fabric-api 0.102.0+1.21
                <fabric api nonsense>...
        - lolmct 1.2.8
        - minecraft 1.21
        - quad 1.3.0-beta.5

Output in console:  https://cpy.pt/AcH6N5KV

unfortunately this is a bug with (I believe) Minecraft itself, and I cant fix it

This only happens when MCT is loaded in the mod folder.

Yes, i am aware of the issue, still an issue with how minecraft handles mixing lang files on the server


Missing in_schedule API for configure_set

What problem does this solve or what need does it fill?
The inconsistency with add_system is probably unintentional and may confuse users.
Avoid the need to use edit_schedule just to configure a set in a specific schedule.
What solution would you like?
I really think we should add this in the patch release (0.10.1).
This is a simple but core bit of API that's missing.
What alternative(s) have you considered?
Adding it in 0.11.
Additional context
https://github.com/bevyengine/bevy/issues/8013#issuecomment-1463607084

I'm on board with cherrypicking this into 0.10.1 if we can get it working.


quick fix error insert_batch using PHP7

add reset($key) on line 1548

And what does that fix?

to fix this issue https://github.com/bcit-ci/CodeIgniter/issues/4804

Well ... in the future, please don't open separate issue and pull request.
I'm sure you can see how that's problematic - you have a pull request here with no description or context at all, and thus - no way of knowing why you want this change. And even if you did initially link to #4804, we'd still have to click around between two separate issues to understand what's going on.

Well i just going to leave here my comment instead in the related issue(#4804).
I had the same issue working with PHP 7.0.8, if I change to PHP 5.5.26 I have no errors.
If I create a static array like the one I'm using there is no problem (my array was created dinamically) so instead of changing CI core, i just reset my array pointer on my code and all the errors went out.

@pepegarciag Yap. I just reset all of my arrays before throwing them to every functions of CI.
Case closed. Thanks everyone.


Allow users to upload overlay .nii.gz

I've been thinking about how to allow user to load any .nii.gz via Brainlife, and I believe we should allow users to load .nii.gz via the tractview UI - by placing a "upload" button on the UI itself and allowing user to select .nii.gz stored locally on user's machine.
For Brainlife, the use case might be following.

User download some scalar nifti image (from recon, dtiinit, noddi output) from Brainlife.
User launches tractview from wmc output via Brainlife.
Once tractview starts up (and loads the wmc tracts), user then click "Upload overlay image" button.
User select the nifti image stored locally, and tractview would load it to the tractview

I think we should pursuit mechanism to pre-load nifti images as layer like we are doing now, but by allowing user to load locally stored nifti image, it makes it much more flexible and allows user to explore their data including data from Brainlife

I think I might just do this to make dev testing way easier


Adopt Translation & Localization Management Platform for docs

This is a Feature Request
Support of Translation & Localization Management Platform (TLMP) for docs
To effectively make and maintain translations, we need to adopt tools that were created for it.

After a quick research at the start of 2023, we chose Transifex for PoC as a free and reliable solution, but in the end, it's no matter what tool sig-docs chooses, it will be much better than the workflow that we have now via git&Github.

What would you like to be added

There are 3 ways, from better to worse:

Full integration. Integrate any TLMP with k/websites and move localization work fully to the chosen TLMP, including docs reviews and CLA sign. Add TLMP Github integration and auto-merge changes sent by TLMP integration user (provided by TLMP or you can setup your own)
Particial integration. Translate and review in TLMP, but users still need to sign CLA in Github

Fix the EasyCLA co-author issue, mentioned in Linux Foundation issue, test PR
Create a script that will be take by API's last editors of each line for the changed file and add them as co-authors in git
Auto-merge such changes if EasyCLA check passes, (review already done in TLMP)

No integration. Same as p.2, but 2.3. replaced with:
3. Manually approve and merge such PRs in Github, if EasyCLA check passes.

Why is this needed
When you write docs or code in 1 language, you work only with the current state of docs - everything that you need to track is tracked by git.
When you translate something - you deal with 2 sources of truth: original and existent translation, which can be partial, outdated or placed in locations that have already been moved/removed from the original. + other edge cases. There is no easy way in git to check what changes in the original also should be revisited in translation, so mostly every translated doc became unsupported from the moment when it was merged - as sometimes simpler to redo a translation from scratch than to figure out what changes are needed.
Long story short: git is just the wrong tool for translations. It is as bad for this as using .zips for VCS or trying to send a letter by pigeon mail to another continent and hoping for 3 workday answer.
Also, tech-writers, students, or newbies which'd like to contribute, in most cases have no or little knowledge how git and GitHub works, they don't have a GitHub account, and so on. Those are just not intuitive tools for non-techie folks.
So, what good enough TLMP will provide:

Tracking changes in the original and asking for new translations for these changes
Provide suggested translation by Google Translate/DeepL/etc by 1 click, which should be reviewed at least twice: by a user who added that auto-translation and by the reviewer(s)
Have built-in CLA support
Have a Github integration
Have an easy to understanding for translators interface
Provide easy-to-find not translated, and not reviewed strings/files
Able to provide/keep a few translation suggestions for a single string for the reviewer choose
Easy to signup and sign CLA from the start mechanism
Conform with all LF and CNCF regulations (or change those regulations to conform with TLMP)
... ?

Comments
@sftim asked to add it as an issue here, to be able to track work on it.
Related Linux Foundation issue
Screenshots of the LF issue in case you can't see it
Read msgs from bottom to top

P.S. That started as a Ukrainian localization team initiative, but we were blocked from the legal perspective of merging back that kind of change from TLMP.

/area localization
/priority important-longterm
/triage accepted
/kind feature

For Transifex: if Transifex commits a change, is there any license or copyright asserted by Transifex?
(if not: I think we could make a tool that allows contributors to adopt those changes and confirm, through the tool, that their CLA applies to the contribution(s) in that commit).

Consider integrating Crowdin (https://support.crowdin.com/enterprise/authentication-settings/) along with Transifex for translation purposes. Crowdin offers a comprehensive set of authentication settings, as illustrated in the image below:

Additionally, Crowdin provides a versatile range of translation tools, enhancing the efficiency and engagement of contributors in the translation process. The image below showcases the various tools available:

Encouraging the use of Computer Assisted Translation (CAT) tools like Transifex and Crowdin can significantly streamline the translation process and boost overall contributor engagement. It would be beneficial for CNCF to explore and embrace these tools for a more efficient and collaborative translation experience.

I like it. Translation memory is always asset!
How about to introduce chatGPT that can provide better results than traditional machine translations.

Let's have one issue per change we need to make; if we'd like to have a wider discussion, see:

Generative AI for Kubernetes docs
 Translation tooling for Kubernetes localization

as repo discussions

@MaxymVlasov & colleagues: do you have a reply for https://github.com/kubernetes/website/issues/45175#issuecomment-1950248435 ?

Hello @sftim .

if Transifex commits a change, is there any license or copyright asserted by Transifex?

According to https://www.transifex.com/legal/terms/ the answer for quoted question is
Transifex does not assert any ownership rights over the content a person submit, including text published via git repositories for localization. The terms specify that while using Transifex services, you retain full ownership of your content ("your words"), and Transifex only requires limited rights to perform the services requested by localizator\customer. This includes actions like hosting, sharing, or otherwise processing your content as directed by you, without claiming any copyright or license over it

@sftim pretty similar conclusion for CrowdIn mentioned by @Andygol https://support.crowdin.com/terms/
Clients are responsible for ensuring they have the necessary rights to their content. Crowdin asserts no ownership over client data, which includes text submitted for translation or any other purpos
cc @MaxymVlasov

For a discussing choice of tools, please go to: Translation tooling for Kubernetes localization

OK, so how about we document a workflow (I'm thinking git rebase) where people adopt the changes that Transifex has committed, and then we look at automating away the toil from the manual process.
Does that sound OK?

@sftim

a workflow (I'm thinking git rebase) where people adopt the changes that Transifex has committed

The main blocker for a reasonable flow with Transifex is that easyCLA unable to process commits that include co-authors.
if general, non-proven workflow description is good enough for the moment - we willprovide it

Broadly, here's what I suggest:

have a branch
get Transifex to commit to that branch
pull the commits
amend the commit author or reset to the parent commit and make a new commit
git push --force-with-lease

If we make a script, it would be a script to do the equivalent steps.

Why there is out of radar question about signing translation work with CLA inside Transifex/Crowdin/etc…?
And here the work of not only translators, but also reviewers and approvers, who don't have to worry about the complexities of managing content using git commands, is made easier.

@sftim when Transifex (or any other LMP) suggest commit to pull it in main branch, a commit could already contain a result of a team work, not one author. Already reviewed and approved by owners on a localization management platform side.
Such way of managing of work progress saves a lot of time and effort and increase translation quality dramatically
so our plan is something like

have a branch in /kubernetes-i18n-ukrainian/website
get Transifex to commit to that branch
pull a commit
use transifex cli\api to get list of all people related to the final translation in a commit
amend all related to the commit as co-author (as commit is already owned by transifex bot, which should be approved by EasyCLA bot)
push the commit to /k/website

I try to rephrase my question.
❓ Must we track the original contributors to translations on GitHub, or is it possible to accomplish the same task using a different platform, such as a localization platform?

When we localize manually, we don't list the original contributors as co-authors (and that's fine). No need to change when automating more of the process.

I'd say we take it as implied that localized text has the upstream (English) contributors as co-authors.

have a branch in /kubernetes-i18n-ukrainian/website

get Transifex to commit to that branch

pull a commit

use Transifex CLI\API to get list of all people related to the final translation in a commit

amend all related to the commit as co-author (as commit is already owned by Transifex bot, which should be approved by EasyCLA bot)

push the commit to /k/website

easyCLA recognizes all authors and is good with it

Although you're welcome to work in kubernetes-i18n-ukrainian/website, we'd prefer to support you so that this work happens within the Kubernetes organizations on GitHub. If you (the Ukrainian team) feel that there are barriers to working within Kubernetes, please tell us about what feels difficult. We'd like to address those barriers rather than ignore them.
Beyond that, change one more detail, and it could work:
-amend all related to the commit as co-author (as commit is already owned by Transifex bot, which should be approved by EasyCLA bot)
+change that combined commit to have the pull request submitter as the primary author, and list all other human coauthors as co-authors

If Legal and management agree to that localizators could sign CNCF CLA at platform (Transifex allows it for example) it would unblock process even more

I'm pretty sure we'd need people to sign with the Linux Foundation, or for their employers to sign (again, via LF). Using Transifex for that signing does not sound feasible; the CNCF CLA signing and tracking is something that applies across the Linux Foundation.

We need to watch out for tainting: if a commit that adds or updates a localized document has any change that isn't covered by a CLA, we can't accept that work. Even if most of the work was done by other people.

As another take on it: does Transifex provide a way for us to only accept translations from users who have signed the CLA at the Linux Foundation, and to reject work from anyone who doesn't have a current CLA?

It provides ability to force to sign CLA provided by org owner before any work will be started. If EasyCLA will be integrated with CLA in Transifex/etc - then answer is yes.
Then we can avoid any CLA verifications and commit co-authors manipulations on git side, as it will be done on during sign-up procedure in choosed TLMP

The best we can do then is to ask people to confirm that they have signed the CLA and require this confirmation. We can't rely on the signature made within Transifex, and I don't expect that an EasyCLA integration is going to happen.
Folks are welcome to ask the CNCF for this, but let's build something that'll work even if we don't get it.
In other words, we don't ask people to use Transifex to sign the CLA. We ask people to use Transifex to formally confirm that, if we check their CLA status, it will show up as signed.

Then we can avoid any CLA verifications and commit co-authors manipulations on git side, as it will be done during sign-up procedure in choosed TLMP

Although it's a nice idea, I also think it's safe to assume that it won't happen; I can't picture a source of money or resources to make it work how we'd like.
What we can do is start with a manual process like I've outlined, and then automate that more.

Hi everyone – I wanted to update this discussion with a couple of things so that we can track progress on some of this work.
SIG Docs leadership is trying to have the LF/CNCF make and communicate a decision about the following: Are they willing to do a foundation policy change where external tools can do CLA signing, bypassing EasyCLA. This is an ask that the Ukrainian Localization Team has as part of the workflow they envision when adopting a translation and localization plaform. Maksym has already raised an LF Service Desk ticket for this, and I have personally reached out to/tagged Robert Reeves from the Linux Foundation, and most recently @jeefy, Head of Projects for CNCF.
In parallel, I know that @sftim is looking to work with others on starting a PoC on what a workflow could look like for an adopted translation/localization plaftform, but one that specifically doesn't include an EasyCLA integration – this is because we have yet to receive any decision or confirmation on the above ask, and if the policy will not be changed, we can still look into improving the localization workflow for language teams.
Finally, I'll be looking to connect with the Steering Committee (via our liaison @justaugustus) so that whatever decision is recorded is done so for the whole project.

Thank you @natalisucks for doing the heavy lifting! I just have a couple of requests for the effort that @sftim plans to collaborate on:

Please ensure that everything is off a public fork for the purposes of visibility and transparency. A private fork will limit how we communicate the results of the experiment to the LF/CNCF.
I'd also like us to open a tracking issue specifically for the experiment so that we can document the steps and the progress. We can link it to this one as a child issue.

:coffee: Okay, here are my thoughts/questions:

Is the intended workflow meant to amend/update an Open PR with translations? Or will the automation create a follow-up PR with the translations for intended languages? (Note: Please say the latter)
If the tooling is creating follow-up PRs to something already merged in, said-tooling does not need to do a CLA-check. We already do that check up front, no reason to duplicate it.
We have numerous bots/automation throughout our projects. Those bots all have CLAs signed by their creator-or-representative. Since this is a third-party-tool and not a community-built tool, there are some differences there. I'll try to get clarification internally about whether this is OK or not (And yes I will update this thread when I get guidance)
Public Forks Please :pray: We default to everything in the open wherever possible.
+1 to Divya's comment. Once the bikeshedding is done here as to what this looks like, a new thread should be created that outlines the steps and implementation details.

If the tooling is creating follow-up PRs to something already merged in, said-tooling does not need to do a CLA-check. We already do that check up front, no reason to duplicate it.

It's a follow up in that the English content has merged, but the Ukrainian content may well not have (or there may be a substantial update). We've so far treated localization work as copyrightable.

We've so far treated localization work as copyrightable.

Authors maintain the copyright since this repo's licensed under CC 4.0. Which makes sense. And with Transifex, they clearly and definitively say that the author retains the rights.
To that end, I would move forward with getting a proof of concept in place (with Transifex or something else) that submits PRs and ensure actual-humans still review the content. But, it cannot be put into "production" or have any of said-PRs merged in yet (If I could color this red I would)
If a Bot submits the the PR, who owns the copyright?

The bot?
The owner of the bot?
The person who configured the bot?
Or the person who approves/merges the PR?

Before we merge any of the automated-translations, those questions need to be answered by the legal committee. I've escalated it up (See this reference) but fair warning we're in the shadow of KubeCon, the legal committee won't likely get to this till April. Just setting an expectation there.
Hopefully this unblocks y'all a bit.

@jeefy I would appreciate it if you take a look at this discussion as well — https://github.com/kubernetes/website/discussions/45209

In parallel, I know that @sftim is looking to work with others on starting a PoC on what a workflow could look like for an adopted translation/localization platform, but one that specifically doesn't include an EasyCLA integration

@natalisucks easypeasy! without EasyCLA compliance confirmation it could take like no days to start work on translation of a source stored on git
The only point that considers me is  trial session is limited in time ((after trial we need to switch to a paid plan or compliaine to a platform as open source)), so it would be great to have all volunteers to work on localization via Transifex (or any other TLMP) before the start
So we could go through the test and collect cons\pros opinions as fast as possible
Let's set the deadline and collect list of volunteers from different localization teams

@jeefy @sftim once againin this story we have three types of botes:

CLA signing and signature confirming bots. Like EasyCLA (I will call them CLA bots)
PR creating bots,  which don't generate their own code, but just push what has already been createdd (PR bots)
AI translation engines / machine translation bots (localization automation bots)

From a day one of this topic discussion those three are mixed and it's a trouble.it's a HUGE trouble

We as Ukrainian Localization Team started this  topic as let's-integrate modern localization MANAGEMENT tools into the process. Most of them, if not all have PR bots in their flow, as it was logical and understandable decision on platform developers side. These bots do not create texts\code. Their are only parts of a CI like process
They are simplifying SENDING of translated and reviewed code into a git storage (in our case)
Texts they send owned by contributors and reviewed by contributors on TLMP site before PR is created
Easiest way to exclude those from the process is to create own TLMP, which doesn't look reasonable

We haven't found a platform that has an EasyCLA bot in their mind as a source of CLA sign verifiation. However some of these platforms have their own CLA sign \ sign verification mechanisms. Integrating them will save tons of time and effort into localization process
Yes, in this case we will get more bots\mechanisms to take care of, software developer partners to discuss needs \ changes with, etc, etc, ...
However I don't see how we could do better at the moment if we don't own one of those platforms  by ourselves and EasyCLA bot is too limited to allow us any reasonable automation to combine TLMP with current processes even with extra steps
The reuse of the already existing and globally recognized TLMPs is definitely a Pro and eliminates a Con of adding another CLA verification mechanism.

Localization automation bots could be a game changer if we are talking about bringing a kickstarter to a community of speakers who don't have their localization team yet, or for those who are short on thands. However it's not the main priority for us (at least for the Ukrainian localization team). We are looking for tools that will make it easier for new people to get on board and reduce the technical effort to start working on the localization

I am grateful for the patience of all who are going through these thoughts again, and hope that they will clarify the case if you are reading them for the first time.

@jeefy I would appreciate it if you take a look at this discussion as well — #45209

A bunch of those solutions look pretty cool IMO. I don't really have a say in the approach, but my two cents would be to try and do as much as possible without the need to install a tool locally (looking at the suggestion of some desktop app)

last year we stuck on EasyCLA bot, which still needs to be changed to move forward

I can poke at this internally but I have a feeling it will not get done any time soon. Please do not do anything that requires it.

Ukrainian Localization team had personal reached Robert Reeves before raising AGAIN this question again with SIG Docs leadership to clarify that we have some support on CNCF side this time for changes to improve, modernize, streamline localization process this time

We (CNCF) fully support projects looking to do this sort of automation, but that's it. If there's some resource we can provide to streamline things, we're happy to. But we avoid prescribing any single solution. We prefer to leave it up to the projects to pick what works best for them. Robert works to build partnerships so once a solution is settled on, he'll hop on board to try and work with the vendor. He's not going to help y'all decide.

So we could go through the test and collect cons\pros opinions as fast as possible
Let's set the deadline and collect list of volunteers from different localization teams

I might be out of place but that's probably best decided, prioritized, and left to the Chairs/TLs of this SIG :) They've got a lot going on (some of it because of me, sorry!) so patience would be welcome here.

I can poke at this internally but I have a feeling it will not get done any time soon. Please do not do anything that requires it.
From my perspective the best thing which we could  do to  not rely on CLA verification of EasyCLA bot (because bot needs to be modified, to do a verification with extra steps. commit with co-authors scenario) is to move to a scenario where CLA verification is done on TLMP side 🤷

We will get one extra CLA related tool, but will not have to do extra steps. The only con i see - this is a less agile scenario

Here is a quick summary of the current situation ¯\_(ツ)_/¯

graph TD
    subgraph C["CNCF/LF — SIG Docs"]
        CNCF[CNCF/LF] -->
        |"We fully support projects<br />looking to do this sort of<br />automation.<br />We avoid prescribing any<br />single solution"| SD[SIG Docs] -->
        |"Are CNCF willing to do<br />a foundation policy change<br />where external tools can do<br />CLA signing, bypassing<br />EasyCLA?<br /><br /><br />We have yet to receive<br />any decision or<br />confirmation on<br />the above ask, and<br /><br />if the policy will<br />not be changed…"| CNCF
        SD --> SD
    end

    subgraph LT["Localization Teams"]
        M((("We need modern<br />Localization Platform")))
    end

    LT --> C

How about: we set up a trial to use Crowdin to localize some Ukrainian pages, and as part of that we make a process to get the content published. It's likely that people would need to sign the CLA once but that there would be more than one place where our systems verify this.
Once we have that prototyped, we can look at adapting the process so it also works with Transifex.
Does that work?

Ukrainian Localization team had personal reached Robert Reeves before raising AGAIN this question again with SIG Docs leadership to clarify that we have some support on CNCF side this time for changes to improve, modernize, streamline localization process this time

If there's no communication with SIG Docs about being blocked on something, then we won't know 🙂 Our first try was to have the Ukrainian team raise a ticket with LF about the CLA bypass, which happened. To my knowledge, we've only heard about this not being resolved for the last ten months in these fresh conversations (in Slack and on this issue), hence our next attempt to escalate. Please work with us here, we are all on the same team 👍

Do any of these platforms allow webhook / HTTP callout authz?
If we find one, we can link that to CLA checking - that's engineering, but that's good because implementing software has lower barriers than changing copyright policy. The outcome would be to help contributors discover as early as possible that they (or their employer) must sign the CLA.

How about: we set up a trial to use Crowdin to localize some Ukrainian pages…
Does that work?

It would be great to try it out. I'm opt-in!
Here is https://github.com/Andygol/k8s-website/tree/main-uk-wip 760+ already translated into Ukrainian Docs, in case we need to test on something.

Do any of these platforms allow webhook / HTTP callout authz?

✅ https://support.crowdin.com/webhooks/ and ✅ https://developers.transifex.com/docs/webhooks

If there's no communication with SIG Docs about being blocked on something, then we won't know

@natalisucks plz, stop refer to "If there's no communication, then we don't know" stuff.
it brings up... a lot of emotions from last year communication around topic, and most of those are not pleasant.
So let's just not touch it for some time, until things really wouldn't start rolling :handshake:

Do any of these platforms allow webhook / HTTP call out authz?
If we find one, we can link that to CLA checking

@sftim could you Plz tell more about what you are looking for specifically? platforms could work with hooks, so we could at least to try to go your way, however I am not sure that we are looking for similar workarounds
From what @Andygol , @MaxymVlasov and I have looked through previously, the EasyCLA bot limitations are on the road. But whatever: maybe you have something on your mind that we haven't looked into yet. Plz share with us

@sftim could you Plz tell more about what you are looking for specifically? platforms could work with hooks, so we could at least to try to go your way, however I am not sure that we are looking for similar workarounds

That's a specific detail of using a translation and localization management platform. How about tracking that part in its own issue?

@rolfedh proposed a testing plan on the discussion about which tools to consider.
I'll copy it here:

To evaluate the effectiveness of translation platforms like Crowdin and Transifex for Kubernetes localization, consider implementing a phased plan:

Define Evaluation Criteria: Establish key performance indicators (KPIs) for success, such as ease of use, integration capabilities with GitHub, support for managing contributions and CLAs, quality of translations, and efficiency in tracking changes between the original documents and translations.

Select Pilot Projects: Choose a small, manageable set of documents for initial testing. Ensure these documents represent various types of content in the Kubernetes documentation to fully assess the platforms' capabilities.

Set Up Platforms: Configure both Crowdin and Transifex with the selected documents. This includes setting up projects, integrating with GitHub (if possible), and inviting a small group of volunteer translators to participate in the process.

Conduct Training Sessions: Provide training for the volunteers on how to use each platform, focusing on the specific features and workflows relevant to the Kubernetes project.

Begin Translation Process: Allow volunteers to start translating documents using both platforms over a defined period, encouraging them to note their experiences, challenges, and feedback.

Gather Feedback and Assess Performance: Collect feedback from volunteers regarding their user experience, the quality of translations, and any issues encountered. Evaluate this feedback against your predefined criteria.

Review and Analyze Results: Analyze the performance of both platforms based on volunteer feedback and the KPIs. Consider factors like user satisfaction, efficiency improvements, and any reduction in translation errors or inconsistencies.

Make Recommendations: Based on the analysis, recommend whether to adopt one of the platforms (and which one), continue testing with a broader set of documents, or explore other options if neither platform meets the project's needs.

This plan focuses on a collaborative and data-driven approach, ensuring the chosen solution not only meets the technical requirements but also enhances the translation experience for volunteers.

Also:
Here's a proposed list of Kanban tasks for our testing plan:
Preparation Phase

Define Evaluation Criteria:

Task: Establish key success metrics (usability, GitHub integration, CLA handling, translation quality).
Deadline: Week 1

Select Pilot Projects:

Task: Choose a diverse set of documents for initial testing.
Deadline: Week 2

Setup Phase

Configure Platforms:

Task: Set up Crowdin and Transifex projects with integration to GitHub.
Sub-tasks: Import documents, configure workflows.
Deadline: Week 3

Recruit Volunteers:

Task: Invite translators and reviewers.
Deadline: Week 4

Conduct Training Sessions:

Task: Organize training for volunteers on Crowdin and Transifex.
Deadline: Week 5

Translation Phase

Kickoff Translations:

Task: Start translation process on both platforms.
Deadline: Week 6

Monitor Progress:

Task: Weekly check-ins to address questions, provide support.
Deadline: Ongoing until Week 12

Evaluation Phase

Collect Feedback:

Task: Survey volunteers for their experiences and suggestions.
Deadline: Week 13

Analyze Results:

Task: Evaluate feedback against criteria, analyze platform performance.
Deadline: Week 14

Decision Phase

Make Recommendations:

Task: Compile findings, propose next steps or platform selection.
Deadline: Week 15

Presentation to Stakeholders:

Task: Present findings and recommendation to project leaders.
Deadline: Week 16

Ensure each task is assigned to a team member with clear responsibilities and deadlines. This structured approach allows for continuous monitoring, adjustment, and evaluation of the platforms' effectiveness in streamlining the Kubernetes documentation translation process.

I've created an issue that covers testing for these tools, https://github.com/kubernetes/website/issues/45756. If you are interested in volunteering to help test the tools, please review reach out on the issue.

@MaxymVlasov Can you please give us an update on the progress of your Service Desk ticket? I'd like to make sure we're following up with the CNCF accordingly.
Furthermore, for folks still following this issue, we're still accepting people to help out with #45756 so that we can get some testing started, without CLA checking or integration, on some possible tooling.
@jeefy If you wouldn't mind letting us know if there's been an update from the Legal meeting with LF folks on the topic of bypassing the CLA bot (see my comment here) that would be great.

@natalisucks LF helpdesk escalation doesn't work...

Good news - EasyCLA now checks CLA for everyone in commit:
https://github.com/kubernetes/website/pull/45174#issuecomment-2118025718

https://docs.linuxfoundation.org/lfx/easycla/v2-current/easycla-and-co-author-compliance-guide

Btw, https://hosted.weblate.org/ provides ability to get suggestions for similar text from other projects, which simplify localisation and it standartization across whole language.
Usually they cost money, but for OSS project they can provide free license.
Just in case if other solutions will not work fine


APPS {storeutl,gendsa}: give error on extra arguments, improve doc

Point out that CLI options must be given before the final file/URI arg.
So far, they were silently ignored, as well as any extra args.
Also fix in the storeutl doc that there is only one URI arg.
On this occasion, also improve APPS load_key_certs_crls() diagnostics on not finding expected types of contents.
Fixes #20144.
Checklist

[x] documentation is added or updated
[x] tests are added or updated

This won't cherry pick to older branches.

I'd suggest doing just a docfix PR for 3.1/3.0

This won't cherry pick to older branches.

Ah, right.

I'd suggest doing just a docfix PR for 3.1/3.0

Done in #20179.

This pull request is ready to merge

Merged to master branch. Thank you for your contribution.


Network analysis capabilities for pcap files

Hi @mr-tz and @williballenthin, I was looking at issues #1532 and #1549 and have been thinking about how to implement some network analysis capabilities for capa. Some of the capabilities I have been thinking about include:

matching yara rules to pcap data, and printing any identified capabilities to the user

printing malicious IP addresses and domain names (and protocols and ports used in communication with each)

checking it there are suspicious DNS queries, such as for newly registered domains, or domains that have been associated with malware. I have read that there may be some services that can do this but I have not looked that far into this. It probably wouldn't be that hard for capa to check if a domain is newly-registered anyway

a simple flexible graphing feature to print data like packet size or traffic volume over time. Users could feed various types of pcap data to it using wireshark-like filters. This could help users see e.g., traffic from a suspicious domain name, or the amount of large data packets packets, over time

All of these features would be run against a pcap file. What do you think of these features? Are there others capabilities that should be here too?
Also, with regard to the yara rules above, would it be a good idea to have "flexible" yara rules here? Since data integrity is relatively unreliable with some network protocols like UDP, some malicious sequences might become damaged in transmission. "Flexible" yara rules could alert users even if the rules' byte sequences are slightly damaged. This might be more useful for users whose pcap files are generated "in the wild" compared to users whose pcap's are from sandboxes.
It looks like there are some existing types of "flexible" algorithms for matching yara sequences based on "fuzzy hashing," the Smith-Waterman algorithm, and concepts called Levenshtein distance and Hamming distance. However, these flexible algorithms primarily address other problems; none improve yara rule matching when data packets are damaged in transit.
The damage that data packets may experience in transit might be: If a malicious actor sends a packet containing the 10 letter-long malicious sequence (for example, ABCDBCCBDA), and if two of the letters are dropped or damaged in transit, we might have: ABC-BCC-DA. Yara rules expecting all 10 letters may not match against this slightly altered sequence.
A good algorithm should probably be able to determine roughly how many bytes in a sequence are dropped or damaged, and then apply capa's existing rules to efficiently look for "flexible" yara matches. Please let me know if you think that something like this sounds reasonable - there's a fair chance I've gone too far down the yara rule rabbit hole. "Flexible" yara rules may only be necessary if malicious data packets are sometimes damaged and if some other conditions are met.

Hey, I've just opened another related issue at https://github.com/mandiant/capa/issues/1907.
As for the above suggestions I think we'd want to focus on using the existing data (i.e. from sandbox runs) vs. generating new data or querying external databases. Some ideas here would be cool for a "capa for Wireshark" tool. For now though I think we could pull all important data from the sandbox traces (or from the summary section as mentioned in #1907).

Thanks for clarifying some of these things @mr-tz and for opening that issue, I'll have a look!


Add "originLeft" option

Masonry has an option for controlling the horizontal flow of the layout. By default, item elements start positioning at the left, with originLeft: true. If you want them to start positioning at the right you simply set it to false. How does one achieve the same thing with this library?
Loving this library. Thank you!

Sure! Here's the page where I'm using the library: https://thinkfwd.co/about
On the bottom of the page, notice how the three team members are stacked? The third one "floats" right. I was able to achieve that in a sort of hacky fashion - I created a hidden third element so that that the library forces the forth one to the right. Ideally, the library would provide an option for me to set the items origin to the right.
Hope that makes sense.


Custom rendering made onClick not working.

Describe the bug

version<EMAIL_ADDRESS>and<EMAIL_ADDRESS>Codes were very simple and worked fine:

      <PhotoAlbum
        layout="masonry"
        photos={thumbs}
        onClick={({ index }) => setIndex(index)}
      />

Today I need custom onError of img, so I add renderPhoto to custom rendering. The onError callback worked as expected but onClick seems not working while I click the image nothing happened even an onClick callback added on img tag.

        renderPhoto={({ photo }) => (
            <img
              title={photo.title}
              src={photo.src}
              class="react-photo-album--photo"
              loading="lazy"
              decoding="async"
              style={{ display: 'block', 'box-sizing': 'content-box', width: 'calc(100% + 0px)', height: 'auto', 'margin-bottom': '20px', cursor: 'pointer'}}
              onClick={({ index }) => setIndex(index)}
              onError={({ target }) =>
                ((target as HTMLImageElement).src = "new_src";
              }
            />
        )}

Expected behavior
When img clicked the lightbox should shown.
How to reproduce
Add onClick and renderPhoto both on PhotoAlbum.
Click the image, lightbox not shown.
Screenshots / Logs
No response
Additional context
No response

You should use the onClick callback that is passed through as part of the imageProps prop.
renderPhoto={({ imageProps }) => (
  <img
    // the onClick is already included in the imageProps
    {...imageProps}
    // override or add image props here
  />
)}

You can find the description and one specific example over here:
https://v2.react-photo-album.com/documentation#RenderPhoto
https://v2.react-photo-album.com/examples/nextjs

https://v2.react-photo-album.com/documentation#RenderPhoto
https://v2.react-photo-album.com/examples/nextjs

Nice. I need the document for v2 before I could upgrade this awesome library to v3.


Will dax supported by spring data dynamodb

Can we use dax with spring data dynamodb if we use the dax client for the dynamodbmapper as below .
      {

         ClientConfig daxConfig = new ClientConfig().withRegion(Regions.US_EAST_1.getCurrentRegion())
               .withEndpoints("testcache.amazonaws.com:8111");
         AmazonDaxClient client = new ClusterDaxClient(daxConfig);
         return new DynamoDBMapper(client);
      }

This is the scenario when we are setting up dax as a write through cache behind Amazon DynamoDB

+1

Any chance to get more infos on dax?

Documentation added to the wiki.


How to Fine-tune Models in Torch Hub with Python instead of CLI?

This is not supported. We currently require use of the CLI tools to launch training. We are working on a project to make the Trainer work as a standalone component (more like a library), but it isn't ready yet.


Naming issue on Mac/Windows

This package right now fails to load in Mac (and likely windows) since the filename graphsignals.jl is used twice. Once with upper case and once with lower case. This does apparently not work on these operating systems. Could you rename and make a release?

Thank you for pointing out this issue. I took a long time finding the bug while I don't have a Mac.


[WIP] Alternative Network tab implementation

@jkrems , thanks to your experience in #655 I added full network tab implementation.
Here I solve some problems of your pr:

We can wrap code in --debug and --debug-brk mode
We wrap only one function
We send finished requests to frontend
Added different identifiers for requestId, connectionId, loaderId.
We collect stack trace closest to func called by user
POST data captured

What is implemented:

Basic http request support
Request timings
Request data capturing and cleaning (we store data in node-inspector)
Backported String.prototype.toBase64 from latest DevTools. This solves problem with inspection of data with non ascii caracters

What doesn't solved in this pr:

TODO not fixed. So we can't use XHR breakpoint section in source panel.
I don't know that happens if anyone will use not default encoding in req.write
I don't test keep alive requests
Not implemented Network + Console behavior.

@jkrems ,
@marcominetti ,
@bajtos ,
please review this. This is a full implementaton of Network panel.

force updated to fix tests.

This seems to be missing the protocol? Also, as mentioned in the other PR - this doesn't work when forging host headers or setting a port. Especially the latter part is fairly common when talking to internal services.

fixed in Network: find correct request url

@3y3 Great stuff! I left few comments above.

@bajtos , I fixed targetted issues. Unfortunately changes history was vwry dirty, so I prefer to squash all fixups.
What happened here:

added debug.convert
response.push used to handle dataReceived and finishLoading events.

@bajtos , @jkrems all your issues are fixed. It's ready to next round of review. First round was very useful.

Looking good! Two potential edge cases I found:

Right now it ignores requests that are queued b/c of maxSockets, test case here: https://gist.github.com/jkrems/605a63f4ac068f42de30. This means that when a request times out (is aborted) because of sockets queueing, it will be invisible in the network tab
Maybe bailing out if options.socketPath is present might be a good idea. Or adding a test making sure that the instrumentation doesn't break app code if the app is using file sockets somewhere.

LGTM. I think it's ok to squash most (all?) commits into a single one. Also please check why the CI build is failing, whether its related to the changes made in this PR.
I also think it's ok to address the two edge cases mentioned in @jkrems's comment in a new pull request, but feel free to fix them in this PR too. Whatever works best for you.

Ok. I partially fixed issues from last @jkrems comments. I switched to new entry point for wrapper, and now I have some questions for discussion - look at code below.
From _http_client.js with my comments
function ClientRequest(options, cb) {
  var self = this;
  OutgoingMessage.call(self);

  if (typeof options === 'string') {
    options = url.parse(options);
  } else {
    options = util._extend({}, options);
  }

- NOTE 1:
+ var agent = options.agent;
+ var defaultAgent = options._defaultAgent || Agent.globalAgent;
+ if (agent === false) {
+  agent = new defaultAgent.constructor();
+ } else if ((agent === null || agent === undefined) &&
+           !options.createConnection) {
+   agent = defaultAgent;
+ }
+ self.agent = agent;
- Ok.  `request.agent` is undefined only if we specially define
- undocumented `_defaultAgent` option. Is it right or I missed something?
- So, are we need to handle this ugly case?

  var protocol = options.protocol || defaultAgent.protocol;
  var expectedProtocol = defaultAgent.protocol;
  if (self.agent && self.agent.protocol)
    expectedProtocol = self.agent.protocol;

  if (options.path && / /.test(options.path)) {
    // The actual regex is more like /[^A-Za-z0-9\-._~!$&'()*+,;=/:@]/
    // with an additional rule for ignoring percentage-escaped characters
    // but that's a) hard to capture in a regular expression that performs
    // well, and b) possibly too restrictive for real-world usage. That's
    // why it only scans for spaces because those are guaranteed to create
    // an invalid request.
    throw new TypeError('Request path contains unescaped characters.');
  } else if (protocol !== expectedProtocol) {
    throw new Error('Protocol "' + protocol + '" not supported. ' +
                    'Expected "' + expectedProtocol + '".');
  }

  const defaultPort = options.defaultPort ||
                      self.agent && self.agent.defaultPort;

  var port = options.port = options.port || defaultPort || 80;
- NOTE2:
+ var host = options.host = options.hostname || options.host || 'localhost';
- Are we need to display `options.hostname` instead of `options.host` if it exists?

  if (options.setHost === undefined) {
    var setHost = true;
  }

  self.socketPath = options.socketPath;

  var method = self.method = (options.method || 'GET').toUpperCase();
  self.path = options.path || '/';
  if (cb) {
    self.once('response', cb);
  }

  if (!Array.isArray(options.headers)) {
    if (options.headers) {
      var keys = Object.keys(options.headers);
      for (var i = 0, l = keys.length; i < l; i++) {
        var key = keys[i];
        self.setHeader(key, options.headers[key]);
      }
    }
    if (host && !this.getHeader('host') && setHost) {
      var hostHeader = host;
      if (port && +port !== defaultPort) {
        hostHeader += ':' + port;
      }
      this.setHeader('Host', hostHeader);
    }
  }

  if (options.auth && !this.getHeader('Authorization')) {
    //basic auth
    this.setHeader('Authorization', 'Basic ' +
                   new Buffer(options.auth).toString('base64'));
  }

  if (method === 'GET' ||
      method === 'HEAD' ||
      method === 'DELETE' ||
      method === 'OPTIONS' ||
      method === 'CONNECT') {
    self.useChunkedEncodingByDefault = false;
  } else {
    self.useChunkedEncodingByDefault = true;
  }

  if (Array.isArray(options.headers)) {
    self._storeHeader(self.method + ' ' + self.path + ' HTTP/1.1\r\n',
                      options.headers);
  } else if (self.getHeader('expect')) {
    self._storeHeader(self.method + ' ' + self.path + ' HTTP/1.1\r\n',
                      self._renderHeaders());
  }

  if (self.socketPath) {
    self._last = true;
    self.shouldKeepAlive = false;
    var conn = self.agent.createConnection({ path: self.socketPath });
    self.onSocket(conn);
  } else if (self.agent) {
    // If there is an agent we should default to Connection:keep-alive,
    // but only if the Agent will actually reuse the connection!
    // If it's not a keepAlive agent, and the maxSockets==Infinity, then
    // there's never a case where this socket will actually be reused
    if (!self.agent.keepAlive && !Number.isFinite(self.agent.maxSockets)) {
      self._last = true;
      self.shouldKeepAlive = false;
    } else {
      self._last = false;
      self.shouldKeepAlive = true;
    }
- NOTE 3:
- This is a new entry point for wrapping. Now we have full access to options so we can find `port` correctly.
- Also this prevent us from handling socketPath
- Side effects - also prevented handling of requests without agent,
- but it is a very strange behavior. (Look at NOTE 1)
- Can you describe me a situation where we need same requests?
+    self.agent.addRequest(self, options);
  } else {
    // No agent, default to Connection:close.
    self._last = true;
    self.shouldKeepAlive = false;
    if (options.createConnection) {
      var conn = options.createConnection(options);
    } else {
      debug('CLIENT use net.createConnection', options);
      var conn = net.createConnection(options);
    }
    self.onSocket(conn);
  }

  self._deferToConnect(null, null, function() {
    self._flush();
    self = null;
  });
}

@jkrems , about your gist example.
+ agent: new http.Agent({
+        // -1 simulates an exhausted connection pool
+        maxSockets: -1
+      })

There you target me to situation when socket will be never initialised.
I think that current realisation (where we send requestWillBeSent after socket initialisation) is correct, otherwise we can't say what request really will be sent =)
All other cases from your gist are handled in new commits.
@bajtos , I fixed tests and squashed all changes to three commits:

implementation
backported changes
tests

Please review squash! changes. There I fixed a completely missed responseFailure and checked behavior changing when we listen on error and response events.

Sorry. I need to fix tests for 0.10.* but anyway it's ready to review.

@3y3 I took a quick look and did not find any obvious issues. Feel free to merge.

@3y3 The reason I included that as a test case is that it catches one of the nastier things to debug when working with a lot of service calls - resource limits + parallelization. E.g.:

Using maxSockets to control the maximum number of concurrent sockets (blocked resources) your app will open against some upstream service ("being a good SOA neighbor" etc.)
Combined with strict timeouts ("fail fast over hang long")
Combined with parallel requests ("optimize the critical path")

Those three combined lead to situation where apps can sometimes start to make a request (from an app's perspective: the request was fired) but then before they even have a chance to acquire a socket, they time out and are aborted (are returning a ETIMEDOUT error from an app's perspective). Back when bugger's network tab was still working, these were the exact kinds of problems I used it for. Successful requests are relatively boring. ;)

Successful requests are relatively boring

Yes! :smile: , that's why I prefer to add requestFailure handling before merging.
So, now when we handle request error we will see in network tab
(failure)
ETIMEDOUT

or
(failure)
(unhandled) ETIMEDOUT

In other words all time when request was aborted or rejected we will handle it.
But there are two situations which we can't handle:

User listen on response event but don't read the data.
Socket is newer created for request (crazy maxSockets = -1). If I understand right this is impossible situation? (If maxSockets > 0 then socket can be created from long time and we will see the problem in timing tab)

So, if I understand the problem you described will be handled in current implementation, or I missed something?

@3y3 The maxSockets: -1 simulates a real condition. The -1 just makes sure it happens on the very first request and you don't need 10 others to reproduce. Here's an example using a normal value for maxSockets that shows the same effect: https://gist.github.com/jkrems/605a63f4ac068f42de30#file-realistic-js
Output of the script:
> node req-test.js
Got socket for "/a"
Got socket for "/b"
Got socket for "/c"
Got socket for "/d"
Got socket for "/e"
Got socket for "/f"
Got socket for "/g"
Got socket for "/h"
Got socket for "/i"
Got socket for "/j"
[ 200,
  200,
  200,
  200,
  200,
  'ETIMEDOUT: /f',
  'ETIMEDOUT: /g',
  'ETIMEDOUT: /h',
  'ETIMEDOUT: /i',
  'ETIMEDOUT: /j',
  'ETIMEDOUT: /k',
  'ETIMEDOUT: /l',
  'ETIMEDOUT: /m',
  'ETIMEDOUT: /n',
  'ETIMEDOUT: /o' ]

As you can see it only fires the socket event for the first couple of requests (up to j), the remaining 5 never reach the listener.

@jkrems , the output for your example (throw err; changed to console.log(err);):

Is this result acceptable, or I need fix something here?

Merged. If there exists any bugs welcome with new prs.


chore(release): v0.10.1

Version bump in package.json for release v0.10.1

:tada: This PR is included in version 0.11.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[core] Update possible reasons for commit conflicts

Purpose
We recently found that, if data is written into expired partitions, commit conflicts may occur.
It is not easy to completely work around this scenario, so currently we prefer users to filter out expired data by themselves. This PR updates possible reasons for commit conflicts to remind the users.
Tests
No tests.
API and Format
No API changes.
Documentation
No new features.

Also related to #3340.

Fixed in https://github.com/apache/paimon/pull/3945


OC-26.1: Network Time Protocol (NTP)

Removing deviation

Pull Request Functional Test Report for #1810 / 43980eb0edfc74397cafd588ce854d52bcfedf4a
Virtual Devices

Device
Test
Test Documentation
Job

Arista cEOS

OC-26.1: Network Time Protocol (NTP)

Cisco 8000E

OC-26.1: Network Time Protocol (NTP)

Cisco XRd

OC-26.1: Network Time Protocol (NTP)

Juniper cPTX

OC-26.1: Network Time Protocol (NTP)

Nokia SR Linux

OC-26.1: Network Time Protocol (NTP)

Openconfig Lemming

OC-26.1: Network Time Protocol (NTP)

Help

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

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

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
1341

Relevant Lines:
2814

💛  - Coveralls


GEODE-7157: fix compile error causing reverted merge of GEODE-7157

PoolImplTest failed to compile. It compiles and the test passes now.
Original (reverted) PR: https://github.com/apache/geode/pull/4204
Revert PR: https://github.com/apache/geode/pull/4283
For all changes:

[x] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message?

[x] Has your PR been rebased against the latest commit within the target branch (typically develop)?

[ ] Is your initial contribution a single, squashed commit?

[x] Does gradlew build run cleanly?

[x] Have you written or updated unit tests to verify your changes?

[ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?

Note:
Please ensure that once the PR is submitted, check Concourse for build issues and
submit an update to your PR as soon as possible. If you need help, please send an
email to<EMAIL_ADDRESS>

@albertogpz I have cherry-picked your commits and I think I've got everything fixed here. Please review.

dang it! LocatorLauncherStatusTest is failing. I reproduced it on my laptop.

ok @jinmeiliao helped me fix the failing LocatorLauncherStatusTest 🤞


zAppBuild/build-conf/README.md: Strange characters in the file

This can lead into a clone issue.
See capture:

Thanks for reporting the issue, @jbyibm. It should now be fixed.

Closed per #124


Specify the hybrid cipher suite for a Measurement in MeasurementSpec.

This is intended to be merged into main after #16 has been merged.


[SPARK-45221][PYTHON][DOCS] Refine docstring of DataFrameReader.parquet

What changes were proposed in this pull request?

This PR refines the docstring of DataFrameReader.parquet by adding more examples.
Why are the changes needed?

To improve PySpark documentation
Does this PR introduce any user-facing change?

No
How was this patch tested?

doctest
Was this patch authored or co-authored using generative AI tooling?

No

The test failure is unrelated. cc @zhengruifeng @HyukjinKwon

Merged to master.

Thanks @HyukjinKwon!


fixed scope of 'this' variable & added parameter validation

We need more parameter validation, but the this fix is essential... :)

LGTM


fix typo that is semantically important

tag => PullPolicy is:
use "latest" => "Always"
use nothing => "Always"
use any but "latest" => "IfNotPresent"
and if it is so - this string should be corrected

CLA signature to be fully registered; after that, please reply here with a new comment and we'll verify
Registered. Replying. Please verify.

/check-cla

/check-cla
If this doesn't work, make sure that the email address that represents you as a CLA signatory matches your committer email address and your email address as known to GitHub.

/check-cla

It makes sense. 😊
/lgtm

/assign @sftim

So what can I do for this request to become approved?

/approve


Client Certificate

First time setting up the app and when I select the "client certificate", the tab just closes and I am unable to setup the credentials for gmail.

I doubt Gmail supports client certificates.
Duplicate of #4126

I doubt Gmail supports client certificates.
Duplicate of #4126


Fix semantic issues in schemas

Fixes #22
As mentioned in the issue: This PR does not introduce any breaking changes. It only updates some errors in schemas, improving examples and fixes automatic code generation.

Ready.
I'm requesting review from @kopfsachen-dev/frontend, as there is an important change on the MotivatorResult schema. In the current spec, we're allowing Values for Motivator Inputs of theoretically infinite depth. Among many other issues, this causes us serious trouble with automatic code- and documentation-generation. Therefore, we decided to only allow a string as InputValue, that MUST BE a valid JSON string and will be parsed by the service.
This version of the spec was developed Saturday night and is merged since Monday evening, so I don't think that any team already implemented the motivator service on the basis of a mocked API. However, if that should be the case, please give me feedback on this by today, so we can keep our promise and implement a compatibility layer.


Module build failed Error in compile time

Command
other
Is this a regression?

[X] Yes, this behavior used to work in the previous version

The previous version in which this bug was not present was
No response
Description
Hii,
I am getting this error while we connecting web-sdk into our angular project

please help me out to solve this error.
Thank you
Minimal Reproduction
NA
Exception or Error
No response
Your Environment
Angular CLI: 10.0.8
Node: 16.15.0
OS: win32 x64

Angular: 10.1.6

Anything else relevant?
No response

Thanks for reporting this issue. However, you didn't provide sufficient information for us to understand and reproduce the problem. Please check out our submission guidelines to understand why we can't act on issues that are lacking important information.
If the problem persists, please file a new issue and ensure you provide all of the required information when filling out the issue template.


[Snyk] Upgrade styled-components from 5.3.5 to 5.3.6

This PR was automatically created by Snyk using the credentials of a real user.Snyk has created this PR to upgrade styled-components from 5.3.5 to 5.3.6.

:information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.

The recommended version is 1 version ahead of your current version.
The recommended version was released a month ago, on 2022-09-27.

Release notes

Package name: styled-components

5.3.6 - 2022-09-27What's Changed

Fix statement on Ukraine by @ Fer0x in #3724
Fix/nonce in ssr by @ samimakicc in #3755

Deprecations

$as and $forwardedAs will be removed in the next major version, use the unprefixed props instead

New Contributors

@ samimakicc made their first contribution in #3755

Full Changelog: v5.3.5...v5.3.6

5.3.5 - 2022-03-24Add statement of solidarity against the war on Ukraine 🇺🇦

    from styled-components GitHub release notes

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information:
🧐 View latest project report
🛠 Adjust upgrade PR settings
🔕 Ignore this dependency or unsubscribe from future upgrade PRs

:green_heart: Build Succeeded

the below badges are clickable and redirect to their specific view in the CI or DOCS

Expand to view the summary

Build stats

Start Time: 2022-10-26T02:03:29.294+0000

Duration: 10 min 49 sec

:robot: GitHub comments
Expand to view the GitHub comments

To re-run your PR in the CI, just comment with:

/test : Re-trigger the build.

/test all : Re-trigger the build for all the stages.

resolved by #311


create openjdk11-sbt

LinkPreview uses this image to test and build.

unit test
build

@cw-hagiwara
Create a docker repository and ask the CI to set the read/write permissions.

@imahiro-t
If you want to automatically update to the latest version, please add the variant.mod and variant.lock files.

@cw-hagiwara
Create a docker repository and ask the CI to set the read/write permissions.

リポジトリを public で作成 & permission 設定しました
https://hub.docker.com/repository/docker/chatwork/openjdk11-sbt/general

@cw-ozaki

If you want to automatically update to the latest version, please add the variant.mod and variant.lock files.

This image will not be updated so frequently. So I will omit the implementation of variant/mod.


Add elemental prefixes

Thanks for the PR!
I just added some commits to chanmembers. I think I'd rather handle it this way. I've been meaning to add that note to PROTECTED for a while now, and I think this way prevents unnecessary duplication.
Thoughts @dequis ?

@DanielOaks How about explicit pairs of [mode, prefix]?
Like
- ['a', '&']
- ['a', '!']

and
- ['q', '~']
- ['y', '~']

I think it's better to make this explicit instead of implying that all possible combinations of prefixes and modes may exist.

Hmm, I think that could make sense on the YAML side. Just need to make it actually display nicely on the site.
Thinking possibly something like this, with all the modes listed in the same row as the name, just on new lines (blame Github markdown for them being in separate rows).

Name
Mode

PROTECTED
(a)&

(a)!

OWNER
(q)~

(y)~

ie, similar to how they're displayed in the PREFIX token on ISUPPORT.

:+1:

We'll move that to #6, and I'll close this PR for now.
Definitely feel free to open up another PR with any other custom numerics/etc Elemental uses. Always looking for more info. Thanks again for opening it!


Add API Version from Settings in Authorization file

It took me a little time to figure out why my calls were being denied. Turns out the API is hardcoded to version 1.0 in the Authorization file. This should instead pull from the Settings file.

Also need to update the API version in Settings.php to 1.6

@matt40k Yup. I changed it in mine, but would probably be good to change it in the example repo here... after all they do link to this from the Azure website. I would probably also recommend that they add the URL somewhere global too. Having "windows.net" everywhere is redundant. Maybe I'll write an Azure library for PHP thats a bit cleaner and release on Github.

This sample has been archived.


Update licensing-groups-resolve-problems.md

Category

[X] Content fix

What's in this Pull Request?

Removed the duplicated sections https://github.com/MicrosoftDocs/azure-docs/issues/78020

@PrasadKasireddy : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#sign-off

@JamesTran-MSFT: I'm sorry - only the author of this article, @curtand, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.

@PrasadKasireddy
Thank you for your PR! However, after looking into these two paragraphs, they're referencing two separate topics (Groups/Users).

Since these paragraphs aren't duplicates, I'll go ahead and close this out.
Thank you for your time and patience throughout this issue.