Add Support For UDR LED Control

Describe the solution you'd like:
As a user I want to control the blue LED ring of a UDR the same way it is controlled on a WAP.
Additional context:
Currently, it doesn't work. The plugin is able to find the UDR, but the light control doesn't do anything.

Moved from #3

Good Evening Pizzalorddex,
you really AMAZING.
Looks better.
The plugin start an load an find my two AP the UAP-AC-IW and the Unifi Dream Router and I also get two toggle in HomeKit.
The UAP-AC-IW toggle works can turn on and off the Blue LED from the UAP-AC-IW
The Unifi Dream Router toggle I can press on and off butt the Blue LED from the Unifi Dream Router do nothing.
But it is already a very good way both toggle appear good work nice 👍
Hier some logs.
[UniFi AP Lights] Finished loading, starting device discovery.
[UniFi AP Lights] Primary authentication method failed, attempting secondary.
[UniFi AP Lights] Authentication with secondary method successful.
Requesting URL: /api/s/default/stat/device
Endpoint not found: /api/s/default/stat/device, trying next endpoint
Requesting URL: /proxy/network/api/s/default/stat/device
[UniFi AP Lights] Adding new accessory: UAP-AC-IW (123456789abcd……..)
[UniFi AP Lights] Adding new accessory: Unifi Dream Router (987654321abc……..)
[UniFi AP Lights] Successfully set LED state for Unifi Dream Router to on.  (Nothing Happen)
[UniFi AP Lights] Successfully set LED state for Unifi Dream Router to off.  (Nothing Happen)
[UniFi AP Lights] Successfully set LED state for UAP-AC-IW to on.  (Blue LED turn ON)
[UniFi AP Lights] Successfully set LED state for UAP-AC-IW to off.  (Blue LED turn OFF)
Thanks Again for your Work an Time you a Genius

Moved from https://github.com/pizzalorddex/homebridge-unifi-ap-light/issues/3#issuecomment-2115948940

Thanks for the feedback. I was hoping it would be simple, but it looks like it isn't so simple. Let me research this a bit more to see if it is possible. I may ask you to run a few commands to gather information about the UDR. I guess it handles its light differently than WAPs.

Moved from https://github.com/pizzalorddex/homebridge-unifi-ap-light/issues/3#issuecomment-2115973911

Yes of course you can tell me what commands I should run where.
I will take some screenshots later and post it here for you I think I see what is different.

Moved from https://github.com/pizzalorddex/homebridge-unifi-ap-light/issues/3#issuecomment-2116022215
Here the Picture what I found what is different.
Better Picture because I can not explain maybe you would understand me wrong.

Moved from https://github.com/pizzalorddex/homebridge-unifi-ap-light/issues/3#issuecomment-2116097144
Thanks for the additional pictures! That makes it a little more clear for me. It also makes me worried because the app would need to use the API to control the light. If it is not supported in the app it is hard to say if the plugin can support it.
I am sorry, but this will be a long message. If you don't understand anything I will be happy to answer!
To check further there are some commands you can run from a linux machine, like your raspberry pi. Anything in the commands you need to replace with your own information I will put in < >
First we need to log into the API to copy a couple tokens using this command:
curl -k  -i -X POST "https://<YOUR-HOST>/api/auth/login" -H "Content-Type: application/json" -d '{"username": "<YOUR-USERNAME>", "password": "<YOUR-PASSWORD>"}'
You should see a message like this:
HTTP/1.1 200
vary: Origin
Set-Cookie: unifises=THE-FIRST-TOKEN; Path=/; HttpOnly
Set-Cookie: csrf_token=THE-SECOND-TOKEN; Path=/
X-Frame-Options: DENY
Content-Type: application/json;charset=UTF-8
Content-Length: 30
Date: SOME-DAY-AND-TIME GMT
From this message we need both of the sets of random numbers and letters for unifises and csrf_token. Using these we can actually talk to the API.
Next, we can run this command to see what capabilities the udr has:
curl -k -X GET "https://<YOUR-HOST>/proxy/network/api/s/default/stat/device"     -H "Content-Type: application/json"     -H "Cookie: unifises=<YOUR-UNIFISES-TOKEN>; csrf_token=<YOUR-CSRF_TOKEN>"     | jq '.data[] | select(.type == "udm") | {id: ._id, name: .name, type: .type, model: .model, capabilities: (. | with_entries(select(.key | contains("led"))))}'
You should see a message like this:
{
"id": "AN-ID-NUMBER",
"name": "NAME-OF-DEVICE",
"type": "udm",
"model": "UDR",
"capabilities": {
"mesh_sta_vap_enabled": false,
"led_override_color": "#0000FF",
"atf_enabled": false,
"dot1x_portctrl_enabled": false,
"led_override": "on",
"led_override_color_brightness": 100,
"vwireEnabled": false
 }
You can censor the id and name, those are not important.
This should be your UDR. For type: it should say udm and for model: it should say UDR.
In this list it is very important that there is something like led_override.
Please send this so I can see what is available on the UDR to play with :)

It is supported in the App but not on same place like the UAP-AC-IW.
omg you very good you know a lot .
With the first Comand  I think I only get the csrf-token.
The unifises Token I can not found.
I use my only Local User
I get this
HTTP/2 200
server: nginx
date: Thu, 16 May 2024 20:27:57 GMT
content-type: application/json; charset=utf-8
content-length: 3266
set-cookie: TOKEN=eyJhbGciOi5cCI6IkpXVCJ9.eyJ1c2VySWQOTgyZGQiLCJwYXNzd2A3MjM3NDUxLCJpc1JlbWVtYmVyZWQiOmZhbHNlLCJjc3JmVG9rZW4iOiI3OTU3N2VkZS0wODdiLTQ4NTctOGI4OC1kYjllZGMxY2JjZjIiLCJpYXQiOjE3MTU4OTEyNzcsImV4cCI6MTcxNTgZlMS00YmNmLThmMGUtZTZlY2YwYTY3NzAxIn0.j6rFLLTsvL6GowDCDhZ_PcYKAyY0; path=/; expires=Thu, 16 May 2024 22:27:57 GMT; samesite=none; secure; httponly
x-updated-csrf-token: 12345aaa-123a-1234-1a23-aa1aaa1aaaa1
x-token-expire-time:<PHONE_NUMBER>109
x-response-time: 834ms
access-control-allow-credentials: false
access-control-expose-headers: Content-Disposition, Content-Range, Filename, Location, Range, Upload-Length, Upload-Offset, X-Connection-Type, X-Csrf-Token, X-File-Id, X-Token-Expire-Time, X-Updated-Csrf-Token
referrer-policy: no-referrer
strict-transport-security: max-age=15552000; includeSubDomains
x-content-type-options: nosniff
x-dns-prefetch-control: off
x-frame-options: SAMEORIGIN
x-xss-protection: 1; mode=block
x-csrf-token: 12345aaa-123a-1234-1a23-aa1aaa1aaaa1
{"unique_id":"efxxxxxxxxxxxxxxxxxxxxxxxd","first_name“:“XXXXX“XX,“last_name":" ","alias":"","full_name“:“XXXXXXXX  ","email":"","email_status":"UNVERIFIED","email_is_null":true,"phone":"","avatar_relative_path":"","avatar_rpath2":"","status":"ACTIVE","employee_number":"","create_time":1707237451,"login_time":1715884088,"extras":{},"username“:“XXXXXX“,“local_account_exist":true,"password_revision“:670345451,"sso_account":"","sso_uuid":"","sso_username":"","sso_picture":"","uid_sso_id":"","uid_sso_account":"","uid_account_status":"","groups":[{"unique_id":"ca7XXXXXXXXXXXXXX17","name":"Unifi-Dream-Router","up_id":"","up_ids":[],"system_name":"Unifi-Dream-Router","create_time":"2022-12-20T16:03:13+01:00"}],"roles":[{"unique_id":"62XXXXXXXXXaXXa-c7XXXXXXXX7","name":"role_private_1709214201","system_role":false,"system_key":"custom_administrator_XXXXXXx-6XXXX5-4XX-8XXX-c5XXXXXXXX2d","level":5,"create_time":"2024-02-06T17:37:29+01:00","update_time":"2024-02-29T14:43:21+01:00","is_private":true}],"permissions":{"network.management":["admin"],"protect.management":["admin"]},"scopes":["write:protect.viewer","write:protect.user:$","write:protect.user","write:protect.sensor","write:protect.schedule","write:protect.nvr","write:protect.light","write:protect.legacyUFV","write:protect.group","write:protect.doorlock","write:protect.deviceGroup","write:protect.chime","write:protect.camera","write:protect.bridge","view:controller:protect","view:controller:network","readmedia:protect.camera","readlive:protect.camera","read:protect.viewer","read:protect.user:$","read:protect.user","read:protect.sensor","read:protect.schedule","read:protect.nvr","read:protect.light","read:protect.legacyUFV","read:protect.group","read:protect.doorlock","read:protect.deviceGroup","read:protect.chime","read:protect.camera","read:protect.bridge","manage:controller:protect","manage:controller:network","deletemedia:protect.camera","delete:protect.viewer","delete:protect.user:$","delete:protect.user","delete:protect.sensor","delete:protect.schedule","delete:protect.nvr","delete:protect.light","delete:protect.legacyUFV","delete:protect.group","delete:protect.doorlock","delete:protect.deviceGroup","delete:protect.chime","delete:protect.camera","delete:protect.bridge","create:protect.viewer","create:protect.user","create:protect.sensor","create:protect.schedule","create:protect.liveview","create:protect.light","create:protect.group","create:protect.doorlock","create:protect.deviceGroup","create:protect.chime","create:protect.camera","create:protect.bridge"],"cloud_access_granted":false,"only_local_account":true,"update_time":1707237451,"avatar":null,"nfc_token":"","nfc_display_id":"","nfc_card_type":"","nfc_card_status":"","role":"custom","roleId“:“XXXXX-XXX-XXX-a2fa-XXXXXXXX“,“id“:“XXX-XXX-XXX-XXX-3XXXd

OH! Ok I didn't know it would return different tokens.
You should still be able to use the command:
curl -k -X GET "https://<YOUR-HOST>/proxy/network/api/s/default/stat/device"     -H "Content-Type: application/json"     -H "Cookie: TOKEN=<YOUR-TOKEN>; csrf_token=<YOUR-CSRF_TOKEN>"     | jq '.data[] | select(.type == "udm") | {id: ._id, name: .name, type: .type, model: .model, capabilities: (. | with_entries(select(.key | contains("led"))))}'
The token is the really long string of letters and numbers and csrf token is the one that you already saw.
Hopefully with this command you see a shorter list of things that only have to do with "led".

What token should I use here?
-H "Cookie: TOKEN=
I only see the csrf-token.
Did you see the other token?

It is the very long text after where it says set-cookie: TOKEN=

get this
-bash: jq: command not found
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
100  8016    0  8016    0     0  82155      0 --:--:-- --:--:-- --:--:-- 82639
curl: (23) Failure writing output to destination
have try it two times

Ah, I see the problem. Jq is not installed.
Jq will allow us to read certain files from the API.
You can install jq on Debian, raspberryOS, or Ubuntu with the command:
sudo apt-get update && sudo apt-get install jq -y

AMAZING
but the message looks not better .-(
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
100    47  100    47    0     0   1432      0 --:--:-- --:--:-- --:--:--  1468
jq: error (at :0): Cannot iterate over null (null)

It appears it is not getting any data back from the API which could mean the command is wrong.
I don't really know how exactly the command should be written in your case, but you can try the same command without the jq part to see if you get any data at all.
curl -k -X GET "https://<YOUR-HOST>/proxy/network/api/s/default/stat/device" -H "Content-Type: application/json" -H "Cookie: TOKEN=<YOUR-TOKEN>; csrf_token=<YOUR-CSRF_TOKEN>"
I can look more at this tomorrow to figure out what the command should look like.

I have try it but it comes so a Big message that I think is not correct.
Please don't stress yourself out about this.
It has no urgency at all.
From what time zone you are?
Me is from UTC +2

I am also in UTC+2, Germany :)
A long/big message is great! That means the command worked. That command asks for all information on all devices. Even with one device it can be pretty big.
So it looks like the command failed because it couldn't find any capability on the UDR with "led" in it.
What we can do instead is just ask the UDR to give us all the capabilities it has. The message will probably be quite long with a lot of stuff we don't need, but then we can at least see something. Here we are just looking for something that says "led" or "light" or maybe even something like "status indicator".
To do that this would be the command (after getting the token and csrf_token again):
curl -k -X GET "https://<YOUR-HOST>/proxy/network/api/s/default/stat/device"     -H "Content-Type: application/json"     -H "Cookie: TOKEN=<YOUR-TOKEN>; csrf_token=<YOUR-CSRF_TOKEN>"     | jq '.data[] | select(.type == "udm") | {id: ._id, name: .name, type: .type, model: .model, capabilities: .}'
If there is any sensitive looking information, like your network names or other settings, you can censor them or remove them from the message before posting it.

Hahaha, I am from Austria and you are killing me because I have to write in English
But it's clear so anyone else can understand it.
The command work.
I get a more more longer message.
This are 63 Pages in Pages, 9219 Words :-)
This takes long time or the rest of my life for me to find something and remove sensitive information.

I can find two entries.
I have no idea what the context is.
"led_override": "off",
"total_max_power": 40,
"led_state": {
"pattern": "0",
"tempo": 120

Hahaha, I am from Austria and you are killing me because I have to write in English

Haha! Sorry, wir können auch Deutsch benutzen, but I am not a native speaker. Use whatever you want and I will understand xD

This are 63 Pages in Pages, 9219 Words :-)

OMG WHAT?! I was not expecting it to be so long for one device...

I can find two entries.
I have no idea what the context is.

"led_override": "off"

This is exactly what we need! When you ran the command was the light on the UDR off? It should be from the UDR, but we need to make sure this is the UDR and not the UAP-AC-IW.
You can also test turning the light on and off manually with a similar command...
To turn on:
curl -k -X GET "https://<YOUR-HOST>/proxy/network/api/s/default/rest/device/<DEVICE_ID>" -H "Content-Type: application/json" -H "Cookie: TOKEN=<YOUR-TOKEN>; csrf_token=<YOUR-CSRF_TOKEN>" -d '{"led_override": "on"}'
To turn off:
curl -k -X GET "https://<YOUR-HOST>/proxy/network/api/s/default/rest/device/<DEVICE_ID>"     -H "Content-Type: application/json"     -H "Cookie: TOKEN=<YOUR-TOKEN>; csrf_token=<YOUR-CSRF_TOKEN>" -d '{"led_override": "off"}'
The <DEVICE_ID> should be somewhere at the top of that very long text you got before.
You can also use this command to get a list of all devices which have the "led_override" property (including the UAP-AC-IW):
curl -k -X GET "https://<YOUR-HOST>/proxy/network/api/s/default/stat/device"     -H "Content-Type: application/json"     -H "Cookie: TOKEN=<YOUR-TOKEN>; csrf_token=<YOUR-CSRF_TOKEN>"     | jq '.data[] | {id: ._id, name: .name, type: .type, model: .model, led_override: .led_override}'

Yes the Light was off but by both UDR an UAP-AC-IW
I turn on the Light at UDR same message "led_override": "off"
Turn only UAP-AC-IW light on same message "led_override": "off"
Turn both lights on same message "led_override": "off"
with this
curl -k -X GET "https:///proxy/network/api/s/default/rest/device/<DEVICE_ID>" -H "Content-Type: application/json" -H "Cookie: TOKEN=; csrf_token=<YOUR-CSRF_TOKEN>" -d '{"led_override": "on"}'
I get this
{"meta":{"rc":"error","msg":"api.err.NotFound"},"data":[]}
with this
curl -k -X GET "https:///proxy/network/api/s/default/stat/device"     -H "Content-Type: application/json"     -H "Cookie: TOKEN=; csrf_token=<YOUR-CSRF_TOKEN>"     | jq '.data[] | {id: ._id, name: .name, type: .type, model: .model, led_override: .led_override}'
I get this
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
100 87846    0 87846    0     0   631k      0 --:--:-- --:--:-- --:--:--  635k
{
"id": „XXXXXXXX“,
"name": "UAP-AC-IW",
"type": "uap",
"model": "U7IW",
"led_override": "on"
}
{
"id": „XXXXXXX“,
"name": "USW-Flex-Mini",
"type": "usw",
"model": "USMINI",
"led_override": "off"
}
{
"id": „XXXXXXXXXX“,
"name": "Unifi Dream Router",
"type": "udm",
"model": "UDR",
"led_override": "off"      THE LIGHT RING IS ON
}
I think I would not work
Or can it be the problem that I use the Local User?

This explains why it wasn't working originally. The plugin only tries to change led_override to on or off. However, we have confirmed this is not what the UDR uses to control its own LED light.
Although it is slow we are making progress by eliminating possibilities! ☺
The next step would be to try and capture the command which is used. To do this we can use a web browser and use the developer tools there. Of course, only if you are willing to do this.
I can help guide you with what to do I only need to know what web browser you will use. I use a Mac with Safari so I know what to do using Safari, but the steps are basically the same for Chrome or Firefox.
Also, if it is easier for you we can either keep communicating here or we can move to a different platform, such as Discord. Whatever is easiest for you 👍

Alright! Let's do this 🤓

Open Safari and go to the menu Safari > Settings > Advanced
Check the box that says "Show features for web developers" at the bottom
Close the Settings window
Open the UniFi Controller website (<IP_ADDRESS> for example) and log in
Go to the part of the website where you can turn the LED on or off
From the top taskbar (Safari, File, Edit, etc.) click on Develop > Show Web Inspector (or the shortcut: option + command + i)
In the Web Inspector window click on "Network"
Toggle the LED on or off and save changes in UniFi
Toggle the LED on or off and save changes in UniFi again
In the Web Inspector window scroll to the bottom, you should see 2 entries that is a series of numbers and letters (it is the device ID). For example:

Click on the first one and the response field will open. For example:

Switch to the request view from the drop down menu and click the grey { } icon directly to the right of it to format the request nicely. It should look like this if done correctly:

Copy the text and paste it into the first field of diffchecker
Repeat steps 11 - 13 for the second request and paste the text into the second field of diffchecker
Click on the green "Find Difference" button on the diffchecker website. This make looking for changes easy and you should see something like this:

The field which is highlighted as different should be the thing that the UDR uses to control its light.
After you are done with the steps above and found the difference(s) you can open the menu Safari > Settings > Advanced again and deselect the checkbox "Show features for web developers" to return to normal.
If you made it this far congratulations! You are basically now a developer 💪🤣

Haha i am not a developer, i am a cheater :-)
Thank you so much for this perfect guide.
Turn on
{"ledSettings":{"enabled":true}}
Turn off
{"ledSettings":{"enabled":false}}

AWESOME! This is exactly what we need. I will look into my code now to make the necessary changes

@daywalkeraut please test with version 1.3.1
For me it is still working with WAPs so I hope your UDR now also works 🙏

Hello Pizzaloddex,
sorry to say but only the LED from the UAP-AC-IW works.
UDR nothing happen. At HomeKit when I push the toggle to on the toggle go instant back off.
some logs for you because I know you like logs :-)
i also have try it with port 8443
[UniFi AP Lights] Primary authentication method failed, attempting secondary.
[UniFi AP Lights] Authentication with secondary method successful.
[UniFi AP Lights] Adding new accessory: UAP-AC-IW (XXXXXX)
[UniFi AP Lights] Adding new accessory: Unifi Dream Router (XXXXXX)
Endpoint not found: /api/s/default/stat/device, trying next endpoint
Endpoint not found: /api/s/default/stat/device, trying next endpoint
[UniFi AP Lights] Failed to retrieve LED state for Unifi Dream Router: TypeError: Cannot read properties of undefined (reading 'enabled')
[UniFi AP Lights] Retrieved LED state for UAP-AC-IW
[UniFi AP Lights] Successfully set LED state for UAP-AC-IW to on.
[UniFi AP Lights] Retrieved LED state for UAP-AC-IW: on
[UniFi AP Lights] Successfully set LED state for UAP-AC-IW to off.
[UniFi AP Lights] Successfully set LED state for Unifi Dream Router to on.

Thanks for testing it and thanks for the logs 😆
I think I messed up reading the current state of the light on the UDR.
I will try again in the morning 👍

Me have to Thanks you.
 I hope you had a good weekend!
I made a minor change and added new debugging messages to the logs (version 1.3.2) to try to pinpoint the issue.
You can also try to manually set the LED to see if that works.
Just as a reminder:

Get your tokens with the command: curl -k  -i -X POST "https://<YOUR-HOST>/api/auth/login" -H "Content-Type: application/json" -d '{"username": "<YOUR-USERNAME>", "password": "<YOUR-PASSWORD>"}'
Use the tokens to get the device ID: curl -k -X GET "https://<YOUR-HOST>/proxy/network/api/s/default/stat/device" -H "Content-Type: application/json" -H "Cookie: TOKEN=<YOUR-TOKEN>; csrf_token=<YOUR-CSRF_TOKEN>" | jq '.data[] | select(.type == "udm") | {id: ._id, name: .name, type: .type}'
Try this command to turn the LED on: curl -k -X PUT "https://<YOUR-HOST>/proxy/network/api/s/default/rest/device/<DEVICE_ID>" -H "Content-Type: application/json" -H "Cookie: TOKEN=<YOUR-TOKEN>; csrf_token=<YOUR-CSRF_TOKEN>" -d '{"ledSettings":{"enabled":true}}'
Try this command to turn the LED off: curl -k -X PUT "https://<YOUR-HOST>/proxy/network/api/s/default/rest/device/<DEVICE_ID>" -H "Content-Type: application/json" -H "Cookie: TOKEN=<YOUR-TOKEN>; csrf_token=<YOUR-CSRF_TOKEN>" -d '{"ledSettings":{"enabled":false}}'

The command to turn the LED on or off is the same except for turning it on or off. You can just use one or the other to test if it changes.

Hello sorry I was not at home few days.
I have try the two commands, nothing happens. Not on or not off.
Get no message back that any error.

Could it be that it has something to do with the URL?
To control the light from the UAP-AC-IW I have to go to this URL:
https://<IP_ADDRESS>/network/default/devices
To control the light from the UDR I have to go to this URL:
https://<IP_ADDRESS>/console-settings

Hi everyone! I recently purchased a UDR for my studio apartment and I absolutely love it so far! Seeing that I can see it from bed, however, control of the LED/screen would be amazing! I have a Shelly 4 Pro PM and can control the display very easily... it's a shame that it's not quite the simple here.
While I can't say I have any coding experience I would be more than happy to assist in any testing that may be necessary!


Create a HF model for labeling urls as relevant or irrelevant

Context
Part of #12
Now that we've created an experimental model for record type labeling, we want to create another model that simply labels urls based on relevancy.
Requirements

Model should be able to predict whether a link is relevant or irrelevant with high enough accuracy

as another step toward #12 we could use the subcategories from here: https://docs.pdap.io/activities/data-dictionaries/record-types-taxonomy
i.e. Police & public interactions, Info about officers, etc.
We're going to start grouping them this way, so the record_type can have less fidelity.

@EvilDrPurple when we are talking about relevancy, what counts as relevant and irrelevant, and what are representative samples of each?

@EvilDrPurple when we are talking about relevancy, what counts as relevant and irrelevant, and what are representative samples of each?

@maxachis I just uploaded a new dataset to the PDAP Hugging Face page Here. Essentially, a URL is relevant if it has relevant data pertaining to criminal justice, otherwise it is irrelevant. You can look at the record types taxonomy link Josh posted above to see the categories for what types of webpages are considered "relevant"
Hope this helps!

yes, "relevant" ≠ "useful". we're just checking whether it contains information about a police, jail, or court agency in the United States.


Tests for zone.js in a web worker

see #184
I don't know a great deal about Web Workers, but it seems a good way to test zone's compatibility would be to run the existing tests in a web worker.

We have test for webworker now.


Fix the page links to a section that doesn't exist

fixed #29867

@RinkiyaKeDad , do you have time to review this pull request? Thanks.
/assign @RinkiyaKeDad


test/functional/.gitignore:move to repo root .gitignore

git complains about symlink created by cmake

not sure if this is a macOS specific issue.
git version 2.44.0
Darwin DeepSpaceMBPro.local 22.6.0 Darwin Kernel Version 22.6.0: Wed Jul  5 22:21:56 PDT 2023; root:xnu-8796.141.3~6/RELEASE_X86_64 x86_64

macOS arm64 M1
git version 2.42.0
commit 1eb125095fc5578d8faf7501f2cf023237b14d59

notable difference in git version:
macOS arm64 M1 (newer machine - older git version)
git version 2.42.0
macOS x86_64
git version 2.44.0 (older machine - newer git version)
after change:
https://github.com/hebasto/bitcoin/assets/152159/6aa3f275-4a32-4362-88a0-0ca7720d9ebf


Support for custom templates

Adding support for a folder containing file templates simplifies the process of adding or changing templates, and allows users to add their own.

Added in release https://github.com/Silverfeelin/Starbound-DrawablesGenerator/releases/tag/v1.2.1


chore(v3): backport latest v4 changes

Description
Backport latest v4 changes.
License
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

This PR requires to adapt all the providers thing in v4 to the audit_info in v3.


install/start a daemon in a feature

greetings!
I was wondering if it'd be possible to set up a daemon within a feature install?
as a basic example, I could install Cron within a feature, but something would need to call service cron start once the devcontainer is launched, and currently the only ways I can think of:

expect the user to have to add a postStartCommand along with the feature -- this seems fragile as the user would have to remember to add it
add a script to /etc/profile.d to start the daemon -- this seems fragile since the daemon won't start until a terminal is first established, and might have to check if the process is already running

similar to what I need, I've found that a ssh daemon is automatically running, is it possible to hook into what starts that daemon, or are there any other possible mechanisms for this?
thank you!

One way to do this is to have the feature provide an entrypoint in devcontainer-feature.json (reference: https://containers.dev/implementors/features/#devcontainer-feature-json-properties). The entrypoint script runs on container startup and could start your daemon/service there.

I will take a look at that thank you!

similar to what I need, I've found that a ssh daemon is automatically running, is it possible to hook into what starts that daemon, or are there any other possible mechanisms for this?

The entrypoint is indeed what the sshd feature uses 😄. Here's the link for that so you can see how it's implemented: https://github.com/devcontainers/features/blob/3020d6da64798ee994d407ffd3ce3f800f6dff92/src/sshd/devcontainer-feature.json#L17

I agree with @jkeech that is the recommended way to do what you're asking.  Please feel free to re-open if this isn't helpful for your use case, or if you have any questions :)

Closing the loop! This worked like a charm!
For anyone that stumbles along this thread, here's what I did to get cron working in a container:
cron-init.sh (in feature folder next to install.sh, bits were borrowed from /usr/local/share/ssh-init.sh):
#!/usr/bin/env bash
set -e

sudoIf()
{
    if [ "$(id -u)" -ne 0 ]; then
        sudo "$@"
    else
        "$@"
    fi
}

sudoIf /etc/init.d/cron start 2>&1 | sudoIf tee /tmp/cron.log > /dev/null

set +e
exec "$@"

install.sh:
apt-get update
apt-get -y install --no-install-recommends cron
rm -rf /var/lib/apt/lists/*

cp cron-init.sh /usr/local/share/cron-init.sh
chmod +rx /usr/local/share/cron-init.sh

devcontainer-feature.json:
{
  "name": "...",
  "id": "...",
  "version": "0.1.6",
  "description": "Assume an AWS role using SAML.to",
  "options": {
     ...
  },
  "entrypoint": "/usr/local/share/cron-init.sh"
}


avoids re-initialization of ApexCharts

I found out that init method can be triggered twice when component gets mounted and series get updated very quickly after component got mounted. So I added a small check in the init method to double check if chart already exists.
Fixes #3

A new version needs to be issued.

How long can this take?


C++SYCL, VecAdd, SimAdd, CMakeLists.txt comments changes, fix #1448

Existing Sample Changes
Description
C++SYCL, VecAdd, SimAdd, CMakeLists.txt comments changes
Fixes Issue #1448
External Dependencies
List any external dependencies created as a result of this change.
Type of change
Please delete options that are not relevant. Add a 'X' to the one that is applicable.

[X] Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration

[X] Command Line

Great catch, thanks!


Add support or wallaby

Changes to add support for wallaby

ah, good point. Actually, what we should do is take the new upstream branch (e.g. 22.04) and add our changes to that, creating a new version of our branch. This works in the meantime though.


Camera not authorized + iOS 14

Hi guys,
RN 0.63 + iOS 14
I used qr scanner but camera not authorized
I have react-native-camera, react-native-qrcode-scanner and permission in Xcode

Anybody can help me? pls

Same problem here! Not requesting permission for camera.

I have solutions, thanks

https://github.com/moaazsidat/react-native-qrcode-scanner/issues/237
Need to install  react-native-permissions
and  in pod file
pod 'Permission-Camera', :path => "#{permissions_path}/Camera"

#237
Need to install react-native-permissions
and in pod file
pod 'Permission-Camera', :path => "#{permissions_path}/Camera"

done both but still shows the same error on ios

@huynhbinh06 How did you fixed it?

@huynhbinh06 How did you fixed it?

Hi, instead of we write this line in Podfile pod 'Permission-Camera', :path => "#{permissions_path}/Camera", replace pod 'Permission-Camera', :path => "#{permissions_path}/Camera.podspec"
I don't understand why Podfile need " .podspec ", you can try this. Thanks

@huynhbinh06
Got this error when updated the podfile:
[!] No podspec found for Permission-Camerain../node_modules/react-native-permissions/ios/Camera.podspec``

@huynhbinh06
Got this error when updated the podfile:
[!] No podspec found for Permission-Camerain../node_modules/react-native-permissions/ios/Camera.podspec``

Did you have teamviewer?

@huynhbinh06
Got this error when updated the podfile:
[!] No podspec found for Permission-Camerain../node_modules/react-native-permissions/ios/Camera.podspec``

please, add my skype, I will help you in 1 or 2hours live:.cid.a12a936b36a536b5

HI All,
Have you found any working solutions.

it's probably something related to react-native-permissions, so please take a look there instead

Yes, I got the solution..

@thekundankamal what's the solution? I am still struggling with the same

@Aarush-wadhia
Add this line  in pod file...
permissions_path = '../node_modules/react-native-permissions/ios'
pod 'Permission-Camera', :path => "#{permissions_path}/Camera"
And then update the pod it will work.

@thekundankamal Hey buddy I tried this solution but it was showing the same error. Though I found the solution which was to check the permission since my colleague didn't make a proper code base I tweak it a lil bit and it is working as it should be. Thank you for your response

@Aarush-wadhia Please share your solution.


add name & reason to update body

I've taken it over from https://github.com/webdriverio/webdriverio/blob/master/packages/wdio-browserstack-service/src/service.js
@itszero can you merge this?
Would be great because I'm forced to still use wdio v4 in a project.

Sorry for the delay. I'll merge it later today. Thanks for the pull request!

Merged and published 0.1.19 to unblock you. FYI, you probably should be switching to use wdio's official browserstack plugin now. 😄 They've merged this code into their monorepo a while ago.


Not able to build on ios

While doing pod install
I getting below error
The react-native-static-server pod failed to validate due to 1 error:
- ERROR | attributes: Missing required attribute `homepage`.

- WARN  | source: Git sources should specify a tag.

- WARN  | description: The description is equal to the summary.

Duplicate of https://github.com/futurepress/react-native-static-server/issues/87


meshery install script fails with patch releases

Description
curl -L https://meshery.io/install | bash -  fails when the latest release is of type patch, for e.g. v0.7.3-patch.3
Expected Behavior
install script should not fail, when the mesheryctl install packages are not available under:
https://github.com/meshery/meshery/releases/, by falling back to last stable version
Rather, the mesheryctl executables should made available for patch/beta/alpha/rc releases.
https://github.com/meshery/meshery/pull/9642 talks about the recent changes to the publishing of the install packages.
Screenshots

Enviroment:

OS: Any
Browser: Any
Version: v0.7.3-patch.3
Device: Desktop Mobile

Contributor Guides and Handbook
The meshery.io website uses Jekyll and GitHub Pages. Site content is found under the master branch.

📚 See the Contributing to Meshery.io Website section of the readme.md and other contributing instructions, too.
🎨 Wireframes and designs for Meshery UI in Figma (open invite)
🙋🏾🙋🏼 Questions: Discussion Forum and Community Slack

@hexxdump
i've recently observed the same issue and i'm trying to find what's causing the same. Thus i had  created an issue #10049

Will fix it to fall back to last stable release.

Will raise PR this week


Only support emitting stats to a single backend at a time, selected with the --stats_backend flag

I expect most users will only need to push to a single back-end at a time, and this makes it easy to have plug-ins installed for multiple backends but only push metrics to a single one. Otherwise, you'd have to go about deleting all the plugin files that you didn't want.
@enisoc @alainjobart

LGTM


Fix a bug in persisting Date object

Description
JSON Encoder shipped as part of Swift standard library in iOS, tvOS versions < 13 fails to encode top level fragments. Persist date as double in iOS, tvOS versions < 13.
Related Issue

Motivation and Context

How Has This Been Tested?

Screenshots (if appropriate):
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[ ] I have signed the Adobe Open Source CLA.
[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

Can we add a test to cover this as well?

@emdobrin Good catch with upgrade scenario. I have fixed the issue and updated tests.


Added Dynamic in for generic component functionality

Description
Basically the same as the C# Worker SDK Dyanmic.ForEachComponent and Dynamic.ForComponent but with a slightly different interface.
Here's a silly example of printing all transform updates on a given entity
using System;
using System.Collections.Generic;
using System.Security.Cryptography.X509Certificates;
using Improbable.Gdk.Core;
using Improbable.Gdk.Core.Commands;
using Improbable.Gdk.GameObjectRepresentation;
using Improbable.Transform;
using Improbable.Worker;
using Improbable.Worker.Core;
using Improbable.Worker.Query;
using Unity.Entities;
using UnityEngine;

[WorkerType("UnityClient")]
public class ForEachComponentTest : MonoBehaviour
{
    private struct Handler : Dynamic.IHandler
    {
        public World World;
        public Dispatcher Dispatcher;
        public EntityId EntityId;

        public void Accept<TData, TUpdate>(uint componentId,
            ComponentDeserializer<TData> deserializeComponentAdded,
            UpdateDeserializer<TUpdate> deserializeComponentUpdate) where TData : ISpatialComponentData
            where TUpdate : ISpatialComponentUpdate
        {
            if (componentId != TransformInternal.ComponentId)
            {
                return;
            }

            var capturedHandler = this;
            Dispatcher.OnComponentUpdate(op =>
            {
                if (op.EntityId != capturedHandler.EntityId)
                {
                    return;
                }

                var transformUpdate = deserializeComponentUpdate(op.Update, capturedHandler.World);
                PrintTransformUpdate(transformUpdate);
            });
        }
    }

    [Require] private WorldCommands.Requirable.WorldCommandRequestSender sender;
    [Require] private WorldCommands.Requirable.WorldCommandResponseHandler handler;

    private void OnEnable()
    {
        var spatialOSComponent = GetComponent<SpatialOSComponent>();
        Dynamic.ForEachComponent(new Handler
        {
            World = spatialOSComponent.World,
            Dispatcher = spatialOSComponent.World.GetExistingManager<SpatialOSReceiveSystem>().Dispatcher,
            EntityId = spatialOSComponent.SpatialEntityId
        });
    }

    private static void PrintTransformUpdate(object update)
    {
        if (!(update is TransformInternal.Update))
        {
            return;
        }

        var c = (TransformInternal.Update) update;
        if (c.Location.HasValue)
        {
            Debug.Log(c.Location.Value.X);
        }
    }
}

What is the slightly different interface / what was the reason for implementing this?

@jessicafalk Because we are using a very different set of types and have no need or desire to introduce the framework that the normal Worker SDK has to. We could do the whole metaclass thing and we could use this foreach to create another dispatcher that uses generics but right now that seems like overkill.

@jamiebrynes7 Yep. Will redo codegen again shortly. Currently discussing another slight change which would mean it needed to be pushed again.


Handling WebSocket Timeouts and Reconnection in this client

WebSocket timeout and phoenix_gen_socket_client are not reconnecting to the WebSocket server.
I added a timeout behavior to my server WebSocket in endpoint.ex:
socket "/socket", MyWeb.UserSocket, websocket: [timeout: 30_000], longpoll: false
Expectation
When the server closes the connection, the client should automatically reconnect to the server.
Behavior
The client does not detect that the server has closed the connection and remains in the joined state. As a result, when the server sends a message to the client, the client does not actually receive it.

This was easily can fix regarding this below documentation.
https://hexdocs.pm/phoenix_gen_socket_client/Phoenix.Channels.GenSocketClient.Transport.WebSocketClient.html
So I will close this issue here.

WebSocket timeout and phoenix_gen_socket_client are not reconnecting to the WebSocket server.
I added a timeout behavior to my server WebSocket in endpoint.ex:
socket "/socket", MyWeb.UserSocket, websocket: [timeout: 30_000], longpoll: false
Expectation
When the server closes the connection, the client should automatically reconnect to the server.
Behavior
The client does not detect that the server has closed the connection and remains in the joined state. As a result, when the server sends a message to the client, the client does not actually receive it.

I am having the same issue.
I am using phoenix_gen_socket_client for client side and phoenix/channels for server side.
I am facing an issue with {:shutdown, :closed}, my server close the channel if he didn't receive any data
during 60s. For simulation purpose I set keepalive time for 120s in my client side. The issue is once server
close the channel it suppose to receive handle_channel_closed callback. But it doesn't.

This was easily can fix regarding this below documentation.
https://hexdocs.pm/phoenix_gen_socket_client/Phoenix.Channels.GenSocketClient.Transport.WebSocketClient.html
So I will close this issue here.

This one also no help


Merge submodules into parent.

This is part of https://github.com/crkn-rcdr/cihm-metadatabus/issues/12
Merge the following submodules, using subtree merging: https://docs.github.com/en/get-started/using-git/about-git-subtree-merges

git@github.com:crkn-rcdr/CIHM-Meta.git
git@github.com:crkn-rcdr/CIHM-METS-parse.git
git@github.com:crkn-rcdr/CIHM-Normalise.git

The following will remain as submodules:

CIHM-Swift -- common module used in many places, and needed by these tools.
CIHM-TDR -- Cleanup will mean this common module won't be needed in the future.

I ended up getting help from https://stackoverflow.com/questions/23327701/git-merge-submodule-into-parent-tree-cleanly-and-preserving-commit-history as things didn't quite work as I expected.


Configured bundlesize so the size of the library can be checked by CI…

…, assuring it will stay under 1kB
You will need also to configure/authorize this (really quickly) https://github.com/siddharthkp/bundlesize#2-build-status
husky needs node node v4+. Aint sure how do u feel about changing required node on travis, let me know if I should bump it or adjust my PR in some other way.

I appreciate this PR, but I don't want tests failing because of bundle size


Made InlineGet source field nullable

Addresses bug in https://github.com/opensearch-project/opensearch-java/issues/1042
Signed-off-by: Brendon Faleiro<EMAIL_ADDRESS>

This addresses the comments from #1043. I deleted the fork because I pushed unintended commits. I decided to do it cleanly again.

@BrendonFaleiro can you please manually backport this to 2.x?


Add A770 to nightly unit tests

With the exception of #983 , all other unit tests now pass on A770. We should be able to use the skiplist to ignore the failing test_dot tests and get a clean pass of the rest. Given the lack of A770 hardware, this test should be nightly for now - we can always revert if serious regressions occur. The ability to trigger it ondemand for specific PRs would be nice, but I am not sure if this is easily supported.

Blocked by infrastructure capacity, no A770 with ReBAR.

This is now solved. To continue with the nightly workflow we need a way to skip tutorials that hang, see #1081.

We are running CI daily: https://github.com/intel/intel-xpu-backend-for-triton/actions/workflows/build-test.yml?query=actor%3Aglados-intel+a770.
Runs are still red: need to add a skip list for A770.


[Javaapi] Adding code to set the storage in Javaapi for building Aar

Description
The builder registers the interfaces required for initializing the Orchestration. The Javaapi file is used to build the aar to be used as library in android project. The Orchestration Init function of Javaapi was missing the code to set the storage instance. Hence the appropriate code is added for the same.
Type of change
Bug fix (non-breaking change which fixes an issue)
How Has This Been Tested?

Storage instance has been set Javaapi file and aar is generated using make build-object-java command.
The aar is imported and Orchestration Init is called.
It is observed that the log shows that the Builder.build() is completed.

Test Configuration:

OS type & version: (Ubuntu 20.04)
Hardware: (x86-64)
Edge Orchestration Release: (v1.1.0)

Checklist:

[X] My code follows the style guidelines of this project
[X] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[X] New and existing unit tests pass locally with my changes

Can you check if edge-home-orchestration-go can be run on Android first? After that, we can decide whether to delete or modify the code for Android.


Error on setup.py install

What steps will reproduce the problem?
1. Checkout latest SVN
2. ./setup.py build
3. ./setup.py install

What is the expected output?
----------------------------

Expected output is clean install.

What do you see instead?
------------------------

The following is the tail of the output:
byte-compiling build/bdist.linux-x86_64/egg/stagger/errors.py to
errors.cpython-32.pyc
byte-compiling build/bdist.linux-x86_64/egg/stagger/specs.py to
specs.cpython-32.pyc
byte-compiling build/bdist.linux-x86_64/egg/stagger/id3v1.py to
id3v1.cpython-32.pyc
byte-compiling build/bdist.linux-x86_64/egg/stagger/conversion.py to
conversion.cpython-32.pyc
creating build/bdist.linux-x86_64/egg/EGG-INFO
copying stagger.egg-info/PKG-INFO -> build/bdist.linux-x86_64/egg/EGG-INFO
copying stagger.egg-info/SOURCES.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
copying stagger.egg-info/dependency_links.txt ->
build/bdist.linux-x86_64/egg/EGG-INFO
copying stagger.egg-info/entry_points.txt ->
build/bdist.linux-x86_64/egg/EGG-INFO
copying stagger.egg-info/top_level.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
zip_safe flag not set; analyzing archive contents...
creating 'dist/stagger-0.4.2-py3.2.egg' and adding
'build/bdist.linux-x86_64/egg' to it
removing 'build/bdist.linux-x86_64/egg' (and everything under it)
Processing stagger-0.4.2-py3.2.egg
removing '/usr/local/lib/python3.2/dist-packages/stagger-0.4.2-py3.2.egg' (and
everything under it)
creating /usr/local/lib/python3.2/dist-packages/stagger-0.4.2-py3.2.egg
Extracting stagger-0.4.2-py3.2.egg to /usr/local/lib/python3.2/dist-packages
stagger 0.4.2 is already the active version in easy-install.pth
Traceback (most recent call last):
  File "setup.py", line 64, in <module>
    "Topic :: Multimedia :: Sound/Audio"
  File "/usr/lib/python3.2/distutils/core.py", line 148, in setup
    dist.run_commands()
  File "/usr/lib/python3.2/distutils/dist.py", line 917, in run_commands
    self.run_command(cmd)
  File "/usr/lib/python3.2/distutils/dist.py", line 936, in run_command
    cmd_obj.run()
  File "/usr/local/lib/python3.2/dist-packages/distribute-0.6.15-py3.2.egg/setuptools/command/install.py", line 73, in run
    self.do_egg_install()
  File "/usr/local/lib/python3.2/dist-packages/distribute-0.6.15-py3.2.egg/setuptools/command/install.py", line 101, in do_egg_install
    cmd.run()
  File "/usr/local/lib/python3.2/dist-packages/distribute-0.6.15-py3.2.egg/setuptools/command/easy_install.py", line 344, in run
    self.easy_install(spec, not self.no_deps)
  File "/usr/local/lib/python3.2/dist-packages/distribute-0.6.15-py3.2.egg/setuptools/command/easy_install.py", line 564, in easy_install
    return self.install_item(None, spec, tmpdir, deps, True)
  File "/usr/local/lib/python3.2/dist-packages/distribute-0.6.15-py3.2.egg/setuptools/command/easy_install.py", line 616, in install_item
    self.process_distribution(spec, dist, deps)
  File "/usr/local/lib/python3.2/dist-packages/distribute-0.6.15-py3.2.egg/setuptools/command/easy_install.py", line 645, in process_distribution
    self.install_egg_scripts(dist)
  File "/usr/local/lib/python3.2/dist-packages/distribute-0.6.15-py3.2.egg/setuptools/command/easy_install.py", line 515, in install_egg_scripts
    self.install_wrapper_scripts(dist)
  File "/usr/local/lib/python3.2/dist-packages/distribute-0.6.15-py3.2.egg/setuptools/command/easy_install.py", line 719, in install_wrapper_scripts
    for args in get_script_args(dist):
  File "/usr/local/lib/python3.2/dist-packages/distribute-0.6.15-py3.2.egg/setuptools/command/easy_install.py", line 1741, in get_script_args
    header = get_script_header("", executable, wininst)
  File "/usr/local/lib/python3.2/dist-packages/distribute-0.6.15-py3.2.egg/setuptools/command/easy_install.py", line 1593, in get_script_header
    match = first_line_re.match(first)
TypeError: can't use a bytes pattern on a string-like object

What version of the product are you using? On what operating system?
--------------------------------------------------------------------
Latest SVN. Linuxmint.

Please provide any additional information below.

Original issue reported on code.google.com by MarkSkilbeck on 12 Nov 2012 at 10:04

Fixed in v1.0.0.


GitHub Release version is out of sync with the VS Code version

The code version in the GitHub is much older than the extension pack.  Can you please update the GitHub code to match the VS code extension version?
https://github.com/mulesoft-labs/data-weave-language-server
Release v1.1.1
Latest on Sep 16, 2021
https://marketplace.visualstudio.com/items?itemName=MuleSoftInc.dataweave
More Info
Version 1.2.15
Released on 3/9/2022, 2:46:03 PM
Last updated 1/24/2023, 10:19:38 AM

Hi, @mohanmmm. The Github releases here no longer reflect the status of VS Code. This is because this repo has transitioned to solely an issue tracker. We won't be updating those. Sorry for the confusion and thanks!


Enable ADS proxy by default

Additionally, stop sending it in the node metadata since this is
transparent to Istiod. This is not required and I can revert if there
are objections, the reason I included this was becuase if we actually
want to include it in the metadata we need to explicitly export the env
var, rather than this approach where the env is just an override.
[ ] Configuration Infrastructure
[ ] Docs
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
Pull Request Attributes
Please check any characteristics that apply to this pull request.
[ ] Does not have any changes that may affect Istio users.

@howardjohn: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

unit-tests_istio
45c76251786583235871764588b900ed3858ea7d
link
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

This is a bit mis-leading title, since agent only proxies ADS, not all xDS. We should either implement xDS proxying or make it explicit that only ADS is supported.

@howardjohn: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio
dbeb3240fa5c30bb7426223d40c473021184b85c
link
/test release-notes_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@howardjohn: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio
dbeb3240fa5c30bb7426223d40c473021184b85c
link
/test release-notes_istio

integ-operator-controller-tests_istio
dbeb3240fa5c30bb7426223d40c473021184b85c
link
/test integ-operator-controller-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


Add datatypes and their constructors as specialized information to the catalog

Now data constructors are treated just as functions, this sort of works but we need more information on datatypes than just the type of the constructors.

GHCi seems to treat datatype constructors as functions as well, at least in some cases:
Prelude> :t Just
Just :: a -> Maybe a
Prelude> map Just [1,2,3,4]
[Just 1,Just 2,Just 3,Just 4]

What additional information were you thinking about?

That for example that the type Maybe consist of constructor Nothing and Just.
And know which catalog entries are constructors that can be pattern matched on.

Resolved in PR #295


Kata-CC: Enforce a restrictive pod security policy

Merge Checklist

All boxes should be checked before merging the PR (just tick any boxes which don't apply to this PR)

[x] The toolchain has been rebuilt successfully (or no changes were made to it)
[x] The toolchain/worker package manifests are up-to-date
[x] Any updated packages successfully build (or no packages were changed)
[x] Packages depending on static components modified in this PR (Golang, *-static subpackages, etc.) have had their Release tag incremented.
[x] Package tests (%check section) have been verified with RUN_CHECK=y for existing SPEC files, or added to new SPEC files
[x] All package sources are available
[x] cgmanifest files are up-to-date and sorted (./cgmanifest.json, ./toolkit/scripts/toolchain/cgmanifest.json, .github/workflows/cgmanifest.json)
[x] LICENSE-MAP files are up-to-date (./SPECS/LICENSES-AND-NOTICES/data/licenses.json, ./SPECS/LICENSES-AND-NOTICES/LICENSES-MAP.md, ./SPECS/LICENSES-AND-NOTICES/LICENSE-EXCEPTIONS.PHOTON)
[x] All source files have up-to-date hashes in the *.signatures.json files
[x] sudo make go-tidy-all and sudo make go-test-coverage pass
[x] Documentation has been updated to match any changes to the build system
[x] Ready to merge

Summary

With our upstream kata-containers fork being able to enforce a restrictive policy through a variable, this package change now transitions to enforcing a restrictive security policy for CC pods
Change Log

Enforce a restrictive policy for CC pods

Does this affect the toolchain?

NO
Associated issues

Related microsoft/kata-containers PR: https://github.com/microsoft/kata-containers/pull/123

Links to CVEs
Test Methodology

Manual testing using a pre-release Kata-CC image with the package changes, and using pod YAMLS with and w/o policy annotations

Can we bump the release version and changelog

sigh - thanks for catching this. I forgot to add this back when I updated the outdated changes


Nice to have option of connect to ActivityWatch tracking service

discussion topic already exists: https://forum.activitywatch.net/t/implement-pomodoro-timers/669/7


Version 3.3.0 compilation process is broken

When using the (latests) version 3.3.0 of the package, it seems the build or packaging process is broken because the whole app breaks with the following message:
Error [ERR_MODULE_NOT_FOUND]: Cannot find package '$app' imported from /<my_project>/node_modules/svelte-kit-cookie-session/utils.js
    at new NodeError (node:internal/errors:387:5)
    at packageResolve (node:internal/modules/esm/resolve:852:9)
    at moduleResolve (node:internal/modules/esm/resolve:901:20)
    at defaultResolve (node:internal/modules/esm/resolve:1115:11)
    at nextResolve (node:internal/modules/esm/loader:163:28)
    at ESMLoader.resolve (node:internal/modules/esm/loader:837:30)
    at ESMLoader.getModuleJob (node:internal/modules/esm/loader:424:18)
    at ModuleWrap.<anonymous> (node:internal/modules/esm/module_job:76:40)
    at link (node:internal/modules/esm/module_job:75:36)

If I inspect the package, indeed the new imports remain but the packaged structure does not match the paths:

And this is the broken code:

Alright i think i got it now, probably can't use the $app module when packaging. It should work in 3.3.2.

Thanks a lot! 3.3.2 does fix the issue.


Unable to build latest commit

It seems the latest commit introduced an error that prevents the application from building. If I change my working copy to the previous commit (926542b44889c6791c2252099978ca65515f0da3) I am able to build without a problem.
Node Version
v7.10.0
NPM Version
v4.2.0
Steps to Reproduce:

Clone repository
Run npm install

Log File
2017-05-18T01_25_45_231Z-debug.txt
Output
[redacted]:mobile-center-cli [redacted]$ npm install
npm WARN deprecated<EMAIL_ADDRESS>Use uuid module instead
npm WARN deprecated<EMAIL_ADDRESS>Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated<EMAIL_ADDRESS>Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated<EMAIL_ADDRESS>graceful-fs v3.0.0 and before will fail on node releases >= v7.0. Please update to<EMAIL_ADDRESS>as soon as possible. Use 'npm ls graceful-fs' to find it in the tree.
npm WARN prepublish-on-install As of npm@5, `prepublish` scripts will run only for `npm publish`.
npm WARN prepublish-on-install (In npm@4 and previous versions, it also runs for `npm install`.)
npm WARN prepublish-on-install See the deprecation note in `npm help scripts` for more information.

><EMAIL_ADDRESS>prepublish [redacted]/mobile-center-cli
> gulp prepublish

module.js:472
    throw err;
    ^

Error: Cannot find module '../dist/util/commandline/option-decorators'
    at Function.Module._resolveFilename (module.js:470:15)
    at Function.Module._load (module.js:418:25)
    at Module.require (module.js:498:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> ([redacted]/mobile-center-cli/scripts/autocomplete-tree.js:4:26)
    at Module._compile (module.js:571:32)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:488:32)
    at tryModuleLoad (module.js:447:12)
    at Function.Module._load (module.js:439:3)

npm ERR! Darwin 16.6.0
npm ERR! argv "/usr/local/Cellar/node/7.10.0/bin/node" "/usr/local/bin/npm" "install"
npm ERR! node v7.10.0
npm ERR! npm  v4.2.0
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR<EMAIL_ADDRESS>prepublish: `gulp prepublish`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>prepublish script 'gulp prepublish'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the mobile-center-cli package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     gulp prepublish
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs mobile-center-cli
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls mobile-center-cli
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /Users/[redacted]/.npm/_logs/2017-05-18T01_25_45_231Z-debug.log

Fixed via #185


Error adding 'MahApps.Metro.dll' into WPF Toolbox (VS2019)

Bug description
I'm trying to import the MahApps.Metro control collection into the WPF designer toolbox in VS2019, however I get the following error messages:

"[...]/ControlzEx.dll" targets a platform whose toolbox items cannot be enumerated dynamically.
"[...]/MahApps.Metro.dll" targets a platform whose toolbox items cannot be enumerated dynamically.

To Reproduce
Steps to reproduce the behavior:

Go to the WPF designer toolbox
Left-Click > "Choose Items ..."
Click "Browse ..."
Select ControlzEx.dll and MahApps.Metro.dll referenced by the application.

Screenshots

Environment:

MahApps.Metro 2.0.0-alpha0660
Win10 Professional x64 18363
Visual Studio Community 2019 16.5.0 Preview 2.0
.NET Core 3.1.200-preview-014883

I found a temporary workaround:

Create a second project in the solution. This project must target the .NET Framework instead of .NET Core
Reference MahApps.Metro via Nuget
Compile
Copy the .dlls into an other directory
Drag them into the WPF toolbox
Delete the second project.

At least, I can now drag-&-drop the controls into the designer. However, the designer does not render them correctly.

If the designer has issues with components or does not render them correctly, but everything works fine at runtime it's almost always the designers fault.
You should report such issues to Microsoft as there is nothing we can do to fix this on our side.

You should report such issues to Microsoft as there is nothing we can do to fix this on our side.

Ok. That, I can understand. And I should mention, that it is the preview-version of VS2019, so I guess that bugs are kinda to be expected.
However, do you maybe know the origin of the original error message?

I don't think it's because you are using a preview. The designer is kinda buggy ever since.
The original error occurs because visual studio is using the "full" .net framework and so does the designer. Loading a .net core dll is not supported by the .net runtime.
As far as i know the designer does not fully support .net core yet.

Oh okay :/
Thank you for your insight and response!

@Unknown6656 Can I close this issue? Or have you still some questions about this? Thx.

Oh yeah you're right. I forgot to close this issue. Thanks for all the feedback!

@Unknown6656 Sorry to bother you but did you manage to find a solution for this? Or do we still have to use the workaround?

@Unknown6656 Sorry to bother you but did you manage to find a solution for this? Or do we still have to use the workaround?

@Luk164 I still had to use the workaround to this date.
To be honest, I mainly design the MahApps-based windows purely using XAML (without really using the window designer).

@Luk164 I still had to use the workaround to this date.
To be honest, I mainly design the MahApps-based windows purely using XAML (without really using the window designer).

@Unknown6656 Yeah I am not very good at front-end stuff so designer is a huge help to me. Though if I ever want to use Xamarin I will have to learn to work without it eventually.

@Unknown6656 Yeah I am not very good at front-end stuff so designer is a huge help to me. Though if I ever want to use Xamarin I will have to learn to work without it eventually.


Migrate to ecbuild35 on Cheyenne

@travissluka  Can we follow the suggestion in post "ecbuild 3.5/3.6 migration" from https://github.com/orgs/JCSDA-internal/teams/jedi , to include fckit, eckit, atlas etc. in the containers and HPC modules instead of building them with the bundles? It needs us to modify the file "UMD-SST/bundle/CMakeLists.txt".
I've been having trouble recompiling JEDI/UMD-SST on Cheyenne, mainly due to their migration to ecbuild35. Below is the link error. The reason is previously we used eckit version "jcsda-1.11.6.jcsda2" (under /glade/work/miesch/modules/gnu-9.1.0/openmpi-4.0.3/eckit), now after upgrade all of these oops/atlas/fckit need to use upgraded eckit version "ecmwf-1.16.0".
I tried several times providing the path to only the upgraded eckit lib, which failed. I also tried to compile everything from the beginning, which also failed due to the upgraded ecbuild. I figured it would be more effective if we just follow JEDI's suggestion.
[ 96%] Linking CXX executable ../../../bin/umdsst_convertstate.x
/usr/bin/ld: ../../../lib/liboops.so: undefined reference to eckit::Main::createMetricsLogTarget() const' /usr/bin/ld: ../../../lib/libatlas.so.0.20: undefined reference to eckit::Buffer::Buffer(void const*, unsigned long)'
/usr/bin/ld: ../../../lib/libatlas_f.so.0.20: undefined reference to `eckit_git_sha1'
......

I'm hoping we could compile everything from the beginning, to make it consistent with all the libraries.

that's fine, I comment out atlas and fckit anyway when I build on my machine because I have those already installed.
I didn't realize they have changed the modules already, if so I think that is a mistake, none of the other HPCs i'm using have upgrade to ecbuild35 for the default yet. Also I don't think the docker images have been updated yet.
does it work for you if you comment out atlas and fckit in the bundle? you might have to completely remove your build directory and rerun ecbuild

The ecbuild35 is not default yet on Cheyenne. Seems like there are some inconsistencies, I put a post at https://github.com/orgs/JCSDA-internal/teams/jedi .
I already tried to completely remove my build directory ad rerun with latest ecbuild3.6.1, which failed with following error message, which I think is due to the ecbuild upgrade. Will try modify the CMakeLists.txt to make it work.
CMake Error at /glade/work/miesch/modules/core/ecbuild/ecmwf-3.6.1/share/ecbuild/cmake/ecbuild_log.cmake:190 (message):
CRITICAL - Please define a version for UMDSST-bundle

@travissluka which eckit version are you using? The latest "eckit/ecmwf-1.16.0" or the previous "eckit/jcsda-1.11.6.jcsda2"? Also are we running fv3-bundle (indicated by Mark's reply to my post)?

@travissluka Never mind, now it compiles successfully. We'd better not touch the upgraded ecbuild35 etc. now.


Installation failed

I tried to install Nebula via opam, but the build process failed with the following error:
# File "src/devices/monitor.ml", line 218, characters 2-12:
# Error: Integer literal exceeds the range of representable integers of type int
# Command exited with code 2.
# Makefile:14: recipe for target 'nebula' failed

Looking into the source code, the referenced value is apparently the number of microseconds during which the startup screen is shown.
Strangely enough, the blink period right above it (1,000,000,000) did not raise this error, and the current value of the startup duration (1,300,000,000) should be representable with 31 bits.

Hi @ray10k .
Thanks for opening an issue!
could you please let me know your exact installed OCaml version and the platform that you're running on?
That will help me to reproduce the issue.

A minor correction: this is the number of nanoseconds (1x10^-9) that the simulated monitor shows the start-up screen. It's not clear why the compiler is complaining, because as you pointed out, these literals are less than 2^31.
Once I have more information I might be able to learn more.

I'm running lubuntu as my operating system, a lightweight version of ubuntu 15.04.
OCaml 4.02.3
Side note, I had to semi-manually install opam due to some issue with the default version provided, in accordance with https://opam.ocaml.org/doc/Install.html under the heading Ubuntu.

Woops. OCaml uses a tagged pointer representation in its run-time which means that only 31 bits are available for signed integers.
That means that the range of allowable values is -2^30 to 2^30 - 1 on 32 bit systems. That upper bound is 1 073 741 823.
I'll try to fix this today.

OK. Also, just in case it could be an issue further down the line, I'll look into upgrading to a 64-bit version. Think the processor can handle it, anyway.

I'm going to close this ticket and track progress in #9. Feel free to continue the discussion there.

@ray10k I think this has been fixed in master.  Please follow the instructions for Installing from source and let me know if it's still failing to build.


Kafka Binding v1.12.4: Microsoft.AspNetCore.Server.Kestrel.Core.BadHttpRequestException: Malformed request: invalid headers.

Expected Behavior
Dapr and Azure Event Hub integration using Kafka binding works without errors in .Net applications.
Actual Behavior
I've created a new issue item based on the discussion in already resolved item: https://github.com/dapr/components-contrib/issues/2874
I've been using bindings.kafka component for recieving messages from Azure Event Hub in my application. Everything work properly in Dapr versions 1.8.7. But when I updated dapr components to any version which is greater than 1.8.7 (1.9.0 and higher), my ASP.Net Core (.Net 6 / 7 / 8) application stopped receiving new messages from EventHub. I've noticed the following error message in the sidecar container (daprd):
2024-01-31 20:40:13 time="2024-01-31T12:40:13.584601Z" level=debug msg="Processing Kafka message: my-eh-data/0/316246409 [key=MjAxMA==]" app_id=my-eventhublistener component="my-eventhub-receiver (bindings.kafka/v1)" instance=60ad509cd5a0 scope=dapr.contrib type=log ver=1.12.4
2024-01-31 20:40:13 time="2024-01-31T12:40:13.588342Z" level=debug msg="error from app consumer for binding [my-eventhub-receiver]: error invoking app: Post \"http://<IP_ADDRESS>:80/my-eventhub-receiver\": context canceled" app_id=my-eventhublistener instance=60ad509cd5a0 scope=dapr.runtime.processor.binding type=log ver=1.12.4
2024-01-31 20:40:13 time="2024-01-31T12:40:13.58847Z" level=error msg="Error processing Kafka message: my-eh-data/0/316246409 [key=MjAxMA==]. Error: error invoking app: Post \"http://<IP_ADDRESS>:80/my-eventhub-receiver\": context canceled." app_id=my-eventhublistener component="my-eventhub-receiver (bindings.kafka/v1)" instance=60ad509cd5a0 scope=dapr.contrib type=log ver=1.12.4

And I also noticed the following error message in my ASP.Net Core application's logs:
2024-01-31 20:42:08 [12:42:08 Debug] Microsoft.AspNetCore.Server.Kestrel.BadRequests
2024-01-31 20:42:08 Connection id "0HN12B6B2VHAL" bad request data: "Malformed request: invalid headers."
2024-01-31 20:42:08 Microsoft.AspNetCore.Server.Kestrel.Core.BadHttpRequestException: Malformed request: invalid headers.
2024-01-31 20:42:08    at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.Http1Connection.TryParseRequest(ReadResult result, Boolean& endConnection)
2024-01-31 20:42:08    at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.ProcessRequests[TContext](IHttpApplication`1 application)
2024-01-31 20:42:08    at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.ProcessRequestsAsync[TContext](IHttpApplication`1 application)

And what I also found is that requests from different dapr versions have different headers:
v.1.12.4 (doesn't work for me):
2024-01-31 20:58:03 [12:58:03 Information] Microsoft.AspNetCore.HttpLogging.HttpLoggingMiddleware
2024-01-31 20:58:03 Request:
2024-01-31 20:58:03 Protocol: HTTP/1.1
2024-01-31 20:58:03 Method: OPTIONS
2024-01-31 20:58:03 Scheme: http
2024-01-31 20:58:03 PathBase:
2024-01-31 20:58:03 Path: /my-eventhub-receiver
2024-01-31 20:58:03 Host: <IP_ADDRESS>:80
2024-01-31 20:58:03 User-Agent: Go-http-client/1.1
2024-01-31 20:58:03 Accept-Encoding: gzip
2024-01-31 20:58:03 Content-Type: application/json
2024-01-31 20:58:03 traceparent: [Redacted]

And there is no following POST request in v.1.12.4.
v.1.8.7 (it works properly without errors):
2024-01-31 21:14:42 [13:14:42 Information] Microsoft.AspNetCore.HttpLogging.HttpLoggingMiddleware
2024-01-31 21:14:42 Request:
2024-01-31 21:14:42 Protocol: HTTP/1.1
2024-01-31 21:14:42 Method: OPTIONS
2024-01-31 21:14:42 Scheme: http
2024-01-31 21:14:42 PathBase:
2024-01-31 21:14:42 Path: /my-eventhub-receiver
2024-01-31 21:14:42 Host: <IP_ADDRESS>:80
2024-01-31 21:14:42 User-Agent: fasthttp
2024-01-31 21:14:42 Content-Type: application/json
2024-01-31 21:14:42 traceparent: [Redacted]
2024-01-31 21:14:42 Content-Length: 0

2024-01-31 21:15:03 [13:15:03 Information] Microsoft.AspNetCore.HttpLogging.HttpLoggingMiddleware
2024-01-31 21:15:03 Request:
2024-01-31 21:15:03 Protocol: HTTP/1.1
2024-01-31 21:15:03 Method: POST
2024-01-31 21:15:03 Scheme: http
2024-01-31 21:15:03 PathBase:
2024-01-31 21:15:03 Path: /my-eventhub-receiver
2024-01-31 21:15:03 Host: <IP_ADDRESS>:80
2024-01-31 21:15:03 User-Agent: fasthttp
2024-01-31 21:15:03 Content-Type: application/json
2024-01-31 21:15:03 traceparent: [Redacted]
2024-01-31 21:15:03 Content-Length: 281

The latest version which works properly is 1.8.7. Starting from Dapr v.1.9.0 the Kafka binding component doesn't work for us.
Yaml output of my bindings.kafka component:
apiVersion: dapr.io/v1alpha1
auth:
  secretStore: my-kv-secrets
kind: Component
metadata:
  annotations:
    meta.helm.sh/release-name: my-eventhublistener
    meta.helm.sh/release-namespace: my-namespace
  labels:
    app.kubernetes.io/managed-by: Helm
  name: my-eventhub-receiver
  namespace: my-namespace
spec:
  metadata:
  - name: version
    value: 1.0.0
  - name: brokers
    value: my-eh-namespace.servicebus.windows.net:9093
  - name: topics
    value: my-eh-data
  - name: consumerGroup
    value: my-eventhublistener
  - name: authRequired
    value: "true"
  - name: saslUsername
    value: $ConnectionString
  - name: saslPassword
    secretKeyRef:
      key: eventhub-connectionstring
      name: eventhub-connectionstring
  type: bindings.kafka
  version: v1

Steps to Reproduce the Problem

Create a kafka.binding component to receive messages from Event Hub in your ASP.Net Core application
Deploy your application and the component to the Kubernetes
Check that your application doesn't receive messages from Event Hub

@yaron2 @berndverst, Could you please take a look on this issue?

My understanding is that some Dotnet frameworks are very picky about things like a missing Content-Length header or a content length header with a value of 0 reported.
Without a doubt the issue here is in the receiving code of your own application! So this should probably be moved to the Dapr DotNet SDK instead. The issue isn't really component specific - other than the fact that the component produces the header which trips up your app.
Content-Length: 0 might be the issue here.

My understanding is that some Dotnet frameworks are very picky about things like a missing Content-Length header or a content length header with a value of 0 reported.
Without a doubt the issue here is in the receiving code of your own application! So this should probably be moved to the Dapr DotNet SDK instead. The issue isn't really component specific - other than the fact that the component produces the header which trips up your app.
Content-Length: 0 might be the issue here.

Content-Length: 0 is from a log file for v.1.8.7 which works properly for us. We have this issue for Dapr versions which are greater than 1.8.7.

@berndverst I've also tried to send a POST request to the my-eventhub-receiver path using Postman and it worked.

2024-02-07 19:24:34 [11:24:01 Information] Microsoft.AspNetCore.HttpLogging.HttpLoggingMiddleware
2024-02-07 19:24:34 Request:
2024-02-07 19:24:34 Protocol: HTTP/1.1
2024-02-07 19:24:34 Method: POST
2024-02-07 19:24:34 Scheme: http
2024-02-07 19:24:34 PathBase:
2024-02-07 19:24:34 Path: /transitiq-eventhub-receiver
2024-02-07 19:24:34 Accept: /
2024-02-07 19:24:34 Connection: keep-alive
2024-02-07 19:24:34 Host: localhost:5101
2024-02-07 19:24:34 User-Agent: PostmanRuntime/7.36.1
2024-02-07 19:24:34 Accept-Encoding: gzip, deflate, br
2024-02-07 19:24:34 Content-Type: application/json
2024-02-07 19:24:34 Content-Length: 342
2024-02-07 19:24:34 Postman-Token: [Redacted]


Admins that Receive Submission for Org Scope doesn't match what documentation says

Hi there,
On this page, the following is stated: "Organization: This registration request will be sent to your organization's administrators with Exchange administrator or Global administrator permissions. Any administrator with those permissions receive an email with submission details and will be able to review and approve your request."
From my testing, it seems that only the Exchange Admins get the registration request. Only the Exchange admins are mentioned on the actual request page:

Is this a documentation issue or should Global Admins also be receiving this mail?

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

ID: b2eaf591-7ab8-e405-3366-94b46146be71
Version Independent ID: 2783a865-1195-02ed-e9c7-f5e40c6f9d56
Content: Actionable messages via email developer dashboard guide - Outlook Developer
Content Source: docs/actionable-messages/email-dev-dashboard.md
Product: outlook
Technology: o365-connectors
GitHub Login: @jasonjoh
Microsoft Alias: jasonjoh

Documentation bug. Thanks for reporting.

Note if no users have the Exchange administrator role assigned, it will fallback to send to Global admins.

Thanks for the clarification @jasonjoh. Much appreciated.


HMR not reloading SCSS

I have Laravel Mix setup on a project and it's working as expected. When running in hmr mode I can see in the console that it's recompiling each time I change a SCSS or JS file.
However, it's only reloading the javascript changes. If it's a SCSS file that's changed although HMR is triggered on the page, it says no changes have been detected.
[WDS] App hot update...
app.js:4282 [HMR] Checking for updates on the server...
app.js:9069 [HMR] Nothing hot updated.
app.js:4264 [HMR] App is up to date.

If I reload the web page then I see my SCSS changes.
Is this broken, or expected behaviour? I'd love to see my SCSS changes as well.

Same problem here I ask a question about it, but did get any reaction yet. U can find the question on the official Laravel forum:

Sorry for double posting. But here is the url https://laracasts.com/discuss/channels/elixir/laravel-mix

@shealan I found a solution after a long time searching the web. On line 124 inside your webpack-config.js change it to this:
module.exports.module.rules.push({         test: /\.scss$/,         loader: 'style-loader!css-loader?sourceMap!sass-loader?sourceMap&sourceComments'     });
After this is way enable to use hmr

Which mix version that you use? Upgrade to the latest version (0.4.0) to get this thing works. I believe <= 0.3.0 will face this issue.

@nmfzone Just test it out with version 0.4.0 same problem css is not reloading also HTML isn't!

@justkidding96 Ok, could you give me some example of your code?
Because if you're using HMR, you must using the HMR location (eg. localhost:8080) in your css/js path. If you're using Laravel, you could see the mix() helper function here to make it automatically.

I just believe this isn't an issue. It just because TS don't have the correct setup.

@nmfzone i have the issue as well, using the mix helper already

@jfalotico What Mix version you used? Different version have different configuration for mix(). Please make sure you used the latest version of Mix (0.4.0).

I aslo am having the same issue
Mix 0.4.0
using newest mix() (from release notes)
new install this morning~

@lukepolo Hmmm, let's troubleshoot it. When you run npm run hmr, do you see hot in your public folder?

@lukepolo Do you read my question?

Sorry, didn't think it would be relevant since it wound't load my initial .css otherwise .

I'm having the same issue. Running HMR with "laravel-mix": "^0.4.0", my css/js both point to http://localhost:8080/{js/css}/app.{js/css} and hot is present in my public folder.
Any ideas @nmfzone?

@nmfzone @lukepolo @jfalotico I post today a solution with version 4. The only problem which I got is that HMR no changes in the HTML detect. Maybe somebody has there a solution for?

@justkidding96 look forward to seeing it. I think you'll make a bunch of people happy :)

@nmfzone @lukepolo @jfalotico @shealan I've tested it and it works only with http://localhost:8080 Here is the link to my basic setup https://github.com/justkidding96/Mix-example

my guess this commit fixed it , let me know if it works
https://github.com/JeffreyWay/laravel-mix/commit/a0a719105ae01fef10394b122c121cc35e37d3a9

@lukepolo Nope, didn't work I run the latest version which is updated about 4 hours ago. The css isn't reloading it self.
@JeffreyWay Still we (the community) can not use the full experience of HMR. It's to bad to see no reaction.

HMR doesn't include hot reload regular HTML changes in your blade files.

@JeffreyWay I guess they don't talk about regular HTML changes. But as you can see in the title, they talking about when running HMR, after modify the .scss file, hmr not changed the display directly.

It won't work right now for regular Sass files. The HMR feature is specifically for Vue and .vue components.

@JeffreyWay Ah, that's what they waiting for. Thank you for your response.

Maybe this could help ?
https://github.com/webpack/extract-text-webpack-plugin/issues/30#issuecomment-220724110

@lukepolo This was original my hot fix to. But I decide to use browser-sync works like a charm for me. It is to bad that HMR not supporting sass reloading out of the box, maybe in the feature...

What I was able to do to get this to work with VueJS is in my root .vue component is do this:

<style lang="scss">
    @import 'resources/assets/sass/app.scss';
</style>

Notice lang="scss" and no scoped.

You can acutally get it to reload the SASS files without doing anything odd like importing it like that : take a look at my build : https://github.com/variejs/varie/blob/master/build/loaders/scss.js
(although this is webpack 4) you can just make sure to use the style-loader when using HMR and it natively will reload your sass properly


New version: Caprine.Caprine version 2.58.1

Pull request has been created with WinGet Automation :rocket:
Microsoft Reviewers: Open in CodeFlow

Automatic Validation ended with:


loop over value keys to check wich value need to be updated

Should resolve https://github.com/firebase/polymerfire/issues/88 and https://github.com/firebase/polymerfire/issues/56.

@mbleigh thanks for your comments, truly appreciated.
For very large JSON blob, I would tend to think that other part of data processing will weight on performance way more than Object.key() (I am thinking of snapshot.val() in particular - which is process intensive and invoked by firebase-document on every firebase value update).
Re. nested Object properties - yes they will still trigger on every update. I was reluctant to recurse down the entire tree because the problem this PR is trying to fix is to avoid observers to be fired every time a an update is made on a bound Object. A construct like _observe(data.myProp) is pretty common, whereas observe(data.myProp.mySubProp) is a bit less likely.

Please note that if you want to and as a temporary measure, you can use my #dev version combining pull request #177, #166 and #167 via
bower install --save  PolymerEl/polymerfire#dev


Fix issues with creating conan package on GHA macos runners

Related to https://github.com/astro-informatics/sopt/pull/350
Contains a lot of experimentation, in the end the only change should be changing build examples to OFF

Going to merge this to get sopt using master again


Feature Request Docs not accurate

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
The feature request docs are inaccurate. They say to " Go to Help > Feature Request to access the Ideas portal." But "Feature Request" is no longer an option under the help menu.
Ref: https://help.sumologic.com/docs/get-started/help/#feature-requests
Describe the solution you'd like:
A clear and concise description of what you want to happen.
The docs updated to reflect the new process for submitted a feature request.
Describe alternatives you have considered:
A clear and concise description of any alternative solutions or features you have considered.
N/a
Additional info:
Add any other context or screenshots about the feature request here.
Doc that needs to be updated: https://help.sumologic.com/docs/get-started/help/#feature-requests
I found the feature request going to Help> Support> all the way at the bottom  Request a Feature

@bethg1 , many thanks for bringing this to our attention!


Move extract_user_meta/1 into riak_kv_wm_utils

Other web-based endpoints have a use for extract_user_meta/1 - move it to the wm_utils module and export it.

+1

👍

+1


[CRITICAL] Files Crashes When Renaming Files in Documents Folder

Description
When attempting to rename a file specifically in the Documents Folder, Files crashes. There are no special permissions within the Documents library, or on any of the folders I have attempted to rename. I renamed a file in Downloads, and it worked just fine.
Steps To Reproduce

Open Files
Navigate to Documents
Rename an existing folder

Expected behavior
Files should not crash when renaming a file in Documents.
Files Version
Version: <IP_ADDRESS> OS Version: 10.0.22000.438
Windows Version
Windows 11 22000.438
Relevant Assets/Logs
There are no relevant issues/logs. This issue persists throughout complete restarts of the Files application.

This bug appears to only effect the Documents folder, I tested it in every other library.

Are you using the tiles layout?

Is the library grouped? If so, could you try without grouping?

@Gryzle #7900 May fix this issue

Are you using the tiles layout?

I am, and since it was the only directory that I was using it in at the time, I misidentified the issue. The title should be "Renaming with the "Tiles" View causes Files to Crash."

Are you using the tiles layout?

I am, and since it was the only directory that I was using it in at the time, I misidentified the issue. The title should be "Renaming with the "Tiles" View causes Files to Crash."

You can rename your issue

@yaichenbaum why did you think of tiles layout? Is there a known issue with it?

@yaichenbaum why did you think of tiles layout? Is there a known issue with it?

I noticed the issue in the tiles layout myself while working on my visual tree pull request.

Merging with #7996


Add support for Travis CI

We should add support for Travis CI so all our Pull Requests, branches, and pushes are automatically built. It will help us avoid bad merges and will show the build: passing icon in the main page.
I have played with it a little bit but didn't manage to arrive to a correct .travis.yml file. There are two things I'd like to do with it:

Either install everything and execute the web server to make sure there are no Python non-runtime errors
Or have it build from the Dockerfile and run it

Of course, when we have tests, we can also run the tests there.
I managed to do the first one, however, the web server is running non-stop and therefore the build never stops. Any ideas on how to fix that?
About the second one, I will try some more, but running docker inside docker inside a VM can be complex and still has the same issues as before (web server never quits).

An example .travis.yml file for Docker can be:
language: python
sudo: required
python:
    - "2.7"
services:
    - docker
install: true
script: docker build .

However this will only test if the Dockerfile works and the app can be packaged. Any ideas how to test the code inside? Running the container won't be of much help unless we find a way to stop it. I think all these problems will be solved by fixing #42 but let's see what we can do until then.

I know just running an application without testing it will cause it to fail.  I wonder if it could be ran and then do like a wget

Correct. We can use either requests and run a python script or use wget and run a bash script.

I think you must create a test suite using flask tools for that, and then run the standard test suite. So for me #42 should be fixed first.
Once the test suite is added, you can use tox to test the application in various python environment (i.e: several python versions (2.7, 3.3, 3.4, 3.5), diferent backends (if they are added), or a combination of both.
Once tox is added you can use this .travis.yml file:
language: python
install:
  - pip install tox
script:
  - tox
env:
  - TOXENV=py27
  - TOXENV=py33
  - TOXENV=py34
  - TOXENV=py35

That will test (in paralel) tox py27,py33,py34 and py35 environments.

I have added a very early stage .travis.yml which only checks if the files follow PEP8 or not.


There was no improvement in penalized LogP

Could you explain more in detail what you executed and you found no improvement in penalized LogP?


Guessing when a feature was implemented

Hi - this whole new process of having to select a version and guess whether a feature is installed is very time wasting.
IsNumeric IS available in SQL 2014 (at least in SP3-CU4).
However when I try and check when the feature was added by using this page, I get :
The requested page is not available for SQL Server 2014. You have been redirected to the newest product version this page is available for.
Instead of taking me to the oldest page, it takes me to the newest.
Is there any easy way to navigate help to see when a feature was introduced (and can you fix this page so it is correct also).

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

ID: 3d033792-b9dc-3d69-1020-8e0c295b9d3c
Version Independent ID: b3bac4f3-fb1f-c992-7cba-2dda8459bf14
Content: ISNUMERIC (Transact-SQL) - SQL Server
Content Source: docs/t-sql/functions/isnumeric-transact-sql.md
Product: sql
Technology: t-sql
GitHub Login: @MikeRayMSFT
Microsoft Alias: mikeray

@brettshearer -- Brett, thank you for your feedback.  You are welcome to file a bug about your documentation experience:  https://aka.ms/sitefeedback/.
@MikeRayMSFT -- Mike, please look into this issue 3616.

@brettshearer

Thanks for this feedback. You're presenting two important issues.

What's the correct content for SQL Server 2014 ISNUMERIC() function.
Make the version specific information explicit, discover-able and correct.

I'm creating an item to track (1684796). We'll track this (and other issues related to version). As @WilliamAntonRohm mentioned, you can submit your experience to aka.ms/sitefeedback.


gui controller: unset _reader and _creds on forget_passwords()

I was running into this exception when I restore the app from the system tray:
    Traceback (most recent call last):
      File "/usr/lib/python2.7/site-packages/yubioath/yubicommon/qt/classes.py", line 86, in customEvent
	event.callback()
      File "/usr/lib/python2.7/site-packages/yubioath/yubicommon/qt/worker.py", line 48, in callback
	self._callback()
      File "/usr/lib/python2.7/site-packages/yubioath/gui/controller.py", line 262, in _init_dev
	dev.unlock(self._keystore.get(dev.id))
      File "/usr/lib/python2.7/site-packages/yubioath/core/standard.py", line 241, in unlock
	resp = self._send(INS_VALIDATE, data)
      File "/usr/lib/python2.7/site-packages/yubioath/core/standard.py", line 179, in _send
	resp, status = self._device.send_apdu(0, ins, p1, p2, data)
      File "/usr/lib/python2.7/site-packages/yubioath/core/ccid.py", line 48, in send_apdu
	resp, sw1, sw2 = self._conn.transmit(header + [byte2int(b) for b in data])
      File "/usr/lib/python2.7/site-packages/smartcard/CardConnectionDecorator.py", line 82, in transmit
	return self.component.transmit(bytes, protocol)
      File "/usr/lib/python2.7/site-packages/smartcard/CardConnection.py", line 146, in transmit
	data, sw1, sw2 = self.doTransmit(bytes, protocol)
      File "/usr/lib/python2.7/site-packages/smartcard/pcsc/PCSCCardConnection.py", line 205, in doTransmit
	SCardGetErrorMessage(hresult))
    CardConnectionException: Failed to transmit with protocol T1. Card was reset.

Killing off the existing 'reader' object is sufficient to tell it to reconnect to the reader properly before trying to do anything with it.

Also added a fix to release the smart card when minimizing/closing to the system tray. Otherwise the card is still tied up by the authenticator despite not being used by it at all.

Just want to say a quick thank you for your contributions! I hope we may be able to review them soon.

@dagheyman Happy to help out, this is a fun little project. My contributions are totally selfish though: they make my daily life easier because I use the Yubico Authenticator all the time. :wink:

@tycho We're very happy for the contributions! Can I get you to state that the code you submit to this project is your own, and that you agree to contribute it under the license of the project (GPLv3)?
We have some other high-priority stuff going on these coming two weeks, so please bear with us if we don't have time to look at your submissions until afterwards.

@dainnilsson Of course it's my own code. And although I personally dislike the GPL license, I agree to contribute under your project's license ("when in Rome..."). Ordinarily I just license everything I write under the 2-clause BSD license, which is GPL-compatible.

@tycho I had no doubt that it was! We generally prefer BSD-2-clause as well. This project is GPL mainly for historical reasons I believe...

With a password protected (not "remembered") YubiKey I'm getting an Exception a lot after entering the password on start. This is on Ubuntu and running this PR merged with master. Unfortunately I don't have time to investigate the issue right now.
Traceback (most recent call last):
  File "/home/dain/yubico/py/yubioath-desktop/yubioath/yubicommon/qt/classes.py", line 86, in customEvent
    event.callback()
  File "/home/dain/yubico/py/yubioath-desktop/yubioath/yubicommon/qt/worker.py", line 48, in callback
    self._callback()
  File "/home/dain/yubico/py/yubioath-desktop/yubioath/yubicommon/qt/worker.py", line 105, in callback
    def callback(e): raise e
CardConnectionException: Card not connected

@dainnilsson That's odd. I've been using this for almost two weeks on Mac OS X, Arch Linux, and Windows without any such issues.

@dainnilsson Just tried it again, still no issues even with all the merges done on upstream. I even wiped a machine, installed Ubuntu 16.04 and tried it there. Still no repro for the issue you ran into. :disappointed:

This is how I'm reproducing it:

Have a YubiKey 4 (4.3.1 in my case, I've seen it happen on a NEO as well) with a password set but not remembered, and at least one credential.
Launch the app
When prompted, enter the password.

It doesn't happen every time, but once in a while it fails with the following trace:
$ yubioath-gui
Traceback (most recent call last):
  File "/home/dain/yubico/py/yubioath-desktop/yubioath/yubicommon/qt/classes.py", line 86, in customEvent
    event.callback()
  File "/home/dain/yubico/py/yubioath-desktop/yubioath/yubicommon/qt/worker.py", line 48, in callback
    self._callback()
  File "/home/dain/yubico/py/yubioath-desktop/yubioath/yubicommon/qt/worker.py", line 105, in callback
    def callback(e): raise e
  File "/home/dain/yubico/py/yubioath-desktop/yubioath/yubicommon/qt/worker.py", line 99, in work
    result = fn()
  File "/home/dain/yubico/py/yubioath-desktop/yubioath/gui/controller.py", line 339, in _refresh_codes_locked
    False)
  File "/home/dain/yubico/py/yubioath-desktop/yubioath/core/controller.py", line 103, in read_creds
    self.unlock(std)
  File "/home/dain/yubico/py/yubioath-desktop/yubioath/gui/controller.py", line 195, in unlock
    dev.unlock(key)
  File "/home/dain/yubico/py/yubioath-desktop/yubioath/core/standard.py", line 241, in unlock
    resp = self._send(INS_VALIDATE, data)
  File "/home/dain/yubico/py/yubioath-desktop/yubioath/core/standard.py", line 179, in _send
    resp, status = self._device.send_apdu(0, ins, p1, p2, data)
  File "/home/dain/yubico/py/yubioath-desktop/yubioath/core/ccid.py", line 59, in send_apdu
    resp, sw1, sw2 = self._conn().transmit(header + [byte2int(b) for b in data])
  File "/home/dain/.virtualenvs/yubioath/lib/python3.5/site-packages/smartcard/CardConnectionDecorator.py", line 82, in transmit
    return self.component.transmit(bytes, protocol)
  File "/home/dain/.virtualenvs/yubioath/lib/python3.5/site-packages/smartcard/CardConnection.py", line 146, in transmit
    data, sw1, sw2 = self.doTransmit(bytes, protocol)
  File "/home/dain/.virtualenvs/yubioath/lib/python3.5/site-packages/smartcard/pcsc/PCSCCardConnection.py", line 198, in doTransmit
    raise CardConnectionException('Card not connected')
smartcard.Exceptions.CardConnectionException: Card not connected

I'm going to keep digging a bit, but wanted to post more info right away.

Unfortunately I didn't get much time to look at this today, but I did figure a few things out. There seems to be a race when OK-ing the password prompt. At that time the ScardDevice is GC'ed, so the connection is closed. At the same time, CardWatcher.open() is called to get a new connection. However, the check for "self._conn is None" sometimes happens before the GC in which case no new connection is opened, and the exception is thrown.

I've tried to rework some of the code so that the card is released whenever it is not in use in general in a new branch: https://github.com/Yubico/yubioath-desktop/tree/release-card-when-idle. @tycho Can you try that out and see if it resolves the same issues that this PR addresses?

@dainnilsson Your change does work as described. But I think maybe it's a little bit too fine-grained.
Right now the behaviour (with my change at least) is I think how it was originally designed to be: while the Authenticator window is visible, the Authenticator has exclusive access to the card. Things like gpg-connect-agent learn /bye will fail because the Authenticator owns it. In order to allow other apps to have access, I need to close the Authenticator or minimize it to the tray. The contract there is that when the window is not visible, the card is released. The only time it attempts to kill scdaemon is when the window becomes visible (either on initial launch or when restored from the tray).
With your change the contract is different, and might present a general usability issue. If the card gets opened by something else while the window is still visible, it fails to refresh the codes on the next attempt and then waits for the card to be released. If I want it to invoke the "kill scdaemon on show" code path then I need to fire a window "show" event somehow (either by restoring from the tray or re-opening the app). Alternatively, I need to hunt down whatever has exclusive access to the card and kick it myself (e.g. gpg-connect-agent 'scd killscd' 'scd bye' /bye) to release the card from gpg-agent.
I've noticed that some things that don't really -need- the card will cause scdaemon to spawn and open the card unnecessarily. I think Kleopatra does this sometimes. It would be frustrating if this happened while the Authenticator is still visible, because then I have to do a dance of minimizing/restoring the Authenticator from the tray.
I'm a bit torn about this. In an ideal world I wouldn't need to micromanage which apps have the card open -- which is one reason I like the change. But since it's annoying to have to hunt down scdaemon myself, the contract of "while the window is visible, the card is open" is useful.
Thoughts?

@tycho Thanks for the extra thinking around this, I'm pretty much in full agreement with your conclusions. I think keeping the connection open while the app is displaying codes might be a required change to prevent other "stuff" from stealing it. I'll take another stab at it tomorrow.

Alright, I've pushed a new commit. Care to give it a try?

@dainnilsson Just tested that one, works much better! Thanks for working on this. :smile:

Great, I've merged those changes onto master and will now close this issue.