[BUG] Multiple OAK-D devices not closing properly

Describe the bug
When using multiple OAK-D devices when closing the devices with USB3 the final device will not close properly (meaning you can't create a new Device from it). This is resolved by powercycling.
To Reproduce
Steps to reproduce the behavior:

Run script: https://github.com/luxonis/depthai-experiments/tree/master/gen2-multiple-devices
Observe "Connected to XXXXXX" in the console twice
Quit the script (press q, or CTRL+C, either results in the same issue)
Re-run the script
Observe "Connected to XXXXXX" in the console once - potentially followed by an error in the format:
RuntimeError: Failed to find device (14442C1041A809D100-ma2480), error message: X_LINK_DEVICE_NOT_FOUND

Expected behavior
Running the script multiple times works as the same every time without a need to power cycle.
Screenshots

Attach system log
{
    "architecture": "64bit WindowsPE",
    "machine": "AMD64",
    "platform": "Windows-10-10.0.19041-SP0",
    "processor": "AMD64 Family 25 Model 33 Stepping 0, AuthenticAMD",
    "python_build": "tags/v3.9.4:1f2e308 Apr  6 2021 13:40:21",
    "python_compiler": "MSC v.1928 64 bit (AMD64)",
    "python_implementation": "CPython",
    "python_version": "3.9.4",
    "release": "10",
    "system": "Windows",
    "version": "10.0.19041",
    "win32_ver": "10 10.0.19041 SP0 Multiprocessor Free",
    "uname": "Windows Johns-New-PC 10 10.0.19041 AMD64 AMD64 Family 25 Model 33 Stepping 0, AuthenticAMD",
    "packages": [
        "depthai==<IP_ADDRESS>",
        "numpy==1.20.2",
        "opencv-contrib-python==<IP_ADDRESS>",
        "pip==21.0.1",
        "setuptools==49.2.1"
    ],
    "usb": [
        "No USB backend found"
    ]
}

Additional context
The problem does not occur when usb2Mode=True

Thanks for the report @John-Dean .  And sorry about the trouble here.  We will try to reproduce and then debug.  One thing I'm pondering is if this is particular to Windows, or if this impacts all OSes.  In Windows we use a different USB implementation than all other OSes (which are libusb based).
CC: @Erol444 on this.

Hi Brandon,
I've tested this on Windows both with the included USB cables and with my own and found the following.
I can replicate the issue regardless of the USB port and cable used, however if I mis-match USBs (so that one is connected to the processor directly and one to the chipset (I've tested on X570 and Z170)) I can replicate this basically every time, whereas if they are both connected via the same method (i.e. both via chipset or both to processor directly) then it happens less frequently.
From this I agree this is probably a USB implementation issue on Windows.

Thanks, @John-Dean ,
Very good data to have.  Thanks for taking it all.  And agreed, seems like this is the case the it's a USB implementation on Windows.    @Erol444 and I synced offline and he's going to be digging into this this afternoon.
Thanks again,
Brandon

Hello @John-Dean,
thank you for reporting this issue. I have done some testing on Windows, however only had 1 such case out of ~50. I believe that is the case if you try to re-run the script without a bit of delay. Did you run the tests without a delay? Does this occur as well when you have 5/10sec in between the tests? One workaround would be to just wait for the amount of devices you have connected, or get IDs of all connected devices and try to "manually" connect to them one-by-one. We will continue to monitor this issue.
Thanks, Erik

Hi Erik,
The majority of my tests were done with about 5s delay, but a few with around 60s. For me it seems to trigger consistantly and once triggered it won't go away without a power cycle.

Apologies, just saw the end of your reply:

One workaround would be to just wait for the amount of devices you have connected, or get IDs of all connected devices and try to "manually" connect to them one-by-one. We will continue to monitor this issue.

If I try this I get the following:
RuntimeError: Failed to find device (14442C1041A809D100-ma2480), error message: X_LINK_DEVICE_NOT_FOUND

Thanks.  I don't know the code well - so I'm at high risk of being wrong - but I think that actually using the ID alone is what is needed, as per here, so just "14442C1041A809D100" instead of "14442C1041A809D100-ma2480".
https://docs.luxonis.com/projects/api/en/latest/tutorials/multiple/#selecting-a-specific-depthai-device-to-be-used
That said, perhaps the error message is what is appending that -ma2480 to the end, and if so - sorry about the incorrect response here.  :-)
And as a heads up @Erol444 is in Europe, so he'll likely be back on early in the morning our time to reply.

I'm in Europe also, so no issues there!
Yes, I believe it's the error adding that - at least I think it's not in my code!

Really interesting. Did you follow the instructions from the docs? Otherwise I would love to see your code as well and check if it works on my machine:)
Thanks!

I'll grab the code I am using towards the end of the day (working my day job at the moment :D).
Basically my end game goal is to grab the depth feed of 2/3 cameras in as close to real time and as high framerate (with API v2 I can't seem to get a depth output at >60fps, but I haven't really messed around with this either) as possible, then convert it to a point cloud.
I want to then run multiway registration (http://www.open3d.org/docs/latest/tutorial/pipelines/multiway_registration.html) on the pointclouds (I'm only using pointclouds here because the documentation is for pointclouds, but in the long run I want to skip this and just use depth images directly) to create a combined 3D point cloud akin to: https://www.youtube.com/watch?v=ZXEWylZ9srM
There are loads of applications for a real-time scanned 3D scene like this, use in fashion to preview clothes on people, use in VR (how I wish to use it) for better room scale tracking and 3D object identification and pose estimation (such as identifying and allowing you to pass through objects into VR like water bottles,  tennis rackets, pets - so you don't stand on them!) and if you could drone mount the cameras with this setup you could do full 3D scans of buildings and environments with ease.

So after some cleanup of my code I have the following three python functions (it's very similar to the https://github.com/luxonis/depthai-experiments/blob/master/gen2-multiple-devices/main.py code)
(Using cv2, depthai and contextlib as imports)
The create_pipeline function creates and returns a depthai pipeline that has colour and depth outputs called rgb and depth
def create_pipeline():
	# Start defining a pipeline
	pipeline = depthai.Pipeline()

	# Define a source - color camera
	cam_rgb = pipeline.createColorCamera()
	cam_rgb.setPreviewSize(600, 600)
	cam_rgb.setBoardSocket(depthai.CameraBoardSocket.RGB)
	cam_rgb.setResolution(depthai.ColorCameraProperties.SensorResolution.THE_1080_P)
	cam_rgb.setInterleaved(False)

	# Define a source - two mono (grayscale) cameras
	left = pipeline.createMonoCamera()
	left.setResolution(depthai.MonoCameraProperties.SensorResolution.THE_800_P)
	left.setBoardSocket(depthai.CameraBoardSocket.LEFT)

	right = pipeline.createMonoCamera()
	right.setResolution(depthai.MonoCameraProperties.SensorResolution.THE_800_P)
	right.setBoardSocket(depthai.CameraBoardSocket.RIGHT)

	left.setFps(60.0)
	right.setFps(60.0)

	# Define a source - depth camera
	depth = pipeline.createStereoDepth()
	depth.setConfidenceThreshold(200)
	left.out.link(depth.left)
	right.out.link(depth.right)
	depth.setOutputDepth(True)

	# Create output
	xout_rgb = pipeline.createXLinkOut()
	xout_rgb.setStreamName("rgb")
	cam_rgb.preview.link(xout_rgb.input)

	xout_depth = pipeline.createXLinkOut()
	xout_depth.setStreamName("depth")
	depth.depth.link(xout_depth.input)

	return pipeline

The get_all_cameras function takes a pipeline and returns a list of devices, a list of rgb source queues and a list of depth source queues.
def get_all_cameras(pipeline):
	devices = []

	rgb_sources = []
	depth_sources = []

	for device_info in depthai.Device.getAllAvailableDevices():
		device = depthai.Device(pipeline=pipeline, deviceDesc=device_info, usb2Mode=False)

		devices.append(device)

		print("Conected to " + device_info.getMxId())
		device.startPipeline()
		queue_rgb = device.getOutputQueue(name="rgb", maxSize=1, blocking=False)
		rgb_sources.append(queue_rgb)
		queue_depth = device.getOutputQueue(name="depth", maxSize=1, blocking=False)
		depth_sources.append(queue_depth)

	return devices, rgb_sources, depth_sources

And finally the close cameras function takes a list of devices and closes them (I was originally using the contextlib.ExitStack() approach described in the https://github.com/luxonis/depthai-experiments/blob/master/gen2-multiple-devices/main.py file, but I found this harder to troubleshoot which is why I swapped to this approach).
def close_cameras(devices):
	for device in devices:
		device.close()

Finally the wrapper code to run it all:
pipeline = create_pipeline()

devices, rgbs, depths = get_all_cameras(pipeline)

running = True
while running:
	for i, q_rgb in enumerate(rgbs):
		in_rgb = q_rgb.tryGet()
		if in_rgb is not None:
			cv2.imshow("rgb-" + str(i + 1), in_rgb.getCvFrame())

	if cv2.waitKey(1) == ord('q'):
		running = False

close_cameras(devices)

In total the file looks like this:
import cv2
import depthai
import contextlib

def create_pipeline():
	# Start defining a pipeline
	pipeline = depthai.Pipeline()

	# Define a source - color camera
	cam_rgb = pipeline.createColorCamera()
	cam_rgb.setPreviewSize(600, 600)
	cam_rgb.setBoardSocket(depthai.CameraBoardSocket.RGB)
	cam_rgb.setResolution(depthai.ColorCameraProperties.SensorResolution.THE_1080_P)
	cam_rgb.setInterleaved(False)

	# Define a source - two mono (grayscale) cameras
	left = pipeline.createMonoCamera()
	left.setResolution(depthai.MonoCameraProperties.SensorResolution.THE_800_P)
	left.setBoardSocket(depthai.CameraBoardSocket.LEFT)

	right = pipeline.createMonoCamera()
	right.setResolution(depthai.MonoCameraProperties.SensorResolution.THE_800_P)
	right.setBoardSocket(depthai.CameraBoardSocket.RIGHT)

	left.setFps(60.0)
	right.setFps(60.0)

	# Define a source - depth camera
	depth = pipeline.createStereoDepth()
	depth.setConfidenceThreshold(200)
	left.out.link(depth.left)
	right.out.link(depth.right)
	depth.setOutputDepth(True)

	# Create output
	xout_rgb = pipeline.createXLinkOut()
	xout_rgb.setStreamName("rgb")
	cam_rgb.preview.link(xout_rgb.input)

	xout_depth = pipeline.createXLinkOut()
	xout_depth.setStreamName("depth")
	depth.depth.link(xout_depth.input)

	return pipeline

def get_all_cameras(pipeline):
	devices = []

	rgb_sources = []
	depth_sources = []

	for device_info in depthai.Device.getAllAvailableDevices():
		device = depthai.Device(pipeline=pipeline, deviceDesc=device_info, usb2Mode=True)

		devices.append(device)

		print("Conected to " + device_info.getMxId())
		device.startPipeline()
		# Output queue will be used to get the rgb frames from the output defined above
		queue_rgb = device.getOutputQueue(name="rgb", maxSize=1, blocking=False)
		rgb_sources.append(queue_rgb)
		queue_depth = device.getOutputQueue(name="depth", maxSize=1, blocking=False)
		depth_sources.append(queue_depth)

	return devices, rgb_sources, depth_sources

def close_cameras(devices):
	for device in devices:
		device.close()

pipeline = create_pipeline()

devices, rgbs, depths = get_all_cameras(pipeline)

running = True
while running:
	for i, q_rgb in enumerate(rgbs):
		in_rgb = q_rgb.tryGet()
		if in_rgb is not None:
			cv2.imshow("rgb-" + str(i + 1), in_rgb.getCvFrame())

	if cv2.waitKey(1) == ord('q'):
		running = False

close_cameras(devices)

I can confirm that it is primarily occuring when using devices on different USB controllers.

In this screenshot the first 3 executions were taken on my front connector USB ports (ones connected via a USB 3 header). At the red line I swap one of the cameras to use a USB directly attached to the motherboard and I have issues (the 2nd camera isn't connecting when it's run again). If I move them both to the motherboard USB then there is no issue.
Ideally they would be connected via different streams to not run into bandwidth limitations on a USB controller (this is a common issue with SteamVR basestations and tracker dongles overwhelming USB controllers), but I can accept running them this way.

Thanks for the details @John-Dean .  What computer are you using by the way?  Perhaps we can get it so we can reproduce exactly.  We are needing a new build machine anyway, so after reproducing and fixing, assuming it's a quick machine, we can repurpose it as a build machine (and if not quick, use it as an automated QA machine).
Thanks,
Brandon

Hi Brandon,
Testing on:

AMD Ryzen 5950x
Corsair Vengeance DDR4 2x16GB (for a total of 32GB) RAM CL16
2x Samsung 980 Pro 2TB SSD
ASUS AMD Ryzen X570 ROG Crosshair VIII Dark Hero
Nvidia RTX 3090 FE

Using combinations of the USB cables:

USBs included with the cameras
USB-C Oculus Link Cable (This cable validates in Oculus' software with a bandwidth >2Gbps, and is in general very high quality fibre optic cable with copper wire power delivery)
USB 2.0 1m USB-C to USB-C cable (I used this to validate that USB2.0 was error free even when in auto mode)

I'm using the Fractal Meshify 2 Compact case, which has 2 front panel USB 3.2Gen1 and a front type 3.2Gen2 Type C (I think the naming conventions on those are right). If I connect the both cameras using any assortments of cables to the motherboard USBs that are wired to the processor, both to the chipset USBs, both to the front panel USBs or to a front panel and a front panel USB-C I have very few issues (I would estimate similar to the 1:50 rate Erik mentioned above). If I connect so that one is via the processor and one via the chipset in any capacity (i.e. one on the motherboard USBs and one on the front panel) I have the issue almost every time, so I am leaning towards this being a chipset compatibility issue.
I'll try to update to the latest chipset drivers and a beta BIOS tomorrow and see if that fixes the issues magically.
If you're looking to build the system yourself I would advise against it:
The AM4 platform (specially X570) has USB driver issues (surprise surprise) which I suspect might be playing a role in this issue. From all the reading I have done on this it doesn't sound like the USB driver issues that plague AM4 are the root cause (since I also validated it happening on an older Intel Z170 system), but it could be why its consistent for me. The driver issues should result in slower speed or disconnects, not the inability to connect.
Also, Samsung NVME drives can cause Bluescreens while on AM4 systems, so you have to manage your Windows PCIe power management settings to be high performance to avoid the issue - something that means if you have other PCIe devices attached (i.e. network cards, GPUs) cause them to also get this high performance power setting which can stop some of them from idling.
Finally, my biggest issue is that the 5950x, 5900x and to a lesser extent the 5800x all have issues with WHEA errors causing processor RMAs (which annoyingly is what plagues my current system). The 'fix' is to stop all boosting/overclocking/idling functionality (so the processor is locked at stock frequencies), which is what I am currently doing, and to request an RMA. I don't think that is the cause of this issue as it just causes outright system crashes instead of driver or connected device instability.
Long story short I was using Intel Z170 as a work machine for the last 6ish years with literally 0 issues. I have a new workload that required much greater GPU and CPU resources so I went for the best in slot on both and have had significant issues since upgrading. I can't recommend the 5000 series AMD platform as stable. It's frustrating as if Intel had a competitive high core count processor I would have chosen that instead, but I am left with no option but AMD for my usecase.

Thank you for all the insight here!  This also makes a lot of sense as we too have seen USB issues with some AMD chipsets.  I can't exactly remember the specs of the machine, but it was a custom build just like this.  I'll have to look up the specs as another engineer has the system now.  Actually we can probably install Windows on one of these AMD machines (or build a more modern AMD machine) and see if we can reproduce.
And sounds good on the BIOS update.
Thanks again,
Brandon

Updated to the latest BIOS (including beta) and latest X570 chipset drivers and I can confirm the issue is still present. It does howerver go away now and both cameras connect after a couple of minutes of waiting - whereas before even after 30m they refused to reconnect.
From this I am guessing it is more than likely a compatiblity issue with X570 drivers and the Windows USB library you are using.
I have a open support ticket with AMD about other platform instabilities and I will raise this as an example if that's okay with you? I can't promise that it will go anywhere.
Thanks,
John

From a mixture of AMD updates and latest DepthAI updates I can't replicate this anymore - so for now I think this is safe to say is fixed, thanks for looking into this.

Thanks for circling back @John-Dean !  (And great to hear!)


VS Code AWS ESP32 FreeRTOS-ESP-IDF development

Steps to compile, build. flash and monitor AWS ESP32 FreeRTOS on ESP32 boards.
How can I pass commands like these from VSCODE?:
(Let's say I am on FreeRTOS folder)
cmake -DVENDOR=espressif -DBOARD=esp32_devkitc -DCOMPILER=xtensa-esp32 -GNinja -S . -B demos/ota/build
cmake --build demos/ota/build --target flash
python %IDF_PATH%/tools/idf.py monitor -p COM4 -B demos/ota/build
From this link https://www.freertos.org/2021/01/using-visual-studio-code-for-freertos-development.html, it is not quite clear yet.
I want to use VSCODE as my IDE for AWS FreeRTOS ESP32 projects, including debugging capabilities
Thanks in advance.

I made some progress on this. I commented here. Two more questions around and that's it.
https://github.com/aws/amazon-freertos/issues/3002#issuecomment-810437254

I think you'd be best to ask this over there


chore: prepare 7.1.7 for submission

The type of this PR is: chore

Description
This PR  prepares 7.1.7 for submission
#nochangelog

Warnings

:warning:

✅ No changelog changes

  Generated by :no_entry_sign: dangerJS against 5bbbb8529dcb0fc2fab4473868c73a37a8213d49


[docs] Update minimal required Nodejs version

Purpose
Today is the end of life of Nodejs v10.
Approach
Update minimal required Nodejs version in readme.
References
https://github.com/nodejs/Release#release-schedule
Pre-Merge TODO

[ ] Write tests for your proposed changes
[ ] Make sure that existing tests do not fail

Please change version here too.

done

Rebase please.


Fix #94 - Introduce new feature to collect additional 3rd party features

Introduces a new feature, com.google.cloud.tools.eclipse.3rdparty.feature.
This feature is referenced by our generated repository but not categorized
and so will not normally appear when installing items.
PTAL @elharo

LGTM


Team 101 the crux 07/04/2020

Pros:
Great project
the project has real links

Thanks for the review!


Add min character length before showing suggestions

Hi,
Could you add a property that would allow to control that suggestions are displayed only when user enters a specified number of characters?

Hi @vladasdrejeris,
This and other issue opened by you make sense. Unfortunately, I don't have time on these weekdays to work on that. Let me add a reminder to this weekends to add these features.
Note, you can always make a pull request if this is urgent ;)

Thanks for a quick reply, maybe I will make a pull request :)

@vladasdrejeris please, check the updated version. I added this commit (#1b894bb) which should solve your problem.


Missing extensions in the launcher

There are few missing extensions in the launcher (src/main/resources/quarkus/extensions.json).
Compared with quarkus-maven-plugin:0.21.1:list-extensions.
Missing extensions

quarkus-amazon-dynamodb
quarkus-elytron-security-oauth2
quarkus-rest-client
quarkus-smallrye-reactive-type-converters

quarkus-swagger-ui comes with openapi, we don't want it exposed directly

@rsvoboda Those extensions need first to be added there:
https://raw.githubusercontent.com/quarkusio/quarkusio.github.io/develop/_data/extensions.yaml

REST client covered in https://github.com/quarkusio/quarkusio.github.io/pull/280
Extensions for amazon-dynamodb, elytron-security-oauth2, smallrye-reactive-type-converters covered in https://github.com/quarkusio/quarkusio.github.io/pull/281

@rsvoboda this has been promoted to production: code.quarkus.io


Add a function for help text into Makefile and document all PHONY targets

Description
Our Makefile is not fully documented. This adds a new target make help or simply make which will print out help text for any target that has ## some text after it.
I've only added documentation to PHONY targets, ie targets that don't create files. This means all .*.stamp and bin/* targets are not documented because the assumption is you know what the file is that is being built.
Reviewer Notes
Can I improve on any of the help text?
Setup
Try it out:
make help

or simply
make

Code Review Verification Steps

[x] Request review from a member of a different team.

Screenshots

Thanks for adding this! Should we add a mention of this new make help option to the README.md?

I did this in 9ccbf7a20 :)


Match entire word when using livesearch

Hi,
I'm using bootstrap-select with livesearch, along with ajax-bootstrap-select, and I was wondering if there's a way to match the exact word. I've noticed that at this point there's "startsWith" and "contains" from bootstrap-select, but both of them tend to show the entire list of options. What should I do to fix this?
Thanks!

So, this plugin essentially overrides/extends the liveSearch option from bootstrap-select. It doesn't actually care about what the liveSearchStyle option is set to though, it just uses makes a request to whatever backend server you want to do the actual matching (which you can match however you like).


Define Wizardlets per capability

Capabilities can define wizardlets and crunch wizard config used by client crunch wizards.
Use case:  Defining whether wizard can skip to other steps or disabling next button if cap props have satisfied validation predicates.

Reviewed by Eric.


perf: replace BW6-761 final exp by a class equivalence check

Description
Similarly to #1143 we adapt https://eprint.iacr.org/2024/640.pdf to the BW6-761 case with the following parameters:

$h = \frac{p^6-1}{r}=3^2\cdot l$ with $\text{gcd}(l,3)=1$
$\lambda=x^3-x^2+1-(x+1)q$

// magma code ran online: http://magma.maths.usyd.edu.au/calc
QQ := Rationals();
QQx<x> := PolynomialRing(QQ);
rx := (x^6 - 2*x^5 + 2*x^3 + x + 1)/3;
qx := (103*x^12 - 379*x^11 + 250*x^10 + 691*x^9 - 911*x^8 - 79*x^7 + 623*x^6 - 640*x^5 + 274*x^4 + 763*x^3 + 73*x^2 + 254*x + 229)/9;
M := Matrix(QQx, 2, 2, [rx, 0, -qx mod rx, 1]);
R := LLL(M);
print R

[        x + 1 x^3 - x^2 - x]
[x^3 - x^2 + 1        -x - 1]

assert ((R[2][1] + qx*R[2][2]) mod rx) eq 0; // better Hamming weight

$m=\lambda/r$
$d=\text{gcd}(m,h)=1$
$m'=m/d = m$

First, we find the residue witness in a hint:

Compute r-th root: Raising the miller function to $1/r \pmod h$
Compute m′-th root: Raising the result to $1/m' \pmod h$
(no need for the modified Tonelli-Shanks for cube roots here as $d=1$ and no need for scaling.)

Then, we check in-circuit that:
MillerLoop == Witness ^ (u^3-u^2+1-(u+1)q)

with two optimized addition chains, a Frobenius power and a hinted division in Fp6.
Type of change

[x] New feature (non-breaking change which adds functionality)

How has this been tested?

TestPairingCheckTestSolve test passes.
How has this been benchmarked?
This PR saves 1,269,173 scs in the emulated PLONK verifier of BW6-761 in a BN254-PLONK.
Checklist:

[x] I have performed a self-review of my code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] I have added tests that prove my fix is effective or that my feature works
[x] I did not modify files generated from templates
[x] golangci-lint does not output errors locally
[x] New and existing unit tests pass locally with my changes
[x] Any dependent changes have been merged and published in downstream modules

It is though difficult to include the computation of c^{u^3-u^2+1-(u+1)q} in the Miller loop computation (see https://github.com/Consensys/gnark/pull/1143#issuecomment-2148632498) for two reasons:
1- we use a different Miller loop for BW6 with loop size 3*l2+l1 where l2=u³-u²-u and l1=u+1 (see Alg.2 in https://eprint.iacr.org/2021/1359.pdf).
2- The Miller loop in-circuit is implemented using Fp6 as a direct extension of Fp while out-ciruit it is a quadratic over cubic extension. This makes the witness residue different.
Adapting the algorithm in/out-circuit to match each other would affect performances and make the trick not worth it.

It is though difficult to include the computation of c^{u^3-u^2+1-(u+1)q} in the Miller loop computation (see #1143 (comment)) for two reasons: 1- we use a different Miller loop for BW6 with loop size 3*l2+l1 where l2=u³-u²-u and l1=u+1 (see Alg.2 in https://eprint.iacr.org/2021/1359.pdf). 2- The Miller loop in-circuit is implemented using Fp6 as a direct extension of Fp while out-ciruit it is a quadratic over cubic extension. This makes the witness residue different.
Adapting the algorithms in/out-circuit to match each other would affect performances and make the trick not worth it.

It is though difficult to include the computation of c^{u^3-u^2+1-(u+1)q} in the Miller loop computation (see #1143 (comment)) for two reasons: 1- we use a different Miller loop for BW6 with loop size 3*l2+l1 where l2=u³-u²-u and l1=u+1 (see Alg.2 in https://eprint.iacr.org/2021/1359.pdf). 2- The Miller loop in-circuit is implemented using Fp6 as a direct extension of Fp while out-ciruit it is a quadratic over cubic extension. This makes the witness residue different.
Adapting the algorithms in/out-circuit to match each other would affect performances and make the trick not worth it.

Actually, now that this additional trick might not be worth it, it becomes more relevant to push the Miller function to the cyclotomic subgroup by performing the easy part of the final exp only before doing the class equivalence check. This saves an additional 1,390,037 scs making the total cut at 2,659,210 scs.


Having Build Troubles on Windows and Raspberry Pi 3B+

Hope everything's going well Curtis! I used to talk to you on #ansi on EFNet, I was building a BBS/CMS called Psylent that I may be picking back up, but I'm also developing a database platform and web backend similar to Django for .NET Standard that I'm hoping to get out on Github soon.
I want to build Pablodraw from source on Windows 10 and on Raspbian and use that as an example for building some cross-platform apps. I'll have to build from source for the RPI since it's running ARM.
I'm running into troubles with VS2019 needing Mono.Nat and Lidgren.Network. So I try to install via the Package Manager Console in VS2019 on Windows and get this, see image 3:

What I ended up doing to build on Windows was to remove the Mono.Nat and Lidgren projects, and then install the packages in the projects where needed via NuGet, but do you happen to know what's going on with the yellow triangles on the dependencies?
Also I had to disable the Mac project for it to build on Windows or VS2019 errors.

Still haven't gotten it to build on the Raspberry Pi yet. Everything has to be built from source on the Pi just about.
I'm also looking to develop apps with Eto Forms. Here at home I've got a MacBook Pro (2015), a Windows 10 desktop and laptop, and a Raspberry Pi 3 B+ for testing, also a developer unlocked Barnes & Noble Nook running an older version of Android.
When I try to run msbuild on the Pi I get a lot of errors with it wanting MonoMac. I can log it on a separate ticket for feature enhancement on the Eto repository if you want.

I managed to get Pablo running on the RPI 3 B+ just by using the compiled build from Windows and running "mono PabloDraw.exe", although I haven't managed to get a native build on the RPI itself yet.
Lots of these warning messages come up though, it looks like the gdk and cairo dependencies have some issues with them.

@JohnnyErnest I think what might be going on is the submodules aren't initialized when cloning the repo. You can see a few examples here how to do that.
Note that downloading a .zip archive of the source does not include the submodules.

That got PabloDraw working from build on both Windows and the Raspberry Pi.
There's one more issue getting Eto to work from build on the RPI 3 B+, I encountered a Garbage Collector memory error during build.

I'll close this issue and open a new one on the Eto repository.


Update of node state in the network

Hello
How are the node states updated in the network. Is it asynchronous update? I ran the attractor analysis and in the figure, it shows that source nodes determine the next state of the nodes. When we assume it an asynchronous update of nodes, state of the nodes are randomly updated. Are the source node states randomly updated here? Can you explain how the nodes are updated in the attractor analysis
Thanks

Priya

By default, pystablemotifs assumes asynchronous update, in which a single node is randomly chosen to be updated at each time step. Updating a source node (like A*=A) will not change its value.
We also consider all possible initial conditions, which is reflected in the different source node values you see in the figure; they correspond to different initial conditions.

I'm marking this as closed because simulation is currently not within the project scope for pystablemotifs.


Contribute items to MAIN menu

Can't find anything with "file menu" or "contribute to file menu" or "main menu" or "app menu"

Ability to contribute menu items to the main menu, eg add "Print" to the file menu. I realise this implies support for localisation to a LOT of languages.

/duplicate #69137


Fix to the local variables bug (#12)

Whereas this fix isn't ideal, it does fix the issue with local
variables, I honestly didn't think a lot about a better solution
so I am open to suggestions.
The aim of the PR besides fixing this bug is:

Updating the build.gradle dependencies.
Removing support for 2.2 series (since supporting it at this point would make this a real mess).
Fixing a bug with the recently added timeout feature (currently throws a NPE since you've forgot to declare the input expression as nullable in the pattern).

Sorry for just getting to this now, this fix looks good, though executeStatement should return the variables it needs to modify instead of keeping that information inside of a field.


v1.25 results failing

The junit_01.xml files produced by sonobuoy when targeting Kubernetes v1.25 appear to be marking each test as skipped or failing. It is currently unclear why this is occurring. The junit_01.xml produced targeting Kubernetes v1.24 appears fine with the results of the bot.
The issue might be tied to a version of sonobuoy.
Examples:

https://github.com/cncf/k8s-conformance/pull/2093
https://github.com/cncf-infra/k8s-conformance/pull/57

There's a chance that this fix will not resolve all of the v1.25 releases or even break the old ones.
Some distributions/products service their own way of producing the junit_01.xml and e2e.log files.
The version of Kubernetes and the resulting format may actually not correlate and there might be something I'm missing.
For this this works fine, but please note that this may need changing in the next month or so for all I know!


Guest basket is not available for authenticated user even after call "updateCustomerForBasket"

Steps:

Create a guest session
Create a basket using the guest token
Authorize the user
Call "updateCustomerForBasket" with info of the authorized user
Try to get the basket with a token of authorized user

Expected result:
The basket should be available for an authorized user
Actual result:
The basket is available only with a token of guest user

Hi,
The basket created with the guest user token is not be accessible with the registered user token because the customer ids differ in this case. One way to achieve the cart merge is to use the new SLAS service (which should be available with the SDK in about a month) which allows you to pass the unique USID between guest and registered shopper JWTs.
When not using SLAS, you can achieve this using the following two steps:

Use a GET/baskets call to get the basket with the guest token
Submit the basket retrieved in step#1 using POST/baskets with the registered user token.

Note: We are currently looking into providing better API support for basket merge use-case and will keep you posted. Hope this helps for now.

Hi,
The basket created with the guest user token is not be accessible with the registered user token because the customer ids differ in this case. One way to achieve the cart merge is to use the new SLAS service (which should be available with the SDK in about a month) which allows you to pass the unique USID between guest and registered shopper JWTs.
When not using SLAS, you can achieve this using the following two steps:

Use a GET/baskets call to get the basket with the guest token
Submit the basket retrieved in step#1 using POST/baskets with the registered user token.

Note: We are currently looking into providing better API support for basket merge use-case and will keep you posted. Hope this helps for now.

Just linking the conversation from CCDC around this issue.
https://developer.commercecloud.com/s/question/0D53k00006u1l1ECAQ/how-to-reassign-basket-from-guest-user-to-the-registered-one

Just linking the conversation from CCDC around this issue.
https://developer.commercecloud.com/s/question/0D53k00006u1l1ECAQ/how-to-reassign-basket-from-guest-user-to-the-registered-one


Missing hits

Click on Right panel Browse
Select Authors
Select Aarts%2C+Bas
expected 1 result
got no result
https://lindat.mff.cuni.cz/repository-new/xmlui/discover?filter=Aarts%2C+Bas&filter_relational_operator=equals&filtertype=author

ok it working now after reindexing and clearing cache


"minContains = 0" test cases won't validate against full schema

https://github.com/json-schema-org/JSON-Schema-Test-Suite/blob/817b724b7a64d7c18a8232aa32b5f1cc1d6dd153/tests/draft2019-09/minContains.json#L153-L171
As I understand, the "contains" keyword in both of these cases should fail since none of the array's elements are valid against the subschema.
Is this correct, or am I missing something?

“contains” asks the question, “who matches this?” It’s true that nothing in that array matches the “contains” schema, but since “minContains” is zero, zero matching is indeed greater than or equal to zero. Hope that helps.

from https://json-schema.org/draft/2019-09/json-schema-validation.html#rfc.section.6.4.5:

A value of 0 is allowed, but is only useful for setting a range of occurrences from 0 to the value of "maxContains". A value of 0 with no "maxContains" causes "contains" to always pass validation.

closing, as this isn't a test suite bug. (many folks are around on slack if you have questions)

A value of 0 with no "maxContains" causes "contains" to always pass validation.

Wow, I had completely missed that. Thanks!


two syntax errors in error handling corrected

@ptyx507x - Could you review this PR?
IMPORTANT: When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

#sign-off


Demo plugin improvement

get plugin variables from env var; if not found, fall back to system properties, and finally use default values.
make demo plugin to reside in a single directory.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>0
Details

0 of 0   changed or added relevant lines in 0 files are covered.
37 unchanged lines in 8 files lost coverage.
Overall coverage decreased (-0.02%) to 65.607%

Files with Coverage Reduction
New Missed Lines
%

com/baidu/bifromq/starter/utils/ClusterDomainUtil.java
1
75.0%

com/baidu/bifromq/basecluster/fd/FailureDetector.java
2
89.8%

com/baidu/bifromq/basecluster/memberlist/AutoDropper.java
2
83.48%

com/baidu/bifromq/basekv/client/scheduler/BatchQueryCall.java
2
72.09%

com/baidu/bifromq/dist/trie/NTopicFilterTrieNode.java
3
83.53%

com/baidu/bifromq/dist/trie/TopicFilterIterator.java
4
73.66%

com/baidu/bifromq/basekv/raft/RaftNodeStateFollower.java
8
84.19%

com/baidu/demo/plugin/DemoPlugin.java
15
0.0%

Totals

Change from base Build<PHONE_NUMBER>2:
-0.02%

Covered Lines:
21817

Relevant Lines:
32251

💛  - Coveralls


feat: ICRC-0: Governance of IC technical working groups

submit

The issue with the comparison of the IETF & the DFINITY community is that the IETF themselves implement changes to their specifications and guidelines via rough consensus. Following this, adoption of their specifications and guidelines takes the form of a rough consensus in the market.
For the IC, however, we don't have a secondary rough consensus. Instead, we use the NNS which provides hard consensus.
For this reason, working group consensus is secondary to NNS consensus.
The focus of Working Groups needs to be on establishing consensus among neurons, not on consensus within working groups. More on this further down.
In the governance working group we have found that several groups have split off to perform different tasks in what we have called sub-working groups. These groups report on their work to the overall working group once work items have been completed and are ready for review.
As NNS consensus holds primacy over working group consensus, it is important to preserve a clear statement of the technical issues and differing perspectives on those issues for neurons to read and understand. These issues need to also contain faithful tl;dr summaries because otherwise neuron engagement is difficult
The governance working group has found github challenging so we are using google docs - just a point.
For presenting information to neurons, a more friendly medium will work better than github - A shared google doc, or more appropriately a PDF so that neuron commentary or feedback can be tied to a static document.
It is important to capture all objections because these connections will emerge in the mind of neuron holders while they make their decision. objections need to be included in documentation supporting the proposal and answers/responses to those objections also included to save on public deliberation of already resolved issues.
It is important to make all of these perspectives available to neurons to understand. The best thing is to include evidence so that public deliberation can lean on prior art or be supported by hard fact.
Belaboring the point, capturing the reasons for objections as they come up is extremely valuable as these objections can be expected to come up in the minds of neurons.
Rather than passing a proposal from the working group to the NNS, a better way is to package all of the work that has taken place into a series of easily readable documents and present the work to a meeting of neuron holders. This gives an opportunity for the neurons' questions to be raised and answered, feedback given, and integrated before the proposal is created. This way conflict in the community over proposals can be minimised. Partly because the objections and responses can be worked through in a public setting, partly because feedback can be taken on in advance.
It might also make sense to allow at least one week to pass after the neuron presentation. This is to allow discussions on social media, time for honest integration of feedback, and time to write the proposal as it will be submitted to the NNS.
It is also advisable to have an open community presentation upon submission of the proposal so that everyone knows what is going on.
This is not the opinion of the GWG, just one person. What is presented here is much more advanced than where we have got to.
This looks fantastic to me. The issues raised relate to capturing perspectives, sharing them with neurons and the community, gathering feedback, and delaying the creation of a proposal until after feedback has been gathered and the community has been educated.


Better infinite scroll

On the initial page load, we're grabbing 200 items from Reddit. This request can take up 10 seconds to resolve.
Is there a way to grab the first 5 items, and then continue to make requests as the user scrolls?

I would like to try it. Please assign to me

Hello, @gregrickaby
I sent a PR. Please check at #75.

Closed with https://github.com/gregrickaby/reddit-image-viewer/pull/75


Temporarily disable scroll animations?

Is there any way to temporarily disable the scroll animations? I have a Chrome extension that lets people screenshot web pages and on sites using this library it generally catches things mid-animation. Usually, it does things like set transitions to 0, but I’m seeing that the animations here are all done by setting explicit transform values directly in javascript. I don’t see a way to achieve that with this library (example site).

There is no way to ban it for the time being.


Tempo Segments

Is your feature request related to a problem? Please describe.
I'm always frustrated when I have to make a fast part
Describe the enhancement you'd like
Be able to add segments and change the tempo (would help with importing midi aswell)
Additional context

Hi! There's an experimental feature in NBS that does just this: rename a custom instrument to Tempo Changer (make sure to match caps), place it down and change the note pitch to change the tempo (for instance, setting the pitch to +300 will set the song to be 300 BPM at that point).
As this feature is unofficial, though, don't expect it to work anywhere else other than in the NBS player itself. It may be properly implemented sometime in the future. :)
(Related to #149)


Include fields parsed from S3-located log files lines

Sorry. I guess we should update description again to match the one in the aws-log-collector readme as most of the customers will use CF templates to install this lambda and they will see CF template params for sure.


os: NTFS deduped file changed from regular to symlink

This issue is a followup to a golang-nuts discussion: https://groups.google.com/g/golang-nuts/c/YtBDdIgxazY/m/-X1Gc0xWBwAJ
@qmuntal asked me to file an issue there.
What version of Go are you using (go version)?

$ go version
go version go1.21.1 windows/amd64

Does this issue reproduce with the latest release?
I didn't try, but given the underlying issue (see below) it's unlikely to have changed - I don't have a system to repro.
What operating system and processor architecture are you using (go env)?
Same here, not my system where the repro happened: A windows system with an ntfs filesystem with deduplication is needed
What did you do?

Create a file on an ntfs filesystem with deduplication, copy it and wait for deduplication to happen.
Run os.Lstat on the deduplicated file.

What did you expect to see?
In go <=1.20 the result of os.Lstat gave .IsRegular() == true, which is expected.
What did you see instead?
In go1.21 it's false and it's considered a symlink.
This broke syncing of those files in syncthing, where this issue was originally reported: https://github.com/syncthing/syncthing/issues/9120
Quoting @qmuntal from golang-nuts:

Having said this, I've done a quick web search looking what other frameworks and applications do with IO_REPARSE_TAG_DEDUP, and the quorum seems to be that it can be treated as a regular file, Windows handles it transparently without user intervention.
For example, boost recently started treating it as a regular file: Treat dedup files as regular files on Windows. · boostorg/filesystem@141727b (github.com).
Please file an issue proposing to special-case IO_REPARSE_TAG_DEDUP as a regular file. We can continue the discussion there. Meanwhile, or if the proposal is not approved, you can still manually get the reparse tag for all non-regular files (e.g. src/os/types_windows.go#L51-L62), and special case whatever reparse tags you need.

Also given go <=1.20 already had the desired behaviour (deduped file was considered regular), I'd personally consider this a regression and would appreciated if a fix could be backported to go1.21.

In go1.21 it's false and it's considered a symlink.

I don't think that's accurate. A symlink would have the ModeSymlink bit set, but as of https://go.dev/cl/460595 I believe you will file that the ModeSymlink bit remains unset, and the ModeIrregular bit is what is set for dedup files. The two bits mean different things.

POSIX defines a “regular file” as “a randomly accessible sequence of bytes, with no further structure imposed by the system.” Under that definition (which I think is the one the Go os package should use), it isn't clear to me which reparse points (if any) should be considered regular files.
Reparse points by definition do have “further structure imposed by the system” — namely, they have reparse tags and are handled by file system filters associated with those reparse tags. And some kinds of reparse points, such as IO_REPARSE_TAG_MOUNT_POINT and IO_REPARSE_TAG_LX_FIFO, certainly do not represent a randomly accessible sequence of bytes.
I would expect that at least some kinds of reparse points do represent “a randomly accessible sequence of bytes” from the perspective of an application. If we can explicitly enumerate which reparse points have that property, perhaps it would be ok to treat them as regular files? But they do still have “further structure imposed by the system”, so maybe not — I'm really not sure.
In the particular case of syncthing, perhaps there is some property other than regularity that syncthing could use instead?
(CC @golang/windows)

It is probably expecting too much from os to special-case reparse points other than IO_REPARSE_TAG_SYMLINK, The number of possible reparse points is unbounded, not only Microsoft can define them, also vendors and third parties. Also, other might be interested on special-casing IO_REPARSE_TAG_DEDUP instead of treating it is a regular file.
A good compromise could be to provide an easy way to access the reparse tag that is currently unexported in fs.FileInfo, so users can decide what to do with irregular files without having to open the file again and stating it using raw syscall functions. Maybe something like this:
package fs

type ReparseTagFileInfo interface {
	FileInfo
	ReparseTag() uint32
}

package os

func (fs *fileStat) ReparseTag() uint32 {
	return fs._ReparseTag
}

Which would be used like this:
var fi, err = os.Lstat(name)
if fi.Mode()&fs.ModeIrregular {
        if fix, ok := fi.(fs.ReparseTagFileInfo); ok {
	        switch fi.ReparseTag() {
                case syscall.IO_REPARSE_TAG_DEDUP:
                // custom logic
                }
        }
}

That would also be useful for us indeed - we currently do just what you say, we use syscalls on every irregular file to detect reparse points to treat them like regular ones.

I agree with the Boost developers that turning on NTFS deduplication should not make ordinary files look "irregular". People will turn this on to save some disk space, and then Go programs that use .IsRegular() to avoid opening printer devices and such will stop processing their files. That's not right for a portable os layer.
Whatever we decide for #61893, I think we should special-case the dedup reparse points and report them as regular files. If the behavior is new in Go 1.21 (wasn't present in Go 1.20), I think we should probably treat this as a critical bug fix and backport it.

@imsodin, I have a proposed patch in https://go.dev/cl/537915 but I can't easily test it. (I don't have a Windows Server instance with deduplication enabled.)
If you can build that commit from source (https://go.dev/doc/install/source) and confirm that it fixes the problem for you or your users, I will request a backport to Go 1.21.
(Note that Gerrit has a “Download patch” option in the ⋮ menu to download a pending CL.)

@bcmills Your CL is equivalent to the workaround we added when upgrading to go1.21, and the user already confirmed it did fix the issue for them: https://github.com/syncthing/syncthing/commit/9553365d31b0d0c14f0d59cee14ec2b24fa7c8ba.
I hope that's good enough?

I agree that the approach is equivalent — mostly I want to rule out bugs in my implementation of it. 😅
But I'll go ahead and start the backport process based on that information.


Fix Data Fetch and Logic from the server causing problems with pattern deployment

Description
Earlier the data fetch was written like:
 try {
          result = res.json();
 } catch(e){
          result = res.text();
  }

The res.json() returns promise which no way could the catch block runs until the promise is resolved thus creating other subsequent error mentioned in #3774 due to resolution in wrong then...catch block
This PR fixes #3774
Notes for Reviewers
Signed commits

[x] Yes, I signed my commits.

Codecov Report

Merging #3809 (b801aac) into master (0d1616c) will decrease coverage by 6.74%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##           master    #3809      +/-   ##
==========================================
- Coverage   20.81%   14.06%   -6.75%
==========================================
  Files          46       51       +5
  Lines        3863     4222     +359
==========================================
- Hits          804      594     -210
- Misses       2847     3476     +629
+ Partials      212      152      -60

Flag
Coverage Δ

e2etests
?

gointegrationtests
?

unittests
14.06% <0.00%> (+1.46%)
:arrow_up:

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

Impacted Files
Coverage Δ

mesheryctl/internal/cli/root/system/login.go
0.00% <0.00%> (ø)

mesheryctl/internal/cli/root/system/start.go
1.11% <0.00%> (-53.71%)
:arrow_down:

mesheryctl/pkg/utils/helpers.go
18.52% <0.00%> (ø)

mesheryctl/internal/cli/root/system/status.go
0.00% <0.00%> (-62.83%)
:arrow_down:

mesheryctl/internal/cli/root/system/stop.go
0.90% <0.00%> (-39.10%)
:arrow_down:

mesheryctl/internal/cli/root/system/check.go
1.42% <0.00%> (-21.71%)
:arrow_down:

mesheryctl/internal/cli/root/system/logs.go
0.00% <0.00%> (-21.60%)
:arrow_down:

mesheryctl/pkg/utils/testing.go
0.00% <0.00%> (ø)

... and 7 more

Continue to review full report at Codecov.

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


Authenticate Gaia Lite requests with token instead of username & password.

In every request to Gaia Lite we're sending the user's name and password.  This exposes the password to a long period of time and the code that sends requests.
Instead we should use the password to generate a token, forget the password, and then use the token for all subsequent requests.
These will afford the following benefits:

We'll be able to isolate the password handling code in a separate process (as in  https://github.com/cosmos/voyager/issues/1359), dramatically reducing the attack surface of the code.
We can expire tokens without expiring passwords, reducing the damage if a token is stolen.

We'll need the cooperation of the SDK team to change the protocol.

Is it worth to invest in this if we go to the web and have local signing processes in the future? Zaki said he would like to get rid of the keystore bundled with the LCD as most clients will not use it.

Let's summon @zmanian to join the discussion

Is it worth to invest in this if we go to the web and have local signing processes in the future? Zaki said he would like to get rid of the keystore bundled with the LCD as most clients will not use it.

That's a good question and I don't know the answer.  It's similar to the seed words issue which we decided to move forward on.

But in the case of handling tokens, this needs to be implemented in the SDK so I see a much bigger complexity in this task then to implement a seed word window on our side.


Streamline QueryBus and QueryGateway error reporting

QueryGateway should always report errors using CompletableFuture.completeExceptionally.
QueryBus should use CompletableFuture.completeExceptionally in cases when we couldn't invoke the query handler. In a case when the query handler is invoked, we should use ResultMessage.exceptionResult in order to report errors.
This issue is tied to: https://github.com/AxonFramework/AxonFramework/pull/825

This issue has been resolved in PR #841, hence closing.


Add a configurable timeout to download_dsyms action

Checklist

[x] I've run bundle exec rspec from the root directory to see all new and existing tests pass
[x] I've followed the fastlane code style and run bundle exec rubocop -a to ensure the code style is valid
[x] I've read the Contribution Guidelines
[x] I've updated the documentation if necessary.

Motivation and Context
Adds the enhancement requested in this issue: https://github.com/fastlane/fastlane/issues/15385

Description
Changes the fixed timeout of 5 minutes to a parameter that is used when wait_for_dsym_processing is enabled.
Tested by uploading a build to App Store Connect, then running the action with timeout set to 60 seconds and observing it timing out as the dSYMs were not available. Running again without setting a timeout resulted in it timing out after 5 minutes. A final run with timeout set to 900 seconds succeeded after 8 minutes.

@googlebot I signed it!


Change undo behaviour

Is there/could there be an option to make undo just reverse a snippet expansion, rather than undo everything up to before the snippet trigger was present?
As an example, typing a / expands to \frac{a}{}, and undoing reverts to just a. Could there be a setting to adjust the behaviour and make undoing revert to having the a/, just before the snippet expanded?
Thanks!

Good idea! It's definitely possible, I can add it in a future release.

Thanks! Looking forward to it!

Done in 1.5.2.


Add German support for recognizers-text-number

Add initial German files. Towards implementing #2197.

Ideally we should mark all cases in German DateTime specs as NotSupported in python and re-enable later.

And how / where should i do this?

Ideally we should mark all cases in German DateTime specs as NotSupported in python and re-enable later.

And how / where should i do this?

This should be an attribute added to each spec test case in the German DateTime json files under /Specs. We don't currently have a script in the repo for it, so either we need to do manually, or add such script.

@jhoelzl, I've made a few tweaks that I'll push here soon.
Two main comments:

Instead of changing the resources file in Python manually, the edits should happen on the patterns YAML file, which is used to automatically generated the resource code across platforms. Otherwise, any changes are lost on build;
As the test cases current pass in .NET, test failures are likely to not be caused by pattern issues. I suggest checking where your new Python implementation differs from the corresponding .NET one for German.

@jhoelzl Can you give me permission to push to your PR branch? I'm getting an error.
https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/allowing-changes-to-a-pull-request-branch-created-from-a-fork#enabling-repository-maintainer-permissions-on-existing-pull-requests

I want to fix he 24 remaning test cases, however, i am bit confused.

As the test cases current pass in .NET, test failures are likely to not be caused by pattern issues. I suggest checking where your new Python implementation differs from the corresponding .NET one for German.

For example the word "einhundert" which means "one hundred" is not recognized in the test cases although the definition of RoundNumberIntegerRegex in Python covers the same as the one in .NET:

.NET: https://github.com/jhoelzl/Recognizers-Text/blob/python-german-support/.NET/Microsoft.Recognizers.Definitions.Common/German/NumbersDefinitions.cs#L28
Python: https://github.com/jhoelzl/Recognizers-Text/blob/python-german-support/Python/libraries/recognizers-number/recognizers_number/resources/german_numeric.py#L21

@jhoelzl it's not a problem with patterns or definitions now. There may be behaviour differences in two places compared to .NET:

differences in the German extractor/parser configs you created in Python (as they were created from the English ones);
differences in base classes (that utilize the data and methods in the config to do the actual work), as the .NET classes usually evolve faster.
I suggest picking one case that fails in Python and then debugging the same input in .NET to see where things differ.


util: support jumps in test_timeline

This avoids having test_timeline report events as being missed when intentionally jumping over them.
I'm not 100% sure about this implementation, my understanding of this code is still pretty surface level, but it seems to work for me on a few logs I tested it against (mostly my new p9n stuff).
Also not sure if I should do >= or >. The latter still reports a missed entry for the line you're jumping to, e.g. this:
100.0 "foo" jump 200.0
150.0 "bar"
200.0 "foo"
201.0 "baz"

would output something like this with >:
       0.000 |    1 | 100.0 "foo" jump 200.0
      Missed |    3 | 200.0 "foo"
       0.000 |    4 | 201.0 "baz"

But with >= it outputs:
       0.000 |    1 | 100.0 "foo" jump 200.0
       0.000 |    4 | 201.0 "baz"

I'm not sure exactly what the behaviour should be like if you have multiple entries at the same time that you're jumping to, like:
100.0 "foo" jump 200.0
150.0 "bar"
200.0 "foo"
200.0 "baz"

Thank you for this!
As for your questions, here's extra context.  There's definitely a strongly-followed cactbot heuristic of any jumps to other phases going from an explicit line to another explicit line (i.e. not some timeline time between other lines), and both lines having the same sync (or at least the destination line implies the same sync even if it's not explicitly listed or is commented out, etc).  (Maybe we need some tests for this, etc.)  In the game, sometimes there's a single ability line and sometimes there's multiple, and so depending on this the destination line will be synced or missed depending.
So, I think I'd consider the destination line as "not missed", and at least for me it's useful to have it printed out, in terms of reading the test timeline output.  To that end, I think > is better than >= so that all destination entries are listed.
Feel free to leave a TODO for this (so I can merge this now and there can be another PR later), but another option is to add some new record type jump (along with sync and missed) and we could label (or color?) it differently so it doesn't look like something is "wrong" with the timeline.  However, then I wonder about what happens about multiple ability lines in game for the same id where the timeline jumps to 200 and then resyncs to 200, and then what would that be labeled, and do you need extra cases for that, etc.  Mostly just saying maybe there's some edge cases here.

So, I think I'd consider the destination line as "not missed" in all cases, and at least for me it's useful to have it printed out, in terms of reading the test timeline output. To that end, I think > is better than >= so that all destination entries are listed.

I agree, updated to >.

Feel free to leave a TODO for this (so I can merge this now and there can be another PR later), but another option is to add some new record type jump (along with sync and missed) and we could label (or color?) it differently so it doesn't look like something is "wrong" with the timeline. However, then I wonder about what happens about multiple ability lines in game for the same id where the timeline jumps to 200 and then resyncs to 200, and then what would that be labeled, and do you need extra cases for that, etc. Mostly just saying maybe there's some edge cases here.

Added a TODO with a link to your comment for some added context.


Examples for optional FROM and WHERE clauses

Hi there,
I'm not sure if this is the right place to make this request, but could you possibly add examples for SELECT statements without the FROM clause but including the WHERE clause?
I might have missed it in the documentation but I can't seem to find anything that explicitly states that you can have a SELECT clause with a WHERE clause without specifying the FROM clause.
That's if a SELECT statement like that can even be done.

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

ID: be9b41a4-b97f-768f-6e25-3b0ceb0d3489
Version Independent ID: 1a8d328f-fbd8-4a5f-9b8a-916131ebe485
Content: SELECT clause in Azure Cosmos DB
Content Source: articles/cosmos-db/sql-query-select.md
Service: cosmos-db
Sub-service: cosmosdb-sql
GitHub Login: @timsander1
Microsoft Alias: tisande

@metu Thank you for the feedback. We are actively investigating and will get back to you soon.

@metu Thanks for your patience. From keyword is not optional as we need to specify the data source from which we need to query the data. In this case the data source would be container, same as in sql where we have data source as tables. Without specifying it we would not be able to run the query as where also would need us to specify the list of properties need to be present in our container.

@metu We will now proceed to close this thread. If there are further questions regarding this matter, please comment and we will gladly continue the discussion.


marketGetOpenOrders(market)  market must be an optional

In according to Bittrex API in marketGetOpenOrders parameter "market" is optional.
Without "market" API should return all  opened orders.
Solution is in change 374 string of Bittrex.js :
return Promise.reject(new Error('Market is required'));
to:
return this.doRequest(this.MARKET_GET_OPEN_ORDERS);

#8 closed thank you @russkiy78 for the pull request


Design Events page.

This is a list of upcoming events where the OpenWhisk team will be, plus a list of past events.

[ ] Design listing of upcoming and past events (@yumeforever)

For now, we can probably stay pretty close to this general layout (but prettier): https://developer.ibm.com/openwhisk/events/
For later, we can discuss combining this with the updates page that @krook and @mrutkows mentioned.

Would be nice to automate this in the future. For example, pulling meetup.com events tagged "openwhisk" from their API.

@krook I created an issue in the icebox (#46) so we can revisit automating this after the initial launch.

Done! Sorry @jlengstorf for the slightly change on the Text structure, but it was not pleasing at all :(


[Enhancement] support skip specified transaction state

Why I'm doing:
In some issues, transactions can't finish normally, we need some way to skip them.
What I'm doing:
Add FE config  skip_transaction_range, so I can skip load transaction between [skip_transaction_range[0], skip_transaction_range[1]].
What type of PR is this:

[ ] BugFix
[ ] Feature
[x] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Does this PR entail a change in behavior?

[ ] Yes, this PR will result in a change in behavior.
[x] No, this PR will not result in a change in behavior.

If yes, please specify the type of change:

[ ] Interface/UI changes: syntax, type conversion, expression evaluation, display information
[ ] Parameter changes: default values, similar parameters but with different default values
[ ] Policy changes: use new policy to replace old one, functionality automatically enabled
[ ] Feature removed
[ ] Miscellaneous: upgrade & downgrade compatibility, etc.

Checklist:

[x] I have added test cases for my bug fix or my new feature
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto-backported to the target branch

[x] 3.2
[x] 3.1
[x] 3.0
[x] 2.5

if skipping some committed transactions, the versions are discontinuous, there will be problems.


Store S3Uri in VHS rather than only Key.

In order to be clear about where objects are stored in the VHS we should use a URI format.

Closing as not quite as serious as first thought.


Code for the simulated dataset in the slides?

Hi -- I really enjoyed the SIGIR 2016 presentation.  Does the code in this repo give what's needed to reproduce the experiments discussed in the presentation.  For example, this image:

Thanks!
David

Hi David,
Yup! It is just a cross-link of https://www.cs.cornell.edu/~adith/CfactSIGIR2016/Code_Data.zip
Usage instructions are at https://www.cs.cornell.edu/~adith/CfactSIGIR2016/
For the experiment you described, you would run EvalExperiment.py followed by plot_sigir.py
If you find or fix any install/runtime issues (likely due to version mismatches; scikit-learn APIs may have changed from 2016 to now), please submit a PR. Thanks!
--Adith


Issue fetching Retrieve provider Contract Offers

Hi,
I'm exploring the Samples repository
I have faced some challenges trying Samples/transfer/transfer-05-file-transfer-cloud
the example is trying to make a data exchange between 2 connector and  using blob storage and s3 bucket:
https://github.com/eclipse-edc/Samples/tree/main/transfer/transfer-05-file-transfer-cloud

I was able to create the resources using the terraform script provided.
I adapted the the config.properties as asked in the doc.
I updated the seeder
rebuild and run again.
the 2 connectors are up and running.

I tried  request data offers from the provider, by running:
curl -X POST "http://localhost:9192/management/catalog/request"
--header 'X-Api-Key: password'
--header 'Content-Type: application/json'
--data-raw '{
"counterPartyAddress": "http://localhost:8282/protocol"
}'
I got the following response:

<meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1"/>
<title>Error 404 Not Found</title>

HTTP ERROR 404 Not Found

URI:	/management/catalog/request

STATUS:	404

MESSAGE:	Not Found

SERVLET:	EDC-management

I can see an error message on the provider as well
Unexpected exception caught
jakarta.ws.rs.NotFoundException: HTTP 404 Not Found
        at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:258)
        at org.glassfish.jersey.internal.Errors$1.call(Errors.java:248)
        at org.glassfish.jersey.internal.Errors$1.call(Errors.java:244)...

Is there anything that I'm missing?
Thank you in advance

same issue here... :)

@idrissyou @wissembhl
so, after some experimenting, it seems that this Sample has not been updated for a while...
Can you please try again with:
http://localhost:9192/management/v2/catalog/request
please, notice that this time we have "v2" in the endpoint


GRANT-355 - fix infrastructure scoring

Summary:

change logic include all applications in excel spreadsheet

Changes

fix community safety score max from 15 to 10
add question 36 is included in the scoring (logic is manual entry, 2 pts for each design feature to maximum of 5 pts). Safety Scoring should total 33 points after this update
Environment Score: Each bullet should read "up to" number of points
Land Use Score: the first bullet should read "Does this project fill gaps between 2 or more AT Facilities = 2 pts (manual)"
fix Land Use Score automated scoring
Accessibility Score: Each bullet should read "up to" number of points
Promotion Score (manual) should have instruction bullet "1 pt for each promotional feature listed, max 3"
Letters of Support: should have instruction bullet "1 pt for each letter of support, max 3"

Ticket
https://jira.th.gov.bc.ca/browse/GRANT-355
Safety:

[x] lint;
[x] test;
[x] prettier;

Is there a ticket for this?


$scope.control.editor.config is null after publish

I'm using v0.2.0 and I'm experiencing problems with $scope.control.editor.config that is null.
It's all in doctypegrideditor.controllers.js.
I will get an error on line 39 when clicking the item in the grid and it start to open the right dialog. It will say that you cannot use allowedDocTypes on undefined.
A check for null seems to fix the problem. But I guess the config should'nt be undefined in the first place?!
After fixing allowedDocTypes, the same thing will happen with enablePreview on line 57
/Rune

@runegronkjaer Thanks for the info!
For clarification, which version of Umbraco are you using? and which web-browser?

Sorry:
Umbraco v7.3.1
Browser: chrome

@runegronkjaer (Sorry for not getting back to you sooner - again)
I've been trying to reproduce this issue today, but unfortunately I can't.  I am testing against Umbraco 7.4.2, so not sure if something has changed in Umbraco since v7.3.1?
Are you still able to reproduce this issue?
If so, would you be able to post the DTGE parts of your "grid.editors.config.js" config, please?
Thanks, Lee.

Given this we've not received any further feedback and nobody else has reported this issue I'm going to close this issue. Feel free to reopen it if you find any further information.


Update docs links to point to readthedocs.io

http://blog.readthedocs.com/securing-subdomains/
Low priority, as the current ones will redirect for the foreseeable future.

@mmailhot :+1:


MODFIN-168 Update logic with financial detail in the Ledger summary to improve the users ability to manage financial activity

https://issues.folio.org/browse/MODFIN-168


Runelite crash on Login or If i try resize the screen.

Type
Crash or hang
Operating System
Windows
OS Version
Windows 11
Bug description
Soon as i log in, the game crashes or it will let me play and if i try move or resize the screen there is a crash.
never had this issue before, its a new PC and been working for the past week or so no issues.
Screenshots or videos
No response
RuneLite version
Version- <IP_ADDRESS>
Launcher-2.7.1
Logs
client.log
jvm_crash_pid_9360.log
launcher.log

I believe this is a duplicate of #10628 as was mentioned in Discord. Per that thread, try disabling "Core Performance Boost" in your system's BIOS.

Did you confirm that this issue happens in safe mode, as the bug report template instructs?


Add support where running a drush & composer command can be identified.

Just a thought:
Check it something like this will be possible or not:
Example 1:
idk install

This will run:
ddev composer install

Example 2:
idk site-install -y

This will run:
ddev drush site-install -y

It will be interesting to see if this can be possible. Plus I thing we will need to move to some other language with which we can scale this more.

Done with the latest release


feat: add testnet cfg

Fixes #
Proposed Changes

rename current cfg to "devnet"
add testnet config
remove genx as default network

Sorry, I got confused about PR I had open in different browser tabs and I approved this one instead of mine's


Update LeMUR Auto Chapters Guide to Group Paragraphs to Better Support Long Files

Updated the LeMUR Auto Chapters guide to group paragraphs together to better support long files by making multiple requests based on paragraph "chunks".
LeMUR would previously struggle when having to handle all of the context of a file at once, especially as files got longer (1 hour plus). This solves that problem by breaking up the overall transcript into paragraph chunks and making multiple, smaller requests to LeMUR so it can make a better summary.

Hey Matt, this looks really great!
Just a tiny nitpick, the last line says The output will look similar to the example below., but I'm not seeing the example output on my GitHub preview. Could you look into that?
Also, is this cookbook pretty much the same as what Neil shared with us here? I've transformed his Colab into a Cookbook, but I also don't want to replicate your submission 😅

Hey @m-ods! You're definitely right. I actually built this code for a customer while waiting for a reply in that thread, then Neil replied with something nearly identical 🙃  I think the code here for combining paragraphs is a bit simpler to get people started, but I do like Neil's section on including the timestamps and formatting them, since that's frequently asked for with LeMUR.
Do you have a draft of that Cookbook you made from Neil's Colab that you can share? I feel like we can combine our two together in this PR.


Adding how-to developer guides for feature flags

🚀 Deployed on https://65e6c2d606fa095fc66452c0--cozy-fox-0defec.netlify.app


cleanup dockerfile

I am OCD about having nice dockerfiles

also why the chmod of /tmp

Please fix tests...jk
LGTM


[Feature]: Insert point clusters into intermediate layer

Feature Description
Insert point clusters into intermediate layer
Definition of Done
No response
Testability
No response
Dependencies
No response

Duplicate of #572 and #571


Rendering models issues

Hi,
I tried to render several assets from the Poly project. While many of the assets were displayed correctly, other failed to display.

Obj file with implicit face normals - In this submarine object, the vertex normal indices are implicit.
We can see it when looking at the "faces" lines, for example: f 40/91 41/90 37/89 36/88.
the issue: the model's faces seems curved, instead of the polygon-style look.

obj file + mtl file, without png texture file. When trying to anchor this two files, nothing happened - the virtual object wasn't added to the scene graph. The assets are a tablet and a laptop. Just to mention that other obj + mtl assets were successfully displayed, a cup for example.

this cup rendering looks good, but the rotation of the cup is wrong, it's laying instead of standing. In the poly page the rotation looks right.

I will be happy the know if the above are known issues? maybe a wrong configuration in the .sfa files?
Thanks!

Hi @itanbp, thank you for reporting these issues.

Issue 1 will be addressable in an upcoming release: we will provide model configuration to specify a limit angle which determines when hard edges are automatically softened when processing geometry with implicit normals.  Currently this is hard-coded to 45 degrees.
Issue 2 needs more investigation; will update this bug when I have more information
Issue 3 will be addressable in an upcoming release as well, via model properties in the sfa which can apply axis remapping to the source asset

For issues 1 and 2 here, we recommend that you now use the glTF option for downloading/importing from Poly.  If you use the glTF import then both of those issues should be resolved.
For Issue 3 with the current asset import support, you have to rotate the cup in the runtime by applying a rotation to the node when it is created.  Someday we may have a way of remapping the axes, but that work is not currently planned.


add delete checked rows feature

Please, review it.
https://user-images.githubusercontent.com/1549611/126422384-9dc020ea-0a10-4cc5-8c23-0700a73a0cdc.mp4

@neozhu should fix indentations

hi @neozhu it's nice feature, great.
I'm modifying the code like below:
Brands.razor.cs

Brands.razor

How about this modified code?
To ensure that the _selectedItems equal null when the _selectedItems.Count > 0.

it's ok,
you know that mudtable MultiSelection feature when using server-side pagination, click check selected all, check all current rows, but table head checkbox not selected, then I want unselected all that not working.

you know that mudtable MultiSelection feature when using server-side pagination, click check selected all, check all current rows, but table head checkbox not selected, then I want unselected all that not working.

Do you mean on Products page? I'm not yet updated this feature on the products.

@peteryulius  you try it when data is more than page size(10).  when two pages data

@peteryulius you try it when data is more than page size(10). when two pages data

Ok, I'll try later.

that performance issue please check again.thank you

@peteryulius you try it when data is more than page size(10). when two pages data

May be it's bugs on the components.
You have send the issue on github.
https://github.com/Garderoben/MudBlazor/issues/2295


Allow editing geojson in the (right) sidebar

Your help page says:
"If you have data, like a KML, GeoJSON, or CSV file, just drag & drop it onto the page or click 'Open' and 'File' - your data should appear on the map!"
I do have the data, but not in a file - there is a handy editor for the geojson, but editing (pasting to it) doesn't change the map. Why not? Bit frustrating. The UI just begs to be used that way

@remster I've been successful at pasting my GeoJSON into the JSON tab on the right. Once I paste it, it instantly appears on the left.  Look for a red block on the left side of the JSON field, where it will tell you if there's an error.

Closing, please add some sample data so we can reproduce the error.


Removed index writing and adjusted expected files.

@nehadimri1991
This is only a minor change and the review is to keep you informed


Value parameter cannot be 0

When I try to download any video, either from URL and through search it fails with no error code, the only thing that program says is that value parameter cannot be equal to zero.

For more details. #266
It will be fixed soon.

I have this issue too

Duplicate of #41
Even though this issue was raised earlier, that other one has slightly better description.


No fail setting

The game should allow players to set a noFail option. This will allow a wider range of users to "complete" songs, and also allow players to better practice difficult songs.
This should not be allowed in online leaderboards etc. when applicable.

This is done. Closing


cannot find namespace serenity & the command "cmd/c" "npm" install" exited with code 1

cannot find namespace serenity & the command "cmd/c" "npm" install" exited with code 1

cannot find namespace serenity & the command "cmd/c" "npm" install" exited with code 1

any solution


Use "go install" to install the tools required by "make verify"

To avoid the following warning when using Go 1.17 (default version for
Antrea):
go get: installing executables with 'go get' in module mode is deprecated.
See https://golang.org/doc/go-get-install-deprecation
Signed-off-by: Antonin Bas<EMAIL_ADDRESS>

/skip-all


Plugins not Linking to quests

What is your Quests version / build number (do not say "latest")?
3.6.2
Describe the problem and how to replicate it. Any console errors to post using Pastebin.com?
Start the server. Get Error that WorldGuard / PhatLoots was not linkable.
08.02 02:20:36 [Server] INFO Enabling Quests v3.6.2-b646
08.02 02:20:36 [Server] WARN WorldGuard was detected, but is not enabled! Fix WorldGuard to allow linkage.
08.02 02:20:36 [Server] WARN PhatLoots was detected, but is not enabled! Fix PhatLoots to allow linkage.
If applicable, can you provide an example quest from quests.yml using Pastebin.com?
Not related but also, I completely reset quests. I only have the 4 default quests.
It happened with Denized but I updated it and it fixed. Im on worldguard 7, so I can't update it more than that, I'm on version 4.2.3 with PhatLoots(the latest released, seems to work).
Note: I'm using Fawe
Startup Log: https://hastebin.com/getagibora.md

I'm seeing a lot of errors in your startup log, most of which (if not all) are unrelated to Quests. I'd advise trying to fix those first as any one of them could cause problems with other plugins. You could start with updating or removing plugins/elementaleffects.jar
Next, please update to Jenkins build 654 or greater, as the previously experimental WorldGuard support was finalized in that build. If you've done this and continue to have issues, post the resulting startup log below.


VPS root builder

Tackle #81

@R3zk0n Can you check out this branch and test again?
To ensure a clean environment I'd ask you do follow these steps:
cd like-dbg
rm -rf kernel-root
docker rm -f  like_kbuilder_x86_64:latest like_dbg_base:latest like_rootfs:latest
docker system prune
./start_kgdb.py

Hey mate, Will do it right now. will post update. I was able to get it working with non root :) just fyi

Good to know it already works as a non-root user :laughing:

got some good news, and bad. This is as root user. I did it with the clean build steps you provided below.
Good news, It build fully, however when trying to attach to it. I get the following

Offtopic, your linux kernel exploitation blog posts are some of the best content out! Love it.

Good catch. I already fixed the debugger side of things. Gotta account for that building with root privs, so we cannot just remove files in the kernel directory as a mortal anymore...
As for the debuggee side I'm actually not sure why the network cannot be set up. Didn't run into that myself
Also thanks much appreciated :)! Just giving back to the community whenever I learned something myself :)

@R3zk0n Did you manually exit the "debuggee" (bottom left panel)? I cannot reproduce that error.
In any other case, the latest commit works fine for me. If you can confirm that I can merge this to back to main.

Just followed the steps you posted below, Ill try to do a clean build on this branch and post the update shortly, maybe something messed up

Good news! It appears to be working great now as a root user!!

LGTM!
This fixes #81 then.
I'll go ahead and merge this :).
Thanks for helping out debugging this!

Hey mate, I worked out what the issue i found was here https://github.com/0xricksanchez/like-dbg/pull/82#issuecomment-1230523762
It appeared that the docker containers were still running so when it tried to connect or port forward again, It wouldn't be able to.
I might make a PR in the python script to add a flag --stop that stops all the running docker containers soon.


Falco deprecation notice for integrations

What type of PR is this?

Uncomment one (or more) /kind <> lines:

/kind bug

/kind cleanup

/kind design

/kind documentation

/kind failing-test

/kind feature

If this PR will release a new chart version please make sure to also uncomment the following line:

/kind chart-release

Any specific area of the project related to this PR?

Uncomment one (or more) /area <> lines:

/area falco-chart

/area falco-exporter-chart

/area falcosidekick

What this PR does / why we need it:
This PR introduces a deprecation notice for those integrations that will be removed soon, as discussed in #123, and during our community calls.
It also cleans up the documentation and removes some old references.
Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
/cc @nibalizer
/cc @Issif
Checklist

[x] Chart Version bumped
[x] Variables are documented in the README.md
[x] CHANGELOG.md updated

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To complete the pull request process, please assign leogr
You can assign the PR to them by writing /assign @leogr in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

falco/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: leodido
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

falco/OWNERS [leodido]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

LGTM label has been added.  Git tree hash: 0520aa0bd6b2dc2cd47db770f8f76c6f9e079788


Documentation: Which binary do you mean?

Ciao Arlen
I'm unclear about WHICH binary you mean in this from the documentation ...

Download the latest release of TiddlyServer from https://github.com/Arlen22/TiddlyServer/releases unzip the folder contained in the zip file to wherever you want it. Put the binary in this folder if you want it to be portable.

Changed it to "Put the NodeJS binary in this folder if you want it to be portable."
Does that make more sense?

Much better. I noticed that what you actually wrote was Put the NodeJS binary (node.exe) in this folder if you want it to be portable, which is even better.


rpm: 4.18.1 -> 4.20.0

Depends #354645
Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] 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
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 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

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

This will re‐break the build on Darwin, sadly, even as it incorporates upstream patches for the platform. IIRC @reckenrode said that the new Meson build system needed fixes when he looked at doing the update, though it is hard to tell as there are other blockers here preventing testing that (unconditional bubblewrap and systemd inputs, e.g.).

Upstream no longer does feature detection. Features that are not supported on a platform (or not wanted) have to be disabled manually instead of relying on the library/function not being available. Of course, the unconditional systemd stuff is also a problem for non-Linux.

I got it to build on aarch64-darwin and x86-64-darwin. I did not try to run the binaries though.

I missed the sync from master to staging by a couple hours, I will rebase tomorrow

rpm-sequoia needs to be fixed on macos:
dyld[69225]: Library not loaded: /nix/store/cz9sppfrs9ag34lq2pq6wmhspwcnvbxq-rpm-sequoia-1.7.0/lib/librpm_sequoia.1.7.0.dylib
  Referenced from: <0EA94AC5-F54A-3791-9374-4092232F33A1> /nix/store/mak6qp2pvgz19dn0fb0pr2lksgca43qp-rpm-4.20.0/lib/librpmio.10.2.0.dylib
  Reason: tried: '/nix/store/cz9sppfrs9ag34lq2pq6wmhspwcnvbxq-rpm-sequoia-1.7.0/lib/librpm_sequoia.1.7.0.dylib' (no such file), '/System/Vol>
cpio: premature end of archive


Easier to read error messages?

Potentially making an easier error message with your own message box, as most users will not understand nor need the unhandled exception part. No good reason to clamp it to a valid number, as then users may continually try putting a negative offset. Just a suggestion for a future update and not application breaking😄

yeah abusing the exception dialog is not really appropriate here, i'll fix this in the next release

yeah abusing the exception dialog is not really appropriate here, i'll fix this in the next release


Remove hardcoded dot paths

The hardcoded dot paths have been removed and replaced (as well as moving some stuff from common.py, which was getting quite bloated) with a new module, dot, that handles looking up dot-related stuff.
After making these changes, run_mini runs to completion, but I'm not entirely confident that everything is correct, so don't merge without verifying.
The biggest issue I can see is that in the old code, DOT_DIR[project] returned a single directory name, whereas dot.dot_dirs(project) returns a list of directories. For now, I've set it so that places that used the old DOT_DIR[project] lookup only look at the first item of dot.dot_dirs, but that will probably lead to missing a lot of stuff. Those methods probably need to be rewritten to search multiple dot dirs, but I'm not sure if I understand what's going on in the graph similarity stuff to do the rewriting myself.

If everything here checks out, this will address #1.

@tim-mccarthy 👍  Thanks! This is @langkymus's ball - can you review?

Please go ahead with merging this branch to master.


Texture based GPU morphing

Implementation of mesh morphing based on storing morph targets in float textures, as opposed to storing them in vertex attributes.

Implementation details:

Supported platform requirements: webgl 1 or 2 + float texture support, float texture blending support, float render target support, highp fragment shader precision, at least 2 vertex shader textures
this allows "unlimited" number of active morph targets per mesh (up to 4096x4096 texture size to store morph targets)
if pc.Morph is created with more than 8 render targets, this implementation is used by the engine if supported, otherwise attribute based morphing is used.

Future work:

allow callback during Morph creation by glb-parser and let user specify which render technique should be used (attribute vs texture based)

Performance:

memory: texture based morphing is storing morph targets as partially sparse (so less memory here), but has additional render target texture for position / normal allocated (so additional memory here)
gpu performance is slower than attribute based morphing (about double GPU time on tested MacBookPro)
morph target blending takes place only one time per frame and so when rendering the same mesh multiple times (to shadow maps ..), performance of texture based morphing is more comparable to attribute based morphing, which blends morph targets each time a mesh is rendered

Engine examples:

show 10 morph targets modifying position and normal of a single mesh {@link http://playcanvas.github.io/#graphics/mesh-morph-many.html}

I considered half precision, but webglstats doesn't have show any stats on OES_texture_half_float extension so decided against it in the first release.
I created an issue with some possible follow up work:
https://github.com/playcanvas/engine/issues/2126
I think it's very useful to have attribute based backup - this way morphing is available on every device with a good performance (and some limitations on concurrent morph targets). Attribute based morphing is also faster and could be a first choice for many application needed some morph targets.

Actually, having recently worked with RGBE format for images, I wonder whether you couldn't do exactly the same with position/normal data? You can see pack/unpack implemented at https://github.com/slimbuck/engine/blob/hdr-parser/src/graphics/program-lib/chunks/reproject.frag#L55

There are a considerable number of mobile devices that only support half-float render targets, not full floats - including iOS devices. These devices also don't support OES_texture_float_linear. For this reason I'd recommend adding half-float support to this PR early on, ideally in the first version.
The 2x GPU time compared to vertex attribute based morphing might be influenced by the amount of data being fetched from the FP32 textures. It would be interesting to try preferentially using FP16 textures and see if it provides a speedup. Maybe users could opt-in to FP32 support (if supported on the hardware) if they find they need the additional precision?
Availability data for the underlying OpenGL ES extensions can be found at https://opengles.gpuinfo.org/listextensions.php - though it doesn't seem to paint the whole picture because it shows the FP16 extensions (EXT_color_buffer_half_float, OES_texture_half_float) as being less available than the FP32 extensions (EXT_color_buffer_float, OES_texture_float).

@kenrussell - thanks for the suggestion, I didn't know float render targets are not supported on iOS (don't have a device to test on just yet). I've added half float implementation and use it as a default one for now - it seems to give it a bit of an improvement compared to floats.
I've also updated performance data in the description - on my Pixel 3A phone, half float texture solution is faster than attribute based, which is great! I'll add iPhone data when I get my hands on my (within a week I hope)

This is great @mvaligursky! Now when can we see the rgbe version?!

This is great @mvaligursky! Now when can we see the rgbe version?!

we'd need a way for user to turn it on .. so the callbacks we spoke about.
Also, it would be rather costly .. blending 10 textures would mean decoding of 10 textures. And not sure I could get away with writing the result into rgbe, so might need half / float support anyways.

Yeah cool, I'll get the callbacks in asap.
I actually doubt the coding/decoding will slow things down since that's literally all the shader is doing right? The precision of rgbe might be quite limiting though, not easy to say without trying it. Other issue is you loose target blend if that's stored rgbe.
Still, potentially halving the texture bandwidth again over float16 might be a win on the lowend devices.
Oh and also, the link to encode/decode above was just to give an idea of complexity, it's not tested and might not work properly!

just for the reference - on iOS devices half float textures cannot be initialised with half data. This has been fixed in Oct 2019, but older devices cannot use half textures due to this.
https://bugs.webkit.org/show_bug.cgi?id=169999
conformance tests
https://www.khronos.org/registry/webgl/sdk/tests/conformance/extensions/oes-texture-half-float.html

closing this pull request, it's superseded by #2196

@kenrussell - would you know what the story is on iOS14 beta WebGl2 implementation? It seems to not support EXT_color_buffer_float and so I cannot use float nor half float framebuffers. WebGL1 implementation on the same device supports it.

@mvaligursky thanks for pointing this out. I've had a to-do item for some time to revise the EXT_color_buffer_half_float extension to allow it to be used on WebGL 2.0 contexts. https://github.com/KhronosGroup/WebGL/issues/3093 tracks it and I've just posted a pull request for it.
Have also filed https://bugs.webkit.org/show_bug.cgi?id=216010 so that this doesn't get forgotten. We'll address this as soon as the spec change lands.


DOC: Fix camelCase (or capitalization)

Summary of the Pull Request

References

PR Checklist

[ ] Closes #xxx
[x] CLA signed. If not, go over here and sign the CLA
[ ] Tests added/passed
[ ] Documentation updated. If checked, please file a pull request on our docs repo and link it here: #xxx
[ ] Schema updated.
[ ] I've discussed this with core contributors already. If not checked, I'm ready to accept this work might be rejected in favor of a different grand plan. Issue number where discussion took place: #xxx

Detailed Description of the Pull Request / Additional comments

[x] Docs have been updated (for bug fixes/features)

docs update => proper capitalisation would be better. 👍: Github
Other information:
Signed-off-by: Ayushman Singh Chauhan<EMAIL_ADDRESS>
Validation Steps Performed

Sorry for the delay in reviewing this! Much of the team is unavailable this week, so we're short-staffed. We'll get to the backlog of issues and PRs as soon as possible.

I THANK YOU for the creation of this tool!
and look forward to continued open-source contribution!


support for aggregations

@babenkoivan Is it possible to get support for aggregations for the rawSearch method?
An example query with aggregations on a field named "instruments":
{
    "from": 0,
    "size": 5,
    "aggs": {
        "instruments": {
            "terms": {
                "field": "instruments"
            }
        }
    },
    "query": {
        "multi_match": {
            "query": "bass",
            "fields": [
                "instrument",
                "bio"
            ]
        }
    }
}

Hi @oknoote, it's planned to add the aggregations support, but I wouldn't expect it to be delivered before mid of July.

Thank you, I will look for a fix in the mean time!

Btw. method SearchRaw in the previous package (scout-elastic) did support this but it seems the new RawSearch method is more specific in its methods (which is fine, of course). For now I'll probably revert to the ElasticSearch client for Raw queries with aggregations as a workaround. Do you maybe have a quick example of how I could invoke the ElasticSearch client directly from a controller?

@oknoote, you should be able to inject the client in a controller like following:
class MyController
{
    public function __construct(\Elasticsearch\Client $client)
    {
    }
}

Thanks I got it to work, including aggregations! Was working with a lot of raw results already previously so this is fine for now, just a few minor query changes. When the aggregations functionally has been added I'll switch back to using the rawSearch method. Thanks for all the effort towards making these great packages, much appreciated!

Hey @oknoote, the aggregations support was added in v1.3.0. Please update the package via composer and check the README file for the usage examples.

Amazing, thank you!


Issue #2838 closed when not fixed

The solution proposed in #2838 for using Android App Links with WebAuthentictor does not work, but the item was closed. The Xamarin doc item indicates that Android App Links should be used, yet it seems it cannot be used, so this is a documentation issue in addition to possibly a bug in WebAuthenticator.

Any ETA on when this item may be addressed?

Any ETA on when this item may be addressed?


use ANTLR parse PostgreSQL SET and RESET statment

Changes proposed in this pull request:

add ANTLR PostgreSQL SET and RESET parsers.

PR in #1543


Added MultipleChoicePreference

I added some tests too. I think tox.ini should be updated for django1.9 and python3.5

Sorry, I keep sending PR to the master branch!! I'll close this also and will send another one. Hopefully this time I'll do it right! :)

@EliotBerriot What about this feature? I feel that this would be quite a logical extension to have a Preference object that contains the list or set of predefined settings which admins can change.
If there is some extra work needed to be done in order to merge this or #43 please let me know :)

Hi @zamai, actually, not much work has been done since the last comment on this discussion : https://github.com/EliotBerriot/django-dynamic-preferences/issues/40
Basically, we need two steps to implement this cleanly:

Implement a multiple value preference type
implement a way for multiple value preferences type to define the type of the underlying values (list of integers, strings, dates, whatever...). It will be stored as string in database anyway, but we want to ensure as much consistency as we can

If you want to get started, I'd be more than happy to assist you. You can reuse the work done in #43, and the discussion in #40. Of course, you can take some freedom regarding the hypothetical API described if you have a better idea :)