Issue with inputing custom weights for Rate based SNN

snntorch version: 0.4.4
Python version: 3.9.6
Operating System: Ubuntu 20.04.3 LTS

Description
Hi Jason,
First of all, I appreciate your wonderful effort in developing this package and a detailed documentation. I have recently started using snntorch for rate based SNN coding. Although I am getting good performance for purely software based run, I am facing issues with inputing custom weights extracted from a synaptic device. My accuracy is getting stuck at around 10% which is the same as the untrained accuracy.
What I Did
I used a custom function to input the weights from a text file as shown in the screenshot. Please let me know how to solve this issue.
NB: I am pretty new to programming. so pls excuse me if my code is too cumbersome :)

`
Here is the full file and the text file for data input
rate_SNN_dev_weights.zip
Thanks,
Kannan

Hi Jason,
Here is the full file and the text file for data input
rate_SNN_dev_weights.zip
ut

Hi Kannan,
Really appreciate the kind words :)
I don't think there's anything wrong with your code from running through it. That looks good to me.
I'm guessing it might be that the weight initialization override makes it difficult for any learning to take place.
E.g., if the weights are too small, and the neuron spiking threshold is too high, then no learning can take place (dL/dW = 0).
There are a few ways you can overcome this:

use a surrogate gradient. Even if no spiking is taking place, learning may still occur. One example is provided below. You may need to test some different values of slope. Tutorial 6 has an example: https://snntorch.readthedocs.io/en/latest/tutorials/tutorial_6.html

spike_grad = surrogate.fast_sigmoid(slope=25)
self.lif1 = snn.Leaky(beta=beta, spike_grad=spike_grad)

Lower the threshold. Default value is threshold=1. If none of your neurons are firing, then perhaps this can help too. You should take a look at your output neurons to see if any neurons are firing. Perhaps plot their membrane potentials too; if it's far below the threshold, then it is likely that your weights aren't large enough or distributed appropriately.

self.lif1 = snn.Leaky(beta=beta, threshold=0.3)

If none of the above work, then you may need to scale or normalize your weights (or inputs).
In my own experience, training deep networks using device-derived values can become really challenging.
In general, it seems like the variance of the activations in the forward pass / of the gradients in the backward pass should be as close to 1 as possible to avoid vanishing & exploding gradients. I don't think this is your issue, as your network is quite shallow (1 hidden layer). But something to consider if you plan to scale your experiments up.
I also guess that you have no inhibitory connections (i.e., all of your weights are positive). This might be okay for simple tasks, but you might consider having a hidden layer size of 42*2 =84. Where 42 of your weights are initialized positive, and the other 42 are negative.
It sounds like you're working on a really cool project too - most of my work is with RRAM devices which seems kind of relevant here, so feel free to update me on how you go!

Hi Jason,
Thanks for your detailed reply. I was worried whether my spiking input implementation was correct or not. I have already tried with surrogate gradient method but there too I had the same issue. But I will try changing the threshold firing potential and come up with a more uniform weight distribution. I will get back to you with the results. Happy to know that you are also working in RRAM devices.  Hope to catch up with you some time on RRAM discussions.
I tried to do away with the inhibitory connections to reduce the hardware array size and also as you pointed out- the task was pretty simple. But, later I also tried to scale the weights in [-1,1] but could not see much difference.

I've been playing with your code a bit more. Your train/test loss are both decreasing, but as you've observed, the accuracy has struggled to decrease.
This is a plot of 9 of 10 of the output neurons, and their membrane explodes; the values below exceed 100 (threshold=1 means spiking).

So I would guess you're facing an exploding gradient problem. This might make sense as the device weights are positively distributed (activations are becoming too positive).
I managed to (unexplainably) fix the issue by using the raw MNIST input (instead of spikes), and that was able to successfully train. After pre-training it on the raw input, I was then able to train it on the spiking version as well (50%+ before exiting the process).
Alternative approaches that I would test out would be anything that can prevent the membrane potential from exploding:

decrease alpha and/or beta
equivalently, use snn.Leaky instead. The main impact of snn.Synaptic is that by having two decay rates, it increases the overall time constant. This could be causing membrane potential to accumulate far too much
try reset_mechanism = zero to force the membrane potential to zero; this could help reduce the membrane potential / prevent exploding
try using a MSE Loss applied to the membrane potential. Cross-Entropy Loss can sometimes let the membrane increase indefinitely and may be unstable. MSE can set a target for each membrane potential to try and hone in on a given value, to promote stability. I actually tested this out, and on its own, it helped reduce the loss but it was not enough on its own to help with accuracy.

Happy to chat further on RRAM, feel free to reach out! Contact details are on my website.

Closing due to inactivity & I believe the issue was solved.
Custom device weights worked, though were likely leading to exploding gradients.


Missing content-type header in getSchemaById call

Hello,
This is related to the below-mentioned issue which I had raised previously.
https://github.com/bencebalogh/avro-schema-registry/issues/44
I see that you have added the header to pushSchema call.
Is it possible to add it to getSchemaById and getLatestVersionForSubject calls in the same class as well?
I'm using the decode function which internally calls getSchemaById call to retrieve the schema.
Thanks,
Akshay

Published this in 2.1.2
Let me know if there's anything else


dhcpv4_client sample on spi_api_rework branch with board olimexino_stm32 does not work well

it looks like pend forever。the log as below：
[dev/enc28j60] [INF] eth_enc28j60_init: ENC28J60 Initialized
[dev/enc28j60] [DBG] eth_enc28j60_iface_init_0:
[net/dhcpv4] [DBG] dhcpv4_init: (0x20000834):
***** BOOTING ZEPHYR OS v1.10.99 - BUILD: Feb 24 2018 15:07:47 *****
[dhcpv4] [INF] main: Run dhcpv4 client
[net/dhcpv4] [DBG] net_dhcpv4_start: (0x20000834): state=init
[net/dhcpv4] [DBG] net_dhcpv4_start: (0x20000834): wait timeout=4s
[dev/enc28j60] [INF] eth_enc28j60_gpio_callback: ENC28J60 Interrupt
[dev/enc28j60] [DBG] eth_enc28j60_rx:
[dev/enc28j60] [DBG] eth_enc28j60_rx: Received packet of length 60
[net/ethernet] [DBG] ethernet_recv: (0x200005b4): Unknown hdr type 0x2600
[net/dhcpv4] [DBG] dhcpv4_timeout: (0x20000a40): state=init
[net/dhcpv4] [DBG] enter_selecting: (0x20000a40): enter state=selecting
[net/ethernet] [DBG] ethernet_send: (0x20000a40): src 00:04:A3:06:07:08 dst FF:FF:FF:FF:FF:FF type 0x800 len 114
[net/ethernet] [DBG] ethernet_send: (0x20000a40): src 00:04:A3:06:07:08 dst FF:FF:FF:FF:FF:FF type 0x800 len 114
[net/ethernet] [DBG] ethernet_send: (0x20000a40): src 00:04:A3:06:07:08 dst FF:FF:FF:FF:FF:FF type 0x800 len 49
[net/dhcpv4] [DBG] send_discover: (0x20000a40): send discover xid=0x2bb98e timeout=4s
[dev/enc28j60] [DBG] eth_net_tx: pkt 0x200016d4 (len 291)
[dev/enc28j60] [INF] eth_enc28j60_gpio_callback: ENC28J60 Interrupt

ETH_ENC28J60_0_SPI_CS_PIN
ETH_ENC28J60_0_SLAVE
why define two times?

@HorseMa , please try to reproduce the issue now after all SPI updates have been merged.  Is it still valid?

closing, no response.


Third column of changelog isn't visible.

http://homebrewery.naturalcrit.com/changelog
###At least on the version of Chrome I have, I can see there is a 3rd column but only 2 columns are completely visible.

This has been resolved.


NOTIFICATION_APPLICATION_FOCUS_IN / OUT doesn't trigger with Alt + Tab when a popup is open

Godot version
4.0.dev (887a606)
System information
Kubuntu GNU/Linux, X11
Issue description
When unfocusing the window (be it in-game on in-editor) while a popup is open using Alt + Tab, the NOTIFICATION_APPLICATION_FOCUS_IN/OUT notification isn't sent. This can cause bugs like the popup not hiding until you click on something.
Steps to reproduce

On the editor, click on anything that opens a popup menu.
Alt + Tab.

Notice how the popup will still be opened.
Minimal reproduction project
No response

Am I doing it right? If so, can't reproduce it with the current master on Windows.
https://user-images.githubusercontent.com/11782833/180793812-ee93a921-70aa-4a6d-94cf-56001fecb9ff.mp4

Am I doing it right? If so, can't reproduce it with the current master (https://github.com/godotengine/godot/commit/3bd74cd67bfc5484b3f5d4b47da66c55457474c7) on Windows.

Could be a specific problem on Godot's X11 code, which is still quite buggy.

Note: I haven't used X11's override_redirect functionality much in the past, so I hope this information is correct.
I believe the reason this occurs has to do with how popup windows are handled by DisplayServerX11:
https://github.com/godotengine/godot/blob/58f8f3a40e8b068b9f7b92cae21e0cabb406dd07/platform/linuxbsd/display_server_x11.cpp#L4420-L4429
Popup windows are set here to have the override_redirect flag. In X11, this means that we are requesting the window manager to not interfere with our window at all, to allow for greater control. As a result, popup windows never trigger FocusIn or FocusOut X11 events. This is important because WindowData is initialized with focused = true, so the display server believes that popup windows are always focused, when in fact they never are. As a result, the following code that checks whether any of the application's windows have focus:
https://github.com/godotengine/godot/blob/58f8f3a40e8b068b9f7b92cae21e0cabb406dd07/platform/linuxbsd/display_server_x11.cpp#L3413-L3421
will fail to recognize that the application has lost focus, and the NOTIFICATION_APPLICATION_FOCUS_OUT is never sent for as long as a popup window exists.
The solution is trivial or possibly complex, depending on the intended behavior of Godot's popup windows. If popup windows indeed are never meant to have focus, the fix is trivial. If, however, popup windows are supposed to take focus and generate focus events, the fix may become complex, due to the nature of override_redirect windows. I am not sure how such a thing would be accomplished.

Also happening on Wayland,  and by switching to another window by clicking on it on the KDE task bar, instead of Alt + tab
Screencast_20240507_205741.webm
My specs : Godot v4.3.dev (55b8724bd) - TUXEDO OS 3 22.04.4 - Wayland - GLES3 (Compatibility) - Mesa Intel(R) Graphics (RPL-P) () - 13th Gen Intel(R) Core(TM) i7-13700H (20 Threads)


Token distribution doesn't work

The token distribution doesn't work. My address is in the list but never been able to swap my RVP tokens to the new one.
I've tried Chrome and Firefox as well. The website giving me the "Error sending token, please try again later" message.
I've tried a couple of month ago but it was the same as this time. I have no idea what to do.

Hello @roundtripgetsee
Please see the link below to our dedicated support line:
Support :  Click Here
Note: Click on the live chat icon at the bottom corner of the page to start a conversation.

Hello @roundtripgetsee
You’re experiencing issues with swapping your RVP token, and you’re trying to get this done on your browser extension, correct?
This requires few extra steps
I will create a support ticket for you
Visit the official support page to initiate a chat with the live agent via Token swapping live support . Use the ID number RV36199 to get your issue resolved.
Note: Use the chat 💬 icon to start the chat

@roundtripgetsee
IGNORE THE PEOPLE ABOVE, THEY ARE SCAMMERS.
Join the telegram for advice please.
https://t.me/R_SquaredLabs


Add T319: countable + no isolated point + T1 ==> meager

This allows to delete a few redundant traits, some of them asserted from the General Reference Chart.
Also needed to add an explicit trait for P139 (has an isolated point = false) to space S124 (Roy's lattice subspace) to avoid losing information.

While you're touching https://topology.pi-base.org/spaces/S000124 can you change its description to link https://topology.pi-base.org/spaces/S000123 in place of the words "Roy's Lattice Space"?

Looks good!

While you're touching https://topology.pi-base.org/spaces/S000124 can you change its description to link https://topology.pi-base.org/spaces/S000123 in place of the words "Roy's Lattice Space"?

Done


Error: Setctty set but Ctty not valid in child

[00] Starting service
[00] fork/exec ./xxxxx.sh: Setctty set but Ctty not valid in child

problem in pty:  https://github.com/creack/pty/issues/96

https://github.com/golang/go/issues/29458

This was already fixed in 456b3718abbf1922cfbd498521c27851250f5496 (tagged as v0.3.0).


getInitialNotification()

Need an API for retrieving the initial notification from which app has been started.
This kind of API is required as PushNotificationIOS.getInitialNotification() only provides raw notification data.
As a side-note, this API should consider the fact that the app can be either started by swiping a local notification OR a remote one, and the handling should be different (remote notifs should be "wrapped" with the internal IOSNotification class).

Instead of a single initial notification, there's a background queue which stores all the notifications that have received until calling to consumeBackgroundQueue.
https://github.com/wix/react-native-notifications#background-queue-important
does it work for you?


fbx conversion

Hello,
i love how it is easy to convert models to babylon js format via http://www.babylonjs.com/converter.html
I would be specially interested in the fbx converter, can you please explain how you handle it ?
Is that somewhere on github ?
Thanks

Yes sir:
here==> https://github.com/BabylonJS/Babylon.js/tree/master/Exporters/XNA - OBJ

thanks :)


I'd like to contribute

Hi, I'm glad to see you have found this process helpful. I would be interested to hear your thoughts/ideas if you're still interested in sharing.

Deleted the comment by accident.
It was something along the lines of "I found this process really inspiring and extremely useful and I would like to contribute with some ideas".
I'm thinking about doing a video and save it integrates this process along with some other techniques with my own products.
In the spirit of open source software, I guess I should just publish everything here right?

I did look up your user-name to find your youtube channel, I liked your video on calibration. I think a video about negative scanning could turn out very well.
Your film scans do look pretty good. If you have any questions or need clarification about the process feel free to ask.
There is no reason your work has to be open source unless you want it to be, you can publish it however you see is best.

Hi again,
Here's what I was cooking for the past week or so.
https://github.com/alchemy-color/color-negative-inversion/edit/main/README.md

This looks great, I'm glad you were able to adapt this process to your workflow.
I'm curious how raw white balance has an effect on your colors. I have found that the inversion is best when the base color is still a bit orange-ish before density balance. Maybe if the backlight is narrow-band rgb it makes less of a difference.

Here’s what I discovered:

Creating a linear DCP profile removes the tone curve designed to work with other profile components, such as matrix and LUT. The result is a linear Adobe Standard profile that appears very desaturated and often leads to bland conversions.

The ACR-to-linear curve in my repository modifies the image after applying the DNG profile. I tested it against a linearized Adobe Standard profile made with dcptool, DNG Profile Editor, or Lumariver. Applying the curve downstream results in a more natural color rendition. While experimenting with the "Refine Saturation" slider on the curves tab, I found that lowering the slider increases saturation in the upper half of the tonal range. It can be tempting to use, but it often leads to uneven saturation distribution.

The real advantage of using this curve is its compatibility with a wide range of cameras. Despite the variations across Adobe Standard profiles, the resulting TIFF file is generally satisfactory.

I’ve experimented with white-balancing using a known neutral point, as well as keeping the image set at the illuminant white point. With the Adobe Standard + ACR-to-linear curve, white-balancing to a known neutral dark (which appears bright in the negative) provided more consistent grays across the tonal range. Adobe Standard is dual a illuminant profile that works well for this purpose. DNG scans from Vuescan come with an empty embedded DNG profile. With these scans I leave white balance alone.

I captured my negatives using a Sony A7IV and an iPad as the backlight. The spectral distribution, which is peaky, is similar to the light source used in a Fuji SP3000. This improves color separation, but certain colors like yellows and greens appeared overly saturated and bright. This led me to experiment with RA4 print paper ICC profiles. I downloaded several of them and converted them to .cube using Lattice. The tonal curve was flattened, so only color transformation occurred.

In the template, the Kodak Endura color profile paired with your Endura contrast gave me the most natural-looking colors. Interestingly, when using a high-quality, spectrally consistent LED light source (YujiLED D50) to illuminate the negatives, there was no need for paper color emulation to achieve an accurate inversion. However, this opens up a complex topic I’m not ready to dive into just yet...

I also modified some of the paper contrast LUTs to ensure peak white and black levels could be achieved, along with a combination of fogged blacks and whites.

While REC.2020 is solid, ACEScg is even better, especially when dealing with saturated dark colors like purples.

The most accurate conversion—both in terms of matching the SG reference values and overall visual appeal—was achieved using the iPad backlight, with Sony A7IV files processed through the D50-calibrated profile available on my website. For white balance, I relied on readings from an i1Pro3, rather than white-balancing to the white background in Lightroom. My profiles are single-illuminant, so I had to leave the camera white balance set to the iPad’s white point, which is around 6300K.

Though not all of your findings match mine, It makes sense that different things would work for different setups. I have found that too bright yellow/green can be related to the white balance or the camera profile.

It’s tricky to decide what profile to make for such a usage scenario. I’ve experimented with simple, matrix only profiles for D50 and StdA, both with WB set to a known neutral or to the white point of the backlight. The Sony A7IV get super close to a calibrated response with a matrix only. It’s an easy camera to calibrate.
I even experimented with a complex profile (Matrix+2 LUTs) for the light source of the iPad itself: I illuminated a ColorChecker SG with an iPad and created a camera profile. Out of all of these, the D50, coupled with a paper emulation looked the best.
I guess the peaky nature of the backlight, coupled with the color of film makes DSLR scanning a moving target.
What do you think?
Paulo Cunha Martins - www.paulocunhamartins.com
DISCLAIMER
The information in this email is confidential and should only be
read by the person or entity to whom it is addressed.
If you have received this communication by mistake, please notify the sender and
immediately delete the message and the attached files without reading,
copying, recording, distributing, disseminating or making any other use of the information.

On 16. Sep 2024, at 21:17, Aaron @.***> wrote:
Though not all of your findings match mine, It makes sense that different things would work for different setups. I have found that too bright yellow/green can be related to the white balance or the camera profile.
—
Reply to this email directly, view it on GitHub https://github.com/abpy/color-neg-resources/issues/2#issuecomment-2353722560, or unsubscribe https://github.com/notifications/unsubscribe-auth/BLBTHHMMSYNC2WTXKFJYVALZW4VD7AVCNFSM6AAAAABNXKLRRSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGNJTG4ZDENJWGA.
You are receiving this because you modified the open/close state.

Actually, I revisited the workflow where the camera profile is created based on a color chart illuminated by the iPad. The resulting neg>pos conversion doesn't require a paper gamut layer at all. Here's an example.

I do have a few more thoughts on film and profiling:

my dcamprof profile is very similar to the adobe standard linear one.

scans with a peaky light spectrum likely require a different calibration than white light. (it seems this is the case with your new profile)

It is possible to get very nice colors with a broad spectrum backlight and a standard camera profile.
The dye absorption of a white light scan adds a look to the film that is similar to a print.

I have not tried a narrow-band (peaky) light source, but I would expect it produces brighter colors and requires less density corrections.

A "perfect" film scan would be almost indistinguishable from a digital photo. While this would show the true capabilities of film, it's probably not what most film photographers would expect.

I only know what works and doesn't work for my own film and camera. I am not able to test many different setups so I can't say what works best for all of them. I am not set up to scan film right now so I cant do any new tests, but I did try processing a scan from a different camera. I found that requires different raw settings, and profiles with gamut compression can cause desaturated colors if the white balance is too warm.
You may find some of these discussions interesting:
https://discuss.pixls.us/t/any-interest-in-a-film-negative-feature-in-rt/12569/362


set test variable doesnt work with keywords

robotframework==3.0.2
set test variable doesnt work with keywords
These both test fail after changeVar
*** Test Cases ***
test
[Setup]    tsetup
log    ${var1}
log    ${var2}
Run Keyword unless    "${var1}"=="1"    Fail    var1 not equal
Run Keyword unless    "${var2}"=="2"    Fail    var2 not equal
${var1}    Set Variable    3
Run Keyword unless    "${var1}"=="3"    Fail    var1 not equal
log    ${var1}
changeVar
log    ${var1}
Run Keyword unless    "${var1}"=="4"    Fail    var1 not equal
[Teardown]    tteardown
test2
[Setup]
${var1}    Set Variable    1
Set Test Variable    ${var1}
Set Test Variable    ${var2}    2
log    ${var1}
log    ${var2}
Run Keyword unless    "${var1}"=="1"    Fail    var1 not equal
Run Keyword unless    "${var2}"=="2"    Fail    var2 not equal
${var1}    Set Variable    3
Run Keyword unless    "${var1}"=="3"    Fail    var1 not equal
log    ${var1}
changeVar
log    ${var1}
Run Keyword unless    "${var1}"=="4"    Fail    var1 not equal
[Teardown]    tteardown
*** Keywords ***
tsetup
${var1}    Set Variable    1
Set Test Variable    ${var1}
Set Test Variable    ${var2}    2
tteardown
Run Keyword unless    "${var2}"=="2"    Fail    var1 not equal
changeVar
log    ${var1}
${var1}    Set Variable    4
log    ${var1}

Gave a short explanation why this happens[1]. But I think the documents could be enhanced because I think it's not explained when the variable scope is lost.
[1] https://groups.google.com/forum/m/#!topic/robotframework-users/PZ2YlDLpCz4

not a bug


Send Lauren email export

Just needs emails and names, but can have other info.

New import process created at harvester/email_exporter.py. Sent sample file to Lauren for feedback.


[az fleet] Bumping fleet SDK to latest preview version

This checklist is used to make sure that common guidelines for a pull request are followed.
Related command
az fleet
General Guidelines

[x] Have you run azdev style <YOUR_EXT> locally? (pip install azdev required)
[x] Have you run python scripts/ci/test_index.py -q locally? (pip install wheel==0.30.0 required)
[x] My extension version conforms to the Extension version schema

For new extensions:

[ ] My extension description/summary conforms to the Extension Summary Guidelines.

About Extension Publish
There is a pipeline to automatically build, upload and publish extension wheels.
Once your pull request is merged into main branch, a new pull request will be created to update src/index.json automatically.
You only need to update the version information in file setup.py and historical information in file HISTORY.rst in your PR but do not modify src/index.json.

az fleet


DSD-927: Updating List definition to description

Fixes JIRA ticket DSD-927
This PR does the following:

Updates references of the List's "definition" to "description" name. Thanks @oliviawongnyc for catching and letting us know about this!

How has this been tested?
Storybook.
Accessibility concerns or updates

Note that the HTML role is still considered to be "definition". This affects accessibility tests and getting elements by role in unit tests.

Checklist:

[ ] I have updated the Storybook documentation accordingly.
[ ] I have added relevant accessibility documentation for this pull request.
[ ] All new and existing tests passed.

Front End Review:

[ ] View the example in Storybook

Tugboat has finished building the preview for this pull request!
Link:

https://pr960-4e9nhqwkmaknkj6nuweb4leqfwgp1bsb.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/6259dabf9d9568879f447b0c

Tugboat has finished building the preview for this pull request!
Link:

https://pr960-4e9nhqwkmaknkj6nuweb4leqfwgp1bsb.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/6259dabf9d9568879f447b0c


Pattern description?

Is there a description of the pattern syntax anywhere? It appears to get mapped to regex but browscap files seem to stick to a limited subset.
If the pattern is specified clearly then it would be possible to create optimised in memory lookup indexes.

Some performance notes:
For strings of small lengths to a normal user agent (IE around 100-200 chars) perform for me too poorly seeing 300ms to 1500ms (performance seems quite variable). I thought at first running the same UA twice might improve things but there wasn't a meaningful improvement. This is way too excessive in general.
It's possible on the user end to merge concurrent requests for the same item, cache exact strings and use webworkers. While this would make a huge improvement it doesn't eliminate the problem of a perceptible latency on a cache miss. It would also only take a dozen misses to overwhelm a typical core, something which can be done deliberately very easily. A hundred requests with a random UA would demand over a minute of CPU and would be a rate of < 1 request per second per core.
I'd make an assumption that some performance issues might relate to portage as well as the nature of PHP as run once then dispose everything making in memory lookup structures less likely to yield benefits. However, browscap was originally accessed via a C extension, which would usually stay resident across many requests and could likely load a binary lookup structure. I don't think it was optimised like this though probably because originally there was not so much data to match.
Looking at the code there are obvious opportunities to optimise, such as not instantiating the same regex object over and over. The function to get browser instantiates everything every time which doesn't seem to take much time but raises the question of whether things are being done again and again on demand that might need only be done once.
Current optimisations are crude and may not even be effective if ported, for example, patterns are all combined then compared, then if they match individually compared. This would more likely make things slower.
I suspect optimisations at present may also make it difficult to add other optimisations though I never looked closely. One algorithm seemed to just filter out longer regexes than the user agent.
A good thing is that the pattern is quite simple. Other systems can use quite complex regex and other tests. A simply pattern can likely lend quite well to creating some basic index structure.
I will experiment with this:

Lower case everything because matches seem insensitive.
Tokenise each pattern separating into their whole strings.
There are over 100K entries. 24 bits would be plenty (16 million) so three bytes could in theory identify something.
Very few or maybe just one at 3 bytes or less so can be handled specially.
Take three consecutive bytes at random from each entry and bucket them by that.
Look up takes every unique three bytes of a string and finds possible matches (false positives but no false negatives). For example, hello will look for hel ell llo and if they have buckets with lists of patterns then add that to the list.
Match against all those patterns.

This wouldn't be perfect but would be a start and an example showing how to easily rule out a lot of non-matching patterns.
Various possible improvements:

Separate handling for whole strings.
Additional index for prefix and suffix strings (can be binary search / tree / trie).
Better selection of bytes and balancing.
Apply recursively.

I'm fairly certain that and a few other things will quickly see times of less than 10ms and falling with touchups. That's a simply example that can be expanded upon.
I may post some prototypes later.

 Thanks.


Build for jdk 8 target.

Docker: rely on the official jdk 8 container and install mesos afterwards.
IntegrationTests: set max heap mem explicitly for all launched applications.

Besides my wish for named parameters, that looks excellent!

My only concern is that our tests might not be reproducible because we just use the latest available mesos version. Maybe we can pin the version there?

Maybe we address pinning mesos versions when we have proper cross-testing, though.

Pinned the mesos version.
Added named parameters.

LGTM!


Allow overriding images at the hypershift operator level

What this PR does / why we need it:
Adds an image-refs flag to the install command that accepts an imagestream
YAML file that contains tags for images used by the HyperShift operator.
The images are then specified as environment variables on the hypershift
operator and propagated to the appropriate components.
Per-HostedCluster annotations still oveerride any operator-level environment
variables.
Which issue(s) this PR fixes (optional, use fixes #<issue_number>(, fixes #<issue_number>, ...) format, where issue_number might be a GitHub issue, or a Jira story:
Fixes HOSTEDCP-339
Checklist

[x] Subject and description added to both, commit and PR.
[x] Relevant issues have been referenced.
[ ] This change includes docs.
[ ] This change includes unit tests.

/lgtm


problems when launching command

the bot this log on discord, all the configuration commands work, but when I want to run the command "tgc money" the bot crashes and says it as an error:
TypeError: Cannot read property ‘client’ of undefined

error cause at line 13 of file: MessageEmbed.js
Object.defineProperty(this, ‘client’, { value: message.client )
how can i fix this error?

Hey, thanks for reporting this issue, I will work on it during the weekend, I'll keep you updated 😉

Can you show me the content of server.json and user.json please ?

good evening :)
yes here they are:
https://nsm09.casimages.com/img/2021/02/21//21022102133025847417273619.png
https://nsm09.casimages.com/img/2021/02/21//21022102133125847417273620.png
so the command prefix, and language works.
But the 3 other tgc commands crash the bot

suddenly I use the holds that I hosted on my discord and there is a bug when we buy the booster!
Even when we have more agent we can still continue to buy Xd

Mmmmh that sounds like we are not using the same version of NodeJS, can you run node -v and send me the output please ?

I'll send it to you at the end of the afternoon when I get home.  but everything and one day so i use the latest version of node.js, npm, and discord.js on windows

do you have a discord so that we can talk faster?

Sure, it's Inklay#5226

Send

the worry of command crash and settle!  thank you to you ^^


Fix: llm completion exception breaks CodeActAgent

Short description of the problem this fixes or functionality that this introduces. This may be used for the CHANGELOG
This fixes the issue mentioned in #3575
Added a try catch block to catch any exception thrown by llm.completion.

Give a summary of what the PR does, explaining any non-trivial design decisions
I just added a try catch block to catch any exception, Also the step method needs to return and action, So I am returning the AgentFinishAction with an error message thought to inform user that there was some error and finish action allows the user to retry it or give a new input.

Link of any specific issues this addresses
#3575
https://github.com/user-attachments/assets/8d833e8b-aa92-40a5-bee0-9f06d7205449

Thanks for working on this!

What could be nice is to adapt the existing exception handling in llm.py's completion methods to disable the lenghty tracebacks, but include the messages from cascaded exceptions (it is a lot of "clutter" in the log with references outside of OpenHands' codebase).

@tobitege  I've created this PR to address the exception issue in LLM completion. I've used AgentFinish for this, as it seemed appropriate since the action type will be "finish" in case of any exception, with an updated message using the "thought" field. However, I'm wondering if we should create a new action like AgentError instead. What are your thoughts on this approach?

However, I'm wondering if we should create a new action like AgentError instead. What are your thoughts on this approach?
As a message type I'd prefer the name to reflect that it is related to the LLM, like we have LLMResponseError already (openhands/core/exceptions.py).
Maybe first look into that before creating a new one?

@tobitege Thanks for your comments, I will look into them.

@tobitege  I found that we can use LLMResponseError since any exception in the completion method is related to an LLM response. I’ve raised that exception directly from the completion method and made it return AgentFinishAction whenever it catches an LLMResponseError.
I’ve updated my PR with these changes. Let me know if you have any questions or suggestions.


Continuous fuzzing on Fuzzit

Integrates with Fuzzit for automated bug discovery. Initially discussed in #429.
I've tried to fuzz everything that does some parsing. The main target AttackerHTTP decodes fuzz into a valid HTTP response. It stubs the targeter and communicates through a socket file.
Other targets are:

AttackerTCP - Fuzz response handling with unstructured byte stream.
HTTPTargeter - Fuzz decoding of a target list in HTTP format.
JSONTargeter - Fuzz decoding of a target list in JSON format.
ResultsFormatDetection - Fuzz result list format detection.
GobDecoder - Fuzz decoding of a result list in gob format.
CSVDecoder - Fuzz decoding of a result list in CSV format.
JSONDecoder - Fuzz decoding of a result list in JSON format.

The format detection fuzzer caught one crash in a local run. I'm attaching the data here. The unsuffixed file contains the crashing input. Seems to have run out of memory, maybe a memory leak somewhere.
crashers.FormatDetection.zip
There's a vegeta org on Fuzzit all preconfigured and ready to go. If you sign in to set up an account I can ask them to add you to the org. There's a little setup to do:

In Fuzzit settings grab an API Key.
In repo settings in Travis paste it to envvar FUZZIT_API_KEY.

Including the "fuzz target parser" issue in the close list because I think this patch fulfills it.
Closes #429. Closes #140.
Background

Enables automated fuzzing. Proposed in #429.
Checklist

[x] Git commit messages conform to community standards.
[x] Each Git commit represents meaningful milestones or atomic units of work.
[x] Changed or added code is covered by appropriate tests.

(The Travis build will fail until the API key is in)

Just pushed an improvement to this. I got it decoding the fuzz into a more meaningful HTTP response, including headers. I think it will give better coverage.
Also split out raw byte stream fuzzing into AttackerTCP. Most app code must be behind HTTP parsing but if it does crash on a malformed response you probably want to know that.

I am not able to reproduce the crash with this code.
package main

import (
	"os"

	vegeta "github.com/tsenart/vegeta/lib"
)

func main() {
	f, err := os.Open("2d8aaa305cd7b972396ef7c69da1f59204b0a255")
	if err != nil {
		panic(err)
	}
	defer f.Close()
	vegeta.DecoderFor(f)
}

Thanks for looking at it! Will go over all of this soon.

I think you should be added to the org.

I am not able to reproduce the crash with this code.

Hm. It crashes for me. Maybe it just takes more memory than my system has.
The same input crashes if I read it with a gob decoder. Same error. It doesn't crash until reading. No crash with CSV or JSON.
package main

import (
	"io"
	"os"

	vegeta "github.com/tsenart/vegeta/lib"
)

func main() {
	f, err := os.Open("2d8aaa305cd7b972396ef7c69da1f59204b0a255")
	if err != nil {
		panic(err)
	}
	defer f.Close()
	decoder := vegeta.NewDecoder(f)
	readAllResults(decoder)
}

func readAllResults(decoder vegeta.Decoder) (ok bool) {
	for {
		result := &vegeta.Result{}
		err := decoder.Decode(result)
		if err == io.EOF {
			return true
		} else if err != nil {
			return false
		}
	}
}

fatal error: runtime: out of memory

There's the hex of that crashing input.
fce4303030

I think everything here is addressed.

Thanks for addressing all the feedback!

Hm. It crashes for me. Maybe it just takes more memory than my system has.
The same input crashes if I read it with a gob decoder. Same error. It doesn't crash until reading. No crash with CSV or JSON.

I find this very strange. I just compiled and ran the code you posted above and the maximum resident set size is 131 MB. I'd like to solve this mystery before merging this in :-)
time -lp ./test
real         0.06
user         0.03
sys          0.02
 131784704  maximum resident set size
         0  average shared memory size
         0  average unshared data size
         0  average unshared stack size
     32220  page reclaims
         0  page faults
         0  swaps
         0  block input operations
         0  block output operations
         0  messages sent
         0  messages received
         0  signals received
         0  voluntary context switches
       249  involuntary context switches

I'll do some investigation. There's what I get running with time. Seems like it's ~6MB memory usage before it crashes.
[user@bookmoons vegeta]$ /usr/bin/time -vp ./test
fatal error: runtime: out of memory

runtime stack:
runtime.throw(0x70267c, 0x16)
	/usr/share/go/src/runtime/panic.go:617 +0x72
runtime.sysMap(0xc004000000, 0xe8000000, 0x9702f8)
	/usr/share/go/src/runtime/mem_linux.go:170 +0xc7
runtime.(*mheap).sysAlloc(0x957e80, 0xe4304000, 0x957e90, 0x72182)
	/usr/share/go/src/runtime/malloc.go:633 +0x1cd
runtime.(*mheap).grow(0x957e80, 0x72182, 0x0)
	/usr/share/go/src/runtime/mheap.go:1222 +0x42
runtime.(*mheap).allocSpanLocked(0x957e80, 0x72182, 0x970308, 0x957e88)
	/usr/share/go/src/runtime/mheap.go:1150 +0x37f
runtime.(*mheap).alloc_m(0x957e80, 0x72182, 0x746abed50101, 0x746abed5fd98)
	/usr/share/go/src/runtime/mheap.go:977 +0xc2
runtime.(*mheap).alloc.func1()
	/usr/share/go/src/runtime/mheap.go:1048 +0x4c
runtime.(*mheap).alloc(0x957e80, 0x72182, 0x10101, 0x746abed5fd08)
	/usr/share/go/src/runtime/mheap.go:1047 +0x8a
runtime.largeAlloc(0xe4303030, 0x970101, 0x746abed5fd08)
	/usr/share/go/src/runtime/malloc.go:1055 +0x99
runtime.mallocgc.func1()
	/usr/share/go/src/runtime/malloc.go:950 +0x46
runtime.systemstack(0x4567d9)
	/usr/share/go/src/runtime/asm_amd64.s:351 +0x66
runtime.mstart()
	/usr/share/go/src/runtime/proc.go:1153

goroutine 1 [running]:
runtime.systemstack_switch()
	/usr/share/go/src/runtime/asm_amd64.s:311 fp=0xc0000b9c88 sp=0xc0000b9c80 pc=0x4568d0
runtime.mallocgc(0xe4303030, 0x694420, 0xc0000b9d01, 0x638363)
	/usr/share/go/src/runtime/malloc.go:949 +0x872 fp=0xc0000b9d28 sp=0xc0000b9c88 pc=0x40d3e2
runtime.makeslice(0x694420, 0xe4303030, 0xe4303030, 0x4)
	/usr/share/go/src/runtime/slice.go:49 +0x6c fp=0xc0000b9d58 sp=0xc0000b9d28 pc=0x44228c
encoding/gob.(*decBuffer).Size(...)
	/usr/share/go/src/encoding/gob/decode.go:65
encoding/gob.(*Decoder).readMessage(0xc0000fe080, 0xe4303030)
	/usr/share/go/src/encoding/gob/decoder.go:101 +0x16e fp=0xc0000b9db8 sp=0xc0000b9d58 pc=0x6417ce
encoding/gob.(*Decoder).recvMessage(0xc0000fe080, 0xc0000b9e38)
	/usr/share/go/src/encoding/gob/decoder.go:90 +0xfe fp=0xc0000b9e10 sp=0xc0000b9db8 pc=0x64162e
encoding/gob.(*Decoder).decodeTypeSequence(0xc0000fe080, 0x712e00, 0xc0000fe080)
	/usr/share/go/src/encoding/gob/decoder.go:143 +0x12c fp=0xc0000b9e30 sp=0xc0000b9e10 pc=0x641afc
encoding/gob.(*Decoder).DecodeValue(0xc0000fe080, 0x6ad380, 0xc0000fe100, 0x16, 0x0, 0x0)
	/usr/share/go/src/encoding/gob/decoder.go:211 +0xf6 fp=0xc0000b9e70 sp=0xc0000b9e30 pc=0x641e46
encoding/gob.(*Decoder).Decode(0xc0000fe080, 0x6ad380, 0xc0000fe100, 0x6b8a01, 0xc0000fe100)
	/usr/share/go/src/encoding/gob/decoder.go:188 +0x191 fp=0xc0000b9ed8 sp=0xc0000b9e70 pc=0x641cb1
github.com/tsenart/vegeta/lib.NewDecoder.func1(0xc0000fe100, 0xc0000fe100, 0xc00007de50)
	/home/user/go/src/github.com/tsenart/vegeta/lib/results.go:116 +0x40 fp=0xc0000b9f10 sp=0xc0000b9ed8 pc=0x664bd0
github.com/tsenart/vegeta/lib.Decoder.Decode(...)
	/home/user/go/src/github.com/tsenart/vegeta/lib/results.go:121
main.readAllResults(0xc00007de50, 0xc000088528)
	/home/user/go/src/github.com/tsenart/vegeta/test.go:23 +0x45 fp=0xc0000b9f48 sp=0xc0000b9f10 pc=0x665025
main.main()
	/home/user/go/src/github.com/tsenart/vegeta/test.go:17 +0xae fp=0xc0000b9f98 sp=0xc0000b9f48 pc=0x664f9e
runtime.main()
	/usr/share/go/src/runtime/proc.go:200 +0x20c fp=0xc0000b9fe0 sp=0xc0000b9f98 pc=0x42eb2c
runtime.goexit()
	/usr/share/go/src/runtime/asm_amd64.s:1337 +0x1 fp=0xc0000b9fe8 sp=0xc0000b9fe0 pc=0x4589a1
Command exited with non-zero status 2
	Command being timed: "./test"
	User time (seconds): 0.00
	System time (seconds): 0.00
	Percent of CPU this job got: 76%
	Elapsed (wall clock) time (h:mm:ss or m:ss): 0:00.01
	Average shared text size (kbytes): 0
	Average unshared data size (kbytes): 0
	Average stack size (kbytes): 0
	Average total size (kbytes): 0
	Maximum resident set size (kbytes): 6008
	Average resident set size (kbytes): 0
	Major (requiring I/O) page faults: 0
	Minor (reclaiming a frame) page faults: 376
	Voluntary context switches: 50
	Involuntary context switches: 66
	Swaps: 0
	File system inputs: 0
	File system outputs: 0
	Socket messages sent: 0
	Socket messages received: 0
	Signals delivered: 0
	Page size (bytes): 4096
	Exit status: 2

There's a reduced test case without the file read. Same crash.
package main

import (
	"bytes"
	"io"

	vegeta "github.com/tsenart/vegeta/lib"
)

func main() {
	input := []byte{0xfc, 0xe4, 0x30, 0x30, 0x30}
	decoder := vegeta.NewDecoder(bytes.NewReader(input))
	readAllResults(decoder)
}

func readAllResults(decoder vegeta.Decoder) (ok bool) {
	for {
		result := &vegeta.Result{}
		err := decoder.Decode(result)
		if err == io.EOF {
			return true
		} else if err != nil {
			return false
		}
	}
}

What's your environment like? I'm running Fedora and Go 1.12.
My Fedora version is old. Maybe the system has a bug.
[user@bookmoons vegeta]$ cat /etc/fedora-release
Fedora release 28 (Twenty Eight)
[user@bookmoons vegeta]$ go version
go version go1.12.5 linux/amd64

Tried this with Go 1.12.9 and 1.13. Same crash on both.

Removing anything from the input seems to prevent the crash. Adding to the beginning also prevents it. Adding to the end preserves.
Crashing inputs:
fce4303030
fce430303030
fce43030303030

Noncrashing inputs:
fce43030
e4303030
fc303030
30fce4303030

I think what's happening here is the gob decoder allocates a large amount then doesn't use it, so it never ends up in that resident set size. Your machine probably has enough to handle the allocation so it's accepted.
encoding/gob starts reading a message:
runtime.makeslice(0x694420, 0xe4303030, 0xe4303030, 0x4)
	/usr/share/go/src/runtime/slice.go:49 +0x6c fp=0xc0000b9d58 sp=0xc0000b9d28 pc=0x44228c
encoding/gob.(*decBuffer).Size(...)
	/usr/share/go/src/encoding/gob/decode.go:65
encoding/gob.(*Decoder).readMessage(0xc0000fe080, 0xe4303030)
	/usr/share/go/src/encoding/gob/decoder.go:101 +0x16e fp=0xc0000b9db8 sp=0xc0000b9d58 pc=0x6417ce

I see in the gob encoding a byte slice is sent as length followed by bytes. The length is prefixed with a byte count, encoded as negated single byte. Ours is 0xfc which decodes to 4.
makeslice() is called at the top of this stack trace. The 2nd argument is slice length, number of elements. The code is here:
https://golang.org/src/runtime/slice.go
It shows up as 0xe4303030, right from our fuzz. That comes to<PHONE_NUMBER> decimal, 3.8 billion items. For 1 byte elements that's ~3.5GB memory.
That's the end of the fuzz so it just allocates then releases. But I guess if my system doesn't have that available it refuses to allocate.

Thanks for the investigation!. I think there's nothing left to do here.

Hooray:) feel free to RT https://twitter.com/fuzzitdev/status/1169170601623379968

Thanks a lot @tsenart. I think you can remove me from both orgs in Settings, then they're all yours.

@bookmoons: I'm migrating to Github Actions for CI (away from Travis). Hitting this issue with our Fuzzit steps: https://github.com/tsenart/vegeta/pull/456/checks?check_run_id=276595658
Any clue how to fix this?


[RFC] Relax the canonical order checking of arch string for -march option

Changes

2021/06/03

Add an new option d.

The ISA spec has specify the ISA extension could be describe the arch string, and toolchain are using this way to control the code gen, and currently toolchain are following the order describe by the ISA spec, and emit error if order is wrong.
However we have bunch of sub-extension from several ISA extension now, zv*, zb*, zk*, zp*, zf* and zi*, and there is x*, s* and zxm* extensions, the order rule is also little bit different:

Order between z*, s*, h*, zxm* and x* are: z* -> s* -> h* -> zxm* -> x*
Order rule for z*: they should be ordered first by category (second letter), then alphabetically within a category
Order rule for h*, s*, zxm* and x*: ordered alphabetically.

Okay, so how to describe a arch has rv64gc, sfoo, zba, zfh, zicsr, zxmbar, xsf and xabc?
The canonical order is there: rv64gc_zicsr_zfh_zba_sfoo_zxmbar_xabc_xsf.
I think it's hard to write it correct without check with ISA spec.
So my proposal is relax the canonical order checking for the -march option,
And I list few possible options:
a. Relax order check for multi-letter extension, e.g. order between z*, s*, h*, zxm* and x*. [*1]
b. Relax order check for whole arch string, including single letter extensions. [*1]

e.g. RV32MAFDI is OK

c. Don't relax order check, but emit an error to tell user the right order.
d. Relax order check for whole arch string, including single letter extensions. [*1] except I, G, E.

e.g.

RV32IMAFD == RV32IAFDM
RV32MAFDI is not OK.
RV32I_ZAM # OK
RV32IM_ZA #OK
RV32I_ZA_M #OK
RV32IZAM # Not OK multi-letter must start with _

*1: The ELF attribute emission still must in canonical order to simplify the parser logic, that's also keep the possibility of cache the checking result if we check that in OS or runtime in future.

Thanks for writing down this proposal Kito. I like the idea that tools that consume human-generated input would be flexible in the order they would accept, but that they would always canonicalize the ISA string. So when a tool prints something it's always in canonical order and you can easily match that string. But why should the human have to remember that order? One possible exception that was mentioned in the LLVM RISC-V sync-up call was requiring that the i would always come first, as that's very integral to the rv32i vs rv64i distinction, but maybe that's overthinking it. (The same logic would presumably apply to g).

I think the main problem is with the z and x extensions, which have unobvious orders.  The single letter extensions are pretty clear about the right ordering.  I'm Ok with relaxing the order check for user input for the multicharacter extensions.

Nice idea. I often met this problem in develop and test. Since we usually use 'imafdc' in general,  it's not easily always type other extensions in right sequence.  Relaxing the order that not frequently is real helpful for both user and developer.

As it was mentioned in the GCC call, the interpretation of the string should always be after the canonical order.  If anything, to future proof it.  When displaying the string, wherever in the toolchain, it should always be in the canonical order, whatever the user input.

I support option c (Don't relax order check, but emit an error to tell user the right order).  It's not just the GNU toolchain (and LLVM) that is emitting and parsing ISA strings.  I've written helper scripts that help users find the right ISA string for the features they have or want, and having a specification that says There Is Only One Correct Answer makes things easier to do such tasks.

Option a. Does it have another option that just relaxes the order in the same multi-letter extension?

Option b or d both are better, it let user easy to use this 'march' option without any complex detail of SPEC
and tools like GCC or LLVM is responsible for hiding the details inside.

I prefer option d. It's is flexible and reads clearly.

For: Dynamically building up arch strings is awkward (e.g. you can't take rv64gc and then append q, because the order is rv64gqc) if you're taking in user input and appending
Against: Comparing arch strings visually becomes much harder if they're not in canonical order

Thanks all your feedback, sound like most people are happy to relax the canonical order checking, statistics so far:

Option
Voting

a
@jim-wilson, @tclin914

b
@rjiejie @pz9115

c
@kenta2

d
@luismarques, @ebahapo @rjiejie @Geng-Qi @pz9115 @kito-cheng

@palmer-dabbelt has told me he is fine to relax the order, but we should take care about the ambiguous of interpreting the arch string, especially for the multi-letter and single-letter extension.
e.g.
rv32i_a_zm # i + zm +a, no ambiguous.
rv32i_zma # i + zm +a or i + zma?

So I think we should write down few more explicit rule, like multi-letter extension must using underline between all adjacent extension.

@kito-cheng proposes "option (d)":

RV32I_ZAM # OK
RV32IZAM # Not OK multi-letter must start with _

I am against adding constraints that aren't in the (official) ISA string specification (Vol I Ch. 25). In this case, RV32IZam and RV32I_Zam are both legal, so mandating the latter is problematic in my opinion. So I'm strongly opposed to option (d).
I am (mildly) in favor of option (c): do not relax the specification. As a toolchain user I have never found the law to be particularly onerous. My vote is motivated by concern of a (hypothetical) situation where a user becomes accustomed to writing illegal ISA strings, switches to a tool which enforces the law, and then files a (spurious) bug report, wasting some law-abiding developer's time. (Spare the rod, spoil the child?) This is a subjective argument, and certainly not a hill I will die on.

@nick-knight I think the details could be discussed, since the intention is preventing paring ambiguous.

My vote is motivated by concern of a (hypothetical) situation where a user becomes accustomed to writing illegal ISA strings, switches to a tool which enforces the law, and then files a (spurious) bug report, wasting some law-abiding developer's time. (Spare the rod, spoil the child?)

That sounds a valid concern, when we relax that, then people are used to using relaxed order, but I still concern about the order for multi-letter extension - it's really hard to sort, so I change my mind (back) to option a.

Hey guys, thank all your feedback, now I created a PR https://github.com/riscv/riscv-toolchain-conventions/pull/14 for this RFC, welcome any further comment on that PR :)

In today's GCC RISC-V call we discovered the concern that a future ISA string format might cause a conflict. Addressing that in the specification (e.g. by relaxing the order there, or by getting hard guarantees there which can be relied upon) seemed unlikely.
One way that would still be possible is to do something similar like the push_arch proposal in the RISC-V Assembly Programmer's Manual E.g. -march=rv64gc -march-append=zicsr.

In today's GCC RISC-V call we discovered the concern that a future ISA string format might cause a conflict. Addressing that in the specification (e.g. by relaxing the order there, or by getting hard guarantees there which can be relied upon) seemed unlikely.
One way that would still be possible is to do something similar like the push_arch proposal in the RISC-V Assembly Programmer's Manual E.g. -march=rv64gc -march-append=zicsr.

I think this is a good way to specify march string, if we keep adding new risc-v extension, this march string will be too long, and a little ugly to me, but considering library built for different arch, it will also be a disaster.


Add spawn with stream example to wiki

The wiki update should speak for itself. In my recent development, it was non-obvious I had to use a PooledBitStream with Spawn() since the method signature asks for a Stream. This wiki change should clear that up for others.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

To add some more context here is the beginning of the Discord conversation about this: https://discord.com/channels/449263083769036810/563033158480691211/801242474395467796

To add some more context here is the beginning of the Discord conversation about this: https://discord.com/channels/449263083769036810/563033158480691211/801242474395467796

After thinking about this. This shouldn't be a documentation thing. If the spawn function only works properly by passing a BitStream to it (which is currently the case because the deserialization on the other side will always create a bitstream from it.) then the interface should use BitStream and not Stream. If we want to support both BitStream and byte based streams such as memory stream we need to rework the implementation

If the spawn function only works properly by passing a BitStream to it (which is currently the case because the deserialization on the other side will always create a bitstream from it.) then the interface should use BitStream and not Stream.

Hey Luke, I agree the method signature should probably be changed to reflect the proper requirement, or the "bug" of not supporting any stream should be fixed. However, it may not impact the documentation side right now?
I see three scenarios:

The API signature changes to be more restrictive (BitStream), in which case, this PR's changes are relevant and helpful.
The API signature stays as is and implementation is reworked, in which case, this PR's changes are not relevant.
The API signature stays as is and implementation is not reworked, in which case, this PR's changes are relevant and helpful.

Which direction will Unity go? IMO, this documentation change cannot hurt right now and can only help.

Closing this as it's been addressed in the new docs.


UITableView sometimes shows previously queued image.

Hi Alexander,
I am playing around with Nuke, so I created a tableview that contains cells having only an image.
While scrolling faster I realised that the UITableView sometimes shows previously queued image.
Observable.concat(nukeManager.loadImage(with: viewModel.smallPhoto).orEmpty,
                          nukeManager.loadImage(with: viewModel.regularPhoto).orEmpty)
            .bind(to: photoImageView.rx.image)
            .disposed(by: rx.disposeBag)

Any idea why this happens?

Hey,
Make sure that you cancel previous subscriptions and prepare image view for reuse before loading a new image:
disposeBag = DisposeBag()
imageView.image = nil

... load image ...

I did that, but nothing changed.

.bind(to: photoImageView.rx.image)
.disposed(by: rx.disposeBag)

Are you sure you're adding disposables to the correct dispose bag (the one that get's re-created)?

Yes, created a disposeBag on the cell and the same thing occurs

Solved it.


Fix Main.tf Comment Handling on Windows

Prerequisites
Put an x into the box(es) that apply:

[x] This pull request fixes a bug.
[ ] This pull request adds a feature.
[ ] This pull request introduces breaking change.

For more information, see the Contributing Guide.
Description
This pull request changes the method used for extracting the filename from the path to check if main.tf is being processed. The current path package used is not OS agnostic, whereas filepath is. See Package Filepath for further info.
Issues Resolved
#32
Checklist
Put an x into all boxes that apply:

[x] I have read the Contributing Guidelines.

Tests

[ ] I have added tests to cover my changes.
[ ] All tests pass when I run make test.

Documentation

[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.

Code Style

[x] My code follows the code style of this project.

Great catch, @X-Guardian and thanks for the contribution!


Merge Filter Join Rules together

Summary of the changes / Why this improves CrateDB
MoveFilterBeneathHashJoin and MoveFilterBeneathNestedLoop can be merged
into one rule by introducing a JoinPlan interface.
That was a low-hanging fruit while looking into joins.
Checklist

[x] Added an entry in CHANGES.txt for user facing changes
[x] Updated documentation & sql_features table for user facing changes
[x] Touched code is covered by tests
[x] CLA is signed
[x] This does not contain breaking changes, or if it does:

It is released within a major release
It is recorded in CHANGES.txt
It was marked as deprecated in an earlier release if possible
You've thought about the consequences and other components are adapted
(E.g. AdminUI)

retest this please


Can we have an uninstall command

Not as high a priority as getting plug-ins working. But at some point I'd like to explore an uninstall script.

There's an uninstall script already :P just replace install.sh with uninstall.sh

I thought I'd seen it but didn't see it in the readme!

Yeah my bad, I forgot to update the README, I'll add some info


You provided 'undefined' where a stream was expected

Hi!,
I'm trying to use the HttpLoader in an angular 8 project, I've followed all the steps in the guide and in this tutorial and i get allways the same error at the chrome console:
"ERROR TypeError: You provided 'undefined' where a stream was expected. You can provide an Observable, Promise, Array, or Iterable."

I think i'm using the correct version (11+ core and 4+ loader) for Angular 8, anyway here are my dependencies form package.josn:
  "dependencies": {
    "@angular/animations": "~8.2.0",
    "@angular/cdk": "~7.3.7",
    "@angular/common": "~8.2.0",
    "@angular/compiler": "~8.2.0",
    "@angular/core": "~8.2.0",
    "@angular/flex-layout": "^7.0.0-beta.24",
    "@angular/forms": "~8.2.0",
    "@angular/material": "^7.3.7",
    "@angular/material-moment-adapter": "^7.3.7",
    "@angular/platform-browser": "~8.2.0",
    "@angular/platform-browser-dynamic": "~8.2.0",
    "@angular/router": "~8.2.0",
    "@fortawesome/fontawesome-free": "^5.9.0",
    "@ng-bootstrap/ng-bootstrap": "^5.1.0",
    "@ngx-translate/core": "^11.0.1",
    "@ngx-translate/http-loader": "^4.0.0",
    "angular-bootstrap-md": "^8.0.0",
    "animate.css": "^3.7.2",
    "chart.js": "^2.8.0",
    "core-js": "^2.5.4",
    "hammerjs": "^2.0.8",
    "moment": "^2.24.0",
    "ngx-device-detector": "^1.3.6",
    "ngx-malihu-scrollbar": "^8.0.0",
    "ngx-skeleton-loader": "^1.2.2",
    "rxjs": "~6.5.2",
    "tslib": "^1.9.0",
    "zone.js": "~0.9.1"
  }

And my app.module.ts:
import { BrowserModule } from '@angular/platform-browser';
import { NgModule, LOCALE_ID } from '@angular/core';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';

import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';
import { LoginModule } from './login/login.module';
import { HttpClientModule, HttpClient } from '@angular/common/http';
import { IntranetModule } from './intranet/intranet.module';
import { AlmacenModule } from './intranet/almacen/almacen.module';
import { httpInterceptorProviders } from '../core/interceptors/index';
import { NgxSkeletonLoaderModule } from 'ngx-skeleton-loader';
import localeEs from '@angular/common/locales/es';
import localePt from '@angular/common/locales/pt';
import { registerLocaleData } from '@angular/common';
import {TranslateModule, TranslateLoader} from '@ngx-translate/core';
import {TranslateHttpLoader} from '@ngx-translate/http-loader';

registerLocaleData(localeEs, 'es-ES');
registerLocaleData(localePt, 'pt-PT');

// AoT requires an exported function for factories
export function HttpLoaderFactory(http: HttpClient) {
  return new TranslateHttpLoader(http);
}
@NgModule({
  declarations: [AppComponent],
  imports: [
    BrowserModule,
    BrowserAnimationsModule,
    AppRoutingModule,
    LoginModule,
    NgxSkeletonLoaderModule,
    IntranetModule,
    AlmacenModule,
    HttpClientModule,
    TranslateModule.forRoot({
      loader: {
          provide: TranslateLoader,
          useFactory: HttpLoaderFactory,
          deps: [HttpClient]
      }
  })
  ],
  providers: [
    httpInterceptorProviders,
    { provide: LOCALE_ID, useValue: 'es-ES' },
    // { provide: LOCALE_ID, useValue: 'pt-PT' }
  ],
  bootstrap: [AppComponent]
})
export class AppModule {}

I've searched in the issues, even google, but I've not found anything to solve my problem.
Thank you.

I've been investigating and I found that if I remove my interceptor, it works. I have others applications with both, interceptors and ngx-translate, and they works, the only diference is angular version (7 working, 8 not working)
Someone has any clue?
Thanks!

I have started to observe the same problem after upgrading to Angular 8. Can't pin it down to anything specific, yet.

I've been investigating and I found that if I remove my interceptor, it works. I have others applications with both, interceptors and ngx-translate, and they works, the only diference is angular version (7 working, 8 not working)
Someone has any clue?
Thanks!

Have you tried changing the order in which interceptors are provided? Just a guess. Sometimes the little things do the trick.

High criticality!

I do have a feeling that the issue has something to do with the interceptor problem that started appearing with ngx-translate and Angular 8. There are multiple issues open about this, but this is the one that fixed my problem:
https://github.com/ngx-translate/core/issues/921
Can you please check if the workaround from that issue fixes your problem as well?

Thank you, for me that solved my problem.

I got the same error in my angular application.
In my case, the error was in my http-interceptor. I did some error-handling in catchError(...), and accidentally returned undefined in some cases.
@Injectable()
export class HttpErrorInterceptor implements HttpInterceptor {
  intercept(
    request: HttpRequest<any>,
    next: HttpHandler
  ): Observable<HttpEvent<any>> {
    const timestamp = Date.now();
    return next.handle(request).pipe(
      timeout(HTTP_TIMEOUT_MS),
      retry(1),
      catchError((error: any) => {
          // pseude code ->
          if (error instanceOf SomeError) {
              return throwError(error);
          }
         // for errors that are not instanceOf SomeError
         // undefined was returned!!!
      })
    );
  }
}

any help about this issue ?

I can't find any help about issue :(

Hi @trantoi99 this issue normally occurs when 1) lost the internet connection, 2) the API does not respond or 3) the HTTP method is wrong.

Hi @trantoi99 this issue normally occurs when 1) lost the internet connection, 2) the API does not respond or 3) the HTTP method is wrong.

thank u so much

just throw error at the end.
return next.handle(req).pipe(
      catchError((error: HttpErrorResponse) => {
        if (error.status === 401) {
          this._auth.logout();
          return throwError(error);
        } else if (error.status === 500) {
          this._swalAlertService.error('Oopss! looks like server issue.');
          return throwError(error);
        }
      })
    );

hi,
in my case,
I launched at local system with NestJS project, and there was no error
but when I deployed at AWS EB it occurred with the same message!
nevertheless, i solved this problem with this approach.
REMOVE THIS IN @Module decorator's providers item
import { APP_INTERCEPTOR } from '@nestjs/core';

{
      provide: APP_INTERCEPTOR,
      useClass: SkipInterceptor,
    }

i assumed that only one APP_INTERCEPTOR is safe.
because another provider already loaded APP_INTERCEPTOR.


Add support of index operations on sets

This happens to be top-of-mind for me because I just opened #3905, but the language overview doc would also need an addition to mention this case, probably in the section https://github.com/brimdata/zed/blob/main/docs/language/overview.md#66-indexing.


[JOSS REVIEW] - Documentation missing

There is docs directory  but I could not find a way to access the docs for the package. In brief the docs should at least cover the following for the review:

Installation instructions
Example usage
Functionality

@trallard please see my changes in:

README.md
docs/README.md


As a server admin, I want to host multiple authors on my server

I think this one is done, right?

Completed


MSFT_xWebConfigPropertyCollection: Move localization strings to strings.psd1

Pull Request (PR) description
MSFT_xWebConfigPropertyCollection: Move localization strings to strings.psd1
This Pull Request (PR) fixes the following issues

Fixes #474

Task list

[ ] Added an entry under the Unreleased section of the change log in the CHANGELOG.md.
Entry should say what was changed, and how that affects users (if applicable).
[ ] Resource documentation added/updated in README.md.
[ ] Resource parameter descriptions added/updated in README.md, schema.mof
and comment-based help.
[ ] Comment-based help added/updated.
[ x] Localization strings added/updated in all localization files as appropriate.
[ ] Examples appropriately added/updated.
[ ] Unit tests added/updated. See DSC Resource Testing Guidelines.
[ ] Integration tests added/updated (where possible). See DSC Resource Testing Guidelines.
[ ] New/changed code adheres to DSC Resource Style Guidelines and Best Practices.

This change is

Codecov Report

Merging #516 into dev will not change coverage.
The diff coverage is 100%.

@@           Coverage Diff           @@
##              dev     #516   +/-   ##
=======================================
  Coverage   91.39%   91.39%
=======================================
  Files          17       17
  Lines        2661     2661
=======================================
  Hits         2432     2432
  Misses        229      229

Impacted Files
Coverage Δ

...yCollection/MSFT_xWebConfigPropertyCollection.psm1
98.03% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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

fixe #474

Please update this PR similar to https://github.com/PowerShell/xWebAdministration/pull/514.


Subreddit.name appears to return the subreddit ID instead

Describe the bug
Exactly as it says in the title. Was testing a friend's code, and where it called for the subreddit name it was getting the ID instead.
To Reproduce
Steps to reproduce the behaviour:

Call subreddit.name for something you know the subreddit of (i.e. leave a comment on a test subreddit and retrieve it)
Receive an ID instead of a name

Expected behaviour
It was expected to return the name.
Code/Logs
The code my friend had was: comment.subreddit.name.casefold(). We tested this with comments on the r/TranscribersOfReddit subreddit, and instead of returning transcribersofreddit it gave t5_3jqmx, which I've assumed is the ID. It's certainly not the name.
When he changed the code to str(comment.subreddit).casefold(), it worked as intended, returning the expected transcribersofreddit.
System Info

OS: Linux (Slackware 14.2)
Python: 3.7
PRAW Version: 7.1.0

Unfortunately, this is the expected behavior for the name attribute of a subreddit as that is how the data is returned by Reddit's API.
See the about.json page for r/redditdev for example: https://old.reddit.com/r/redditdev/about.json
"name": "t5_2qizd",

The attribute you are looking for is display_name.


Created Nagsen.json file in src/data/contributors  folder

Kindly check the pull request I have raised

Thanks @Nagsenwaghmare for your PR.


Is there any way to only rename the files without renaming directories?

Hey Guys
Thank you for working on this tool.
I do have a need to recursively rename only the files without directories. Is there any way to do this?

exclude one or more directories:
https://github.com/75lb/renamer/wiki/Examples#exclude-certain-directories

exclude one or more directories:
https://github.com/75lb/renamer/wiki/Examples#exclude-certain-directories


Make custom transport implementation possible without "requests" installed.

We will have situation in the future where "requests" will not be available at all, and people will write their own transport. Today, we expect "requests" to be available in  a few places, making azure-core not truly independant.
See also:

https://github.com/Azure/azure-sdk-for-python/issues/11276
https://github.com/Azure/azure-sdk-for-python/issues/23347

#25344


Fixes issue with missing data

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

13 of 18 (72.22%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.3%) to 57.764%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

pathways/models/major.py
13
18
72.22%

Totals

Change from base Build<PHONE_NUMBER>:
-0.3%

Covered Lines:
279

Relevant Lines:
483

💛  - Coveralls


Results are bad/random

I have tried the demo file of your fork of the matterport mask rcnn repo and the resulting segmentations are very random :

I experience the same issue with this tutorial. I also tried "augmented startups'" fork of the matterport mask rcnn repo (https://github.com/augmentedstartups/Mask_RCNN#readme) but running that demo also gives very random segmentations. It seems like the COCO pre-trained weights are just not working or something. Any idea how to fix this?  Results from this tutorial look like this:

I tried this on 2 pc's with installations from scratch and both have the same random results.

It’s probably just drawing them wrong. Sometimes X and Y or Width and Height get swapped and the segmentations don’t get drawn correctly. I haven’t used this repo in a long time so I’m not exactly sure what’s up though.

I have tried the demo file of your fork of the matterport mask rcnn repo and the resulting segmentations are very random :  I experience the same issue with this tutorial. I also tried "augmented startups'" fork of the matterport mask rcnn repo (https://github.com/augmentedstartups/Mask_RCNN#readme) but running that demo also gives very random segmentations. It seems like the COCO pre-trained weights are just not working or something. Any idea how to fix this? Results from this tutorial look like this:
I tried this on 2 pc's with installations from scratch and both have the same random results.

Did you solve this problem,  I also have same problem.

I have tried the demo file of your fork of the matterport mask rcnn repo and the resulting segmentations are very random :  I experience the same issue with this tutorial. I also tried "augmented startups'" fork of the matterport mask rcnn repo (https://github.com/augmentedstartups/Mask_RCNN#readme) but running that demo also gives very random segmentations. It seems like the COCO pre-trained weights are just not working or something. Any idea how to fix this? Results from this tutorial look like this:
I tried this on 2 pc's with installations from scratch and both have the same random results.

Did you solve this problem, I also have same problem.

Yes and no.. i didn't fix it in this repo, but i stumbled upon facebook's mask rcnn implementation called detectron2 (search for the github repo). Its still active and it works perfectly with just a few lines of code (https://youtu.be/Pb3opEFP94U)

Grateful ! Thanks for your help.
I will do my best

Exactly the same problem here... any clue?

Exactly the same problem here... any clue?

I moved on with facebook's mask rcnn implementation as i mentioned in a previous comment. Otherwise i have no clue

Hi
I am trying to use this code and I am running to the same issue even when I use the same code and dataset (cig

It’s probably just drawing them wrong. Sometimes X and Y or Width and Height get swapped and the segmentations don’t get drawn correctly. I haven’t used this repo in a long time so I’m not exactly sure what’s up though.

It’s probably just drawing them wrong. Sometimes X and Y or Width and Height get swapped and the segmentations don’t get drawn correctly. I haven’t used this repo in a long time so I’m not exactly sure what’s up though.

Hi
I am trying to use your code and your dataset but not only I don not get a good inference result, but also the validation loss is way higher than your results and when I use the inference my results are so random and bad. I do not want to use some tools like mmdetection because later on I need to modify maskrcnn code for my dataset. Do you have any idea or suggestions?
I really appreciate your assistance.


chore(release): 4.1.0

@jophish good point. Would've been nice to start at 0.1.0 for this repo similar to the SDK. I think I'll keep this minor unless anyone feels strongly


Follow up with Christina on Slack

@piamancini she’s logged out and back in and still not able to contribute via the GENIE /donate page - it keeps telling her to login and the account https://opencollective.com/cultureseedorg is a 500 server error
The open collective site does not show her as logged in when she clicks the login link in the email. It just wants to send her another email #infiniteloop

solved


MH-13274 search by enddate  using filter=endDate:left/right

This adds back the functionality of "endsfrom" and "endsto" in the 1.x /recordings/recordings.xml

@phoebem The code works as expected. The only thing I don't understand is what a Admin UI user is supposed to do with a filter that filters events by end date. It seems like adding one more useless filter to the admin ui to me, or is there really a use case for this?
If you need this for an external application only as the JIRA issue suggests, would you mind adding this to the External API instead?
It is quite simple to add that filter to the External API (see technical_start filter on https://github.com/opencast/opencast/blob/develop/modules/external-api/src/main/java/org/opencastproject/external/endpoint/EventsEndpoint.java#L670) and also not really a best practise to use the Admin UI facade as Opencast API as we officially declared the Admin UI facade as internal API.

@staubesv Thanks for reviewing this.
This endpoint and the capture agent endpoint changes are added in preparation for a live monitor UI that will come later.
The live monitor is built as part of admin-ui.
Our producers find the 1.x version of the monitor essential and asked that it goes into our 5.x cluster.
Hopefully the community will find it useful too.
I want to keep each PR small and focused so that they are more manageable.
As for the external API, my understanding is that it uses a different index and can go out of sync with the admin index.

The monitoring UI won't be ready for a while as we are still using rtmp and the version of the player in the admin ui does not work with rtmp, so we use a separate module.
We are transitioning to HLS and so it will be a better product when it is better integrated into system.

I am still working on an HLS live monitor. I should have something in a few weeks.

Hi @phoebem
I don't know if you need viewing the video, but just in case just to say that we are about releasing paella 6.1.0 with a lot of HLS improvements.
I expect it for next week, we are currently testing

Thanks Carlos, I will definitely check it out.
By the way, does Paella support the DVR feature for live streams?
Phoebe

On Mar 21, 2019, at 7:55 AM, Carlos Turro<EMAIL_ADDRESS>wrote:
Hi @phoebem https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_phoebem&d=DwMCaQ&c=WO-RGvefibhHBZq3fL85hQ&r=TJQ-1SstdvXiL3rEjhdQ2hxEsqTStc7HrWDIrl0lxlI&m=GaQGAcX_OvOYM8hKGmwZP0UrdqiqzFK4_dEBVOaNsAs&s=ZA--rRItFlQXwl8-hbnAtIhkEoK5O04qTnVCQEhVXF4&e=
I don't know if you need viewing the video, but just in case just to say that we are about releasing paella 6.1.0 with a lot of HLS improvements.
I expect it for next week, we are currently testing
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_opencast_opencast_pull_612-23issuecomment-2D475201261&d=DwMCaQ&c=WO-RGvefibhHBZq3fL85hQ&r=TJQ-1SstdvXiL3rEjhdQ2hxEsqTStc7HrWDIrl0lxlI&m=GaQGAcX_OvOYM8hKGmwZP0UrdqiqzFK4_dEBVOaNsAs&s=9G3jQAkC7aGxkLhMtZ-0w-NfaOjIDX61ZofmgEfe9rs&e=, or mute the thread https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_AGPyNLiTznoe0h1jD8rXTMVm6UzY77tvks5vY3NNgaJpZM4ZHKc1&d=DwMCaQ&c=WO-RGvefibhHBZq3fL85hQ&r=TJQ-1SstdvXiL3rEjhdQ2hxEsqTStc7HrWDIrl0lxlI&m=GaQGAcX_OvOYM8hKGmwZP0UrdqiqzFK4_dEBVOaNsAs&s=k15GS_Ow-pVUj5kxd6rEAoGx3_052vbwH31YKAPVJAk&e=.

@phoebem As the live monitor seems not to make it into Opencast 7.0 (feature freeze on Monday), I've labelled this PR as "onhold" so that we can review all related PRs together.

@phoebem What do you think about closing this for now and refiling once the live monitor is ready?

Let’s so that.
The latency from using HLS for live monitor was too big for our users,
so I don’t think that we will move away from rtmp any time soon.
Our code is based on rtmp, so I don’t know useful it is to the community.
Phoebe.

On Jun 3, 2019, at 10:12 AM, KatrinIhler<EMAIL_ADDRESS>wrote:
@phoebem https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_phoebem&d=DwMCaQ&c=WO-RGvefibhHBZq3fL85hQ&r=TJQ-1SstdvXiL3rEjhdQ2hxEsqTStc7HrWDIrl0lxlI&m=eRmipZEmVrqzCukgsT2kM4MKvyPqsqy-9ZuzkyYGmQI&s=B4NQ6y5_AbWmxXiP49YVi14b9WMMCG5nsBA7LBbbFJ4&e= What do you think about closing this for now and refiling once the live monitor is ready?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_opencast_opencast_pull_612-3Femail-5Fsource-3Dnotifications-26email-5Ftoken-3DABR7ENBD4UP2JIFAYGUY5B3PYURFVA5CNFSM4GI4U422YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODWZQ4PI-23issuecomment-2D498273853&d=DwMCaQ&c=WO-RGvefibhHBZq3fL85hQ&r=TJQ-1SstdvXiL3rEjhdQ2hxEsqTStc7HrWDIrl0lxlI&m=eRmipZEmVrqzCukgsT2kM4MKvyPqsqy-9ZuzkyYGmQI&s=y_evkRxUgSW2IItTUudZEKdCyx4PrFbrFSE9rJtyr6I&e=, or mute the thread https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_ABR7ENEELITYEK4TZRXN4WDPYURFVANCNFSM4GI4U42Q&d=DwMCaQ&c=WO-RGvefibhHBZq3fL85hQ&r=TJQ-1SstdvXiL3rEjhdQ2hxEsqTStc7HrWDIrl0lxlI&m=eRmipZEmVrqzCukgsT2kM4MKvyPqsqy-9ZuzkyYGmQI&s=M4rPDDCaHa4W9ygfTCzD8s0i1ga7OysRYnoaDOJkZgo&e=.

@phoebem Why do you think RTMP is not interesting for the community for live monitoring?


Missing pip install

[Enter feedback here]
This, and most pages I've seen, in the steps for Python is missing the step to run pip install after running func init. The samples will not run without satisfying dependencies from that step in the venv.
pip install -r requirements.txt
Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: b2646ad4-34b7-fc5e-dcc9-d53a061df394
Version Independent ID: bbff4fda-24e4-2b62-24b9-94cda5f53bed
Content: Develop Azure Functions locally using Core Tools
Content Source: articles/azure-functions/functions-run-local.md
Service: azure-functions
GitHub Login: @ggailey777
Microsoft Alias: glenga

@robotdad
Thanks for your feedback! We will investigate and update as appropriate.


1.20.4 Error on each custom head fish

Hey, we've updated to 1.20.4 these days and noticed that whenever a tournament is running and people fish the emf custom head fishes, that on each of those special fish, we get several messages in the console, repeating itself. This example is by catching 1 of those custom head fishes:
[20:21:19 WARN]: Found inconsistent skull meta, this should normally not happen and is not a Bukkit / Spigot issue, but one from a plugin you are using. Bukkit will attempt to fix it this time for you, but may not be able to do this every time. If you see this message after typing a command from a plugin, please report this to the plugin developer, they should use the api instead of relying on reflection (and doing it the wrong way). [20:21:19 WARN]: Found inconsistent skull meta, this should normally not happen and is not a Bukkit / Spigot issue, but one from a plugin you are using. Bukkit will attempt to fix it this time for you, but may not be able to do this every time. If you see this message after typing a command from a plugin, please report this to the plugin developer, they should use the api instead of relying on reflection (and doing it the wrong way). [20:21:19 WARN]: Found inconsistent skull meta, this should normally not happen and is not a Bukkit / Spigot issue, but one from a plugin you are using. Bukkit will attempt to fix it this time for you, but may not be able to do this every time. If you see this message after typing a command from a plugin, please report this to the plugin developer, they should use the api instead of relying on reflection (and doing it the wrong way). [20:21:19 WARN]: Found inconsistent skull meta, this should normally not happen and is not a Bukkit / Spigot issue, but one from a plugin you are using. Bukkit will attempt to fix it this time for you, but may not be able to do this every time. If you see this message after typing a command from a plugin, please report this to the plugin developer, they should use the api instead of relying on reflection (and doing it the wrong way). [20:21:19 WARN]: Found inconsistent skull meta, this should normally not happen and is not a Bukkit / Spigot issue, but one from a plugin you are using. Bukkit will attempt to fix it this time for you, but may not be able to do this every time. If you see this message after typing a command from a plugin, please report this to the plugin developer, they should use the api instead of relying on reflection (and doing it the wrong way).
Best regards.

Duplicate of #344 . Fixed in latest dev builds.


@unocss/eslint-config doesn't work on pnpm monorepo with vscode?

UnoCSS version
any
Describe the bug
I'm trying to use the eslint plugin for unocss, the older one from  devunt doesn't have the options to configure linting for other attributes besides className so i was trying to use the tailwind one, but the latter doesn't pick up the uno.config.ts custom values.
I installed @unocss/eslint-config and tried following the official instructions but when i open a file with unocss classes i get an error like this for ESlint output.
[Error - 12:38:47] An unexpected error occurred:
[Error - 12:38:47] Error: [@unocss/eslint-plugin] No config file found, create a `uno.config.ts` file in your project root and try again.
    at getGenerator (/---/uno-monorepo/node_modules/.pnpm/@unocss+eslint-plugin@0.51.12_eslint@8.40.0_typescript@5.0.4/node_modules/@unocss/eslint-plugin/dist/worker-sort.cjs:37:11)
    at async /---/uno-monorepo/node_modules/.pnpm/@unocss+eslint-plugin@0.51.12_eslint@8.40.0_typescript@5.0.4/node_modules/@unocss/eslint-plugin/dist/worker-sort.cjs:43:15

Reproduction
I've uploaded a reproduction repo, these are the steps to reproduce:
Repo link

clone the repo
run pnpm install
open a .tsx file, page.tsx has unocss class applied or apply a class to a new file
observe the eslint output for vscode

Screenshot:

System Info

laptop: MacBook Air M1 13 inches
OS: Ventura latest version
IDE: VScode
Package Manager: pnpm

Validations

[X] Read the Contributing Guidelines.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

And btw, it would be awesome if the lint plugin would support callees like the tailwind one does, so we can have linting for clsx classes

I had the same problem

I had the same problem

had? you mean you fixed it somehow?
So far my only option has been to use the tailwind plugin, not easy to configure for Uno but i imanaged.
and anyway this eslint plugin fo Uno is quite lacking, besides not being able to handle callees, it doesn't work very well for duplicate classnames or attribufy order. So i think im going to stick with tailwinds plugin until a 1.0 version of this one i think

+1

my temporary solution is to create a "uno.config.ts" in the root directory and write the following content in it:
// for eslint;
import { defineConfig } from 'unocss'

export default defineConfig({
  configFile: './components/uno.config.ts',
})

At least it stops throwing this error message [@unocss/eslint-plugin] No config file found.
You can refer to this project: cherryful/unocss-ui

That's a little bit complex - you can replace its content with:
// To make @unocss/eslint-plugin work
export { default } from "./packages/foo/uno.config";

my temporary solution is to create a "uno.config.ts" in the root directory and write the following content in it:
// for eslint;
import { defineConfig } from 'unocss'

export default defineConfig({
  configFile: './components/uno.config.ts',
})

At least it stops throwing this error message [@unocss/eslint-plugin] No config file found.
You can refer to this project: cherryful/unocss-ui

That's a little bit complex - you can replace its content with:
// To make @unocss/eslint-plugin work
export { default } from "./packages/foo/uno.config";

This also fix my unocss eslint auto fix👍

That's a little bit complex - you can replace its content with:
// To make @unocss/eslint-plugin work
export { default } from "./packages/foo/uno.config";

What if I have multiple packages that holds their own uno.config.ts? Do I export them all with a spread syntax all at once in the root uno.config.ts?
Is that possible to configure the @unocss/eslint-config that consumes the similar config pattern for unocss.root that the unocss VSCode extension uses therefore we could have a stable behavior?

Error: [@unocss/eslint-plugin] No config file found, create a uno.config.ts file in your project root and try again.
I used flat eslint config, but I don't know how to solve this problem.
If create uno.config.ts in the root directory, there will be two prompts...
- project
  - packages
    - package-a
      - uno.config.ts
  - eslint.config.js
  - uno.config.ts // Repeat prompt

// project/eslint.config.js

import antfu from '@antfu/eslint-config'
import unocss from '@unocss/eslint-config/flat'

export default antfu(
  {},
  unocss,
)

@antfu do you think the idea from @nekomeowww of using the same setting already existent for the unocss vscode extension (unocss.root) for eslint to resolve the unocss config would be feasible?

@antfu Sorry for the straightaway ping, but this is a critical issue for using this eslint plugin in monorepo project, as described above. This needs to be addressed as a priority from my perspective. Thanks.

I don't have the bandwidth to look into this right now. If someone could propose some solutions via PRs, it might help this to move faster.


[Bug] [macOS] The three system buttons can't be hidden for Qt Widgets applications

Qt Quick applications can hide them easily, weird

Fixed


pump module dose not reset led blue on pump off and ready

found pump.pumpRunningEvent.is_set() == true after pump off isseued.
found that pumpRunningEvent not being cleared after pumpOff is run.


E.g.:

make sure all comments have the same style (max columns, ending or not with a period, upper or lower case)
always use this-> to access members.

Clang tidy may be just what we need.

Clang tidy is used now on next


Use MailtoLink as a Button

Description
It's possible to use Button as a Hyperlink such that the button text color is still correct given its background (e.g., white on a darker background):
<Button
  as={Hyperlink}
  destination="https://edx.org"
  target="_blank"
  size="sm"
>
  Contact administrator
</Button>

A similar use case is to render a Button as a MailtoLink. However, in this case:

The text color is not correct (i.e., should be white on a primary background).
The entire button should trigger the MailtoLink, rather than just the inner a tag.
The button text appears to be slightly off center vertical compared to the Button as a Hyperlink.

<Button
  as={MailtoLink}
<EMAIL_ADDRESS><EMAIL_ADDRESS>  target="_blank"
  size="sm"
>
  Contact administrator
</Button>

Playground Demo

PR: https://github.com/openedx/paragon/pull/2326


Event Sourcing with Free Monad

Will check it out on weekend :)

@speedcom Do you have any tests that would prove that this implementation actually works? ;-)

@rabbitonweb @lukasz-golebiewski I've added additional tests to my proposal solution. To do that I've derivied dedicated Interpreter for test. Another one just check result of processing events by Pure Interpreter. Also cleaned a bit code.