Lag and controllers becoming unresponsive

Thanks again for getting this all working.  I have finally freed up time to start tinkering with this and have noticed some interesting issues.  The first time I fired it up the entire thing went incredibly easy. My joycons connected flawlessly, Unity read them and they were super responsive, I was loving it and testing out the different buttons and delighted to see the rumble button firing correctly.
I then set about creating a UWP friendly version of the joycon class, I finally got that in a good place, went to test and nothing.  I noticed my controllers were only showing paired in the settings and would not connect.  removed the entire package and reimported it, taking the code back to before. I removed them and tried again, nothing, checked for driver updates, restarted bluetooth and computer and they finally connected but when I ran the code they were responding about 3-4 seconds behind and the rumble and joysticks were no longer registering.
I am currently charging them back up in case it is a battery level issue but was wondering if you have ever encountered lag and no joystick/rumble response?  It's very confusing as it worked flawlessly last night and I have reverted the entire build back to your latest without any of my modifications.

@gb2111 I am unfamiliar with win forms So I am not sure if it's helpful.
@wormyrocks I am having issues just getting the device to be recognized in the attach method.  I remember that when I messed around with these in the past the hololens recognized them as different devices than my pc so I am wondering if somehow the product id values are off.  I am a complete novice when it comes to device connections so am just sort of trying anything I can.  I am right now looking at the windows 10 HID capabilities just to see if I can identify the joycons as devices.  (which I know have worked in the past as just generic) and wondering if that is something you have tried with these?

You can always check the Vendor ID and Product ID in Windows on the HoloLens, and make sure that the product ID is 0x057e and the product ID is 0x2006/0x2007.
I am using the HIDApi C#/Unity bindings from the UnityWiimote package; there should be a straightforward way to include that library with anything you end up building.

i will make also project on gitgub if you don't mind.
i think it does not really matter if you use it with win forms or wpf.

here is project ported to desktop app.
in case of any problem let me know and I will see if can help.

Whoa, nice work! I'll look into why that ReceiveRaw business might be the case. Have you tried with more than two Joy-Cons; i.e., do you suppose that ReceiveRaw must be called once per Joy-Con, or is twice sufficient?
@CTCaer Do you have any idea why doing two consecutive blocking reads might alleviate the lag issue with multiple Joy-Cons, even though each Joy-Con has its individual thread and ought to be running independently?

@wormyrocks
Hmm, well actually doing this cuts the work to half.
You parse 1 packet for each joy-con every 30ms, instead of 1 every 16ms.
Maybe the parsing takes more time than 15ms and for some reason the next packet read gets congested (strange though because hidapi doesn't have a queue and just drops the packet if it isn't read).
I will test tomorrow and tell if I find anything specific.

hi, sorry for offtop but perhaps you or someone you know would be interested in looking on this lib for GearVR?
I think I decoded all buttons and 3 variables related to rotation. Only problem is I cannot decode them into something that makes sense line quaternion. Just not mine area of skills. I made UI that makes easier to see groups of bits as they change color according to frequency they change.
GearVR is really great and it would be wonderful to have ability to integrate it in our projects.
Greg

@wormyrocks
i have only 2 joycons, also my project will not show more then 2.

@wormyrocks @gb2111
Ok I just tested https://github.com/gb2111/JoyconLib-4-CS and both
int a = ReceiveRaw();
a = ReceiveRaw();

and
int a = ReceiveRaw();
//a = ReceiveRaw();

behave the same for me and most importantly, they both show "zero" lag.
*By "zero", I mean no noticeable lag.

Is it possible that this whole lag situation is coming from slow math/drawing performance?
I have an i7-5820K, and the program seems very fast to me. Maybe on a slower CPU, the cube drawing slows down?
@gb2111
Can you try the following?
Comment the 2nd ReceiveRaw to go back to instant/15ms packet reading:
int a = ReceiveRaw();
//a = ReceiveRaw();

Test 1:
Then start by commenting the math and drawing:
var j = joyconManager.j[0];
label1.Text = j.ToString();

//cube1.InitializeCube();
//cube1.RotateX = (float)(j.GetVector().eulerAngles.Y * 180.0f / Math.PI);
//cube1.RotateY = (float)(j.GetVector().eulerAngles.Z * 180.0f / Math.PI);
//cube1.RotateZ = (float)(j.GetVector().eulerAngles.X * 180.0f / Math.PI);

//picture1.Image = cube1.DrawCube(drawOrigin);

var j = joyconManager.j[1];

label2.Text = j.ToString();

//cube2.InitializeCube();
//cube2.RotateX = (float)(j.GetVector().eulerAngles.Y * 180.0f / Math.PI);
//cube2.RotateY = (float)(j.GetVector().eulerAngles.Z * 180.0f / Math.PI);
//cube2.RotateZ = (float)(j.GetVector().eulerAngles.X * 180.0f / Math.PI);

//picture2.Image = cube2.DrawCube(drawOrigin);

Test 2:
then only the cube drawing:
var j = joyconManager.j[0];
label1.Text = j.ToString();

cube1.InitializeCube();
cube1.RotateX = (float)(j.GetVector().eulerAngles.Y * 180.0f / Math.PI);
cube1.RotateY = (float)(j.GetVector().eulerAngles.Z * 180.0f / Math.PI);
cube1.RotateZ = (float)(j.GetVector().eulerAngles.X * 180.0f / Math.PI);

//picture1.Image = cube1.DrawCube(drawOrigin);

var j = joyconManager.j[1];

label2.Text = j.ToString();

cube2.InitializeCube();
cube2.RotateX = (float)(j.GetVector().eulerAngles.Y * 180.0f / Math.PI);
cube2.RotateY = (float)(j.GetVector().eulerAngles.Z * 180.0f / Math.PI);
cube2.RotateZ = (float)(j.GetVector().eulerAngles.X * 180.0f / Math.PI);

//picture2.Image = cube2.DrawCube(drawOrigin);

Test 3:
and finally only the maths:
var j = joyconManager.j[0];
label1.Text = j.ToString();

cube1.InitializeCube();
//cube1.RotateX = (float)(j.GetVector().eulerAngles.Y * 180.0f / Math.PI);
//cube1.RotateY = (float)(j.GetVector().eulerAngles.Z * 180.0f / Math.PI);
//cube1.RotateZ = (float)(j.GetVector().eulerAngles.X * 180.0f / Math.PI);

picture1.Image = cube1.DrawCube(drawOrigin);

var j = joyconManager.j[1];

label2.Text = j.ToString();

cube2.InitializeCube();
//cube2.RotateX = (float)(j.GetVector().eulerAngles.Y * 180.0f / Math.PI);
//cube2.RotateY = (float)(j.GetVector().eulerAngles.Z * 180.0f / Math.PI);
//cube2.RotateZ = (float)(j.GetVector().eulerAngles.X * 180.0f / Math.PI);

picture2.Image = cube2.DrawCube(drawOrigin);

This way you can check if the math or/and drawing is slowing you down.

Lastly, I want to add that the BT adapter plays a big role here.
If I go a little far away from my crappy adapter, I also start noticing lag (which actually the lag is because of dropped corrupted packets or packets that do not reach the adapter).

@CTCaer Are you testing with multiple Joy-Cons? Both @gb2111 and I have found that calling ReceiveRaw() twice only alleviates the lag situation if more than one Joy-Con is connected (in both Unity and Windows desktop app).

@wormyrocks
Of course.
I don't know why, but with 1 Joy-Con or 2 Joy-Con and 1 ReceiveRaw or 2 ReceiveRaw,
the output is the same for me. The cuboid and the text coordinates had the same speed to all tests.
Also, with 1 ReceiveRaw was more detailed, as it should have been.
Here's my Windows build machine:
Windows 10 fully updated.
i7-5820K, 16GB DDR4 2400
AMD R9 280x
Visual Studio 2015.3
I've done no change to compilation and framework properties (it didn't asked me to change sth in the project).
I will write a timer and check in ms, because this is very strange

Here's a sample my latency:
(Order is by columns. Not that it matters)
16 | 30 | 33 | 31 | 30 | 30 | 31
16 | 16 | 14 | 16 | 23 | 16 | 18
30 | 30 | 31 | 29 | 25 | 28 | 28
17 | 15 | 14 | 15 | 13 | 16 | 15
29 | 32 | 32 | 31 | 31 | 29 | 30
34 | 29 | 31 | 31 | 32 | 33 | 32
13 | 16 | 39 | 15 | 18 | 14 | 15
30 | 29 | 15 | 32 | 28 | 31 | 30
14 | 18 | 13 | 15 | 14 | 15 | 15
31 | 29 | 32 | 30 | 32 | 30 | 32
31 | 30 | 30 | 32 | 30 | 32 | 30
16 | 18 | 16 | 15 | 15 | 16 | 14
29 | 27 | 32 | 30 | 30 | 30 | 31
16 | 18 | 12 | 16 | 15 | 15 | 16
30 | 29 | 31 | 31 | 31 | 31 | 31
32 | 30 | 30 | 31 | 31 | 29 | 31
19 | 16 | 17 | 16 | 17 | 16 | 15
26 | 30 | 30 | 29 | 28 | 30 | 31
18 | 16 | 16 | 16 | 16 | 16 | 15
29 | 30 | 29 | 31 | 31 | 29 | 31

30 | 30 | 30 | 31 | 31 | 30 | 29
27 | 19 | 26 | 15 | 16 | 16 | 18
19 | 27 | 18 | 29 | 34 | 30 | 27
15 | 16 | 15 | 15 | 14 | 15 | 16
31 | 32 | 32 | 31 | 29 | 30 | 30
31 | 29 | 30 | 31 | 31 | 32 | 30
18 | 15 | 15 | 16 | 19 | 36 | 16
29 | 31 | 30 | 30 | 26 | 10 | 30
14 | 15 | 16 | 16 | 16 | 15 | 16
31 | 32 | 31 | 32 | 32 | 30 | 29
31 | 31 | 29 | 31 | 35 | 32 | 33
16 | 16 | 19 | 16 | 11 | 16 | 14
30 | 30 | 26 | 29 | 30 | 29 | 31
18 | 16 | 16 | 16 | 16 | 16 | 16
29 | 30 | 30 | 30 | 29 | 30 | 29
30 | 31 | 33 | 31 | 33 | 31 | 32
17 | 15 | 16 | 16 | 15 | 15 | 14
29 | 30 | 30 | 30 | 30 | 31 | 30
14 | 15 | 14 | 16 | 16 | 15 | 15
31 | 32 | 32 | 29 | 28 | 32 | 30

31 | 31 |
19 | 15 |
28 | 32 |
15 | 15 |
31 | 31 |
31 | 30 |
15 | 15 |
31 | 30 |
15 | 15 |
30 | 32 |
31 | 30 |
19 | 15 |
27 | 30 |
15 | 16 |
30 | 30 |
31 |
20 |
25 |
17 |
30 |

So average latency was 24ms.
Best values were around 15ms, which match the report frequency from joy-cons
and worst value was 39ms.
So no extreme conditions.

The results were made by connecting 2 joy-cons and showing 2 independent cubes rotating.
A single ReceiveRaw() was used.
The timer measured everything from reading packets, parsing them, doing maths and drawing the result on screen. (So, both joyconManager.Update() and UpdateInfo())
Lastly, these results are consistent with every run.

I'll now write 1 more timer. 1st will measure  joyconManager.Update() and 2nd UpdateInfo().
I will post my findings

i have quite new i7 so I don't believe it can be anything about cpu. especially when only this app is running.
so @CTCaer  you have same result on my version with 1 or 2 call to ReceiveRaw
and @wormyrocks  you have same situation as me?
that mighe be something with bluetooth stack.
the only difference between calling ReceiveRaw once and two times is that when calling hid_read 2 times for one call to hid_write.

I just saw the code better.
The results are updated through a timer. Reducing the timer interval to 1 I see that the whole thing is faster.
Your actual timer should be hidapi. It read a packet? Start doing stuff.
Anyway tested the cube calculation/drawing and only takes 0-2ms.
So the problem seems to be on 2 sides:
The timerUpdate.
The library side of things.
What I'm gonna do now, is what I said above. I will try to call
joyconManager.Update();
UpdateInfo();
from inside Joyconlib when a packet is received and avoid the whole timer thing.
This way, I will find the real latency. And also minimize the latency from the timer.

@CTCaer At least in the original library, I don't believe I'm using a timer for polling. In the Poll() function, I read a packet from HID, and then read the subsequent packet immediately as soon as it is available. It is a blocking infinite poll loop that runs in its own thread, as you suggested.
In the main Update() loop, which at least in Unity runs once per frame, every packet is dequeued and all three sets of accelerometer/gyroscope data are plugged into the sensor fusion equation with 5ms assumed dt, and actual dt in between packets used.
Is the delay you refer to here? That should only happen when a packet is missed and I just put that in so that the program would not freeze and poll indefinitely fast when a connection is questionable.
My current suspicion is that some flag in the HID pipeline is put into a blocking state when multiple HID devices are called independently and by calling ReceiveRaw() twice, I am "accidentally" resetting it such that data comes through without congestion. Do you think that is possible?

@wormyrocks
Indeed, I'm talking about @gb2111 implementation.
The timerUpdate_Tick() (by using 1ms interval) is called every 10-21ms. So, 9-20ms.
This is normal though, because Microsoft states that winforms timer has an accuracy of 55ms.
This needs to be changed to System.Timers.Timer to have a 10-15ms accuracy or to a better one.
The best way is to create an interface that JoyconLib can reach and call the MainForm update function.
What is left from the frontend is the latency from actually calling joyconManager.Update() and UpdateInfo(). The first one has 0ms latency and the second 0-2ms for me. So it's OK.
Have in mind that the numbers are now lower, because I implemented my check stopwatch counter better.
Now on the best case scenario, we should have a latency of 15 backend + [10-21]frontend = 25-36ms
But for you and @gb2111 this is not the case.
So, for now, I'm trying to find the backend latency.

@wormyrocks
Joycon.update() is 0ms
Joycon.ReceiveRaw() is 15ms (As expected. And if I lower the signal, it goes up because of dropped/unreachable packets from BT adapter).
Joycon.Poll() is 15ms with 1 ReceiveRaw() or 30ms with 2 ReceiveRaw()
JoyconManager.update() is 0ms.
So your lib latency is flawless.

@gb2111
You need to implement another timer or another way to update the form.
Try to use an interface and link it with the library so you now when the library got a packet.
Your timer now has around 10-21ms latency total on my machine.
Your math/drawing latency is excellent  0-2ms.
@wormyrocks @gb2111
So, in the end, I don't know why you have these latency.
Joycon4CS works great for me. Only around 10-30ms latency total.
I had them now for half an hour and everything responds fast and within the same latency when I opened the program.
With this, I think both your signal quality must be very bad.
Try to have the Joy-Con near the adapter (10cm).
If this doesn't change the situation, check your machine, your DPC latency and your build enviroment/runtimes.

@CTCaer I figured out what is causing the congestion on my machines; it is my SendRumble() call, which sends an 0x10 report before every call to ReceiveRaw. If I remove that call, it works with more than one Joy-Con with no congestion and only one call to ReceiveRaw(); if I retain that call, it congests after about 10 seconds on my PC. (laptop, integrated Bluetooth adapter).

@CTCaer
i don't think there is anything with timer.
if you will look on text output you will notice "Button Up (raw)". That is basically output from ReceiweRaw not processed by timer and if called only once we can see same lag on button press no matter if from ReceiveRaw or processed by timer. Also there is no (visible) lag between raw and timer. They both lag or not.
Regareding daydream my problem is that I have no clue what those data mean. I identified 3 values that change consistently with rotation of device. so probably no filter is required. but have no clue what thye are :)

@wormyrocks
First, how the Joy-Con work, based on captured packets and ROM/Firmware disassembly experience:
If you enable x30 input report, doesn't matter what you send, the Joy-Con will always send an x30 report every 15ms.
Even if you send a x01 it will send a x21 back and a x30 on it's schedule (-+1ms).
It never sends 2 x30 right away, without a 15ms time window.
How the BT adapter works:
Most adapters queue input/ouput non-corrupted packets.
The queue is there, because sometimes it can't parse the parse data fast enough to output it to HID protocol or output it to BT channel.
So a latency can exist there. But this latency, cannot reach hundreds of ms.
On the other hand, this latency can become way worse when the signal is not good enough.
It's actually virtual latency. Because, it doesn't receive any packets, the gap looks like a latency to our eyes.
So, because you only changed the code to not encode rumble when it is not used, this suggests that the encoding functions used are quite cpu expensive.
Additionally, the expected rumble "keep alive" behavior is to send a 00014040 rumble packet every 120ms or just 8 x30 packets received and not every packet received!
But, also when you send real rumble packets, the expected behavior is that parsing x30 and sending x10 does not lag.
So what you need to do, is to keep the calculation for testing reasons and try to simplify and use an inexpensive calculation. And then, remove encoding for muted rumble.
(For example, Joy-Con and Switch use around 8 look up tables to do the maths needed).
The most important that I forgot to say, even in dekuNukem's github (because it actually considers how Switch is handling Joy-Con traffic):
When Switch plays HD rumble, it sends rumble packets every 15ms instead of 5ms which the bnvib are defaulted. The Joy-Con support even lower than 5ms x10 packets, but the fastest rate Switch sends, even if only one Joy-Con is used, is 15ms.
Switch does this to not congest the BT channel.
The problem is that Switch uses look up tables to change the original values, smooth them and receive the same or even better results from the LRAs and I can't seem to make a lot of sense from them.
Lastly, as you can understand, using 2 ReceiveRaw(), you cut the work in half by having a packet ready for parsing/proceeding every 30ms. But also, you send a rumble packet only every 30ms.
(Poll() repeats: Send rumble --0ms> Read packet --0ms> Read packet --15ms>)
Summary:
Your library lags, because you send x10 keep alive packets every 15ms instead of 120ms and also your rumble encoding math is too expensive.
How to fix:

Send rumble "keep alive" (00014040) x10 packets only every 120ms or 8 x30 received.
Will fix all problems completely (when you don't "play" HD rumble).
When hd rumble is really used, cut the packets sent to 15ms.
15ms will still lag your library so you need to also do the following:
Try to find inexpensive HD rumble encoding math.

Always remember, that the BT adapter plays a big role on all of these. In my case, I don't see a lag bigger than 30ms, and I'm amazed to know that my crappy usb BT adapter can handle this much traffic.
I don't have time to proof read my comment and check if everything makes sense,
if you don't understand something, or I wrote something wrong, tell me.

@gb2111
Well actually I'm talking about parsing mostly. It doesn't matter what you do on your front end, the JoyconLib receives packets every 15ms. It's threaded so it does not matter how fast or slow your timer is.
And the parsing is happening only when you call the j.ToString() and JoyconManager.Update().
These 2 functions are called only when your timerUpdate fires off. The problem with that timer is that it has a low accuracy. Even though you have it set to 16ms, it fires off randomly between 9-20ms (sometimes 30ms) in my case. That means that sometimes you lose some packet parsing, because 15ms passed and it was replaced by a new one.
Summary:
We now know that the actual big lag comes from the library (Poll()).
That's why, as you said, you can see almost the same lag from Raw and from the timer.
But your frontend has some additional lag. Not important (but unneeded in my opinion).
If the library is corrected, you don't need to do anything additional.
Maybe lower the timer interval to 15ms, to match the actual x30 report rate.
(It's every 15ms (66.6Hz), not 16ms (60Hz)).
If you want to go the extra mile and make a flawless frontend, synchronize your parsing with JoyconLib:
Remove the timer and add an interface so JoyconLib can signal your frontend that a packet was received. When the signal is received, call joyconManager.Update() and UpdateInfo() to parse it and process it right away.

@CTCaer Thanks a lot. Yes, I need to update the library to reflect the recent new discoveries about HD rumble, and not constantly sending rumble packets should be very useful to kill congestion.
@gb2111 I just remembered that my housemate has a Gear VR, so I will look at your library sometime this week and try to ID the data coming out.

@wormyrocks  many thanks for that !!!
@CTCaer
for testing purposes I am updating one button in (this line)[https://github.com/gb2111/JoyconLib-4-CS/blob/master/src/Lib/Joycon.cs#L300] in ReceiveRaw call. It is not further processed in Update.
That means for me is 100% evidence that lag problem has nothing with processing timer but is purely about data being accessed from bluetooth/file.

@gb2111
That's what I said in my last comment. The lag comes from Poll() in JoyconLib.
Your frontend does not have lag exactly. What I mean is that the timer is a little inconsistent on triggering the values/UI update.
Some times it updates faster (9ms) than the interval (16ms) other times slower (30ms). Normally it should update every 16ms but this is not the case. As I told you, this is because of the low timer accuracy.
If you want to look at real numbers based on your PC replace MainForm.cs with one of these:
Measure real trigger interval of timerUpdate based on High Precision Stopwatch timer:
https://mega.nz/#!4B0w2brS!ZHvC8FRB0uCFnwk0EwtB581mfW4dds1Q15TGvb9Eiwc
Measure execution time for joyconManager.Update() and UpdateInfo():
https://mega.nz/#!gZVUBSBC!frCXSNQTYzpM4N9HZyszvQkoTY-6UmWXhlSvOxl4gZs
The number that you'll see come only from your frontend

First off, I appreciate the work put into this project, it's really cool.
I was just wondering if anyone was able to fix the latency issue? I'm currently trying to use this library with 3 joycons in a game project.
The rumble functionality and the sensitive of the axis are basically what I'm after.
I've got the 3 joycons connected and they are working but joycon 2 and 3 have noticeable input lag.
Its a split second delay on anything I do, for both axis and button input. It also fells like joycon 2 and 3 suffer from the same amount of input lag. As if they are equally slower than joycon 1.
Once the library is setup and connects the controllers, it blocks all usage of the controllers through anything else. So I'm unable to use the controllers through unity's Input system.
I was thinking of using the library just for the rumble and then use Unity Input for everything else since it doesn't lag through Input and i'm willing to sacrifice the sensitivity, but I can't seem to do that.
Any help would be great, thanks.

I'm having the same issue. When the second joycon gets connected, no matter which one, it will become laggy or even unresponsive. But the first connected joycon remains normal.
Has anyone resolved this problem? Any help would be appreciated! Thanks!


Revert "Sumologic access to config and cloudtrail buckets (#188)"

This reverts commit 77711558c385214bbca6ad58796387c4786a0dc3.
The sumo template adds the strides account number to the bucket policy
which breaks it from allowing other accounts to write logs
to the bucket.

evaluation on this is incorrect.


Allow "eta-reducing" sides of hcom

It seems that very often, tube sides of an hcom are exactly paths that we have lying around somewhere. Can we add syntactic sugar so that if a tube side p doesn't have a binder, we automatically "eta-expand" it to [x] (@ p x)?
For example, instead of:
`(hcom 0~>1 ty a [i=0 [j] (@ p j)] [i=1 [_] a])

just write:
`(hcom 0~>1 ty a [i=0 p] [i=1 [_] a])

Or is this a bad idea for some reason? I'm not suggesting that we replace the tubes with elements of line types, but simply that we add this to the parser.

I was thinking about this some more, and one problem with this idea is that it introduces an inconsistency.
First, note that all arguments are binders; just some of them are nullary binders. Next, note that the syntax for a nullary binder is just a term. (That is why you can write (Foo m) rather than (Foo [] m).
So, it is already possible to write [i = 0 p] in a tube, and this has a meaning that you are not expecting: namely, [i=0 [_] p].
I'm not sure how to achieve the shorthand you want without making a confusing inconsistency...

I see; I didn't realize that. Then I think there are three ways forward:

Do nothing.
In the proof theory, have hcoms take elements of line types as arguments, with subgoals like (= ty/a (@ tube r) cap).
In the proof theory, have hcoms take elements of extension types as arguments, so that the above subgoals are enforced by types. (These are like path types, except with arbitrary r = r' sides rather than only x = 0, x = 1.)

I haven't tried writing down the semantics for (3), so we wouldn't be able to enact this immediately, but at first blush I don't see any issues with these being pretypes at the very least. Thoughts? @favonia @mortberg

Maybe this is obvious, but I'll point out that we don't want the tube sides to be elements of path types, because hcom frequently does not constrain one or both y-sides of the tube, unlike in the CCHM theory.

For 2, I suppose what's written as [r=s [x] p] now must be changed to [r=s (abs [x] p)], right?

Yes; for either (2) or (3). Unless you can think of a way to have it both ways.

Honestly I really think that (1) is our best option. I suspect that other options would lead to a lot of complexity in the proof theory, since you have to apply rules to even recognize that (abs [x] base) @ 0 is the same as base. The benefit of (1) is that we have a lot of equations that hold up to alpha equivalence, rather than (2,3) where they hold only up to computational or judgmental equality (which is not for free).

Alright, but it is wont-fix-forever.


Flow is Broken?

[2018-08-20T18:37:08.538Z] [INFO] flow - Killed flow server with incorrect version in
[2018-08-20T18:37:09.642Z] [INFO] flow - Killed flow server with incorrect version in

vscode just showing this non stop
tried updatnig to 0.79.1 same issue

@bradennapier Do you have globally installed flow?

yes that is also updated to 0.79.1 - no issues until recently.

``$ flow version
Flow, a static type checker for JavaScript, version 0.79.1```

It's usually the source of problem. Try to remove it and use locally installed version.

So actually the source of the problem is that its not properly killing flow even when I leave vscode.  I have about 200 flow processes running and nothing is open :-P

FYI:
killall flow

then running vscode
[2018-08-20T18:46:28.333Z] [INFO] flow - [unknown]: Flow server in  /path/to/project
[2018-08-20T18:46:28.473Z] [INFO] flow - [not running]: Flow server in  /path/to/project
[2018-08-20T18:46:29.830Z] [INFO] flow - [busy]: Flow server in  /path/to/project
[2018-08-20T18:46:54.737Z] [INFO] flow - [ready]: Flow server in /path/to/project


redirecting on OSX

Hey,
I installed via Homebrew and added the export path and got the following error when running source ~/.zshrc
nohup: redirecting stderr to stdout

dup of #16

Should be fixed in #25. Can you confirm? I'll close this until then assuming it's working.


Update boa tests to work with new awesome fixture setup

What current issue(s) from Github does this address?

Integrates changes from https://github.com/CityOfZion/neo-python/pull/622 in order to speed up tests

What problem does this PR solve?

slowness in running tests

How did you solve this problem?

Updated tests to reference new fixtures

How did you make sure your solution works?

ran tests

Are there any special changes in the code that we should be aware of?

no

Is there anything else we should know?

no

Coverage remained the same at 93.014% when pulling a9a7b014eac04e5b22895b95e6a6603a23743d98 on fixture_size_reduction into 43f8111d67dfb1f8972d01761879bef4679aa607 on development.

Looks like it is now compatible: https://travis-ci.org/CityOfZion/neo-python/builds/431548657


python3Packages.flask_login: 0.6.0 -> 0.6.1

Description of changes
A new version was released: https://github.com/maxcountryman/flask-login/blob/main/CHANGES.md#version-061.
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.05 Release Notes (or backporting 21.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[ ] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 171217 run on x86_64-linux 1

3 packages failed to build:

apache-airflow (python39Packages.apache-airflow)
powerdns-admin
python310Packages.apache-airflow

32 packages built:

alerta-server
archivy
calibre-web
cura
flexget
gns3-gui
gns3-server
home-assistant-component-tests.sentry
moodle-dl
moz-phab
netbox
octoprint
openai (python39Packages.openai)
pgadmin4
python310Packages.flask-appbuilder
python310Packages.flask-security-too
python310Packages.flask_login
python310Packages.ihatemoney
python310Packages.sqlalchemy-continuum
python39Packages.django-rq
python39Packages.flask-appbuilder
python39Packages.flask-security-too
python39Packages.flask_login
python39Packages.ihatemoney
python39Packages.sentry-sdk
python39Packages.spacy
python39Packages.spacy-loggers
python39Packages.spacy-transformers
python39Packages.sqlalchemy-continuum
python39Packages.textacy
python39Packages.wandb
tribler

Looking at the logs of those build failures, I don't think they're related to this Flask-Login update.

Looking at the logs of those build failures, I don't think they're related to this Flask-Login update.

apache-airflow and powerdns-admin are both already broken.


Notify when automerge must be done manually due to changes to workflow files

The core of this PR is 240f92e: if any file under .github/workflows has been modified, then fail with the PR comment Workflow files have been modified. Please merge manually.
I need to test it. I tried to follow the instructions under scripts/ and failed, see #10.
I don't believe that I have access to the Dockerhub registry, so I don't think I can push to the dev tag.
What should I do? Any advice @chrisburr?
checklist:

[ ] tested the changes live by using the dev version of the action

Here are some feedstocks where this could be live-tested:
https://github.com/conda-forge/boto3-stubs-lite-feedstock/pull/73#issuecomment-1300458884
https://github.com/conda-forge/mypy-boto3-s3-feedstock/pull/160#issuecomment-1299944027
https://github.com/conda-forge/mypy_boto3_rds-feedstock/pull/168#issuecomment-1299682937
https://github.com/conda-forge/mypy_boto3_ec2-feedstock/pull/208#issuecomment-1299577234

@beckermr, I hadn't noticed that the checks were failing. I fixed them now. Ready for review.


instructions are missing a step for configuring id_token

Following instructions will get you this error:
AADSTS700054: response_type 'id_token' is not enabled for the application.
You must also follow steps here: https://stackoverflow.com/a/53063247/534514

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

ID: 7f1b8580-0f68-7d02-fd19-4c087e6659b9
Version Independent ID: 3b74fd46-f2af-e44d-1199-6e2494669576
Content: Walkthrough: Registering and configuring SimpleSPA application with adal.js (Common Data Service) - PowerApps
Content Source: powerapps-docs/developer/common-data-service/walkthrough-registering-configuring-simplespa-application-adal-js.md
Service: powerapps
GitHub Login: @paulliew
Microsoft Alias: jdaly

if you're getting the error mentioned above, you may subsequently face this error: “AADSTS50011: The reply address does not match the reply addresses configured”
adding the redirect uri for the registered app as suggested in this article will resolve the issue: https://www.koskila.net/how-to-fix-aadsts500113-no-reply-address-is-registered-for-the-application-error/

This won't be an issue if instructions are followed properly

@MikeStall
Issue resolved.


Any non mux router support for connectrpc?

Hi, Recently i've been using connectrpc to handle my json-rpc gateway and i realized connectrpc does not support non http.ServeMux router, right?
Let me know i'm wrong!

Connect-go does support any router that implements the net/http Handler method. For example in the docs for routing the generated handler return the route prefix and a http.Handler which can be directly passed to a server mux. See the generated NewPingServiceHandler for reference to the type signature. Closing, but feel free to ask more questions about specific routers.

So is there any solution to handle my connectrpc with gin?
Sorry but i'm a little confused😅

For gin use the WrapH to register to the gin handler. This will look something like:
router := gin.Default()
pingServiceRoute, pingServiceHandler := pingv1connect.NewPingServiceHandler()
router.POST(pingServiceRoute, gin.WrapH(pingServiceHandler))

I got it.
Thank you so much Edward😄❤🤌🏿


Can not switch non-English input method, such as Chinese input software

Oni is very outstanding, Thank you for great work.
I use Oni on windows 7, programming and write markdown.
I found it can not switch non-English input method, such as Chinese input software.
I'm coming from China, so I need input some Chinese on write markdown.
Can you help me?

@saibing, can you give a little more detail?  I don't know what it means to change the input method in vim.  Is there a command you're trying to run which fails in Oni?

Windows has a concept of an IME, which lets you use extended character sets of change the keyboard layout. In theory this should work by default in the browser with input forms, but I'm guessing because we just pick up key events, IME doesn't work correctly.
@saibing - would it be possible to get a video or screenshot of the IME you use that works outside of Oni? Thanks!

@keforbes @extr0py
I feel very sorry when I want to upload pictures to github, github reported the following error:
Something went really wrong, and we can't process that file. Try again

I think you are right, The issue should be caused by the IME event process.

i need it

I need it too.
Working on macos.

Thanks :+1:
Can you release a new version?

Will do! I'll put up an RC build today.
Thanks for helping me validate, since I don't use the IME day-to-day there could still be bugs or corner cases. Let me know if there is anything still not working.

@bryphe
Thank you very much. The chinese IME can work now.  I will use Oni as my daily-editor now. :+1:

@saibing - that's great to hear! thank you for testing it out!  keep me posted on how it goes 😄


SQL errors are discarded

The current promise implementation discards the error object, which actually has information about the error, while the transaction object does not.
below my proposed change:
DB.prototype.executeSql = function(query, args) {
  var that = this;
  return new Promise(function(resolve, reject) {
    that.db.transaction(function(t) {
      t.executeSql(query, args,
        function(t, r) {
          resolve(r);
        },
      //  function(e) {
       function(tx,err)
          console.log(err);
          reject(err);
        });
    });
  });
};

Thanks!

Sure that sounds reasonable, send a pull request and I'll merge it.


esr: remove dispatch event from re-usable workflow

The dispatch event belongs on the calling workflows.
Change-type: patch
Signed-off-by: Alex Gonzalez<EMAIL_ADDRESS>

@balena-ci I self-certify!


RecommendedCutoffMixin: store the unit of cutoffs in extras

Fixes #47
By storing the unit of the cutoffs values explicitly in the extras, it
not only will give more certainty to the user of what the cutoffs mean
because they can inspect the unit, but the get_recommended_cutoffs
method can also provide the unit argument to automatically convert it
to another unit of energy if so desired.
The conversion between units is provided by the pint library, which is
added as a dependency. Users can specify units in the API through
strings using the names that are recognized by pint. Both the
shorthand, e.g. eV, as well as the long version electron_volt can be
used. Other common energy units are Ry and Eh, for Rydberg and
Hartree atomic units respectively.
The default unit that is set when defining recommended cutoffs is still
set to be electron volt, which was the implicitly assumed unit uptil now.
Families that have been created with versions preceding this commit,
will not actually have the unit defined in the unit, but
get_cutoffs_unit will return the default electron volt if it is
missing. This does mean that the RecommendedCutoffMixinDEFAULT_UNIT`
cannot be changed or this would lead to old families to be interpreted
to have the incorrect unit.

@mbercx I served you a cold one! :beer:


Behavior gets never called

Not sure if it is a avalonia or behavior Problem. I have following behavior:
public class DoubleTappedBehavior : Behavior<TreeViewItem>
{
    public static readonly AttachedProperty<ICommand> CommandProperty =
        AvaloniaProperty.RegisterAttached<DoubleTappedBehavior, TreeViewItem, ICommand>("Command", null, false, defaultBindingMode: Avalonia.Data.BindingMode.TwoWay);

    public static ICommand GetCommand(TreeViewItem element)
    {
        return element.GetValue(CommandProperty);
    }

    public static void SetCommand(TreeViewItem element, string value)
    {
        element.SetValue(CommandProperty, value);
    }

    protected override void OnAttached()
    {
        base.OnAttached();
        AssociatedObject.DoubleTapped += DoubleTapped;
    }

    protected override void OnDetaching()
    {
        AssociatedObject.DoubleTapped -= DoubleTapped;
        base.OnDetaching();
    }

    private void DoubleTapped(object sender, RoutedEventArgs e)
    {
        if (Command == null)
            return;
        Command.Execute(null);
    }
}

I use it this way:

  <TreeView.Styles>
    <Style Selector="TreeViewItem">
      <Setter Property="commandBehaviors:DoubleTappedBehavior.Command"
              Value="{Binding Command}"/>
    </Style>
  </TreeView.Styles>

</TreeView>

The Get/Set Command is never get called. Also the attached method. Not sure where the problem is.

What version are you using official NuGet or nightly build?
Try using nightly version of Avalonia:
https://github.com/AvaloniaUI/Avalonia/wiki/Using-nightly-build-feed
and nightly version of AvaloniaBehaviors.:
https://github.com/wieslawsoltes/AvaloniaBehaviors#nuget

Currently you should use Avalonia version 0.5.2-build3857-alpha and AvaloniaBehaviors version 0.5.2-build470-alpha.

ok.

@KeKl Did you try Avalonia alpha build? Did it solve the issue?

Not yet. Im still on 0.4.x

@KeKl Please try version 0.6.0. Closing, please re-open if issue is present in 0.6.0.


Add SafeDNS Bot

Another bot hitting our test servers.
Company sells your data as a service! Claims to have scraped over 109 million websites.
Link: https://www.safedns.com/searchbot/

Coverage remained the same at 100.0% when pulling dbbde2e716a8406c7164a269885abda2dce0732e on ayumi-cloud:SafeDNS into c65ad41ee66cc126a7740d929aab706dd7304c1c on WhichBrowser:master.


Include only some fields

Can I include only some fields from a referenced content and not all object?

For a sparse fields query. You can use addFields method. The name of this method might be misleading. Use this to explicitly request for specific fields on an entity. The first parameter would be the resource entity identifier.
addFields('node--article', ['field_a.id', 'field_b.uid', 'field_c.tid'])


Defend against failures creating k8s watch.

I'm not totally sure it makes sense. There seems to be some user evidence that there might be some cases where this particular call fails but others will succeed in which case we'd only lose pipeline error dectection with this but other stuff would still work. I'm not sure if that's true though, I haven't been able to produce the errors myself.

Sure.  I don't have super strong opinion either way so feel free to merge it.

Changes in this PR:

run k8s diagnostics on startup and log results
pachctl deploy will now block until the server is up and return those log results
pachct get-logs with no arguments no returns pachd logs
remove some other log output that wasn't super useful and made the output you see on deploy too noisy


Add env variable comment to kuberay-operator

Why are these changes needed?

There are some envs in kuberay to configure its behavior. However, we currently lack the documentation. I add the env and comments in both helm and customization.
Checks

[x] I've made sure the tests are passing.
Testing Strategy

[ ] Unit tests
[ ] Manual tests
[ ] This PR is not tested :(

@kevin85421 Could you provide which env we have in the operator?

The KubeRay operator provides user-facing environment variables such as CLUSTER_DOMAIN and ENABLE_INIT_CONTAINER_INJECTION. Although there are additional environment variables available, no users have inquired about them yet.
By the way, some users use Kustomize to deploy KubeRay operator (See here for more details). Could you also add the environment variables in the YAML files? Thanks!

@kevin85421 updated the pr ^^


The documentation is obscur, Can't get lektor-tags to work properly

So basically i am following the steps described in the docs as well in the README file
here is what i've done so far :

Installation
lektor plugins add lektor-tags

Created configs/tags.ini with this config :
parent = /
url_path = {{ this.parent.url_path }}{{ tag }}
tags_field = tags
ignore_missing = true
template = tags.html

Createted templates/tags.html with the following content :
    {% extends "layout.html" %}
    {% block title %}{{ this.title }}{% endblock %}
    {% block body %}

        Tag: {{ this.tag }}
        Items:

              {% for i in this.items %}

{{ i._id }}

              {% else %}

No items.

              {% endfor %}

    {% endblock %}

edited models/blog-post.ini and added :
   [fields.tags]
   type = strings

In templates/blog-post.html i added the following to show links to the page that contain a list of all posts with the specific tag:
    {% if this.tags %}

         {% for t in this.tags -%}

              All posts tagged {{ t }}

         {% endfor %}

    {% endif %}

Finally i updated a post to contain some tags from the admin and made sure it's there in content.lr of that post. so i stopped the lektor dev server and run it again lektor servor with no errors to be present.

when i try to visit localhost:5000/{the_tag_name} say like localhost:5000/python i always get  404 Not found The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again.  i have tried everything that i thought of.
if  you i did something wrong then kindly tell me, and also can you work on documentation in order to make it  more  friendly exlpanatory and straightforward.

ping @runfalk  @goanpeca @nixjdm   @ajdavis

it was me not paying attention and focusing, sorry for the noise.


Warning React.__spread is deprecated

Warning: React.__spread is deprecated and should not be used. Use Object.assign directly or another helper function with similar semantics. You may be seeing this warning due to your compiler. See https://fb.me/react-spread-deprecation for more details.

Uncaught TypeError: React.__spread is not a function
👎


Better error message when xhr onerror

i just found xhr onerror always reject error with same message, it's very hard to find error cause.
xhr.onerror = function() {
    reject(new TypeError('Network request failed'))
}

VS

I'd also like to see more meaningful error messages but are the details of the error actually available for retrieval anywhere? e.g. in your second part of the 'VS', where does 'The resource could not be loaded because the App Transport policy requires use of a secure connection' come from, @lloydsheng ? Our clients are sometimes reporting ERR_CONNECTION_RESET and ERR_CONNECTION_CLOSED when trying to log into our web-based application, it would certainly be handy to have more error data to work with...

@bergr01 The second error message was from iOS network framework. because the latest react native direct reference the fetch package. and i found this message available retrieval from
xhr.responseText

Thanks for clarification @lloydsheng  - sounds like 'responseText' is intended for relaying the response from the server... I guess in my case (with ERR_CONNECTION_RESET/ERR_CONNECTION_CLOSED) I'm not sure if server actually had a chance to respond (e.g. if problem occurs during SSL handshake) - don't suppose anyone has any experience in programmatically getting a detailed reason for those sorts of connection errors?

@bergr01 In general, the 'responseText' is response from server. but in react native , if the error occur, the error detailed  can get from 'responseText'. i think we can make meaningful error messages with it.

At least in NativeScript on Android, I don't see xhr.responseText set in the debugger when this error occurs.  However, an Error object is passed to the onerror handler which itself contains a more detailed message.
ref NativeScript/NativeScript#2952

I have done some exploration of this.  The conclusion I came to is there is no consistent way to provide more information.  On some platforms, more information is available so an implementation that provides more information would just to code for various cases.  Granted my exploration was against browsers that have a native fetch implementation so there would exist a very slight chance that the places that need polyfill do all behave in the same manner.
To summarize:
Firefox (49.0): The passed parameter is an Exception.  The relevant information is on the name member.
Chromimum (53.0.2785.143): The passed parameter is a ProgressEvent.  The closest thing to relevant information says "error."  The XMLHttpRequest is accessible via the ProgressEvent but responseText is an empty string.  The developer console does contain an error containing relevant information, but that is outside of the executing JavaScript.
NativeScript (2.3.0): The passed parameter is some kind of Error.  The relevant information is on the message member.
React Native (inferred from @lloydsheng's comments): Unknown if a parameter is passed but you can access the XMLHttpRequest via closure.  Relevant information is on the responseText member.
According to the documentation for Internet Explorer 8, there are no parameter passed to the event handler, which near as I can tell matches the spec.  However, implementation may differ from documentation.

Thanks for the investigative work, @vossad01! Because this is obviously complex and inconsistent, I don't think there's much we can do to provide a more useful text via error message.

@mislav - can we try and do it defensively? Also, the error message for onerror and  ontimeout are exactly the same.

Not a fix, but the error can be seen in Chrome dev tools > Network tab + hover over "(failed)" cell of the XHR request

I still don't quite understand the reasons for not providing better error handling, but how about the change I show below at least?  I just lost several hours trying to call a server only to find out XMLHttpRequest was burying an invalid certificate error.  By the time the error got to my onerror() handler, the error object was undefined.  Although I'm guessing that my attempt of adding an error object to the onerror() function was futile.
In the meantime, I altered the code in XMLHttpRequest.js to at least dump an error message to the console.  That would have saved a lot of head scratching:
  /**
   * Called when an error is encountered to deal with it.
   */
  this.handleError = function(error) {
    this.status = 0;
    this.statusText = error;
    this.responseText = error.stack;
    errorFlag = true;
    setState(this.DONE);

    // ROS: Prevent error from being swallowed invisibly on route to the onerror handler.
    console.error(`ERROR: XMLHttpRequest - ${error}.`);
    this.dispatchEvent('error');
  };

I'm fine for now with this change, but obviously the next time I update the NPM package, I'll have to remember to reapply this change.

@roschler You can use patch-package to automatically apply that patch


configure markdown lint

First configuration of markdown lint. We can determine which warnings we want to enable or disable from a first test run.
We can adjust what's reported by adding items from the markdown lint rules.

@jskeet Here's a PR that turns on markdown lint in our repo.
Over time, it's probably a good idea to have it on with most warnings enable. I already turned off 2 by design:

Warning on inline HTML
Warning on long lines

We use both of those intentionally.
Take a look at the warnings. See which ones are most helpful to get our markdown source to work well with the word converter.
Then, we can figure out a plan.

@jskeet
I'm think of this as a plan:

I'll update this PR to disable every current warning (due to the noise).
Once this is merged, I'll make PRs to re-enable each warning (or a set) and resolve each of those warnings.

Works for me :)

@jskeet This is ready for final review. I want you to take a look because of some of rules changes:

A couple note on the 4th commit:
MD034 is for "raw URL link". The standard contains the link to the ECMA site, which is intentional. If it helps the word converter, that can be formatted using markdown's []() syntax.
MD30 and MD31 will be the two biggest jobs.
Also, some of the warnings are generated from the markdown source in the test project. I think the right move will be to update those test sources once the associated rules are enabled.

I'll look at this on Monday if that's okay - my weekend is pretty busy.


Fix for Mynewt 633

Issue found on UPF.
I tested it with hacked mynewt controller which was able to send LL_PHY_REQ

Looks good.

This is merged


code files

Hello! I have read your paper and code and am very interested in them. Your README file is quite concise; could you possibly produce a more detailed version of the README, or release a video explaining the code files? Thank you for your efforts.

Updated README with eval/deployment instructions


Upgrade JUnit 5 5.11.3 -> 5.11.4

This PR contains the following updates:

Package
Type
Update
Change

JUnit 5 (source)
import
patch
5.11.3 -> 5.11.4

Release Notes

junit-team/junit5 (JUnit 5)
v5.11.4: JUnit 5.11.4
JUnit 5.11.4 = Platform 1.11.4 + Jupiter 5.11.4 + Vintage 5.11.4
See Release Notes.
Full Changelog: https://github.com/junit-team/junit5/compare/r5.11.3...r5.11.4

[ ] If you want to rebase/retry this PR, check this box

Suggested commit message:
Upgrade JUnit 5 5.11.3 -> 5.11.4

See:
- https://junit.org/junit5/docs/current/release-notes/
- https://github.com/junit-team/junit5/releases/tag/r5.11.4
- https://github.com/junit-team/junit5/compare/r5.11.3...r5.11.4


Proper Fluids Implementation

Fluids currently have no physics.
Blocked by MinecraftForge/MinecraftForge:8608

Will be handled in #57 once registrate is ready.

The new fluid system is added in #66


Update README.md

          2 Messages

:book:
iOS: Executed 16 tests, with 0 failures (0 unexpected) in 0.023 (0.029) seconds

:book:
macOS: Executed 16 tests, with 0 failures (0 unexpected) in 0.115 (0.123) seconds

  Generated by :no_entry_sign: Danger


Update README.md

Added additional on_attach and capabilities to nvim-lspconfig

[ ] Because this PR includes a bug fix, relevant tests have been included.
[ ] Because this PR includes a new feature, the change was previously discussed on an Issue or with someone from the team.
[x] I didn't do anything of this.

The Language server for hardhat works great with the config in the readme, but I found a couple of features missing:

Error diagnostics were being shown in the editor, but the  keybinding to open the modal was not expanding the full error.
Docstrings and signatures were not being loaded with

Both of these are a bit of a pain to work without, so added the recommended additional lines to the LSP config for neovim.
Let me know what you think.

Codecov Report

Merging #500 (3ae2b9e) into development (d85c38b) will not change coverage.
The diff coverage is n/a.

:exclamation: Current head 3ae2b9e differs from pull request most recent head 450dcf6. Consider uploading reports for the commit 450dcf6 to get more accurate results

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@             Coverage Diff              @@
##           development     #500   +/-   ##
============================================
  Coverage        53.23%   53.23%
============================================
  Files              188      188
  Lines             4824     4824
  Branches           793      793
============================================
  Hits              2568     2568
  Misses            2019     2019
  Partials           237      237


Support for Sequelize 5

Hi Team,
I'm looking to confirm if this library support Sequelize 5 as I'm keen to add it to our project. If not, any thought on what is needed to make it compatible? Happy to take a stab at the conversion.
Thanks!

Hi! As of today, the team is not really formed yet. Would you be keen to join?
Sure, adding  Sequelize 5 makes sense. I will help by reviewing your PR. Full disclosure:  I'm quite rusty on my sequelize kung-fu so the quality of the outcome will be primarily on you ;)
IIRC there were some changes in Sequelize API that affected the initialisation of the cache, but I might be wrong.

Any updates to Sequelize v5 or v6?

@Soso966  No updates so far, are you keen to give it a shot?

Yes I am willing to use it, but I have Sequelize V6


Fixes and enhancements for deploying stack with community edition

why was another review requested without any commits @j-zimnowoda ?

Minor request to use booleans if you want to initialize those.
Also can we push otomi/nodejs-helloworld:latest and use that instead of master in all the demo values (and charts/hello)?
ok I will push image with latest tag

But I have requested some changes inline in the last review and these are not addressed yet I see

Minor request to use booleans if you want to initialize those.
Also can we push otomi/nodejs-helloworld:latest and use that instead of master in all the demo values (and charts/hello)?

done

ok, last bits

Already done

it's done my friend. Thanks for review.


[WIP] api

Checklist

[ ] npm test passes
[ ] tests and/or benchmarks are included
[ ] documentation is changed or added
[ ] commit message follows commit guidelines

Affected core subsystem(s)

Description of change

Current coverage is 61.30% (diff: 61.30%)

No coverage report found for master at 4d74b2c.

Powered by Codecov. Last update 4d74b2c...411a2a9


Modify /query endpoint to work with POST and limit GET

We should modify the /query endpoint so that everything works with POST requests. We should then limit GET requests so that only SELECT and SHOW queries work there (except for SELECT INTO queries, which should only work through a POST
For the 0.13.0 release we should add the POST functionality and put a deprecation warning in the GET requests for any queries that won't work later.
After 0.13.0 is released we should then add the limitations to GET requests

The deprecated or warning message that needs to be sent back is related to #5707 which also needs that functionality. It's likely easiest to do that by adding something to the results object.

@pauldix is something like this what you envisioned?
jsternberg:[~/g/s/g/i/influxdb] $ (js-6290-query-post-endpoint *$) influx
Visit https://enterprise.influxdata.com to register for updates, InfluxDB server management, and monitoring.
Connected to http://localhost:8086 version unknown
InfluxDB shell 0.9
> kill query 4
warning: deprecated use of 'KILL QUERY 4' in a read only context, please use a POST request instead.
ERR: no such query id: 4

Of course, we would modify the influx client to use a POST as part of the final PR, but I want to know if I'm heading in the correct direction.

@jsternberg sure that looks good.

I like the idea of allowing POST requests, but am strongly against disallowing GET requests for modifying queries, which muddles the relationship between our SQL-like InfluxQL syntax and the HTTP protocol.
InfluxQL syntax combines a DDL and DML for interacting with the database. In the context of interacting with the database, HTTP currently is a dumb transport for sending InfluxQL queries. Tying InfluxQL syntax with HTTP verbs is redundant to InfluxQL's built-in permissions model and adds an unnecessary relationship to the HTTP protocol.
Additionally, disallowing some queries via GET requests would break pretty much every existing InfluxDB client and require a non-trivial implementation to fully support the syntax. To add support, clients would be force to either

switch to only send queries as POST requests, or
parse the InfluxQL of every query to ensure a GET is not used for modifying queries.

To me, there are minimal practical benefits to limiting GET requests and significant costs to fully support the change. If anything, InfluxDB should service queries regardless of the verb used in the HTTP request.

@gunnaraasen I think it's a rather trivial change in most clients to change to send everything through a POST. The main client that might have a problem is javascript, but we own that so we could update it accordingly.

Changing all clients to use POST is still a significant undertaking. It still feels like there's weak justification for restricting some query statements sent with the GET verb. I've not been able to find an example of any other database with an SQL engine that takes the HTTP verb into consideration when executing a query.

Sorry, what was the reason for making golang client/v2 use POST for queries?
We use caching nginx in front of influxdb to ease its burgen, but unfortunately it doesn't work with POST requests.

The intention was to separate queries that modify the database (using POST) and those that just query the database (using GET). Select queries are supposed to use GET, but the current client isn't smart enough to have different functions for those two different queries. While this is something that's easier to fix for someone using the client, I don't know how we would fix it for the influx CLI tool.

Thanks for the explanation.
Although the change still looks unjustified to me, because it doesn't solve any problem, but just adds complication, I've found a way to cache POST requests with nginx :)
proxy_cache_methods POST;
proxy_cache_key "$request_uri|$request_body";

When can it be expected for queries that modifies the database to be disallowed when using GET requests rather than just a deprecation warning?
I think letting GET be read-only is a great way to create more reliable clients.

Not sure if this related, but I have a similar problem to what is described here https://github.com/grafana/grafana/issues/5987.
As far as I can tell, POST for queries is supported, but the query itself must always be part of the URI. Are there plans to use the body for carrying the query instead? I tried finding a features request / issue for this, but have not found anything.
Any hint is highly appreciated.


Add retry connection ability to the jobservice

The jobservice will connect to Armada via the EventClient.  There will be connection issues so we should handle reconnection in this service.

Hey team! Please add your planning poker estimate with ZenHub @dejanzele @jayofdoom @kannon92 @richscott


Custom BUILDPACK_URL doesn't work

Deploying example-perl on current Deis v2 fails:
$ cd example-perl
$ deis create --buildpack https://github.com/miyagawa/heroku-buildpack-perl.git
Creating Application... done, created guided-question
Git remote deis added
remote available at ssh://git@deis.<IP_ADDRESS>.xip.io:2222/guided-question.git
$ deis config
=== guided-question Config
BUILDPACK_URL      https://github.com/miyagawa/heroku-buildpack-perl.git
$ git push deis master
Counting objects: 41, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (36/36), done.
Writing objects: 100% (41/41), 11.10 KiB | 0 bytes/s, done.
Total 41 (delta 12), reused 0 (delta 0)
remote: 2016/03/01 04:03:39 Running in debug mode
Running git hook
read [0000000000000000000000000000000000000000,eaed0559111ca65588ec24897316faf8d9007a38,refs/heads/master]
Workflow request /v2/hooks/push (body elided)
Workflow request POST /v2/hooks/config
{"receive_user":"matt","receive_repo":"guided-question"}
got the following config back for app guided-question: {Owner:matt App:guided-question Values:map[BUILDPACK_URL:https://github.com/miyagawa/heroku-buildpack-perl.git] Memory:map[] CPU:map[] Tags:map[] UUID:9ec0e2aa-0598-44b5-8116-ef67b8b9e776 Created:2016-03-01 04:03:24 +0000 UTC Updated:2016-03-01 04:03:24 +0000 UTC}
found custom buildpack URL https://github.com/miyagawa/heroku-buildpack-perl.git
running [git archive --format=tar.gz --output=guided-question.tar.gz eaed0559] in directory /home/git/guided-question.git
remote: 2016/03/01 04:03:39 Error running git receive hook [reading /home/git/guided-question.git/build/tmp999357363/Procfile]
running [tar -xzf guided-question.tar.gz -C /home/git/guided-question.git/build/tmp999357363/] in directory /home/git/guided-question.git
To ssh://git@deis.<IP_ADDRESS>.xip.io:2222/guided-question.git
 * [new branch]      master -> master

The issue is happening because there is no procfile or dockerfile.
In V1 we detect the proctype based on the build-pack(https://github.com/deis/deis/blob/4caec61b033eaa06fa42e93fe8fac14db262ebb8/builder/rootfs/usr/local/src/slugbuilder/builder/build.sh)
i am working on to apply similar logic and find the proctype instead of throwing an error to fix this

@kmala awesome, thank you. I'm happy to review when needed.


withRelated is not working as expected

var Holding = bookshelf.model('Holding', {
    tableName: 'holdings',
    fund: function() {
        return this.belongsTo('Fund');
    }
});

I am trying to fetch a holding whose symbol is "AAPL" with the related fund whose "symbol" is "ABCD".
new Holding({symbol: 'AAPL'}).fetch({
    withRelated: {
        'fund': function(qb) {
            qb.where('symbol', 'TSTF');
        }
    }
})
.then(function(fetchedHolding) {
    console.log(fetchedHolding.toJSON());
});

This produces the following queries
{ __cid: '__cid1',
  method: 'select',
  options: undefined,
  bindings: [ 'AAPL', 1 ],
  sql: 'select "holdings".* from "holdings" where "holdings"."symbol" = $1 limit $2' }
{ __cid: '__cid2',
  method: 'select',
  options: undefined,
  bindings: [ 'TSTF', 1 ],
  sql: 'select "funds".* from "funds" where "symbol" = $1 and "funds"."id" in ($2)' }

and the following result
{ symbol: 'AAPL', id: 3, quantity: 5984774, fund_id: 1, fund: {} }

The fund selected is not the correct fund - it's just the very first fund returned by the first query.
What's the right way to do this? I do not even need the related fund, so withRelated is not necessary. Something that produces a subquery like the one below will suffice:
SELECT h.symbol          AS "symbol",
       h.quantity        AS "quantity"
FROM   holdings h
WHERE  h.symbol = 'AAPL'
AND    h.fund_id = (SELECT id FROM funds where symbol = 'TSTF');

I'm having a similiar situation, but to take this a step further:
{ symbol: 'AAPL', id: 3, quantity: 5984774, fund_id: 1, fund: {} }

I want to actually have the fund returned
ie.
Holding.where({symbol: 'AAPL'}).query(function() {
   this.where('holdings.fund_id', function() {
     this.select('id').from('funds').where('symbol', 'TSTF');
   })
}).fetch({withRelated:'fund'}).then(...


Default value for input

I am trying to set a default value to be used by the input on the initial render, but it looks like it doesn't accept it.
<input-dropdown
                        selected-item="timepickerData.selectedStartTime"
                        default-dropdown-items="timepickerData.intervals"
                        item-selected-method="onStartTimeSelected(item)"
                        allow-custom-input="true"
                >
                </input-dropdown>

In my controller I have:
timepickerData.selectedStartTime = '5:00 am';

which is also one of the suggestions available in default-dropdown-items.
Any idea what I should do to be able to render that default value?

Hi,
How did you solve the problem ?


Encoding

How to change the output data encoding? And Is it possible to view data in hex or dec format?

Sure, I can convert and transfer a byte with two byte halves, but that takes twice as long

Marking this as a duplicate #5 . We have plans to implement this in either the next release, or the one after. Thanks!

Ooh, My apologies! This question was brought up a year ago that I missed seeing it

There is use case that is different with both the double-byte case Alexander mentioned and #5 :
Some non-ASCII encodings use only one byte per character. For example cp1256 uses single byte for each character, but its values exceeds standard ASCII range. Some tools like SUDT AccessPort doesn't show proper encoding in its console, but keeps the data intact in the saved output file, so I can open the log file with a text editor (e.g. Notepad++) and set the proper encoding. This is not the case in this extension; it doesn't show the proper encoding (it's like the SUDT tool in this matter), and it doesn't save proper data in the log file.
I have two requests:

Don't let the extension mess with non-ASCII single byte characters (Just like the mentioned freeware)
Feature request: Support displaying other encodings in the serial monitor console itself


MinGW32 build fixes

MinGW-w64 provides a version of intrin.h, but MinGW32 doesn't. The GCC cpuid intrinsics are now used for both toolchains.
strings.h is now included for strcasecmp.
C++11 threads are only available in pthread-based MinGW-w64 toolchains, so mingw-std-threads is used instead. This should benefit Win32-based MinGW-w64 toolchains as well. See PR #1573.
There are still some warnings in the test programs regarding fileno, but I've opened an issue for this in MinGW32 instead of working around it here.
The benchmarks don't compile yet, but that requires updating the benchmark library to use mingw-std-threads. All other tests pass.

mingw_stdthreads should only be included if needed... Now both MinGW CI runs warn about duplicate definitions.

I've split that into a separate PR to avoid blocking this one.

LGTM


Remove report_bug call

The Issue
This call can now be removed, the app is no longer using it.
System Configuration

LBRY Daemon version:
LBRY App version:
LBRY Installation ID:
Operating system:

Anything Else

Screenshots

Internal Use
Acceptance Criteria

Definition of Done

[ ]  Tested against acceptance criteria
[ ] Tested against the assumptions of user story
[ ] The project builds without errors
[ ] Unit tests are written and passing
[ ] Tests on devices/browsers listed in the issue have passed
[ ] QA performed & issues resolved
[ ] Refactoring completed
[ ] Any configuration or build changes documented
[ ] Documentation updated
[ ] Peer Code Review performed

done in #1984


EDS Power BI template - større spenn i farge skalaen

Email received from Christophe Roth Maingourd 07.09.22:

I responded that I could make a feature request on his behalf, and that we have an issue to revisit data visualization colors, but has not been prioritized yet. https://app.zenhub.com/workspaces/equinor-design-system-604f57c09e350a0011b654f4/issues/equinor/design-system/2254

Rebecca has collected a lot of good background material. I have started with the work of building all graphic variants (columns, curves, pies etc.) to test out new colour palettes. What works on one does not work on others. The thin curve diagrams in particular create challenges. Alarm colours should be avoided, as this limits the colour palette a lot. In addition, the colours should be perceived as equal value (if you don't want to highlight one/several). This is particularly challenging, because it limits the use of light/darkness etc.. But we will find a way!

https://statoilsrm.sharepoint.com/sites/Designsystem/_layouts/15/Doc.aspx?sourcedoc={4777fb48-6bb9-4fce-87a7-8a526aa7057c}&action=edit&wd=target(Pre work - examples in Equinor.one|b76bc972-d15c-433a-9464-609ffe53a029%2FDashboards|d05896b6-80e9-4222-9a02-0d410dd40716%2F)&wdorigin=NavigationUrl

Another request from a Power BI user came in last week. I will let him know we have some work in progress: From: Yousef Shahin<EMAIL_ADDRESS>Sent: Friday, November 4, 2022 3:30 PM
To: Rebecca Sue Brekke<EMAIL_ADDRESS>Cc: Timothy DeJesu<EMAIL_ADDRESS>Subject: Equinor Power BI Template
Hi Rebecca,
I hope this message finds you well, and great job setting up the EDS Power BI Template. It is a great introductory tool and super easy to follow.
I am reaching out in the hopes that you can suggest what I should do to expand the number of 'Equinor Colors' to select from within power bi. When applying the Equinor Theme to some charts with a large number data series, it will take this variation of colors:

And iterate through all the data series to create a chart that looks like this:

As you can see the colors are a bit redundant, so I am wondering if there is any way around this so that we can still use the Equinor Color theme but have a wider variety of colors that are more easily distinguishable.
Thanks!
•	Yousef Shahin

@benteljones
There is a new colleague that I have had some meetings with that has been hired to work on analytics and data visualization best practices, guidelines, learning. We discussed ongoing work here in EDS, and she recommended some material that could be useful. Will paste it in here:
From Laura Garrison:
This writer is fantastic, and here are a few useful links that the designer you mentioned may find useful
https://blog.datawrapper.de/colors-for-data-vis-style-guides/#include-brand-colors (this is the link I mentioned on our call, and this entire article is really wonderful).
https://blog.datawrapper.de/10-ways-to-use-fewer-colors-in-your-data-visualizations/
What I would love to do in my role here is to condense a lot of the points she makes across these blogs that are really Equinor-specific, and then as "further reading" link out to the source links (so she gets the credit she deserves, as well as for people here who are just really interested in the topic).

Another comment - there is something called WebViz in Equinor that I haven't hear that much from lately, but a few years ago they were looking for more distinct colors to use and would go away from brand. They decided to use to the d3.schemeCategory10 ones that are here:
https://github.com/d3/d3-scale-chromatic#schemeCategory10

Great if we can test a proposal in P BI together, @trondeide 😊

The program's limitations create major challenges in meeting the various needs of the users. But we will create a simplified solution at this stage and then we have to follow this up with more tasks, guidelines and examples little by little.

Before we can do a proper review, @trondeide  and I have to learn about the program's limitations. We also open a new task;  guidelines how the colours should be used. This is a big task, because it depends on many different contexts.


Forces end date to be actual end of day

Signups/reportbacks made on the actual day of the end date are not included in the loop

:+1:


Provide explanation for difference between normal CSS declaration and jQuery call

On reading

$("#target1").css("color", "blue");
This is slightly different from a normal CSS declaration, because the CSS property and its value are in quotes, and separated with a comma instead of a colon.

And not knowing about JS yet, I'm sure I'd ask "Why?"
Suggest "'css("color", "blue");' is "passing" values to the CSS engine for it to change them, rather than you changing them directly (as we've been doing so far)."

I don't think this is necessary. JQuery and CSS and very different things with completely different syntax. We show the correct syntax in the example so if users are following along with the instructions there will be no problem. Thanks and happy coding!


Share Visual Studio Settings

Hi Team as a newcomer I just faced issues formatting my code in VS and creating a pull request.
To be more specific I messed with tabs/spaces, spaces after if()/for() issue in this pull request https://github.com/MetacoSA/NBitcoin/pull/244
My suggestion is that someone of core contributors can to share their Visual Studio settings for the project ( with a link/short description somewhere in Read.ME), to avoid such situations for newcomers.
What do You think?
Thanks

I think this has already addressed in #245

Bummer :)
Let's close it then


Expose sub-paths for CDN's

Hello, thanks for the amazing library, We are trying to use this in a project here with deno. And we are using import-maps and CDN's for the dependencies.
Currently the project is bundles as common-js and exposed using main filed. So, the CDN's use this as entry and construct a map and expose them to the clients. And  i noticed few modules are not exposed in package.json. So, these won't be resolved in serving.
You can check the export-map for the current nano-jsx here
<EMAIL_ADDRESS>"exports": {
    ".": "./lib/index.js",
    "./lib/index.js": "./lib/index.js",
    "./lib/index.js!cjs": "./lib/index.js"
}

PS
If the maps are merged, if users want to import hooks. They can do by
import { useState, getState, setState } from 'nano-jsx/hooks/useState'

Instead of
import { useState, getState, setState } from 'nano-jsx/lib/hooks/useState'

we can keep it that way too, if the lib inside the path is preferred

Thanks for your PR. I'm not a fan of exports. It comes with too many restrictions. I would prefer shipping Nano JSX as esm instead of cjs. With TypeScript v4.6, this will be even easier.

Even if the package is converted to esm.  It still need to use exports to expose. Unless, if the hooks and other files are imported and re-exported in index.ts. I can give a try and double check though, if we can  do the same without exports 👍

Now i updated it to use browser field. Which shouldn't effect any import resolutions. But just exposes different files that are not exported from the main field.
https://docs.npmjs.com/cli/v8/configuring-npm/package-json#browser
Example from emotion-js
https://github.com/emotion-js/emotion/blob/main/packages/styled/package.json#L52

Thanks. I will have a better look at cdn for esm and the browser field in mid January.

Thanks. I will have a better look at cdn for esm and the browser field in mid January.

Cool, no problem. Take your time 😃.
esm is not mandatory for the cdn's. As usually they convert cjs into esm after detection. It's more of exposing the files itself.

@yandeu done, updated the fields 👍


Change username

Maybe would be nice to add this option to add an ability to change an username after registration via 3rd party services. It could be in UCP -> Connections or during registration, not sure what would be the best place.

Better be during the registration.
A username is essential to a registered user in MyBB system. We can't have duplicated usernames or bad usernames.
I suggest place a form for the 3rd party logged in user to set up their desired username just after they have been verified but before a record is inserted the users table. Also, we have to remember this connection's status, which is the user is not actually in MyBB database, if they don't set up a username. Just keep that record in the isango.
This is my preferred way handling 3rd connections, requires a  moderate login logic change for current version.

bad or duplicate usernames - there wont be any duplications... but "bad" username - it is cannot be handled automatically, because what is bad? Inappropriate language?

username should be changed (selected) during registration process, if not changed -> set the default one as it does now.

* bad or duplicate usernames - there wont be any duplications... but "bad" username - it is cannot be handled automatically, because what is bad? Inappropriate language?

Sorry, I don't make it clear. MyBB does its job to filter duplicate and "bad" usernames (bad word filter, etc.) by the UserDataHandler when inserting a user to MyBB. So Isango should just care about what to insert and when to insert.

* username should be changed (selected) during registration process, if not changed -> set the default one as it does now.

You make the point, "username should be selected during registration process". Whether or not a user can change its username is also a MyBB user permission. I think we are far away from Isango's origin when talking about changing username.
As a user is not in MyBB database, and it logged in through 3rd party OAuth/2 services using Isango, it must go through its registration process to become a user that will be inserted into MyBB's users table. Since a user may just try to omit or bypass the step of providing a correct username with a verified email (regarding #30), it can't be inserted to the users table.
I don't know if I make my words clear. I mean, not all OAuth/2 services provide correct email, and username is so essential to MyBB, so we better not have logged in but not registered user in MyBB's users table directly, before the user can provide its username, and validate its email.
I suggest let Isango handle sessions of users logged in through 3rd party OAuth/2 services:

If they have MyBB accounts, continue logging them in as MyBB users.

If they don't have MyBB accounts, always show them a customized registration page.

Really hope Isango can go that strong. I'm looking forward to extend it with WeChat, which would probably return a cellphone number if the user is not registered with an email (as I've said here).

If you look at the plugin code the plugin predicts the possible usernames based on the available received data as of now; checks availability one by one and applies the available one while creating account.
https://github.com/mybbgroup/Isango/blob/master/upload/inc/plugins/isango.php#L348
It uses MyBB native method to purify the decided username as well, on the fly.
https://github.com/mybbgroup/Isango/blob/master/upload/inc/plugins/isango.php#L429
It also passes through UserDataHandler and prompts ant error encountered evaluating through that class.
https://github.com/mybbgroup/Isango/blob/master/upload/inc/plugins/isango.php#L389

@yuliu feel free to open a PR with a new provider, also another enhancements are welcome too

Authenticating with SMS will be hard as I am not aware of any FREE SMS delivery API as on date. All existing ones got taken down. Few left and those are full of ads / spam.
If phone number verification can be implemented then I will look at Telegram for sure.

I am not against SMS verification, but it seems to be very complex...and thats not the main goal for Isango. It should be simple social login system.
Maybe in future but not in 1.1.0

Sorry, I think my poor English prevents others from understanding my posts :flushed: . But...
@effone, enlighten me please. I just read Isango "give" a username to a new user logged in through OAuth/2. The logging will halt with unavailable usernames. Rather than this, why not place a username input box for user.
Sorry, My idea was not that simple. Have a look at the "I suggest let Isango ..." part. I hope Isango takes the most part of control before a user is really registered (has a record in users table), with a properly selected username (hopefully by the user itself) and a valid email address (some 3rd party OAuth/2 services don't provide or provide an invalid one).
When we can deal with invalid email address provided by 3rd party OAuth/2 services, we can also deal with none are provided through OAuth/2. Just force the user to set up its email, the same way we want it to set up its username.
Uhh, I don't mean the SMS verification. It's not what the OAuth/2 does, should not be what the Isango does. I was trying to remind you that some OAuth/2 services use phone number as their account identity and SMS to do their verification. Then, email is lacking when Isango fetch information from those OAuth/2 services.
@Eldenroot, I'd really love to. Just as I've said, the OAuth/2 that I want to add doesn't return email info for users :rofl: . Besides, my site is running with a PHP version under 7.1. Is PHP 7.1 really the minimum?

Yes, PHP 7.1 or newer is required. You should update ASAP, we wont support older version, srry- it could bring a lot of issues with coding in future.

About the second part - so you just want to load additional info via oAuth to get more data - sms verification etc?

About the second part - so you just want to load additional info via oAuth to get more data - sms verification etc?

No, I don't mean anything relates to SMS verification. Take WeChat for example to clarify:

WeChat provides OAuth/2.

Users can register WeChat account by either email, phone number, Facebook (outside mainland China), and QQ(like ICQ).

Most WeChat users are from QQ (QQ and WeChat are properties of Tencent Inc.) and registered by phone number.

If a user is trying to register a WeChat account through phone number, WeChat use SMS verification.

OAuth/2 by WeChat returns neither email nor phone number for a user.

Yes, PHP 7.1 or newer is required. You should update ASAP, we wont support older version, srry- it could bring a lot of issues with coding in future.

Ah.. OK, I understand this. Was assuming it just keeps with MyBB 1.9 which requires 7.1. I'm on an old OpenVZ only supporting old Linux kernel, and I don't want to compile PHP myself so rely on the system's build. Hope they can upgrade the container service. Off-topic done.

It is planned


Fix verify logs repetition

What this PR does / why we need it
Reopening this PR after https://github.com/in-toto/go-witness/pull/317 needed reverted due to issues with the attempts at limiting memory search invocations.

I am unsure whether changing the interface is the right way to go here, but figured I would raise the pull request for review anyhow.

If you cherry-pick the two commits from https://github.com/in-toto/go-witness/pull/345 onto your branch, this does indeed break policy evaluation when we need to search for back refs.

@mikhailswift thanks for review here.
I will set as a requirement for this PR that we have an improvement to the current tests.

Update: I am converting this to draft as @mikhailswift has highlighted some still existing issues with the code change. On top of that, additional tests should be added before this is ready for final review and merge.


[BUG]: Python 3.12b1 support

Problem description
Python 3.12 refactored the layout of the long object. The following patch is needed to compile modules against 3.12 (3.12b1 is the latest version as of this report). Unfortunately I won't have time to provide a properly tested PR that does the right thing with both the old and the new layout, but I'm creating this issue so this can at least be tracked.
--- common.cpp.orig     2023-05-30 04:18:52.879564557 +0000
+++ common.cpp  2023-05-30 04:18:57.819527549 +0000
@@ -824,7 +824,7 @@
             Py_ssize_t size = Py_SIZE(o);

             if (size == 0 || size == 1) {
-                digit value_d = lo->ob_digit[0];
+                digit value_d = lo->long_value.ob_digit[0];
                 T value = (T) value_d;
                 *out = value;
                 return sizeof(T) >= sizeof(digit) || value_d == (digit) value;
@@ -835,7 +835,7 @@
                     return false;
             } else {
                 if (size == -1) {
-                    sdigit value_d = - (sdigit) lo->ob_digit[0];
+                    sdigit value_d = - (sdigit) lo->long_value.ob_digit[0];
                     T value = (T) value_d;
                     *out = value;
                     return sizeof(T) >= sizeof(sdigit) || value_d == (sdigit) value;

Reproducible example code
No response

It's already fixed on the master branch as of https://github.com/wjakob/nanobind/commit/7549d16191adf87816001dc7fa2bb5876d07a167. The details of the fix are a bit more complicated than the diff you posted since one isn't supposed to call Py_SIZE(o) anymore. Instead, Python 3.12b1 exposes the functions PyUnstable_Long_IsCompact and PyUnstable_Long_CompactValue that encapsulate this more complicated logic.

Oh, thank you! I should have looked at master before posting this, my bad.


Compile error

Bug description:
When I try to compile i am getting those erros.
Can you guys help me ?
node_modules/react-native-webview/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewManager.java:725: error: method does not override or implement a method from a supertype
@Override
^
node_modules/react-native-webview/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewManager.java:785: error: incompatible types: String cannot be converted to int
super.receiveCommand(root, commandId, args);
ext {
buildToolsVersion = "31.0.0"
minSdkVersion = 21
compileSdkVersion = 31
targetSdkVersion = 31
}
Environment:

OS: Ubuntu
OS version: 20.04.1
react-native version: 0.60.6
react-native-webview version: 11.23.1

I believe react-native-webview 11.22.0+ requires at least React Native version 0.61.0. Please try upgrading React Native or downgrading React Native Webview.


Idea for new ruleset: identify copy of elements

I often see that elements are copied in the flow and the API Names are not corrected. This leads to a lot of copy_of_elements which is not clean. A check could help here.

Hey Ruben, below I created two screenshots for you. The original element is called flServices. When I clone it the new element is called Copy 1 of flService.

If you have multiple such copies of elements, checking the Toolbox Resource Tab and finding the correct one may be messy. Apart from that, this would also not be the way in apex to call a variable copy_1_of_accountList :-)

this has been merged in the latest version of the core


@include and temporary tables

System information:

Operating system (distribution) and version: Windows 10 1909
DBeaver version: <IP_ADDRESS>002011957

Connection specification:

Database name and version MySQL 5.6

Describe your question:
I have created some basic sql scripts that I use to filter objects from my database. In these scripts I create temporary tables, and when I include them in my actual script using @include, I want to access the temporary table. So I only have to write the filter once and can use it in my different scripts.
This worked without problems in older versions of dbeaver, but not anymore. It seems as if the included script is executed in a separate connection to the database, so the actual script can't access the temporary table.
What am I doing wrong here? Is there some setting to force the desired behaviour?

Sorry for the long answer. Is it still actual for you?
Is it possible to give me Script example?

Yes it is still actual for me. I'll build a little example next week.

Thank you. Will wait for

Issue hasn't been updated more than a month. If it is still actual for you - feel free to reopen the ticket with additional info that could help us to investigate the issue.

Sorry it took me so long to answer.
In the meantime I use DBeaver version <IP_ADDRESS>005311732 and the behaviour changed a bit.
I have two files:
use.sql
@include "create.sql"
SELECT v1, v2 FROM temp_table;

create.sql
DROP TEMPORARY TABLE IF EXISTS temp_table;
CREATE TEMPORARY TABLE temp_table
SELECT 1 AS v1, 2 AS v2;
SELECT * FROM temp_table;

If I execute use.sql, a tab with create.sql is opened and I get this errror message:
SQL-Fehler [1146] [42S02]: Table 'bn3.temp_table' doesn't exist

But apparently create.sql isn't executed - the newly created tab doesn't show a result. And in this tab create.sql can't be edited - I can select the text but not edit it.

Please disable function Open separate connection for each Editor. It should help.

@kseniiaguzeeva Thanks at lot, that was the hint I needed. I had not noticed this option before, although it seams to exist way longer  than I use dbeaver.


Unable to use dynamicPublicPath and specify port

Hello,
I have a use case where I need to use the dynamicPublicPath and have the ability to specify a custom port.
So, something like this:
'webpack-hot-middleware/client?dynamicPublicPath=true&path=__webpack_hmr&port=3000'
If my dynamic public path is set to /f9c5a3a910/, I'd like the client, with above entry point, to connect to: http://localhost:3000/f9c5a3a910/__webpack_hmr

The simplest way to do this right now would be to try and add the host and port into the dynamic public path in dev mode.
Otherwise I would accept a PR that made this possible, but i’m a bit wary about making the options any more complicated than they already are


How to encode polkadot or kusama

hi,
  server.post<{ Body: { pay: string, address: string } }>("/worker/polkaAddress", async (request, reply) => {
    let { pay, address } = request.body
    const keyring = new Keyring({ type: 'sr25519' });
    let result = ''
    if(pay == 'dot') {
      result = keyring.encodeAddress(address, 0)
    }

    if (pay == 'ksm') {
      result = keyring.encodeAddress(address, 2)
    }

    return { address: result }
  });

like params:
{
    "pay": "ksm",
    "address": "1pGQG4seTdnWdTsPVBNbXUVPrsLP1zcLZKK9oWN3RprAC31"
}

result:
{
    "address": "DPavF9gR3PEpkGoCYwRML1Lgq9vVPFeiSRaPAnxy91pisj1"
}

keyring.encodeAddress(address, 2)  how to achieve use sr25519? thanks.

You should submit the issue to polka js.

ok, is now using @polkadot/keyring, I use ruby to call directly, thank you for your help💗


Check result of set_protocol_version() and use the version passed as argument

This pull request is ready to merge

Merged to the feature branch. Thank you for your contribution.

Merged to the feature branch. Thank you for your contribution.

No problem at all. Check on the delete the yml file another contribution.


Transient Pool

/**
 * @brief ReusablePool of memory::buffers that are used as reusable reference-counted monotonic memory resources
 *
 * TransientPool is a ReusablePool of memory::buffers from which smaller buffers are allocated similar to a monotonic
 * memory resource, i.e. pointer pusing stack; however the TransientBuffer or Transient<T> object pulled from the pool
 * hold a SharedReusable<memory::buffer> which keeps the entire monotonic stack from returning to the ReusablePool
 * until all transient objects created on a given stack are deallocated.
 *
 * Allocation of Transient object should be incredibly fast; even faster than the Reusable/SharedResuable on which they
 * are based, since a single Reusable<memory::buffer> might back 10s-1000s of allocations depending on size.
 *
 * It is critical that all Transient object allocated from a pool have similar life cycles
 */

@dagardner-nv - i added explicit move constructors and assignment operators since the default ones do not play nice with raw pointers.
I also added the ability to pass arguments for the await_object<T>(...) call.
Let me know if you think of any thing I might have missed.


TetherUS - USDT support?

We are game developer. Now we want to receive & send TetherUS - USDT (Omni Layer Protocol) coin between diff account addess.
Can I use your library & apis to do this ?
Thanks for your support

Of course you can, TetherUS(USDT) is based on omni layer which property id is 31. https://omniexplorer.info/asset/31


dsn_class v.0.3.0 fix 1

Changed ReplayChain to detect length from self.check_len (own counter) rather than relying on death counter. This sacrifices some time (O(n) now instead of O(1)) but will likely fix #264.

Nicely done! How did you get the issue to appear like that?


Using PProf.jl on JupyterHub

Hi,
I'm trying to get PProf running on a JupyterHub. Unfortunately, I cannot access the webserver that is started in the background due to firewall restrictions.
However, I can mount the remote directory on my local machine. Which commands do I have to use to visualise the allocations with pprof using the alloc-profile.pb.gz?

You can use PProf.refresh(file="...") to open a new file in the server (and start it).

Thanks for the quick answer! This works perfectly.