Draw arrow at end of edge for target

Now that edges are svg path elements, add an arrowhead or some sort of indicator at the target end, to make the direction obvious.

An edge that has width beyond the noticeable line itself, may alternatively point at the direction it is meant to show, by just narrowing down towards that side of it. This is sort of the trick of dropping a component (the arrow-head) for simplicity.
Chord diagrams sometimes present such edges (which in the case of chord diagrams of that kind, only represent a ratio, not directionality, but they give an idea of how edges of varying width look like).

Intuitively in the domain of code visualization, inheritance might be more distinguishable from e.g. a call relationship, if it looks more like a fat chord than just a different color of arrow. The "widening towards" metaphor, sort of.


Make Model.eval_results more robust

In it's current form the codebase only relies on eval.yaml to get eval_results; this PR adds support to rely on. regex search for filenames containing eval/validation in them in case normal pathway fails
Also fixes a small typo in tests
Adds an extra test for eval results

Before we jump the gun, I would to understand why is there a eval_results.json file in the first place.
The source doc (https://docs.google.com/document/d/1kyuZ8EhF8L6CEnpCQ_zhrT4cu-PHwPJX7fJXHcM0dL0/edit#heading=h.gxfi15nnqdl6) as of today does not mention it, but the older version stated that the name for an evaluation run on models should save its results to eval.json. Before we land this, I will talk to Danny and Mark about the expected naming convention.

@rahul-tuli where does the eval_results.json file come from?

@rahul-tuli where does the eval_results.json file come from?

It comes from the artifacts downloaded using the failing stub

This Pr is not needed anymore


How to build data.json from pathes?

Hello,
How to build with Node.js or Vanilla jsdata.json acceptable by flame-graph from paths and sizes arrays like
[ '/path/to/file1', '/path/to/some/dir',  '/path/to/some/other/path/file2' ..... ]
[ 123, 456, 678, ..... ]

Let's assume I got file paths and sizes like
[  /path/to/file1, /path/to/file2, ..., /pathX/fileN ]
[ 100, 100, 100 ]

and I need to create following nested data.json object based on them:
    {
      "name": "/",
      "value": 300,
      "children": [
        {
           "name": "/pathX",
           "value": 100,
           "children": [
           {
             "name": "/pathX/fileN",
             "value": 100
           }
        },
        {
          "name": "/path",
          "value": 200,
          "children": [
            {
              "name": "/path/to",
              "value": 200,
              "children": [
                {
                  "name": "/path/to/file1",
                  "value": 100
                },

                {
                  "name": "/path/to/file2",
                  "value": 100
                }
              ]
            }
          ]
        }
      ]
    }

Thanks!

What profiler generates this file format? Generally for Node.js, I use perf and a small CLI tool I've created (burn) to convert the output to a JSON hierarchical structure that can be parsed by the D3.js plugin.

Am getting pathes and sizes from native node.js fs.readdir, fs.stat,  path.join

So it's a custom profile format. You probably need to write your own converter, similar to burn.

Already did. Thanks. Closing this for now.


speed up test and static check

Codecov Report

Merging #45 (114c9be) into main (99e9316) will decrease coverage by 0.32%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main      #45      +/-   ##
==========================================
- Coverage   86.82%   86.50%   -0.33%
==========================================
  Files          34       35       +1
  Lines        3643     3645       +2
==========================================
- Hits         3163     3153      -10
- Misses        480      492      +12

Impacted Files
Coverage Δ

megfile/utils/__init__.py
73.07% <0.00%> (-5.13%)
:arrow_down:

megfile/lib/s3_buffered_writer.py
96.82% <0.00%> (-1.59%)
:arrow_down:

megfile/lib/fnmatch.py
98.71% <0.00%> (-1.29%)
:arrow_down:

megfile/lib/s3_prefetch_reader.py
86.77% <0.00%> (-0.44%)
:arrow_down:

megfile/s3.py
92.51% <0.00%> (-0.25%)
:arrow_down:

megfile/lib/glob.py
93.82% <0.00%> (-0.08%)
:arrow_down:

megfile/smart.py
87.95% <0.00%> (-0.07%)
:arrow_down:

megfile/lib/combine_reader.py
94.89% <0.00%> (-0.06%)
:arrow_down:

megfile/lib/s3_memory_handler.py
95.34% <0.00%> (ø)

megfile/fs.py
90.95% <0.00%> (+0.45%)
:arrow_up:

... and 1 more

Continue to review full report at Codecov.

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


Multiple sessions per user

This change does two things:

configures the dev proxy to talk directly to the chat server (and removes the PHPSESSID cookie on the way)
when sending a message, ignores the data in the response, and relies on the new behaviour in https://gitlab.com/foodsharing-dev/foodsharing/merge_requests/129 to send all messages over the websocket

Only makes sense in conjunction with https://gitlab.com/foodsharing-dev/foodsharing/merge_requests/129

Codecov Report

Merging #65 into master will decrease coverage by 0.08%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master      #65      +/-   ##
==========================================
- Coverage   81.81%   81.73%   -0.09%
==========================================
  Files          14       14
  Lines         220      219       -1
  Branches        6        6
==========================================
- Hits          180      179       -1
  Misses         36       36
  Partials        4        4

Impacted Files
Coverage Δ

src/services/chat.js
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Disabling of add button on empty input field of Add Group Members.

Fixes #17 .
Add Button disabled in starting.

Active when Form is filled.

Pull Request Test Coverage Report for Build 390974881

0 of 9 (0.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.09%) to 53.127%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

lib/ui/views/groups/group_details_view.dart
0
9
0.0%

Totals

Change from base Build 377402435:
-0.09%

Covered Lines:
2124

Relevant Lines:
3998

💛  - Coveralls

I have tested these changes on my Android device, there are few things we need to fix -

"ADD" button state only gets enabled if we de-focus (close the keyboard) the form whereas it should be changed without even needing to de-focus or press back button.
"ADD" button should also get disabled if I type and again make the field empty.

@manjotsidhu can you suggest me some good approach to resolve this. I tried it using many approaches like using TextEditingController and FocusNode but I couldn't resolve it☹

I have tested these changes on my Android device, there are few things we need to fix -

"ADD" button state only gets enabled if we de-focus (close the keyboard) the form whereas it should be changed without even needing to de-focus or press back button.
"ADD" button should also get disabled if I type and again make the field empty.

@manjotsidhu can you suggest me some good approach to resolve this? I tried it using many approaches like using TextEditingController and FocusNode but I couldn't resolve it☹

TextEditingController is not fixing 1st issue ? I think OnChanged should be called as soon as it the text is changed but looks it doesn't ?

I have tested these changes on my Android device, there are few things we need to fix -

"ADD" button state only gets enabled if we de-focus (close the keyboard) the form whereas it should be changed without even needing to de-focus or press back button.
"ADD" button should also get disabled if I type and again make the field empty.

@manjotsidhu can you suggest me some good approach to resolve this? I tried it using many approaches like using TextEditingController and FocusNode but I couldn't resolve it☹

TextEditingController is not fixing 1st issue ? I think OnChanged should be called as soon as it the text is changed but looks it doesn't ?

OnChanged is working fine. Even it is also triggering the state changes for ADD button, but those changed states are reflecting only on keyboard defocus.
TextEditingController is also working in same way...by the way, issue 2 is solved by it. Issue 1 is not getting solved by any of these approaches.

I have tested these changes on my Android device, there are few things we need to fix -

"ADD" button state only gets enabled if we de-focus (close the keyboard) the form whereas it should be changed without even needing to de-focus or press back button.
"ADD" button should also get disabled if I type and again make the field empty.

@manjotsidhu can you suggest me some good approach to resolve this? I tried it using many approaches like using TextEditingController and FocusNode but I couldn't resolve it☹

TextEditingController is not fixing 1st issue ? I think OnChanged should be called as soon as it the text is changed but looks it doesn't ?

OnChanged is working fine. Even it is also triggering the state changes for ADD button, but those changed states are reflecting only on keyboard defocus.
TextEditingController is also working in same way...by the way, issue 2 is solved by it. Issue 1 is not getting solved by any of these approaches.

Alright so the reason being not working when defocused is because the state of form is already being focused by the user, so you need to make only ADD button a Stateful widget and updating that only. This should solve the problem

@manjotsidhu Review this please. I think now it is solved as u suggested.

@Nitish145 Please review further.

Here is a better way to set state with ternary operator :
setState(() {
     dynamicAddFunction = isActive ? widget.addFunction : null;
});

Here is a better way to set state with ternary operator :
setState(() {
     dynamicAddFunction = isActive ? widget.addFunction : null;
});

Ya sure. Even I was doing this only in next commit 😅

@Nitish145 @manjotsidhu Please review 👀

Please remove pubspec.lock file from your changes.

@Nitish145 @manjotsidhu Done everything as discussed in above conversation. I think now it is as expected 😃

@cyber-venom003 you don't need to delete the pubspec.lock but to remove your changes only.

@Nitish145 can you please merge this PR as it is reviewed by @manjotsidhu . I've to push commits for #33 😅

@cyber-venom003 you can raise the PR for that issue. Will review this by the EOD. Sorry for the delay, a bit busy with something.

@Nitish145 Do I need to commit some more changes in this PR??

No, but let's wait because using a separate widget for only a single button can be extended for other buttons too.
Keep up the good work!

No, but let's wait because using a separate widget for only a single button can be extended for other buttons too.
Keep up the good work!

So should I open up an issue for applying this approach on all other buttons??

@cyber-venom003 Can you do the same for Add Collaborators Dialog ?

Sure @manjotsidhu

@manjotsidhu Review it, LGTM

@Nitish145

@Nitish145 Check for the requested changes in latest commit 😃

@Nitish145 @manjotsidhu Please check for requested changes in latest commits.

@cyber-venom003 please remove your changes from pubspec.lock

@Nitish145

@Nitish145

@Nitish145 Can you review this and merge ?

@Nitish145 Can you review this and merge ?


error: Using TZID without Luxon available is unsupported. Returned times are in UTC, not the requested time zone

https://github.com/ioBroker/ioBroker.js-controller/issues/1528
As stated by the js-controller devs and git I like to address the issue her:
2021-11-21 12:01:07.553  - info: ical.0 (21640) processing URL: G https://calendar.google.com/calendar/ical/..... 2021-11-21 12:01:08.395  - info: ical.0 (21640) processing URL: W https://calendar.google.com/calendar/ical/..... 2021-11-21 12:01:14.505  - info: ical.0 (21640) Terminated (NO_ERROR): Without reason 2021-11-21 12:01:15.293  - error: host.iobrokerQNAP Caught by controller[0]: Using TZID without Luxon available is unsupported. Returned times are in UTC, not the requested time zone 2021-11-21 12:01:15.293  - error: host.iobrokerQNAP Caught by controller[1]: Using TZID without Luxon available is unsupported. Returned times are in UTC, not the requested time zone 2021-11-21 12:01:15.293  - error: host.iobrokerQNAP Caught by controller[2]: Using TZID without Luxon available is unsupported. Returned times are in UTC, not the requested time zone 2021-11-21 12:01:15.294  - error: host.iobrokerQNAP Caught by controller[3]: Using TZID without Luxon available is unsupported. Returned times are in UTC, not the requested time zone 2021-11-21 12:01:15.294  - error: host.iobrokerQNAP Caught by controller[4]: Using TZID without Luxon available is unsupported. Returned times are in UTC, not the requested time zone

same for me

me to

try latest 1.11.5

ist nicht besser geworden mit 1.11.5 - massig von den einträgen Using TZID without Luxon available is unsupported. Returned times are in UTC, not the requested time zone
ausschnitt von syslog:

`Dec 10 09:11:39 iobroker59 bash[43596]: Using TZID without Luxon available is unsupported. Returned times are in UTC, not the requested time zone
Dec 10 09:11:39 iobroker59 bash[43596]: Using TZID without Luxon available is unsupported. Returned times are in UTC, not the requested time zone
Dec 10 09:11:39 iobroker59 bash[43596]: Using TZID without Luxon available is unsupported. Returned times are in UTC, not the requested time zone
Dec 10 09:11:39 iobroker59 bash[43596]: Using TZID without Luxon available is unsupported. Returned times are in UTC, not the requested time zone
Dec 10 09:11:39 iobroker59 bash[43596]: Using TZID without Luxon available is unsupported. Returned times are in UTC, not the requested time zone
Dec 10 09:11:39 iobroker59 bash[43596]: Using TZID without Luxon available is unsupported. Returned times are in UTC, not the requested time zone
Dec 10 09:11:39 iobroker59 bash[43596]: Using TZID without Luxon available is unsupported. Returned times are in UTC, not the requested time zone
Dec 10 09:12:02 iobroker59 bash[43652]: (Use node --trace-warnings ... to show where the warning was created)
Dec 10 09:12:02 iobroker59 bash[43652]: (node:43652) Warning: Accessing non-existent property 'findOne' of module exports inside circular dependency
Dec 10 09:12:02 iobroker59 bash[43652]: (node:43652) Warning: Accessing non-existent property 'remove' of module exports inside circular dependency
Dec 10 09:12:02 iobroker59 bash[43652]: (node:43652) Warning: Accessing non-existent property 'updateOne' of module exports inside circular dependency`

1.11.5 was the version I reported the error with.

As far as I understand it seems to originate out of the usage from rrule that is being used by ical. Here in this article they got rid of these messages using an earlier version. (~ hotfix :/ ) So it seems like there is another way to fix it as the usage must be adapted to what the error message states.
Hopefully one of the devs can pick it up but on the other hand it's just a bunch of warnings yet and still everything is functional.
Have a nice day. :)

This should be fixed, or?!

Nope...
Ingo Fischer @.***> schrieb am Sa., 19. März 2022,
14:17:

This should be fixed, or?!
—
Reply to this email directly, view it on GitHub
https://github.com/iobroker-community-adapters/ioBroker.ical/issues/325#issuecomment-1073008762,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADR3WLXABABTX3TDU756EGLVAXHX3ANCNFSM5IPDHBTA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you authored the thread.Message ID:
@.***
com>

Yes I also found the reason I think. Can you pklease try GitHub version?

Yes I also found the reason I think. Can you pklease try GitHub version?

Thank you. It seems to be gone. Updated against GIT - no messages anymore today.

seems to work now - installed new adapter version - can't see any of this message

Same error when using Google-Calendar with ical v1.13.1


Ninja Cursor change the background color of the docuemnt

When I turn on Ninja Cursor it makes a weird color highlight when start to type in a document.

Sorry for being late!
But I could not reproduce this. May I ask what theme you are using?


multi-class classification using mxnet.io.NDArrayIter to feed data

Hi, there,
I am trying to do some multi-class classification work on mxnet. Basically, the label of an instance could be (0,1,0,0,1,0). So it may be impossible to convert a (8000,10) label array to (8000,1). Moreover, I am working on my own dataset and the input data is not image. So, I need to use the mxnet.io.NDArrayIter to feed data to models. I tried to feed a (8000,10) label array to mxnet.io.NDArrayIter, but it reported errors when training. Is there any other ways to accomplish this?

see example/multi-task


{cdn} Add location judgment to fix issue 28733

fix https://github.com/Azure/azure-cli/issues/28733

cdn


diagnostics and completions for using declarations

[ ] display diagnostics for various error scenarios for using declaration (https://github.com/Azure/bicep/pull/7566#issuecomment-1188153946)
[ ] view relative path of .bicep files when using keyword is typed


feat(sp): instance columns public API

We need to implement support for instance columns for step circuit
This task tracks exactly the issue of the public API, how exactly the public signals will be provided internally. Consider the following possibilities:
As Halo2
In halo2, public input is provided directly in the prover\verifier. As I understand it, this is because it can be provided externally (e.g. in the case of client/server logic). However, the private input (circuit-struct content) is usually also modified by the same external sources, which already makes the API not so successful.
Thus such an API could look like this: we add the possibility to IVC::new & IVC::fold_step to provide pub input and process it at IVC level.
But it should be said that in this case, we would need to update not only the circuit, but also the public input between steps, and the logic of this update should lie somewhere so that it is not an artifact of the circuit startup code.
As step-circuit part
In this case we just have to add an additional method to trait StepCircuit that will generate the public input. This is more logical, given that we still have to update the step-circuit between fold-step and the public input is just part of this update
The main downside is it's possibly counter-intuitive for halo2 developers
As an external entity
There is also an option to introduce a higher-order abstraction to handle this logic separately from the step-circuit, but this is not much different from the previous option. Except that there may be less frustration in familiarizing with the concept of handling of public input by circuit. If we can find a good name, it will be easier for developers to understand than if {step-}circuit was doing it

I'm in favor of the second option


Download full copy of account information

Hi, thanks for this library. I just wonder about that is it possible to download full account information which specified here: https://help.instagram.com/181231772500920
If it is possible than how can I do that? Thanks.

Methods not available here. Do it in the app


amdgpu fails to load on ppc64 systems

On POWER9 systems with Vega installed, amdgpu from the ROCm kernel fails to load:
[  924.138049] [drm] amdgpu kernel modesetting enabled.
[  924.138882] [drm] amdgpu version: <IP_ADDRESS>
[  924.139639] checking generic (600c280010000 300000) vs hw<PHONE_NUMBER>000 10000000)
[  924.139911] [drm] initializing kernel modesetting (VEGA10 0x1002:0x6860 0x1002:0x6860 0x00).
[  924.141367] [drm] register mmio base: 0x00000000
[  924.142128] [drm] register mmio size: 524288
[  924.142828] [drm] PCI I/O BAR is not found.
[  924.143502] [drm] probing gen 2 caps for device 1022:1471 = 700d03/e
[  924.144529] [drm] probing mlw for device 1022:1471 = 700d03
[  924.145432] [drm] add ip block number 0 <soc15_common>
[  924.146273] [drm] add ip block number 1 <gmc_v9_0>
[  924.147053] [drm] add ip block number 2 <vega10_ih>
[  924.147847] [drm] add ip block number 3 <psp>
[  924.148547] [drm] add ip block number 4 <powerplay>
[  924.149335] [drm] add ip block number 5 <dm>
[  924.150040] [drm] add ip block number 6 <gfx_v9_0>
[  924.150811] [drm] add ip block number 7 <sdma_v4_0>
[  924.151599] [drm] add ip block number 8 <uvd_v7_0>
[  924.152378] [drm] add ip block number 9 <vce_v4_0>
[  924.155432] [drm] UVD(0) is enabled in VM mode
[  924.156161] [drm] UVD(0) ENC is enabled in VM mode
[  924.156940] [drm] VCE enabled in VM mode
[  924.157631] amdgpu 0000:03:00.0: Invalid PCI ROM header signature: expecting 0xaa55, got 0x0000
[  924.159270] [drm:amdgpu_get_bios [amdgpu]] *ERROR* Unable to locate a BIOS ROM
[  924.160423] amdgpu 0000:03:00.0: Fatal error during GPU init
[  924.161357] [drm] amdgpu: finishing device.
[  924.162297] amdgpu: probe of 0000:03:00.0 failed with error -22

https://bugs.freedesktop.org/show_bug.cgi?id=98798 looks like an upstream report of the same general problem.

Moved card to x86 machine, same error.  Suspecting defective card at this point.

@madscientist159 Did you ever have more insights on this? Just now, 10 minutes ago I have a Radeon VEGA Frontier Edition (VEGA10) that worked fine up to now, and was recently (2 months ago) installed in a Talos Blackbird system. Just did a clean shutdown, reboot the system and am confronted with exactly your dmesg output. Of note, the SATA controller in the Blackbird is also misbehaving to such an extend that I can't use SATA disks in this system (hard disks connected keep disconnecting).
This makes me suspect the Blackbird board is maybe not 100% ok and fried my Radeon..


fix typo in parameter to hugo server

Actual parameter has a final 'd'.
Thanks for sharing!
Hope that it helps.
Cheers!
A fellow emacser and hugoer.

Many thanks for your PR!


Foxy support

Do you plan to add Foxy support or Galactic is going to be the first supported ROS 2 distribution?

Galactic is going the be the first (time-wise). If this is fully operational I'm happy to evaluate the effort it will take to backport to foxy.


Add start and stop options to edit command

As mentioned in #309, it's sometimes convenient to edit the start or stop times of a frame without opening an editor, so this PR adds two parameters to the watson edit command:

--start sets the start time for a frame
--stop sets the stop time for a frame

I chose the names "start" and "stop" rather than "from" and "to" since it matches the json shown in in the editor (and the names watson uses with frames internally).
Example usage:
watson edit --start "2019-10-27T14:30:00" --stop "2019-10-27T15:00:00"
watson edit --start "14:30" --stop "15:00"
watson edit --start "14:30"
watson edit -2 --stop "15:00"

I rebuild the docs since the docstring and parameters for edit had changed, and it seems like a few other pending changes to the docs were also included (looks like mainly punctuation), so sorry if that causes any confusion.
TODO
Update: I've updated the PR to use TimeParamType instead which is a bit easier to use, so the comments below are obsolete. I found the stop --at command which already uses this syntax so it's also more consistent to use the same here.
I'd quite like to be able to specify just a time on the command line, since typing the date is a bit of a hassle and is usually not needed since we could use the current date or keep the date the frame has unchanged. However for now I've used the DateParamType, which means we have to specify date and time. Using TimeParamType instead would mostly do what I was hoping as the user could choose either a time only or a time with date. But I'm not sure if the format is the most convenient: TimeParamType won't recognize spaces between the date and time ("2019-10-27 15:00:00"); it needs the letter "T" between them ("2019-10-27T15:00:00"). I had a quick search to see if TimeParamType was used elsewhere but couldn't find any other usages, so I'm not really sure if there's any existing precedent for this. I'd be grateful if anyone has any advice!

Closing this, because I later switched to use a workflow more like #388.


Need to get the content of the container.

Need to get the content of the container, not the actual container. Getting the entire container results in the injected HTML looking like this:

...

Changed it to match what was done in the Laravel 4 version.

Thanks @bram1028 for the PR. This basically rolls back the changes introduced in PR #2.
After looking through documentation and ultimately referencing http://pjax.herokuapp.com/ which is the pjax example page, I realize that PR #2 actually was incorrect and that this was the correct way to handle it all along. Thanks!


How can I get the regressor matrix of a robot?

Hi, it is a great work!
But I am trying to get the regressor matrix of a robot and I use: rbt.Hb_code and rbt.H_code. The resulting output is ([(x0, \ddot{q}_1),   (x1, 50*\ddot{q}_1),   (x2, -\dot{q}_2),   (x3, cos(q2)),   (x4, \dot{q}_1),   (x5, x3*x4),   (x6, x2*x5),   (x7, sin(q2)),   (x8, -x3),   (x9, x4*x7),   (x10, x2*x9),   (x11, x0*x3 + x10),   (x12, -x2),   (x13, x12*x5),   (x14, x0*x7),   (x15, x13 + x14),   (x16, x10 + x11),   (x17, -x7),   (x18, x16*x17),   (x19, -\ddot{q}_2),   (x20, x5*x9),   (x21, x19 + x20),   (x22, x2**2),...
I am not quite understand the meaning of these x, they seem not related to the dynamic parameters. So how can I get the right regressor matrix of a robot?

The xs are intermediate variables, as H_code is "code" that can be used compute the numeric regressor matrix for numeric inputs. See an example of generating a python function from such code at https://github.com/cdsousa/SymPyBotics/blob/master/sympybotics/tests/test_results.py#L123 and lines below, and the use of the function at https://github.com/cdsousa/SymPyBotics/blob/master/sympybotics/tests/test_results.py#L156 .  ('C' functions are also available, see https://github.com/cdsousa/SymPyBotics/blob/master/README.md)
This is done this way, rather than using a symbolic matrix, since such matrices are gigantic for medium/large sized robots.

The xs are intermediate variables, as H_code is "code" that can be used compute the numeric regressor matrix for numeric inputs. See an example of generating a python function from such code at https://github.com/cdsousa/SymPyBotics/blob/master/sympybotics/tests/test_results.py#L123 and lines below, and the use of the function at https://github.com/cdsousa/SymPyBotics/blob/master/sympybotics/tests/test_results.py#L156 . ('C' functions are also available, see https://github.com/cdsousa/SymPyBotics/blob/master/README.md)
This is done this way, rather than using a symbolic matrix, since such matrices are gigantic for medium/large sized robots.
is this equation right?   Torque = Hb_code * rbt.dyn.baseparms


Add requirements.txt for Python scripts

PR #93 noted "the scripts require Python 3.9+ because of newer features of pyyaml that are used. That's why the build-data-yaml runner explicitly invokes python3.9." Rather than explicitly using Python 3.9 in the scripts, a requirements.txt file should be provided that specifies exactly what version of pyyaml should be installed. That way people that don't have Python 3.9 installed (e.g. I have 3.10) can use the scripts verbatim and are guaranteed to have the correct version of pyyaml installed.
You can create a requirements.txt file as follows:
pip freeze > requirements.txt

(If you're using system level libraries then you'll want to grep for pyyaml.) Then people that want to use the scripts just have to run:
pip install -r requirements.txt

Good stuff. The pyyaml version I've got installed with python39-pyyaml is 5.4.1 so as I understand it, this should do the trick:
$ cat requirements.txt
pyyaml >= 5.4.1

If so, I'll add it.

(And switch to python3 in the runner.)

The major version should be capped so we don't get bit by breaking changes in  a major release:
pyyaml >= 5.4.1, < 6

Otherwise everything sounds good!

Done, for this case. I'll be sure to update requirements.txt for any future picky versions.


CB-21215 Freeipa upscale flow can get stuck with error handler

In the freeipa upscale flow, the failure event returned from the check new instances health state was different than expected from the flow config. Once the failure event was sent, the flow remained in PENDING state. The current PR fixes this error. Also a missing converter for another error is added.
See detailed description in the commit message.

Is a rework of PR https://github.com/hortonworks/cloudbreak/pulls/gergopapi2


new lexer request: fasm (assembler)

(Original issue 662 created by droiddev on 2011-05-02T03:55:47.872629+00:00)
Please, add FASM ( http://www.flatassembler.net/index.php ) syntax/highlight support

(Original comment by droiddev on 2011-07-11T14:25:52.032086+00:00)
here is snippet example http://pygments.org/demo/19769/?style=native
FASM syntax is similar to NASM:
here is perl-scripts converting FASM to NASM and NASM to FASM
http://rudy.mif.pg.gda.pl/~bogdro/inne/nasm2fasm.txt
http://rudy.mif.pg.gda.pl/~bogdro/inne/fasm2nasm.txt

I'm closing all requests for lexers/formatters without a patch/PR.


:sparkles: Decompile java archives when given

When the specified location for a java provider is to a jar, war, or ear we will unzip it and decompile any .class files found before running the analysis.
Fixes #138

If you want to play with this you will also need konveyor/java-analyzer-bundle#48

This should not be merged until https://github.com/konveyor/java-analyzer-bundle/pull/48 is merged.


Convert domain configuration to an array format.

Right now there's hardcoded "staging" and "production" configuration even though really there's no difference other than a name.  I think this playbook will have more utility if one is able to configure each domain as its own object in an array.  That way users can have a single vars.yml for a server that manages all the domains on that server (if they wanted).

Need to do the following yet:

[ ] test running a full configuration against an existing server to setup a new domain.  Verify that none of the existing domains are broken or have errors in the play.
[ ] Update the README.md


Specify VPC for Terraform to configure

When configuring ThingsBoard to run on EKS via Terraform, I want to specify a VPC ID. I've already got a VPC set up that I want ThingsBoard to reside in. Is there a way to specify that through the config? I see that there's mentions of a vpc_id field. Can I specify that in terraform.tfvars?

I think I figured™ it out. In vpc.tf you can modify the azs field like so.
azs                  = [data.aws_availability_zones.available.names[0]]

Problem with that is now I get this error:
Error: error creating EKS Cluster (k8s-vista-test): InvalidParameterException: Subnets specified must be in at least two different AZs
{
  RespMetadata: {
    StatusCode: 400,
    RequestID: "dbe9a7b4-f30d-429d-981b-a2a7564c5e8a"
  },
  ClusterName: "k8s-vista-test",
  Message_: "Subnets specified must be in at least two different AZs"
}

Is it even possible to use only one AZ with an EKS cluster?

This is super lame.
When you create an Amazon EKS cluster, you specify the VPC subnets for your cluster to use. Amazon EKS requires subnets in at least two Availability Zones. We recommend a VPC with public and private subnets so that Kubernetes can create public load balancers in the public subnets that load balance traffic to pods running on nodes that are in private subnets.

https://docs.aws.amazon.com/eks/latest/userguide/network_reqs.html
Closing :sob:


Remote URL Backend

PR handles downloading remote data accessible from the following protocols:

HTTP
HTTPS
FTP

This looks cool!

I think this is ready for review now

Thanks for the notes @cpcloud!

Hmm...
So things like  the following work:
In [14]: odo(url, pd.DataFrame).head()
Out[14]:
   sepal_length  sepal_width  petal_length  petal_width      species
0           5.1          3.5           1.4          0.2  Iris-setosa
1           4.9          3.0           1.4          0.2  Iris-setosa
2           4.7          3.2           1.3          0.2  Iris-setosa
3           4.6          3.1           1.5          0.2  Iris-setosa
4           5.0          3.6           1.4          0.2  Iris-setosa

Was hoping the convert magic would also work for HDFS:
In [1]: from odo import odo
In [2]: url = "https://raw.githubusercontent.com/ContinuumIO/blaze/master/blaze/examples/data/iris.csv"
In [3]: head_ip = "<IP_ADDRESS>"
In [4]: auth = {'user': 'hdfs','port': '14000'}
In [5]: odo(url, 'hdfs://{}:/tmp/iris/iris.csv'.format(head_ip), **auth)

The above results in the following error:
IOError: [Errno 2] No such file or directory: 'https://raw.githubusercontent.com/ContinuumIO/blaze/master/blaze/examples/data/iris.csv'

It looks like things are being routed through append_local_file_to_hdfs instead of convert_hdfs_file_to_temp_local

In the case of URL(CSV)->Temp(CSV)->HDFS(CSV) what should be done with the CSV post completion ?  In general, should we be cleaning up temp files when created?

Temp files ideally call drop on themselves when garbage collected
https://github.com/ContinuumIO/odo/blob/master/odo/temp.py
On Sun, Apr 12, 2015 at 11:47 AM, Benjamin Zaitlen<EMAIL_ADDRESS>
wrote:

In the case of URL(CSV)->Temp(CSV)->HDFS(CSV) what should be done with the
CSV post completion ? In general, should we be cleaning up temp files when
created?
—
Reply to this email directly or view it on GitHub
https://github.com/ContinuumIO/odo/pull/167#issuecomment-92099826.

Oh great!  Then, I don't think I have much to worry about.  Anything else you'd like to see in this PR?

Looks like there's a travis error

Anything else?

Looks good to me.

@mrocklin ok with this?

@quasiben would like to get this in before pydata dallas ... can you address @mrocklin's comments? thx

My comments are non-blocking.

@quasiben @mrocklin i've got another PR on top of this one that fixes a couple things and addresses all comments

closing in favor of #167


gRPC 1.16.0 Segmentation fault on hello world example running under WSL

What version of gRPC and what language are you using?
gRPC v1.16.0 c++
What operating system (Linux, Windows, …) and version?
Ubuntu 16.04 WSL (also tried the same under Debian/GNU)
What runtime / compiler are you using (e.g. python version or version of gcc)
gcc  6.3.0 (also tried with gcc 7.3.0)
What did you do?
Compiled and installed gRPC 1.16.0 with cmake according to test/distrib/cpp/run_distrib_test_cmake.sh.
Secondly I started the "greeter_server" located in the "test/cpp/helloworld" example

./greeter_server

What did you expect to see?
E1025 10:44:05.609210900    1414 socket_utils_common_posix.cc:198] check for SO_REUSEPORT: {"created":"@1540457045.609141900","description":"OS Error","errno":92,"file":"/home/developer/grpc/src/core/lib/iomgr/socket_utils_common_posix.cc","file_line":175,"os_error":"Protocol not available","syscall":"getsockopt(SO_REUSEPORT)"}
E1025 10:44:05.611697100    1414 server_chttp2.cc:40]
Server listening on <IP_ADDRESS>:50051
Note; Error message is likely related to the SO_REUSEPORT issue under WSL (issue #13517).
What did you see instead?
E1025 10:44:05.609210900    1414 socket_utils_common_posix.cc:198] check for SO_REUSEPORT: {"created":"@1540457045.609141900","description":"OS Error","errno":92,"file":"/home/developer/grpc/src/core/lib/iomgr/socket_utils_common_posix.cc","file_line":175,"os_error":"Protocol not available","syscall":"getsockopt(SO_REUSEPORT)"}
E1025 10:44:05.611697100    1414 server_chttp2.cc:40]        {"created":"@1540457045.611636300","description":"No address added out of total 1 resolved","file":"/home/developer/grpc/src/core/ext/transport/chttp2/server/chttp2_server.cc","file_line":321,"referenced_errors":[{"created":"@1540457045.611627100","description":"Failed to add any wildcard listeners","file":"/home/developer/grpc/src/core/lib/iomgr/tcp_server_posix.cc","file_line":324,"referenced_errors":[{"created":"@1540457045.611546000","description":"Unable to configure socket","fd":5,"file":"/home/developer/grpc/src/core/lib/iomgr/tcp_server_utils_posix_common.cc","file_line":217,"referenced_errors":[{"created":"@1540457045.611533400","description":"OS Error","errno":92,"file":"/home/developer/grpc/src/core/lib/iomgr/socket_utils_common_posix.cc","file_line":299,"os_error":"Protocol not available","syscall":"setsockopt(TCP_USER_TIMEOUT)"}]},{"created":"@1540457045.611625200","description":"Unable to configure socket","fd":5,"file":"/home/developer/grpc/src/core/lib/iomgr/tcp_server_utils_posix_common.cc","file_line":217,"referenced_errors":[{"created":"@1540457045.611615100","description":"OS Error","errno":92,"file":"/home/developer/grpc/src/core/lib/iomgr/socket_utils_common_posix.cc","file_line":299,"os_error":"Protocol not available","syscall":"setsockopt(TCP_USER_TIMEOUT)"}]}]}]}
Server listening on <IP_ADDRESS>:50051
Segmentation fault (core dumped)
Anything else we should know about your project / environment?
The hello world server example was still working in gRPC v1.15.1 on WSL despite the SO_REUSEPORT (issue #13517). Maybe both the WSL server and new socket default time out implementation are related to this issue.
I could not reproduce this issue on a native (non WSL) ubuntu (16.04) machine. There, the hello world example is running perfectly fine.
Disabling the "tcp_user_timeout_enabled" (manually) seems to fix the issue:
src/core/lib/iomgr/socket_utils_common_posix.cc
static bool g_default_client_tcp_user_timeout_enabled = false;
-static bool g_default_server_tcp_user_timeout_enabled = true;
+static bool g_default_server_tcp_user_timeout_enabled = false;

Just did a clean check out of master (e0d9692fa30cf3a7a8410a722693d5d3d68fb0fd) and things seem to work again under WSL.  Some work has been done in  grpc/src/core/lib/iomgr/socket_utils_common_posix.cc, which might have adressed this issue i guess. Unit tests are also all passing on my WSL test bench.

Issue resolved


Text is vertical in details menu of pods, hosts and others.

Describe the bug
Text is vertical on the pod details menu, and various other context menu's. Fairly certain they have the same root cause.
To Reproduce
Steps to reproduce the behavior:

Go to 'Workloads'
Click on 'Pods'
Click on 'any pod'
See vertical text in details menu

Expected behavior
A clear and concise description of what you expected to happen.
The text is horizontal en thus readable.
Screenshots
If applicable, add screenshots to help explain your problem.

Environment (please complete the following information):

Lens Version: Lens: 2024.3.271133-latest
OS: Macos
Installation method: directly from website.

Logs:
When you run the application executable from command line you will see some logging output. Please paste them here:
N/A.

Kubeconfig:
Quite often the problems are caused by malformed kubeconfig which the application tries to load. Please share your kubeconfig, remember to remove any secret and sensitive information.
N/A.

Additional context
pls fix ;-;

Thank you for your feedback. This occurs when the details panel is quite narrow. We have already fixed this issue, and it will be available in one of the upcoming releases.


Operations implemented in python

Simple program that takes input from user and performs basic operations
Description
A comprehensive description about the Pull Request
Reference Issue number #issue_no
issue_no must refer to the issue related to this PR, visit here
Type of change
Choosing one or more options from the following as per the nature of your Pull request.
NOTE: Check boxes using [x]

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Documentation Update

Checklist:

[x] I have named my files and folder, according to this project's guidelines.
[x] My code follows the style guidelines of this project.
[x] My Pull Request has a descriptive title. (not a vague title like Update index.md)
[ ] I have commented on my code, particularly in hard-to-understand areas.
[ ] I have created a helpful and easy to understand README.md, with problem description and my name.
[ ] I have included a requirements.txt file (if external libraries are required.)
[x] My changes do not produce any warnings.
[x] I have starred this repository.
[ ] I have added a working sample/screenshot of the script.
[x] I have checked for trailing spaces in file names and none have them.

@drashtipatel2503 Please refer the issue in description

Ya done

@drashtipatel2503 You have not organized your code files. Please refer to the repository README.md


Flutter refuses to upgrade saying that I don't have "origin" setted to "https://github.com/flutter/flutter.git", but I have it

Steps to Reproduce
I have Flutter running over git-bash. As once in a lifetime I had contributed with a pull request, the repository has 2 remotes:

origin for flutter/flutter
jeffque for my fork

I have not tried in a vanilla environment, so I am still trying to get more info

the Flutter repository is pointing to v1.9.1+hotfix.5
setted 2 different remotes, origin pointing to flutter/flutter and one lexicographically before, say jeffque, pointing arbitrarily to some other repo (let's say my fork jeffque/flutter
try running flutter upgrade in git-bash

Logs
Trying to upgrade:
$ flutter upgrade
Unable to upgrade Flutter: no origin repository configured. Run 'git remote add  origin https://github.com/flutter/flutter' in C:\flutter\flutter

$ flutter doctor -v
[v] Flutter (Channel unknown, v1.9.1+hotfix.5, on Microsoft Windows [versÃ£o 10.0.18362.778], locale pt-BR)
    • Flutter version 1.9.1+hotfix.5 at C:\flutter\flutter
    • Framework revision 1aedbb1835 (7 months ago), 2019-10-17 08:37:27 -0700
    • Engine revision b863200c37
    • Dart version 2.5.0

[!] Android toolchain - develop for Android devices (Android SDK version 29.0.1)
    • Android SDK at C:\android_studio
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-29, build-tools 29.0.1
    • ANDROID_HOME = C:\android_studio
    • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b03)
    ! Some Android licenses not accepted.  To resolve this, run: flutter doctor --android-licenses

[!] Android Studio (version 3.5)
    • Android Studio at C:\Program Files\Android\Android Studio
    X Flutter plugin not installed; this adds Flutter specific functionality.
    X Dart plugin not installed; this adds Dart specific functionality.
    • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b03)

[!] IntelliJ IDEA Community Edition (version 2019.1)
    • IntelliJ at C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2019.1
    X Flutter plugin not installed; this adds Flutter specific functionality.
    X Dart plugin not installed; this adds Dart specific functionality.
    • For information about installing plugins, see
      https://flutter.dev/intellij-setup/#installing-the-plugins

[v] VS Code (version 1.43.0)
    • VS Code at C:\Users\Jefferson Quesado\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.8.1

[v] Connected device (1 available)
    • Android SDK built for x86 • emulator-5554 • android-x86 • Android 8.1.0 (API 27) (emulator)

! Doctor found issues in 3 categories.

My repo  .git/config:
$ cat .git/config
[core]
        repositoryformatversion = 0
        filemode = false
        bare = false
        logallrefupdates = true
        symlinks = false
        ignorecase = true
[remote "origin"]
        url = https://github.com/flutter/flutter.git
        fetch = +refs/heads/*:refs/remotes/origin/*
[remote "jeffque"]
        url = git@github.com:jeffque/flutter.git
        fetch = +refs/heads/*:refs/remotes/jeffque/*

In Discord, user akshat105 gave me some pointers:
The first one was try to add the remote repository origin pointinh correctly. As I had it, trying to blindly add the remote wasn't successfull:
$ git remote add  origin https://github.com/flutter/flutter
fatal: remote origin already exists.

Then I've tried to remove, add, fetch and flutter upgrade, with no success degree in upgrade:
$ git remote remove origin

$ git remote add  origin https://github.com/flutter/flutter

$ git fetch origin
remote: Enumerating objects: 546, done.

[...]

$ flutter upgrade
Unable to upgrade Flutter: no origin repository configured. Run 'git remote add origin https://github.com/flutter/flutter' in C:\flutter\flutter

So, akshat105 passed me this Stack Overflow answer: https://stackoverflow.com/a/59962492/4438007
Following the guides in this post made everything work as intended.
It was not obvious to me if this issue is a duplicate from #14193 , as the thread there is really big and, as I have solved my probkem, I have little interest to see if they are exactly the same. If they are not the same, they are related some way.

flutter --version
Flutter 1.17.0-3.3.pre • channel unknown • unknown source
Framework • revision 0da1ab0922 (3 days ago) • 2020-04-28 11:02:34 -0700
Engine • revision 376ad6a64b
Tools • Dart 2.8.0

I wonder why this bug filtered down to the beta channel.


[KeyVault] [Do Not Merge] Enabling message protection protocol

The changes in this pull request enable the message protection protocol, which is needed to perform key operations against vaults with message protection enabled.
@herveyw PTAL
This pull request is intended for a first pass review and should not be merged at this time.

Codecov Report

Merging #1686 into master will decrease coverage by 0.02%.
The diff coverage is 39.36%.

@@            Coverage Diff             @@
##           master    #1686      +/-   ##
==========================================
- Coverage   55.35%   55.33%   -0.03%
==========================================
  Files        4188     4206      +18
  Lines       99525   100384     +859
==========================================
+ Hits        55093    55547     +454
- Misses      44432    44837     +405

Impacted Files
Coverage Δ

azure-keyvault/azure/keyvault/__init__.py
100% <100%> (ø)
:arrow_up:

...ult/azure/keyvault/custom/http_message_security.py
23.45% <23.45%> (ø)

azure-keyvault/azure/keyvault/custom/internal.py
27.2% <27.2%> (ø)

azure-keyvault/azure/keyvault/custom/rsa_key.py
37.03% <37.03%> (ø)

.../azure/keyvault/custom/key_vault_authentication.py
46.29% <50%> (+7.27%)
:arrow_up:

...e-keyvault/azure/keyvault/custom/http_challenge.py
78.78% <78.78%> (ø)

...re/mgmt/containerservice/models/managed_cluster.py
38.46% <0%> (-32.97%)
:arrow_down:

...ervices/vision/face/models/get_face_list_result.py
55.55% <0%> (-6.95%)
:arrow_down:

...ge/azure/mgmt/storage/storage_management_client.py
62.92% <0%> (-5.58%)
:arrow_down:

...rservice/models/managed_cluster_upgrade_profile.py
50% <0%> (-5.56%)
:arrow_down:

... and 203 more

Continue to review full report at Codecov.

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


I dont understand what is this error means

docker: Error response from daemon: OCI runtime create failed: container_linux.go:367: starting container process caused: process_linux.go:495: container init caused: Running hook #0:: error running hook: exit status 1, stdout: , stderr: nvidia-container-cli: initialization error: driver error: failed to process request: unknown.

Hi @hchuanZ ,
Could your please provide your Dockerfile details?
and how do you get this error?

my dockerfile is
FROM pytorch/pytorch:1.5.1-cuda10.1-cudnn7-runtime
RUN apt-get update && apt-get install -y --no-install-recommends \
we have found python3.7 in base docker
python3-pip
python3-setuptools
build-essential
&&
apt-get clean &&
python -m pip install --upgrade pip
WORKDIR /workspace
COPY ./   /workspace
RUN pip install pip -U
RUN pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
RUN pip install natsort -i https://pypi.douban.com/simple
RUN pip install nibabel -i https://pypi.douban.com/simple
RUN pip install numpy -i https://pypi.douban.com/simple
CMD ["bash", "predict.sh"]
the predict.sh is
export CUDA_VISIBLE_DEVICES=1
export nnUNet_raw_data_base="$PWD"
export RESULTS_FOLDER="$PWD/datasets/"
predict -i "/workspace/inputs/"  -o "/workspace/outputs/"
setup.py is
from setuptools import setup, find_namespace_packages
setup(name='Jiujiuhaiziba',
version='0.1',
entry_points={
'console_scripts': [
'predict = inference.predict:main'
],
}
)
I build this image and save it as tar.gz
then I try to run it on my pc.
D:\workspace\test_docker_fold>docker container run --gpus=all --name jiujiuhaiziba --rm -v $PWD/inputs/:/workspace/inputs/ -v $PWD/teamname_outputs/:/workspace/outputs/ jiujiuhaiziba:latest /bin/bash -c "sh predict.sh"
docker: Error response from daemon: create $PWD/inputs: "$PWD/inputs" includes invalid characters for a local volume name, only "[a-zA-Z0-9][a-zA-Z0-9_.-]" are allowed. If you intended to pass a host directory, use absolute path.
See 'docker run --help'.
D:\workspace\test_docker_fold>docker container run --gpus=all --name jiujiuhaiziba --rm -v %PWD%/inputs/:/workspace/inputs/ -v %PWD%/teamname_outputs/:/workspace/outputs/ jiujiuhaiziba:latest /bin/bash -c "sh predict.sh"
docker: Error response from daemon: create %PWD%/inputs: "%PWD%/inputs" includes invalid characters for a local volume name, only "[a-zA-Z0-9][a-zA-Z0-9_.-]" are allowed. If you intended to pass a host directory, use absolute path.
See 'docker run --help'.
D:\workspace\test_docker_fold>docker container run --gpus=all --name jiujiuhaiziba --rm -v /d/workspace/test_docker_fold/inputs:/workspace/inputs/ -v /d/workspace/test_docker_fold/outputs/:/workspace/outputs/ jiujiuhaiziba:latest /bin/bash -c "sh predict.sh"
docker: Error response from daemon: OCI runtime create failed: container_linux.go:367: starting container process caused: process_linux.go:495: container init caused: Running hook #0:: error running hook: exit status 1, stdout: , stderr: nvidia-container-cli: initialization error: driver error: failed to process request: unknown.
------------------ 原始邮件 ------------------
发件人:                                                                                "JunMa11/FLARE2021"                                                                                @.>;
发送时间: 2021年7月29日(星期四) 晚上7:16
@.>;
<EMAIL_ADDRESS>主题: Re: [JunMa11/FLARE2021] I dont understand what is this error means (#1)
Hi @hchuanZ ,
Could your please provide your Dockerfile details?
and how do you get this error?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

Hi @hchuanZ
It may be the docker is too old. Could you please run docker version and share the details.

please try

docker container run --gpus=all --name jiujiuhaiziba --rm -v ./inputs:/workspace/inputs/ -v ./outputs/:/workspace/outputs/ jiujiuhaiziba:latest /bin/bash -c "sh predict.sh"

please also try
docker container run --gpus=all --name jiujiuhaiziba --rm -v .\inputs:/workspace/inputs/ -v .\outputs/:/workspace/outputs/ jiujiuhaiziba:latest /bin/bash -c "sh predict.sh"

docker container run --name jiujiuhaiziba --rm -v .\inputs:/workspace/inputs/ -v .\outputs/:/workspace/outputs/ jiujiuhaiziba:latest /bin/bash -c "sh predict.sh"

Hi @hchuanZ
If your docker is the 20.* version and all the above commands do not work.
Please send your tar file to<EMAIL_ADDRESS>We will help you to evaluate it under linux system.
Note: the simpleitk version sholud be <=2.02

https://drive.google.com/file/d/1OMcmJ6kfKu66FJsetCjH_tBTAmYcf7lP/view?usp=sharing


Atom fails to build on Arch Linux when not using official npm & nodejs packages

When using nodejs, and npm installed from source the neither the official Atom, nor the aur Atom packages work. Solution, install from source.
Second, when building from source the error
You can pass the --python switch to point to Python >= v2.5.0 & < 3.0.0.

When building APM persists even after adding the export PYTHON switch. Appending the --python switch to the ./script/build does not work either.
The only solution I have found to work is to modify the system symlink of /sbin/python3.6 -> /sbin/python to /usr/sbin/python2.7 -> /usr/sbin/python
Surely there is a cleaner solution. I'm trying to find one atm.

I think your second problem is a duplicate of atom/apm/#698.

Thanks @MoritzKn.


Create contribution documentation for openebs/e2e

What this PR does / why we need it:

Creates contribution documentation for openebs/e2e

Which issue this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): fixes #567
Special notes for your reviewer:
Created a single file - inspired in principle from kubernetes/e2e. Will add more sections for when applicable.

Very useful and nicely written doc @ksatchit


Android 4.4 crashing

User reported observed behavior:
Intra is failing to connect on several devices running Andriod 4.4.
Expected behavior:
Connection to succeed for Intra.

Hi, it even fails to connect on even Android 5. Do they lack sufficient software support for VPNs?


feat(connector): [worldpay] add support for mandates

Type of Change

[ ] Bugfix
[x] New feature
[x] Enhancement
[ ] Refactoring
[ ] Dependency updates
[ ] Documentation
[ ] CI/CD

Description
Described in #6316 point #6
Additional Changes

[ ] This PR modifies the API contract
[ ] This PR modifies the database schema
[ ] This PR modifies application configuration/environment variables

Motivation and Context
This PR -

integrates mandates through Worldpay enabling HS to perform CIT and MITs.
adds webhook source verification

How did you test it?
Things to test

Card mandates (no3DS + 3DS)

CIT
MIT

1. CIT for setting up mandates for non 3DS cards
cURL
curl --location --request POST 'http://localhost:8080/payments' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'api-key: dev_sMl3D9efytjSoXznSOKCv5PHyql50M1BMhU8e7qsa5m6mXxHvyROVg7cER7AWue9' \
--data-raw '{"amount":6500,"currency":"USD","confirm":true,"capture_method":"automatic","capture_on":"2022-09-10T10:11:12Z","customer_id":"cus_5A3VgopTFe8q83EEHgTq_1234","email":"guest@example.com","name":"John Doe","phone":"999999999","profile_id":"pro_OodaMoJ1Y9nlnegU4soR","phone_country_code":"+65","description":"Its my first payment request","authentication_type":"no_three_ds","return_url":"https://hyperswitch.io","setup_future_usage":"off_session","customer_acceptance":{"acceptance_type":"online","accepted_at":"1963-05-03T04:07:52.723Z","online":{"ip_address":"<IP_ADDRESS>","user_agent":"amet irure esse"}},"connector":["worldpay"],"payment_method":"card","payment_method_data":{"card":{"card_number":"4000000000001091","card_exp_month":"10","card_exp_year":"2030","card_holder_name":"New Cust","card_cvc":"321"}},"billing":{"address":{"line1":"1467","line2":"Harrison Street","line3":"Harrison Street","city":"San Fransico","state":"California","zip":"94122","country":"US","first_name":"John"}},"statement_descriptor_name":"joseph","statement_descriptor_suffix":"JS","metadata":{"udf1":"value1","new_customer":"true","login_date":"2019-09-10T10:11:12Z"},"browser_info":{"ip_address":"<IP_ADDRESS>","user_agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36","accept_header":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8","language":"en-US","color_depth":32,"screen_height":1117,"screen_width":1728,"time_zone":-330,"java_enabled":true,"java_script_enabled":true}}'

Response
{"payment_id":"pay_f7PIGeDAuN8ui66mfa3g","merchant_id":"merchant_1728979001","status":"processing","amount":6500,"net_amount":6500,"shipping_cost":null,"amount_capturable":0,"amount_received":null,"connector":"worldpay","client_secret":"pay_f7PIGeDAuN8ui66mfa3g_secret_wmxzgisS23jmUzi6LaCK","created":"2024-11-05T04:00:16.068Z","currency":"USD","customer_id":"cus_5A3VgopTFe8q83EEHgTq_1234","customer":{"id":"cus_5A3VgopTFe8q83EEHgTq_1234","name":"John Doe","email":"guest@example.com","phone":"999999999","phone_country_code":"+65"},"description":"Its my first payment request","refunds":null,"disputes":null,"mandate_id":null,"mandate_data":null,"setup_future_usage":"off_session","off_session":null,"capture_on":null,"capture_method":"automatic","payment_method":"card","payment_method_data":{"card":{"last4":"1091","card_type":"CREDIT","card_network":"Visa","card_issuer":"INTL HDQTRS-CENTER OWNED","card_issuing_country":"UNITEDSTATES","card_isin":"400000","card_extended_bin":null,"card_exp_month":"10","card_exp_year":"2030","card_holder_name":null,"payment_checks":null,"authentication_data":null},"billing":null},"payment_token":null,"shipping":null,"billing":{"address":{"city":"San Fransico","country":"US","line1":"1467","line2":"Harrison Street","line3":"Harrison Street","zip":"94122","state":"California","first_name":"John","last_name":null},"phone":null,"email":null},"order_details":null,"email":"guest@example.com","name":"John Doe","phone":"999999999","return_url":"https://hyperswitch.io/","authentication_type":"no_three_ds","statement_descriptor_name":"joseph","statement_descriptor_suffix":"JS","next_action":null,"cancellation_reason":null,"error_code":null,"error_message":null,"unified_code":null,"unified_message":null,"payment_experience":null,"payment_method_type":null,"connector_label":null,"business_country":null,"business_label":"default","business_sub_label":null,"allowed_payment_method_types":null,"ephemeral_key":{"customer_id":"cus_5A3VgopTFe8q83EEHgTq_1234","created_at":1730779216,"expires":1730782816,"secret":"epk_25b1cc698d7f4442b519b01e59d594c9"},"manual_retry_allowed":false,"connector_transaction_id":"eyJrIjoiazNhYjYzMiIsImxpbmtWZXJzaW9uIjoiNS4wLjAifQ==.sN:g8wd64bwkbrp0md+bPxcanBnk2zLdsIqSa1pR99GGg8fCNQpPLoWNslSzWNPFBM5Tpa8tW7EFI5onKINsgChMHeJVoeH2lrBWCRyjZYT6h+lbqfJa+1BSoKFSY8HLOF6B0tZncBs7SwFiJDsUm4ye6ZBkHUg26Hk6rn+lSpSmfgF9Uk2Www3mSVoKRxeIXIe9pic4l22Rveu3MW0qp:7+4GYJYOg3e9WdLnxDKf8zDOVuNV9Smp3TrKAPuNF+mGHv+EpbUsv07dKPa3jQZMZkSLOAGYpq4tIxEOnFazFMnNixp9xnyekZxhsndH6QYG9PvEiRYH4jvUN3Rj+v361XbX6vZLEHnxgSeac2MDbYIZ+yXrLMCBE1SsMnFcov03cMKErtU9SPLnJxH7q4bw==","frm_message":null,"metadata":{"udf1":"value1","login_date":"2019-09-10T10:11:12Z","new_customer":"true"},"connector_metadata":null,"feature_metadata":null,"reference_id":"7e4a9877-6c3d-4797-a649-404932d23df2","payment_link":null,"profile_id":"pro_OodaMoJ1Y9nlnegU4soR","surcharge_details":null,"attempt_count":1,"merchant_decision":null,"merchant_connector_id":"mca_omabWO9B7CSmaCMuT6eh","incremental_authorization_allowed":null,"authorization_count":null,"incremental_authorizations":null,"external_authentication_details":null,"external_3ds_authentication_attempted":false,"expires_on":"2024-11-05T04:15:16.067Z","fingerprint":null,"browser_info":{"language":"en-US","time_zone":-330,"ip_address":"<IP_ADDRESS>","user_agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36","color_depth":32,"java_enabled":true,"screen_width":1728,"accept_header":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8","screen_height":1117,"java_script_enabled":true},"payment_method_id":"pm_bxZWCSz5EHkIp005hsFV","payment_method_status":"inactive","updated":"2024-11-05T04:00:18.577Z","charges":null,"frm_metadata":null,"merchant_order_reference_id":null,"order_tax_amount":null,"connector_mandate_id":"https://try.access.worldpay.com/tokens/eyJrIjoxLCJkIjoiM21JUGNNUlNUTEVQNzlPeGNFUktybHZSVkN0eWNpeGthTUtOMld3UlUrYz0ifQ"}

Send a webhook manually for completing the txn

Setup connector's webhook secret (in hex format)
Use payment_attempt_id as transactionReference in the webhook request
Generate a HMAC using SHA256 algorithm online
Use the generated signature in Event-Signature header in the request

cURL
curl --location --request POST 'http://localhost:8080/webhooks/merchant_1728979001/mca_omabWO9B7CSmaCMuT6eh' \
    --header 'Event-Signature: 1/SHA256/cec367bc5eecff7a09ff482be9addad26d7e26e8a24fbf60d79e2cd87f2c12c4' \
    --header 'Content-Type: application/json' \
    --data '{"eventId":"wp-event-id-pay_f7PIGeDAuN8ui66mfa3g","eventTimestamp":"2018-06-13T14:18:13.407","eventDetails":{"classification":"payment","downstreamReference":"3378792436","transactionReference":"pay_f7PIGeDAuN8ui66mfa3g_1","type":"settled","date":"2017-11-03","amount":{"value":6500,"currencyCode":"USD"},"_links":{"payment":{"href":""}}}}'

Retrieve payment for checking the payment_method_status (should be active)
curl --location --request GET 'http://localhost:8080/payments/pay_f7PIGeDAuN8ui66mfa3g?force_sync=true' \
--header 'Accept: application/json' \
--header 'api-key: dev_sMl3D9efytjSoXznSOKCv5PHyql50M1BMhU8e7qsa5m6mXxHvyROVg7cER7AWue9'

{"payment_id":"pay_f7PIGeDAuN8ui66mfa3g","merchant_id":"merchant_1728979001","status":"succeeded","amount":6500,"net_amount":6500,"shipping_cost":null,"amount_capturable":0,"amount_received":6500,"connector":"worldpay","client_secret":"pay_f7PIGeDAuN8ui66mfa3g_secret_wmxzgisS23jmUzi6LaCK","created":"2024-11-05T04:00:16.068Z","currency":"USD","customer_id":"cus_5A3VgopTFe8q83EEHgTq_1234","customer":{"id":"cus_5A3VgopTFe8q83EEHgTq_1234","name":"John Doe","email":"guest@example.com","phone":"999999999","phone_country_code":"+65"},"description":"Its my first payment request","refunds":null,"disputes":null,"mandate_id":null,"mandate_data":null,"setup_future_usage":"off_session","off_session":null,"capture_on":null,"capture_method":"automatic","payment_method":"card","payment_method_data":{"card":{"last4":"1091","card_type":"CREDIT","card_network":"Visa","card_issuer":"INTL HDQTRS-CENTER OWNED","card_issuing_country":"UNITEDSTATES","card_isin":"400000","card_extended_bin":null,"card_exp_month":"10","card_exp_year":"2030","card_holder_name":null,"payment_checks":null,"authentication_data":null},"billing":null},"payment_token":null,"shipping":null,"billing":{"address":{"city":"San Fransico","country":"US","line1":"1467","line2":"Harrison Street","line3":"Harrison Street","zip":"94122","state":"California","first_name":"John","last_name":null},"phone":null,"email":null},"order_details":null,"email":"guest@example.com","name":"John Doe","phone":"999999999","return_url":"https://hyperswitch.io/","authentication_type":"no_three_ds","statement_descriptor_name":"joseph","statement_descriptor_suffix":"JS","next_action":null,"cancellation_reason":null,"error_code":null,"error_message":null,"unified_code":null,"unified_message":null,"payment_experience":null,"payment_method_type":null,"connector_label":null,"business_country":null,"business_label":"default","business_sub_label":null,"allowed_payment_method_types":null,"ephemeral_key":null,"manual_retry_allowed":false,"connector_transaction_id":"eyJrIjoiazNhYjYzMiIsImxpbmtWZXJzaW9uIjoiNS4wLjAifQ==.sN:g8wd64bwkbrp0md+bPxcanBnk2zLdsIqSa1pR99GGg8fCNQpPLoWNslSzWNPFBM5Tpa8tW7EFI5onKINsgChMHeJVoeH2lrBWCRyjZYT6h+lbqfJa+1BSoKFSY8HLOF6B0tZncBs7SwFiJDsUm4ye6ZBkHUg26Hk6rn+lSpSmfgF9Uk2Www3mSVoKRxeIXIe9pic4l22Rveu3MW0qp:7+4GYJYOg3e9WdLnxDKf8zDOVuNV9Smp3TrKAPuNF+mGHv+EpbUsv07dKPa3jQZMZkSLOAGYpq4tIxEOnFazFMnNixp9xnyekZxhsndH6QYG9PvEiRYH4jvUN3Rj+v361XbX6vZLEHnxgSeac2MDbYIZ+yXrLMCBE1SsMnFcov03cMKErtU9SPLnJxH7q4bw==","frm_message":null,"metadata":{"udf1":"value1","login_date":"2019-09-10T10:11:12Z","new_customer":"true"},"connector_metadata":null,"feature_metadata":null,"reference_id":"7e4a9877-6c3d-4797-a649-404932d23df2","payment_link":null,"profile_id":"pro_OodaMoJ1Y9nlnegU4soR","surcharge_details":null,"attempt_count":1,"merchant_decision":null,"merchant_connector_id":"mca_omabWO9B7CSmaCMuT6eh","incremental_authorization_allowed":null,"authorization_count":null,"incremental_authorizations":null,"external_authentication_details":null,"external_3ds_authentication_attempted":false,"expires_on":"2024-11-05T04:15:16.067Z","fingerprint":null,"browser_info":{"language":"en-US","time_zone":-330,"ip_address":"<IP_ADDRESS>","user_agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36","color_depth":32,"java_enabled":true,"screen_width":1728,"accept_header":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8","screen_height":1117,"java_script_enabled":true},"payment_method_id":"pm_bxZWCSz5EHkIp005hsFV","payment_method_status":"active","updated":"2024-11-05T04:03:12.974Z","charges":null,"frm_metadata":null,"merchant_order_reference_id":null,"order_tax_amount":null,"connector_mandate_id":"https://try.access.worldpay.com/tokens/eyJrIjoxLCJkIjoiM21JUGNNUlNUTEVQNzlPeGNFUktybHZSVkN0eWNpeGthTUtOMld3UlUrYz0ifQ"}

2. CIT for setting up mandates for 3DS cards
cURL
curl --location --request POST 'http://localhost:8080/payments' \
    --header 'Content-Type: application/json' \
    --header 'Accept: application/json' \
    --header 'api-key: dev_sMl3D9efytjSoXznSOKCv5PHyql50M1BMhU8e7qsa5m6mXxHvyROVg7cER7AWue9' \
    --data-raw '{"amount":6500,"currency":"USD","confirm":true,"capture_method":"automatic","capture_on":"2022-09-10T10:11:12Z","customer_id":"cus_5A3VgopTFe8q83EEHgTq_1234","email":"guest@example.com","name":"John Doe","phone":"999999999","profile_id":"pro_OodaMoJ1Y9nlnegU4soR","phone_country_code":"+65","description":"Its my first payment request","authentication_type":"three_ds","return_url":"https://hyperswitch.io","setup_future_usage":"off_session","customer_acceptance":{"acceptance_type":"online","accepted_at":"1963-05-03T04:07:52.723Z","online":{"ip_address":"<IP_ADDRESS>","user_agent":"amet irure esse"}},"connector":["worldpay"],"payment_method":"card","payment_method_data":{"card":{"card_number":"4000000000001091","card_exp_month":"10","card_exp_year":"2030","card_holder_name":"New Cust","card_cvc":"321"}},"billing":{"address":{"line1":"1467","line2":"Harrison Street","line3":"Harrison Street","city":"San Fransico","state":"California","zip":"94122","country":"US","first_name":"John"}},"statement_descriptor_name":"joseph","statement_descriptor_suffix":"JS","metadata":{"udf1":"value1","new_customer":"true","login_date":"2019-09-10T10:11:12Z"},"browser_info":{"ip_address":"<IP_ADDRESS>","user_agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36","accept_header":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8","language":"en-US","color_depth":32,"screen_height":1117,"screen_width":1728,"time_zone":-330,"java_enabled":true,"java_script_enabled":true}}'

Response
{"payment_id":"pay_TTKFV9sqLgsZOg13ImuK","merchant_id":"merchant_1728979001","status":"requires_customer_action","amount":6500,"net_amount":6500,"shipping_cost":null,"amount_capturable":6500,"amount_received":null,"connector":"worldpay","client_secret":"pay_TTKFV9sqLgsZOg13ImuK_secret_BQl69KZ81x8aEhPJ6Jh4","created":"2024-11-05T04:10:48.297Z","currency":"USD","customer_id":"cus_5A3VgopTFe8q83EEHgTq_1234","customer":{"id":"cus_5A3VgopTFe8q83EEHgTq_1234","name":"John Doe","email":"guest@example.com","phone":"999999999","phone_country_code":"+65"},"description":"Its my first payment request","refunds":null,"disputes":null,"mandate_id":null,"mandate_data":null,"setup_future_usage":"off_session","off_session":null,"capture_on":null,"capture_method":"automatic","payment_method":"card","payment_method_data":{"card":{"last4":"1091","card_type":"CREDIT","card_network":"Visa","card_issuer":"INTL HDQTRS-CENTER OWNED","card_issuing_country":"UNITEDSTATES","card_isin":"400000","card_extended_bin":null,"card_exp_month":"10","card_exp_year":"2030","card_holder_name":null,"payment_checks":null,"authentication_data":null},"billing":null},"payment_token":null,"shipping":null,"billing":{"address":{"city":"San Fransico","country":"US","line1":"1467","line2":"Harrison Street","line3":"Harrison Street","zip":"94122","state":"California","first_name":"John","last_name":null},"phone":null,"email":null},"order_details":null,"email":"guest@example.com","name":"John Doe","phone":"999999999","return_url":"https://hyperswitch.io/","authentication_type":"three_ds","statement_descriptor_name":"joseph","statement_descriptor_suffix":"JS","next_action":{"type":"redirect_to_url","redirect_to_url":"http://localhost:8080/payments/redirect/pay_TTKFV9sqLgsZOg13ImuK/merchant_1728979001/pay_TTKFV9sqLgsZOg13ImuK_1"},"cancellation_reason":null,"error_code":null,"error_message":null,"unified_code":null,"unified_message":null,"payment_experience":null,"payment_method_type":null,"connector_label":null,"business_country":null,"business_label":"default","business_sub_label":null,"allowed_payment_method_types":null,"ephemeral_key":{"customer_id":"cus_5A3VgopTFe8q83EEHgTq_1234","created_at":1730779848,"expires":1730783448,"secret":"epk_266816d2b9204b0e9805d35ef6af29ab"},"manual_retry_allowed":null,"connector_transaction_id":"eyJrIjoxLCJkIjoiVnVsWkNreGxnNnhMVE1zNGMwd1hraHBjRkE1MzN3V2ZmRVBRbVFCUks3WTJJRGpBeDR3ekZaWWVqNDJzOTJkWiJ9","frm_message":null,"metadata":{"udf1":"value1","login_date":"2019-09-10T10:11:12Z","new_customer":"true"},"connector_metadata":null,"feature_metadata":null,"reference_id":"cda65cf9-ad59-4f40-ab42-b73f3d83896d","payment_link":null,"profile_id":"pro_OodaMoJ1Y9nlnegU4soR","surcharge_details":null,"attempt_count":1,"merchant_decision":null,"merchant_connector_id":"mca_omabWO9B7CSmaCMuT6eh","incremental_authorization_allowed":null,"authorization_count":null,"incremental_authorizations":null,"external_authentication_details":null,"external_3ds_authentication_attempted":false,"expires_on":"2024-11-05T04:25:48.297Z","fingerprint":null,"browser_info":{"language":"en-US","time_zone":-330,"ip_address":"<IP_ADDRESS>","user_agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36","color_depth":32,"java_enabled":true,"screen_width":1728,"accept_header":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8","screen_height":1117,"java_script_enabled":true},"payment_method_id":"pm_Ch8jSriaHKqw6em5UTYt","payment_method_status":"inactive","updated":"2024-11-05T04:10:49.272Z","charges":null,"frm_metadata":null,"merchant_order_reference_id":null,"order_tax_amount":null,"connector_mandate_id":null}

Open the link and complete the txn
Send a webhook manually for completing the txn

Setup connector's webhook secret (in hex format)
Use payment_attempt_id as transactionReference in the webhook request
Generate a HMAC using SHA256 algorithm online
Use the generated signature in Event-Signature header in the request

cURL
curl --location --request POST 'http://localhost:8080/webhooks/merchant_1728979001/mca_omabWO9B7CSmaCMuT6eh' \
    --header 'Event-Signature: 1/SHA256/7ae6606c91d5e1d6684f548f7a932b1f330448a90140bb629a6e84b6ce8b1c5f' \
    --header 'Content-Type: application/json' \
    --data '{"eventId":"wp-event-id-pay_f7PIGeDAuN8ui66mfa3g","eventTimestamp":"2018-06-13T14:18:13.407","eventDetails":{"classification":"payment","downstreamReference":"3378792436","transactionReference":"pay_TTKFV9sqLgsZOg13ImuK_1","type":"settled","date":"2017-11-03","amount":{"value":6500,"currencyCode":"USD"},"_links":{"payment":{"href":""}}}}'

Retrieve payment for checking the payment_method_status (should be active)
curl --location --request GET 'http://localhost:8080/payments/pay_TTKFV9sqLgsZOg13ImuK?force_sync=true' \
    --header 'Accept: application/json' \
    --header 'api-key: dev_sMl3D9efytjSoXznSOKCv5PHyql50M1BMhU8e7qsa5m6mXxHvyROVg7cER7AWue9'

Response
{"payment_id":"pay_TTKFV9sqLgsZOg13ImuK","merchant_id":"merchant_1728979001","status":"succeeded","amount":6500,"net_amount":6500,"shipping_cost":null,"amount_capturable":0,"amount_received":6500,"connector":"worldpay","client_secret":"pay_TTKFV9sqLgsZOg13ImuK_secret_BQl69KZ81x8aEhPJ6Jh4","created":"2024-11-05T04:10:48.297Z","currency":"USD","customer_id":"cus_5A3VgopTFe8q83EEHgTq_1234","customer":{"id":"cus_5A3VgopTFe8q83EEHgTq_1234","name":"John Doe","email":"guest@example.com","phone":"999999999","phone_country_code":"+65"},"description":"Its my first payment request","refunds":null,"disputes":null,"mandate_id":null,"mandate_data":null,"setup_future_usage":"off_session","off_session":null,"capture_on":null,"capture_method":"automatic","payment_method":"card","payment_method_data":{"card":{"last4":"1091","card_type":"CREDIT","card_network":"Visa","card_issuer":"INTL HDQTRS-CENTER OWNED","card_issuing_country":"UNITEDSTATES","card_isin":"400000","card_extended_bin":null,"card_exp_month":"10","card_exp_year":"2030","card_holder_name":null,"payment_checks":null,"authentication_data":null},"billing":null},"payment_token":null,"shipping":null,"billing":{"address":{"city":"San Fransico","country":"US","line1":"1467","line2":"Harrison Street","line3":"Harrison Street","zip":"94122","state":"California","first_name":"John","last_name":null},"phone":null,"email":null},"order_details":null,"email":"guest@example.com","name":"John Doe","phone":"999999999","return_url":"https://hyperswitch.io/","authentication_type":"three_ds","statement_descriptor_name":"joseph","statement_descriptor_suffix":"JS","next_action":null,"cancellation_reason":null,"error_code":null,"error_message":null,"unified_code":null,"unified_message":null,"payment_experience":null,"payment_method_type":null,"connector_label":null,"business_country":null,"business_label":"default","business_sub_label":null,"allowed_payment_method_types":null,"ephemeral_key":null,"manual_retry_allowed":false,"connector_transaction_id":"eyJrIjoiazNhYjYzMiIsImxpbmtWZXJzaW9uIjoiNS4wLjAifQ==.sN:g8wd64bwkbrp0md+bPxcanBnk2zLdsIqSa1pR99GGg8fCNQpPLoWNslSzWNPFBM5Tpa8tW7EFI5onKINsgChMHeJVoeH2lrBWCRyjZYT6h+lbqfJa+1BSoKFSY8HLsZg56ffytGaY6kviYdeQ3oMFm3I1bdi0LE6+bmsttnumfgF9Uk2Www3mSVoKRxeIXIe9pic4l22Rveu3MW0qp:7+4GYJYOg3e9WdLnxDKf8zDOVuNV9Smp3TrKAPuNF+mGHv+EpbUsv07dKPa3jQZMZkSLOAGYpq4tIxEOnFazFMnNixp9xnyekZxhsndH6QYG9PvEiRYH4jvUN3Rj+v30USXlKxy5DXHS56qQBs16LSjYQgpsQ4hxxgd4CkrfGrpmydzhJke9FdpJBCRDfEFQ==","frm_message":null,"metadata":{"udf1":"value1","login_date":"2019-09-10T10:11:12Z","new_customer":"true"},"connector_metadata":null,"feature_metadata":null,"reference_id":"95ec0989-6586-4dc9-8db3-8840cd61975e","payment_link":null,"profile_id":"pro_OodaMoJ1Y9nlnegU4soR","surcharge_details":null,"attempt_count":1,"merchant_decision":null,"merchant_connector_id":"mca_omabWO9B7CSmaCMuT6eh","incremental_authorization_allowed":null,"authorization_count":null,"incremental_authorizations":null,"external_authentication_details":null,"external_3ds_authentication_attempted":false,"expires_on":"2024-11-05T04:25:48.297Z","fingerprint":null,"browser_info":{"language":"en-US","time_zone":-330,"ip_address":"<IP_ADDRESS>","user_agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36","color_depth":32,"java_enabled":true,"screen_width":1728,"accept_header":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8","screen_height":1117,"java_script_enabled":true},"payment_method_id":"pm_Ch8jSriaHKqw6em5UTYt","payment_method_status":"active","updated":"2024-11-05T04:13:36.645Z","charges":null,"frm_metadata":null,"merchant_order_reference_id":null,"order_tax_amount":null,"connector_mandate_id":"https://try.access.worldpay.com/tokens/eyJrIjoxLCJkIjoiM21JUGNNUlNUTEVQNzlPeGNFUktybHZSVkN0eWNpeGthTUtOMld3UlUrYz0ifQ"}

2. MIT for subsequent txns
cURL (using the payment_method_id from previous txn)
curl --location --request POST 'http://localhost:8080/payments' \
    --header 'Content-Type: application/json' \
    --header 'Accept: application/json' \
    --header 'api-key: dev_sMl3D9efytjSoXznSOKCv5PHyql50M1BMhU8e7qsa5m6mXxHvyROVg7cER7AWue9' \
    --data-raw '{"amount":6500,"currency":"USD","confirm":true,"capture_method":"automatic","capture_on":"2022-09-10T10:11:12Z","customer_id":"cus_5A3VgopTFe8q83EEHgTq_1234","email":"guest@example.com","name":"John Doe","phone":"999999999","profile_id":"pro_OodaMoJ1Y9nlnegU4soR","phone_country_code":"+65","description":"Its my first payment request","authentication_type":"no_three_ds","return_url":"https://hyperswitch.io","off_session":true,"recurring_details":{"type":"payment_method_id","data":"pm_bxZWCSz5EHkIp005hsFV"},"connector":["worldpay"],"statement_descriptor_name":"joseph","statement_descriptor_suffix":"JS","metadata":{"udf1":"value1","new_customer":"true","login_date":"2019-09-10T10:11:12Z"},"browser_info":{"ip_address":"<IP_ADDRESS>","user_agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36","accept_header":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8","language":"en-US","color_depth":32,"screen_height":1117,"screen_width":1728,"time_zone":-330,"java_enabled":true,"java_script_enabled":true}}'

Response
{"payment_id":"pay_VzxIcNQg80u9ETlUb552","merchant_id":"merchant_1728979001","status":"processing","amount":6500,"net_amount":6500,"shipping_cost":null,"amount_capturable":0,"amount_received":null,"connector":"worldpay","client_secret":"pay_VzxIcNQg80u9ETlUb552_secret_pk9mW3mw0knGtV2rEqML","created":"2024-11-05T04:07:49.284Z","currency":"USD","customer_id":"cus_5A3VgopTFe8q83EEHgTq_1234","customer":{"id":"cus_5A3VgopTFe8q83EEHgTq_1234","name":"John Doe","email":"guest@example.com","phone":"999999999","phone_country_code":"+65"},"description":"Its my first payment request","refunds":null,"disputes":null,"mandate_id":null,"mandate_data":null,"setup_future_usage":null,"off_session":true,"capture_on":null,"capture_method":"automatic","payment_method":"card","payment_method_data":{"card":{"last4":"1091","card_type":"CREDIT","card_network":"Visa","card_issuer":"INTL HDQTRS-CENTER OWNED","card_issuing_country":"UNITEDSTATES","card_isin":"400000","card_extended_bin":null,"card_exp_month":"10","card_exp_year":"2030","card_holder_name":"New Cust","payment_checks":null,"authentication_data":null},"billing":null},"payment_token":null,"shipping":null,"billing":null,"order_details":null,"email":"guest@example.com","name":"John Doe","phone":"999999999","return_url":"https://hyperswitch.io/","authentication_type":"no_three_ds","statement_descriptor_name":"joseph","statement_descriptor_suffix":"JS","next_action":null,"cancellation_reason":null,"error_code":null,"error_message":null,"unified_code":null,"unified_message":null,"payment_experience":null,"payment_method_type":null,"connector_label":null,"business_country":null,"business_label":"default","business_sub_label":null,"allowed_payment_method_types":null,"ephemeral_key":{"customer_id":"cus_5A3VgopTFe8q83EEHgTq_1234","created_at":1730779669,"expires":1730783269,"secret":"epk_6875ddcad68a4f75abca0541827381ea"},"manual_retry_allowed":false,"connector_transaction_id":"eyJrIjoiazNhYjYzMiIsImxpbmtWZXJzaW9uIjoiNS4wLjAifQ==.sN:g8wd64bwkbrp0md+bPxcanBnk2zLdsIqSa1pR99GGg8fCNQpPLoWNslSzWNPFBM5Tpa8tW7EFI5onKINsgChMHeJVoeH2lrBWCRyjZYT6h+lbqfJa+1BSoKFSY8HL1pxhLLvex9cXiey82ADAqLhmHF8GikqGQ6HjlU40U56mfgF9Uk2Www3mSVoKRxeIXIe9pic4l22Rveu3MW0qp:7+4GYJYOg3e9WdLnxDKf8zDOVuNV9Smp3TrKAPuNF+mGHv+EpbUsv07dKPa3jQZMZkSLOAGYpq4tIxEOnFazFMnNixp9xnyekZxhsndH6QYG9PvEiRYH4jvUN3Rj+v3wz1O+vl6m108JhqrKvq3afbNIuD+yJDmY7OemfgPo4MPa0TaXoA+VAVynZedasIKw==","frm_message":null,"metadata":{"udf1":"value1","login_date":"2019-09-10T10:11:12Z","new_customer":"true"},"connector_metadata":null,"feature_metadata":null,"reference_id":"4b343e0d-9e01-4236-a76d-99a5b02325ec","payment_link":null,"profile_id":"pro_OodaMoJ1Y9nlnegU4soR","surcharge_details":null,"attempt_count":1,"merchant_decision":null,"merchant_connector_id":"mca_omabWO9B7CSmaCMuT6eh","incremental_authorization_allowed":null,"authorization_count":null,"incremental_authorizations":null,"external_authentication_details":null,"external_3ds_authentication_attempted":false,"expires_on":"2024-11-05T04:22:49.284Z","fingerprint":null,"browser_info":{"language":"en-US","time_zone":-330,"ip_address":"<IP_ADDRESS>","user_agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36","color_depth":32,"java_enabled":true,"screen_width":1728,"accept_header":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8","screen_height":1117,"java_script_enabled":true},"payment_method_id":"pm_bxZWCSz5EHkIp005hsFV","payment_method_status":"active","updated":"2024-11-05T04:07:52.953Z","charges":null,"frm_metadata":null,"merchant_order_reference_id":null,"order_tax_amount":null,"connector_mandate_id":"https://try.access.worldpay.com/tokens/eyJrIjoxLCJkIjoiM21JUGNNUlNUTEVQNzlPeGNFUktybHZSVkN0eWNpeGthTUtOMld3UlUrYz0ifQ"}

Checklist

[x] I formatted the code cargo +nightly fmt --all
[x] I addressed lints thrown by cargo clippy
[x] I reviewed the submitted code
[ ] I added unit tests for my changes where possible

@kashif-m Can you run the cypress testcases for this


Copy from CromwellIT tests from dockstore/dockstore

Part 1 of 2 for preliminary investigation to https://ucsc-cgl.atlassian.net/browse/SEAB-2622
Part 2: https://github.com/dockstore/dockstore/pull/4130
First step is to move client tests back to client (assuming dockstore/dockstore's test is "correct"). This allows for easier debugging (more info than "System Exit(3)")

Just see the one change, is this the only change between dockstore and dockstore-cli?

Yup, the other 2 tests or so are identical to the existing ones in dockstore-cli


Support multiple rooms

I have an idea on how to implement this in some simple incremental steps:

use eventmachine to subscribe to multiple stream api endpoints: https://developer.gitter.im/docs/streaming-api
automatically subscribe to endpoints listed here: https://developer.gitter.im/docs/rooms-resource#list-rooms
in a future version, listen to events from faye endpoints: https://developer.gitter.im/docs/faye-endpoint

will give a try to the first point and report back when have it working

Can you implement the first point? I don't fully understand how to do it with EventMachine.

Yes, sorry for the delay... I will have enough time to contribute on the weekend.
I'm not 100% sure how to do, but I believe will be something based on faye channel subscription:
http://faye.jcoglan.com/ruby/clients.html, with the exception that for every "subscribed channel", instead of creating a loop or callback, will spawn/delegate using EM.defer to an EventLoop like the one present on RTMConnection: https://github.com/kenjij/lita-slack/blob/master/lib/lita/adapters/slack/rtm_connection.rb#L39
Does it make sense?
Eventmachine is an hybrid reactor-pattern implementation. While the main thread runs evented loop, you can spawn additional "worker threads" to perform different computations using EM.defer.
It would be really cool if @jimmycuadra could give a feedback here :)

I have tried to subscribe to multiple channels with Faye, but with no result.
Is multithreading really needed for this? I prefer avoid this to not meet the thread-safety issues.

Lita already uses it.
I have to read documentation again to fully understand whether defer is the right thing or how to use eventmachine own eventloop code correctly (I believe we will have to use something like Fibers).
The whole idea is that we need something to subscribe in an "evented way" to different endpoints and when it receives valid data, it should delegate tho the handlers in a non blocking way (this will use defer).


Key type

With no arguments, ssh-keygen will generate an RSA key pair.
For other key types, you need to specify them, eg:
ssh-keygen -t ed25519

Document details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 337c4ea8-1806-92a3-1501-b3ff5dde37bb
Version Independent ID: c411d389-578d-57c6-cd6e-eaca7f2837db
Content: OpenSSH Server Configuration for Windows
Content Source: WindowsServerDocs/administration/OpenSSH/OpenSSH_KeyManagement.md
GitHub Login: @maertendMSFT

Thanks for your dedication to our documentation. If we have been unable to review your issue in a timely manner, we sincerely apologize for the delayed response. We have captured the informtion you have provided for review. We are closing this issue for now, but if you feel that it's still a concern, please respond and let us know. If you determine another possible update to our documentation, please don't hesitate to reach out again. #please-close


Remove setUp and tearDown template method

@samnela Hi! Thanks for the PR, but just out of curiosity: shouldn't it be better to assure to always call the parent because that way it's easier to maintain should we want to add a layer afterwards?
Greetings!

Hi @unreal4u  ,
Thanks for this  API !
Maybe I misunderstood, but the parent methods seem to be empty methods and will always be empty in phpunit (IMO). These methods are template methods that are invoked before a test method is run for setUp and tearDown once a test method is finished.  I think removing them improves the code and as Ron Jeffries also said: "Always implement things when you really need them, never when you expect you need them." .
Greetings !

I thought PHPStorm would mention something about the parent not being called, but it's not, so I merged your PR, thanks!

You're welcome !


Prepare plugin for submission to official list of plugins

https://docs.obsidian.md/Plugins/Releasing/Submit+your+plugin

[ ] Add README
[ ] Add licence
[ ] Check manifest.json
[ ] Create release on GitHub
[ ] Submit for review


⚠ ClamAV has degraded performance

In ad25629, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 67 ms

Resolved: ClamAV performance has improved in e3db9ad.


[SPARK-48407][SQL][DOCS] Teradata: Document Type Conversion rules between Spark SQL and teradata

What changes were proposed in this pull request?

This PR adds documentation for the builtin teradata jdbc dialect's data type conversion rules
Why are the changes needed?

doc improvement
Does this PR introduce any user-facing change?

no
How was this patch tested?

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

no

cc @dongjoon-hyun @LuciferYang @cloud-fan thanks


Fix failing tests

Fixes failing tests for pkg\transport and pkg\client.

@BlackReloaded for now ignore the build issue as this is prerequisite for adding #2, which adds Azure Pipelines support.


Completion session stuck at html element name when typing continuously

Version: VS 17.9.0 P2
While typing continuously (  (space) after selected element name), completion session is stuck at element name completion:
https://github.com/dotnet/razor/assets/9047283/c07f4b77-a4c6-41b2-ba0d-9dcc0e484e7d
(It works as expected for Component name completions: selected completion is activated, space inserted, new completion session starts with completions for attributes/parameters.)

Duplicate of https://github.com/dotnet/razor/issues/9419
Will move your video over there.


Atom won't start after upgrade

OS: Windows 7 64-bit
This morning, I tried to upgrade to Atom 1.0.8 from 1.0.7. Although the updater didn't say that there were any updates available, after I closed and reopened atom, I got this error message:

The taskbar shortcut had been changed to point to the new atom-1.0.8 directory.
I'm not the only one who's experienced this: see https://discuss.atom.io/t/a-javascript-error-occured-in-the-browser-process/20306.
I can roll back to 1.0.7 for now, but it would be nice to upgrade.

2nded and bumped! :)

@bcoe do you think this is something to raise against yargs or os-locale?

@kevinsawicki looks like it, @sindresorhus thoughts?
I'll get a hot fix out in yargs ASAP.

@kevinsawicki for your review, I can have this out the door within 10 minutes.
https://github.com/bcoe/yargs/pull/240

@kevinsawicki +<EMAIL_ADDRESS>should hot fix this issue on Windows.
See https://github.com/bcoe/yargs/issues/241 for further discussion.

Great, thanks for the speedy response.

@kevinsawicki<EMAIL_ADDRESS>is released with the new option detectLocale(false) which can be used to disable the automatic locale detection functionality:
https://github.com/bcoe/yargs/pull/242/files
Sorry about this breakage, I really care about keeping yargs a stable project and hope I can get you back on an up-to-date release -- please don't hesitate to reach out to me immediately if anything like this happens again in the future.

please don't hesitate to reach out to me immediately if anything like this happens again in the future.

Thanks, sounds good :+1:

3rd day on Github, so I'll admit I am completely lost here. I've tried re-downloading, re-installing, even uninstalling...and nothing seems to be working.

@StartupDino for now, you can try either downgrading to 1.0.7 or waiting until the next release.  One final option if you're interested would be to build Atom by yourself.

@StartupDino Sorry for this. There will be another release today.

@StartupDino  I just published 1.0.9which should have this fixed, you can download it as AtomSetup.exe from https://github.com/atom/atom/releases/tag/v1.0.9
Apologies for this regression.

Thanks to all involved for the speedy response! I just this morning got back to my Windows box, and 1.09 is working great.


⚠ Bofrost.de has degraded performance

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

HTTP code: 200
Response time: 1563 ms

Resolved: Bofrost.de performance has improved in 0ab80d8.


Config File issue

Howdy from Texas!
I stumbled upon Heliocron while working on a timelapse project designed to run on a RPi. I am trying to get it set up to use in crontab for launching my script at sunrise each day.
I love the elegance of your solution, thanks for contributing it to the world!
My issue is with setting my GPS location in the config file I created at ~/.config/heliocron.toml.
# ~/.config/heliocron.toml
# set the default location to Texas Capitol
latitude = "30.274N"
longitude = "-97.740W"

Perhaps I'm doing something stoopid?
When I run heliocron --version, I get:
Config error: Error parsing TOML file. Ensure that it is of the correct format.

Good evening :)
Try removing that -. I should probably make the error message a bit clearer!

Oh, of course!!! The negative would make it W. 🤦♂
Thanks for the quick and gracious response! 👍

Super :)


Suspect Nested Routing issue on ng5

When serving up the page in dev via localhost, the body of the app-barcode is not served up in the resulting page.  When building for prod and serving up the page via IIS, there are no issues.
The console output from Dev hosting:
core.js:1448 ERROR Error: Uncaught (in promise): TypeError: undefined is not a function
TypeError: undefined is not a function
at Array.map ()
at webpackAsyncContext (eval at ./src/$$_lazy_route_resource lazy recursive (main.bundle.js:13), :10:34)
at SystemJsNgModuleLoader.loadAndCompile (core.js:6558)
at SystemJsNgModuleLoader.load (core.js:6542)
at RouterConfigLoader.loadModuleFactory (router.js:4589)
at RouterConfigLoader.load (router.js:4569)
at MergeMapSubscriber.eval [as project] (router.js:2061)
at MergeMapSubscriber._tryNext (mergeMap.js:128)
at MergeMapSubscriber._next (mergeMap.js:118)
at MergeMapSubscriber.Subscriber.next (Subscriber.js:95)
at Array.map ()
at webpackAsyncContext (eval at ./src/$$_lazy_route_resource lazy recursive (main.bundle.js:13), :10:34)
at SystemJsNgModuleLoader.loadAndCompile (core.js:6558)
at SystemJsNgModuleLoader.load (core.js:6542)
at RouterConfigLoader.loadModuleFactory (router.js:4589)
at RouterConfigLoader.load (router.js:4569)
at MergeMapSubscriber.eval [as project] (router.js:2061)
at MergeMapSubscriber._tryNext (mergeMap.js:128)
at MergeMapSubscriber._next (mergeMap.js:118)
at MergeMapSubscriber.Subscriber.next (Subscriber.js:95)
at resolvePromise (zone.js:814)
at resolvePromise (zone.js:771)
at eval (zone.js:873)
at ZoneDelegate.invokeTask (zone.js:421)
at Object.onInvokeTask (core.js:4740)
at ZoneDelegate.invokeTask (zone.js:420)
at Zone.runTask (zone.js:188)
at drainMicroTaskQueue (zone.js:595)

It seems it's a lazyloaded issue, can you please try to run ng serve --aot  and see if it works.
if not, give me time to test it out, Please specify your PC and setup setting.

the --aot flag resolves the localhost issue.  testing was on a Dell 3510 running Win 10
Angular CLI: 1.7.3
Node: 8.9.4
OS: win32 x64
Angular: 5.2.9
... animations, common, compiler, compiler-cli, core, forms
... http, platform-browser, platform-browser-dynamic, router
@angular/cdk: 5.2.4
@angular/cli: 1.7.3
@angular/material: 5.2.4
@angular-devkit/build-optimizer: 0.3.2
@angular-devkit/core: 0.3.2
@angular-devkit/schematics: 0.3.2
@ngtools/json-schema: 1.2.0
@ngtools/webpack: 1.10.2
@schematics/angular: 0.3.2
@schematics/package-update: 0.3.2
typescript: 2.6.2
webpack: 3.11.0

Ok thanks, I will add --aot flag as default shortly.


ScalePyramid gradcheck and docs

@ducha-aiki can you disable https://travis-ci.com/arraiyopensource/kornia/jobs/216810007#L1510 ?
add pytest.mark.skip('some mesage')
we'll have to take a serious look at the jitted operator after the deadline

This would requre editing all the tests. Is there a way to turn off all jits without it?


issue with "https://github.com/yu4u/age-gender-estimation/releases/download/v0.5/weights.18-4.06.hdf5"

Hi, pls I have an issue downloading this weight at the designated place,  is there any alternative link? Thanks

Thank you for your report!
I fixed the weights' URL. Would you try again?

Thanks, it is working now.

Hi, where can I find the 'weights.18-4.06.hdf5'  weights file. I'm unable to locate it.

The above weight is out of date.
Please use https://github.com/yu4u/age-gender-estimation/releases/download/v0.5/weights.28-3.73.hdf5 instead.

ts

Hi, where I can find the your paper for age-gender estimation.

See references in readme.


Power Management

Power Management on ESP32_S3_N16R8 cannot be activated. GPS nmea parster tasks causes crash if Power Management is activated.

Might be fixed by 87d3ab9


Perform der/ser primitives with WASM modules

We can improve performance by doing better serialization and deserialization of number and strings by utilising web assembly.

Top level await can be used to keep the api the same

I guess in may not be faster, because you copy to/from wasm couple times. I guess using modern JS features for typed data would be as fast.


Curl::afterSend with MultiCurl::addCurl

Hi, Zach.
<?php

use Curl\Curl;
use Curl\MultiCurl;

class Client
{
    private MultiCurl $multiCurl;

    public function __construct()
    {
        $this->multiCurl = new MultiCurl();
    }

    private function beforeSend(Curl $instance): void
    {
        echo "Before send" . PHP_EOL;
    }

    private function afterSend(Curl $instance): void
    {
        echo "After send"  . PHP_EOL;
    }

    private function complete(Curl $instance): void
    {
        echo "Completed"  . PHP_EOL;
    }

    private function getCurl(string $url): Curl
    {
        $curl = new Curl($url);

        $curl->beforeSend($this->beforeSend(...));
        $curl->afterSend($this->afterSend(...));
        $curl->complete($this->complete(...));

        return $curl;
    }

    public function addGet(string $url): void
    {
        $this->multiCurl->addCurl(
            $this->getCurl($url)
        );
    }

    public function get(string $url): void
    {
        $this->getCurl($url)
            ->get([]);
    }

    public function start(): void
    {
        $this->multiCurl->start();
    }
}

$url = "https://httpbin.org/get";

$client = new Client();

$client->get($url);
$client->addGet($url);
$client->start();

Output:
Before send
After send
Completed
Before send
// missed After send
Completed

Hi, thank you for confirming the fix


AttributeError for asyncio.coroutines.CoroWrapper in Python 3.11.0

I'm using TestSlide version: 2.7.0
Given:
A test with self.mock_callable() running on Python 3.11.0
When I run:
testslide -f p mytestfile.py
https://github.com/cricalix/pybaresip/actions/runs/3610512341/jobs/6084354800
I expected this to happen:
No AttributeError; mock_callable works.
But, instead this happened:
  1) baresip uanew, when the account does not start with sip: it adds a sip prefix and calls invoke
    1) AttributeError: module 'asyncio.coroutines' has no attribute 'CoroWrapper'
      File "tests/baresip_uanew.py", line 22, in before
        self.mock_callable(target=bs.logger, method="warning").to_return_value(None)

cpython changed in 2021 to remove the CoroWrapper class from the asyncio.coroutines module.
https://github.com/python/cpython/commit/a1092f6#diff-9c7589fd86655ebc0075c014646c69ffc77d3f446a653ed09c69421c78d5803fL36
I suspect a simple try/except for _is_coroutine in mock_callable.py is sufficient to fix the problem (or do a conditional check of the version of Python?).

Ah, nevermind, it's fixed in main. It's just that there's been no release to pypi with a version bump for that fix. I'll just take Python 3.11 out of my test suite for now.