Is sample flow "basic-chat" in fact "chat-basic"?

Under section https://learn.microsoft.com/en-us/azure/machine-learning/prompt-flow/how-to-deploy-to-code?view=azureml-api-2&tabs=kubernetes#get-the-flow-ready-for-deploy you mention
This article will use the [sample flow "basic-chat"](https://github.com/microsoft/promptflow/tree/main/examples/flows/chat/basic-chat) as an example to deploy to Azure Machine Learning managed online endpoint
This returns a 404, so is the link in fact
https://github.com/microsoft/promptflow/tree/main/examples/flows/chat/chat-basic

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

ID: 6cc7f3ee-58e3-a669-d4e1-0956d4573768
Version Independent ID: c93b2f75-36f6-6751-e69b-a4a8f6b4fb00
Content: Deploy a flow in prompt flow to online endpoint for real-time inference with CLI - Azure Machine Learning
Content Source: articles/machine-learning/prompt-flow/how-to-deploy-to-code.md
Service: machine-learning
Sub-service: prompt-flow
GitHub Login: @likebupt
Microsoft Alias: keli19

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

@likebupt
Thank you for your response.

@michaelspinks
We are going to close this thread as resolved but if there are any further questions regarding the documentation, please tag me in your reply and we will be happy to continue the conversation.
#Please-close


Unable to pair HomeKit device: Koogeek LS1

Home Assistant release with the issue:
0.91.4
Last working Home Assistant release (if known):
N/A
Operating environment (Hass.io/Docker/Windows/etc.):

System param
value

arch
x86_64

dev
false

docker
true

hassio
false

os_name
Linux

python_version
3.7.3

timezone
Europe/Paris

version
0.91.4

virtualenv
false

Component/platform:
https://www.home-assistant.io/components/homekit_controller/
Description of problem:
Hello,
I am trying to pair my Koogeek LS1 (my first HomeKit HA pairing) for an automation, but I am facing some problems :

HA recognize the device hours after I powered it
I have two Koogeek LS1 actually and when HA recognize them, all friendly names are "LS1", so ... how should I know which one is it ? (Display "Koogeek LS1" may be better, and when this name isn't unique it may be nice to append the MAC address in parentheses :wink:)
After clicking on the configuration button, it is asking me for the HomeKit code, nice ! But could you add the pattern (if there is) ? Because I don't know if I should enter XXX-XX-XXX (which is my pattern) or XXXXXXXX.
No success or fail feedback are comming to the configure popup (that also explain my disappointment of the point 2 and 3)
No log are printed !

I did :
I solved the problem of the 2 LS1 by unplugged one (old fashon way :smile:).
I reset the LS1, which was previously paired with my iPhone.
I tryed all pattern of the HomeKit code (XXX-XX-XXX and XXXXXXXX)
I tryed to just give the Wi-Fi to the LS1 but to pairing with my iPhone.
Of course, restart HA and LS1.
I looked at issues in GitHub, but no log to find any good match.
Nothing works.
I have the /config/.homekit folder created and empty.
configuration.yaml
discovery:
  enable:
    - homekit

Traceback (if applicable):
No log at all :cry:
Additional information:
Maybe linked with #23189, #18949, #23172 and #15692

Hi just wanted to ack your ticket and say I will try to help when I am at my desk. I have the same device here so pretty confident we can get it work. I am actually working on revamping the pairing experience but it won’t land until 0.94.

@Jc2k Thanks for the hard work, I appreciate the effort.
Koogeek appliances are just crap, I'm just too late to return them. So I'm looking forward to this :)

Have actually managed to fix point (2) in my local dev environment, but it's going to be in 0.94 (lots of large pending changes first).
The best workaround for (1) atm is to restart HA after your device is in pairing mode. HA will do a scan at boot and after about 30s your device should show up. I'm not sure how frequent scans are after that. I think the core team might be making improvements around discovery but I can't help with this bit atm.
For (3), it is definitely always XXX-XX-XXX for all HomeKit devices, regardless of what the label says. It's part of the crypto implementation so if a manufacturer deviates from this it wont work with an iPhone. Validation has been added for this and its trickling its way down from unmerged Github branches. But we need to update the input text to be clearer too.
There should normally be a popup! So this must be an 'unusual' error.
On this version of HA i'd expect LS1 to work so can you confirm it's version for me.
Then one LS1 at a time:

if you have /config/configuration.yaml, make sure /config/.homekit exists (you said that it did, but i wanted to make sure it was relative to your configuration.yaml in particular. I often say /config/.homekit when its just a path i made up).
reset your LS1 (press and hold button till it glows red)
pair it with your iPhone
unpair it (by tapping on its detail panel and choosing remove accessory)
restart HA (this will remove any pairings in memory and force discovery to run)
try to pair

I followed this procedure with my LS1 and it works.

Hi @Jc2k !
My versions are HA 0.91.4 and Koogeek LS1 2.3.6 (all latest updates).
I do have the config/configuration.yaml file in the same directory as the .homekit directory.
I followed your steps but after 15 mins HA restared, no configurator.ls1 appears from the notification panel. Perhaps the nmap_tracker is finding the light strip on the network !
Is there a way to manually trigger the discovery ? Like in services ? (looked, but can't find)
0.94.0 looks promising, already waiting for it !
Thanks for the quick answer and for your contributions and implication about this component, thumbs up ! 👍

I come to the point where I see HA showing me the configurator option but it won't accept the HomeKit code (I use the format XXX-XX-XXX but I did try XXXXXXXX just in case).
I can wait until 0.94, there's so much else I want to learn about HA while I wait :D

@Jc2k
Hi,
I have 3 wifi switches (Insignia) which have an independent control app, but are also HomeKit compliant and have Homekit PIN for setup, I am running ubuntu on a docker with hassio 0.91.4
I reset the switches and delete it from the native app "insignia connect"
I am adding 1 by 1 in the app because all 3 has the same entity_id name, when the setup its done in the app for the 1st switch,  I restarted hassio, in the front UI configurator link I entered the PIN code, the 1st time nothing happened jus the cursor spin for 1 minute, I closed the popup message and opened again, re-enter the code and this time I got this message:
Traceback (most recent call last):   File "/usr/local/lib/python3.7/site-packages/homeassistant/components/websocket_api/commands.py", line 122, in handle_call_service     connection.context(msg))   File "/usr/local/lib/python3.7/site-packages/homeassistant/core.py", line 1138, in async_call     self._execute_service(handler, service_call))   File "/usr/local/lib/python3.7/site-packages/homeassistant/core.py", line 1160, in _execute_service     await handler.func(service_call)   File "/usr/local/lib/python3.7/site-packages/homeassistant/components/configurator/__init__.py", line 221, in async_handle_service_call     call.data.get(ATTR_FIELDS, {}))   File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run     result = self.fn(*self.args, **self.kwargs)   File "/usr/local/lib/python3.7/site-packages/homeassistant/components/homekit_controller/connection.py", line 127, in device_config_callback     self.controller.perform_pairing(self.hkid, self.hkid, code)   File "/usr/local/lib/python3.7/site-packages/homekit/controller/controller.py", line 329, in perform_pairing     raise AlreadyPairedError('Alias "{a}" is already paired.'.format(a=alias)) homekit.exceptions.AlreadyPairedError: Alias "5A:81:84:CA:1A:13" is already paired.
I restarted hassio one more time assuming that the switch was already pair with my HA and nothing, in the HA UI the configurator window still there, if I re-enter the PIN code again I got the message:
"This accessory is already paired to another device. Please reset the accessory and try again"
but not error message on the logger.
I do have the config/configuration.yaml file but NOT the  .homekit directory
thanks for your help

@jcalderon71 Thanks for the detailed report.
The problem is the .homekit directory not existing. Pairing works but it fails to save the pairing. The second time the pairing already exists in memory so you get an AlreadyPairedError. Then when you restart it clears out the pairing from memory, but the device still thinks its paired. So you need to reset the device to try again.
The .homekit directory is supposed to be created automatically but on 0.91 it isn't. In 0.94 the directory is going away entirely as homekit_controller embraces all the modern and up to date API's for integration building. But for long and boring reasons some of that code got merged too soon. It's fixed in 0.92 but in the meantime you need to make the .homekit directory and try again. You need to follow the same procedure I posted already:

Make sure the .homekit directory exists
Reset your device so that it shows as pairable again
If the switches have now fallen off your wifi, pair with your iPhone then unpair (by tapping on its detail panel and choosing remove accessory)
Restart HA (this will remove any pairings in memory and force discovery to run)
Try to pair

It will take a while to pair. The process isn't as optimised as it could be and there is a cryptographic exchange that is quite slow on some devices. But it should go through and you should find you have a pairing.json file in your .homekit directory. If that file exists pairing has worked.
The 2nd error (The OSError) is unrelated and is probably nothing to worry about.

@Quentame am baffled by your discovery issue so i'm going to start from the basics. Can you post the changes you made to your configuration.yaml to try and enable the homekit controller?

@Jc2k Thanks for the advice, I created the .homekit directory and so far the 1st switch is working

@Jc2k
Here is part of my configuration.yml :
# Discover some devices automatically
discovery:
  enable:
    - homekit

# Tracking
device_tracker:
    # iCloud
  - platform: icloud
    username: !secret icloud_mail
    password: !secret icloud_password
    gps_accuracy_threshold: 150

    # Network scan
  - platform: nmap_tracker
    hosts: <IP_ADDRESS>/24
    home_interval: 10
    exclude:
      - <IP_ADDRESS> # NAS
      - <IP_ADDRESS> # TV
      - <IP_ADDRESS> # Hue Bridge

I'm gonna update to 0.92.0 tonight to see if there is some changes ...
python3 -m homekit.discover --log DEBUGas found in #23259 (which the description of the problem is the same), returns :

And can you see that the Koogeek is on your network? (It looks like 2 different discovery mechanisms don’t think it is)

Yes I can
It is « LED Cuisine », the « LED Canapé » is disconnected due to the names in the configurator which are both « LS1 ». So no more red light « climbing to the wall » coming from the sofa, until I can pair the kitchen light strip :D

Absent => Away
Maison => Home
Just in case ;)

I feel like i'm missing something obvious with your case @Quentame!

Discovery for homekit is turned on correctly
The light strip indicators in the UI - are they from the nmap_tracker? So if i understand correctly - they show Cuisine is inded on the network, even though configurator currently can't see them?
The devices are currently unpaired (no pairing attempts with HA since a reset, not currently paired with an iPhone, etc)
Discovery outside of home-assistant can't see the devices at all, only the Hue.
Discover inside HA can see them sometimes because you said you can see the configurator has 2 LS1's.
But sometimes it doesn't show up in HA even after hours?

It just doesn't make sense with anything i've seen with the LS1! The python3 -m homekit.discover command should always see the LS1, even if its paired. So i would normally assume there was something weird going on with bonjour on your network - but the Phillips Hue is visible which proves it works.
When you can see that Cuisine is on the network AND you can't see a configurator, can your iphone see that the LS1 is available to pair? Is the discover command still not returning anything at that time?

Hi @Jc2k !
To be clearer, I made a video 😅
https://photos.app.goo.gl/mLxcWUKrMJfdur21A
https://photos.app.goo.gl/dpXczpzhxWnkfnDz5
HA restarted around 8:05PM, at 10:53 I got the configurator (forgot to look more often)
Hope it helped.
PS: sorry for my English it’s been a long time.

Thank you for all the effort you put into this, and your english is pretty amazing actually. I wish my French was half as good (it's not even close :cry:).
Unfortunately i'm still baffled by whats going on 😭
I'm at a complete loss as to why discovery sometimes works but can take hours to do so. I would like to leave it and concentrate on pairing but i think its actually part of the problem. There is a mismatch between the homekit_python API and the HA API which means that homekit_python does its own discovery as well when you try to pair. This is not normally a problem, but in your case homekit_python's discovery never seems to work (e.g. python3 -m homekit.discover). So I think we have to get to the bottom of that...
Are you able to easily run docker containers outside of your NAS or get an interactive terminal on a docker container on your NAS? I want to try and right some discovery diagnostic scripts and match them to how you can easily run them.

I can run HA in Docker on my Mac or maybe the interactive mode is working on the NAS throw SSH (not available on the NAS Docker Web App).

OK - docker on mac should be doable. Do you use brew at all? I do most of my dev with the python3 package from brew so if you already use that this will be super easy.

I do :beer: my Mac yep

Hi @Quentame - sorry for not getting back sooner.
0.14.0 of homekit_python has just released - have submitted a PR to update to it (#23562). I don' /think/ that will help with your situation but if you want to try it then its worth a shot.
The other thing i want to rule out is if a longer discovery interval will help. You can actually specify how long the discover command should wait for with the -t option. Can you try:
python3 -m homekit.discover -t 60

I'm wondering if the default (30s) is too short for your device. That would be weird given its not for my LS1, but it seems to match with what was happening in the video. So I want to see if there is a value that consistently is long enough. Try 60, 180, 300, etc. Is there a value that is always long enough? Whats the lowest value that works 5 times in a row? If you power cycle the LS1 does it still work 5 times in a row?
HA discovery is different to homekit.discover. If i understand it correctly it runs for 30s every X minutes, so it could be that we could discover the device much quicker if there was a longer discovery window.

@Quentame any luck with the command above?

Hi @Jc2k !
Sorry for not answering, I had kinda busy weeks. Already 21 days ago :scream: !!
So, with : python3 -m homekit.discover -t 120 running inside the Docker container, I could see my light strip almost every time but HA not.
Then, I kept triggering the command to maintain a certain connection and HA discovered the strip, it tooks around 20 min.
But since I reboot HA, the strips became unavailable :

Maybe I have network or device issues, I don't know.
Thanks again.

Right now on a restart the entities are only loaded after discovery happens again. So even though it worked enough to pair and it records the IP address in the pairing it wont load the entity again until the next discovery finds the Bonjour mdns record. For whatever reason HA's zeroconfig implementation isn't managing to do this repeatedly.
It's weird that the command i gave you seems to be reliable because it uses the same underlying zeroconfig library.
There are a couple of things that will help your specific case:

0.94 will migrate to HA Config Entries. This will enable the lighstrips to be loaded on HA startup without relying on discovery to work
There is a PR to move the discovery mechanism to use aiozeroconf. It is always monitoring mdns records so should work better in this case (the current one scans for 30s, sleeps for X minutes, then repeats).

But doesn't fix the underlying issue, which feels networky but im out of ideas.

I can automate the homekit.discovery command at HA boot and see what happens, also check my router settings.
I upgrade HA uselly the day after the release, I'll let you know about the famous 0.94 benefits.

Both of the things i mentioned above are in 0.94. So if you manage to pair them now they should stay working after HA restarts.

Okey, will test.
Actually, I made automations like I said, and it was working nice (usually < 5 min to be recognize by HA). I will past my code when I can reach it.
I said "will test" because my NAS, which was hosting HA, just failed to death two days ago ... :disappointed: No data should be lost but since I didn't really complete my HA config, I haven't configure backups for it (genius).
Kinda end of next week should be fine.

Hope you got everything running again. Were you able to test yet?

Hey !
It was longer because I returned it, the shop don’t have replacement pieces.
I get it back 4 days ago, but I also change my IPS during this time to go fiber, and router change place ... so I should move the UPS, Hue bridge and Z-wave ... long story 😅
Working with it the week end !

Hi again !
So, I've boot HA (0.93.4 I suppose) on the new NAS and of course the LS1s were still unavailable.
I've updated HA to 0.95.4, still the same.
So as my LS1s were paired with the old NAS I decided to deleted the entities from HA (an alert told me to disabled homekit_controller to "take the effect" properly or something)
I reseted, linked to my iPhone, updated  LS1s, and removed them from the Home app.
I've disabled HomeKit in the discovery component (as it's enabled by default now), restart HA.
Enabled again and restart (about the alert I received when I deleted the entities).
Since all of that HA didn't recognized my LS1s, no notifications.
Did I made something wrong ?
How can I "reset" the homekit_controller to install the LS1 properly on the new NAS ?
My homekit.discovery automation (which was working before changing the NAS, paired with the old I guess) :
configuration.yaml
shell_command:
  search_homekit: python3 -m homekit.discover -t 120

automation/homekit.yaml
- alias: homekit_find_devices
  trigger:
    - platform: homeassistant
      event: start
    - platform: time_pattern
      minutes: 5
  condition:
    condition: template
    value_template: >
      {{ states('light.koogeek_ls1_205cad') == 'unknown' or states('light.koogeek_ls1_2043cf') == 'unknown' }}
  action:
    service: shell_command.search_homekit

Thanks.

Is the HA container deployed with host mode networking?

And is the zeroconf component turned on?

Host mode : ON
Zeroconf component: NO (docs)
I thought the Zeroconf was part of the core, but obviously not, just found out.
I apparently didn't read the release notes entirely, shame on me.
Will update my conf.

OK, so zeroconf is awesome, it's working perfectly now !!!
I plugged only one LS1, add the zeroconf component and restart HA, the LS1 was recognized directly after HA started.
And then I plugged the other one, and it took 10s to discover it.
I'm closing the issue.


Ds 3563 missing index metadatavalue resource type id

This is a fix for https://jira.duraspace.org/browse/DS-3563

I've added the conditional create for Oracle.
I don't think we need a DSpace 6.x version of this index because that column doesn't exist in the DSpace 6 schema (since we use UUIDs and a dspaceobject table there).

Thanks @tomdesair ! A great quick performance win.


Add delete_pair feature

Add delete_pair feature and unit tests
Fixes #38

Codecov Report
Patch coverage: 85.71% and project coverage change: +3.47 :tada:

Comparison is base (6ed3920) 63.48% compared to head (7ff54c8) 66.95%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@             Coverage Diff              @@
##             master      #79      +/-   ##
============================================
+ Coverage     63.48%   66.95%   +3.47%
- Complexity      553      584      +31
============================================
  Files           101      101
  Lines          1925     1970      +45
  Branches        204      216      +12
============================================
+ Hits           1222     1319      +97
+ Misses          642      580      -62
- Partials         61       71      +10

Impacted Files
Coverage Δ

...rc/main/java/seedu/address/logic/LogicManager.java
65.21% <ø> (ø)

...a/seedu/address/logic/commands/AddPairCommand.java
73.91% <ø> (ø)

...rc/main/java/seedu/address/model/ModelManager.java
72.04% <0.00%> (+12.26%)
:arrow_up:

.../java/seedu/address/model/pair/UniquePairList.java
85.36% <ø> (ø)

...rc/main/java/seedu/address/model/FriendlyLink.java
69.41% <33.33%> (+5.55%)
:arrow_up:

...eedu/address/logic/commands/DeletePairCommand.java
86.95% <86.95%> (ø)

...edu/address/logic/parser/AddPairCommandParser.java
88.88% <100.00%> (ø)

.../address/logic/parser/DeletePairCommandParser.java
100.00% <100.00%> (ø)

...seedu/address/logic/parser/FriendlyLinkParser.java
81.81% <100.00%> (+4.54%)
:arrow_up:

...ain/java/seedu/address/model/person/Volunteer.java
83.87% <0.00%> (-10.25%)
:arrow_down:

... and 20 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

Thanks! @gohyongjing


Question about the file 'train.tsv'

Hi @wenhuchen
Could you pls provide me with the script to generate the file 'train.tsv'? I want to add the BS results to the train.tsv to improve the performance of the DA prediction. Thanks a lot!

Hi, since it's some time ago, I couldn't find how the file is generated, sorry about that.


Module labels keep shifting entire bar - tokens not working properly?

Hi, i've just switched to polybar and i'm having trouble keeping my CPU and Memory module label text from changing width when the text changes as this causes the modules to the left of it move and it looks ugly.
Example of problem IMGUR
Config
[colors]
background = #ee2f343f
background-alt = #f72f343f
foreground = #f3f4f5
foreground-alt = #f3f4f5
foreground-dim = #676e7d
primary = #ffb52a
secondary = #e60053
alert = #ff6600

high = #268bd2
high-alt = #0c2b41

[global/wm]
margin-top = 5
margin-bottom = 5

[bar/main]
;monitor = ${env:MONITOR:HDMI-1}
bottom = true
width = 100%
height = 40
offset-x = 0
offset-y = 0

;background = ${xrdb:color9}
background = ${colors.background}
foreground = ${colors.foreground}

overline-size = 2
overline-color = #f00
underline-size = 2
underline-color = ${colors.high}

spacing = 1
padding-left = 0
padding-right = 2
module-margin-left = 0
module-margin-right = 1

font-0 = System San Francisco Display:pixelsize=11;0
font-1 = FontAwesome:pixelsize=11;0

;font-0 = Roboto:pixelsize=16;0
;font-1 = FontAwesome:pixelsize=16;-2
;font-2 = unifont:size=6:heavy:fontformat=truetype;-2
;font-3 = siji:pixelsize=10;-4

modules-left = bspwm i3 xwindow
modules-center =
modules-right = mpd s mySpotify s volume s eth s memory cpu myLoad temperature s date
;systemRoot systemHome s

tray-position = right
tray-padding = 2
;tray-transparent = true
tray-background = ${colors.background}

;wm-restack = bspwm
;wm-restack = i3

;override-redirect = true

;scroll-up = bspwm-desknext
;scroll-down = bspwm-deskprev

;scroll-up = i3wm-wsnext
;scroll-down = i3wm-wsprev

[module/xwindow]
type = internal/xwindow
label = %title:0:45:...%
label-background = ${colors.background-alt}
label-padding = 2
format-underline = ${colors.high}

[module/xkeyboard]
type = internal/xkeyboard
blacklist-0 = num lock

format-underline = ${colors.secondary}
format-prefix = " "
format-prefix-foreground = ${colors.foreground-alt}

label-layout = %layout%

label-indicator-padding = 2
label-indicator-background = ${colors.secondary}
label-indicator-underline = ${colors.secondary}

[module/bspwm]
type = internal/bspwm
ws-icon-default = x

label-focused = %index%
label-focused-background = ${colors.background-alt}
label-focused-underline= ${colors.primary}
label-focused-padding = 2

label-occupied = %index%
label-occupied-padding = 2

label-urgent = %index%
label-urgent-background = ${colors.alert}
label-urgent-padding = 2

label-empty = %index%
label-empty-foreground = ${colors.foreground-alt}
label-empty-padding = 2

[module/i3]
type = internal/i3
format = <label-state> <label-mode>
index-sort = true

label-mode = %mode%
label-mode-padding = 2
label-mode-foreground = #000
label-mode-background = ${colors.primary}

label-focused = %index%
label-focused-background = ${colors.background-alt}
label-focused-underline = ${colors.high}
label-focused-padding = 4

label-unfocused = %index%
label-unfocused-foreground = ${colors.foreground-dim}
label-unfocused-padding = 4

label-urgent = %index%
label-urgent-background = ${colors.alert}
label-urgent-padding = 4

label-visible = %index%
label-visible-foreground = ${module/bspwm.label-empty-padding}
label-visible-padding = ${module/bspwm.label-empty-padding}

[module/theme]
format-background = ${colors.background}
format-padding = 2
format-foreground = ${self.format-underline}

format-connected-background = ${module/theme.format-background}
format-unconnected-background = ${module/theme.format-background}
format-mounted-background = ${module/theme.format-background}
format-unmounted-background = ${module/theme.format-background}
format-charging-background = ${module/theme.format-background}
format-discharging-background = ${module/theme.format-background}

format-connected-padding = ${module/theme.format-padding}
format-unconnected-padding = ${module/theme.format-padding}
format-mounted-padding = ${module/theme.format-padding}
format-unmounted-padding = ${module/theme.format-padding}
format-charging-padding = ${module/theme.format-padding}
format-discharging-padding = ${module/theme.format-padding}

format-mounted-foreground = ${self.format-mounted-underline}
format-unmounted-foreground = ${self.format-unmounted-underline}

[module/mpd]
type = internal/mpd

inherit = module/theme

format-online = <toggle>   <label-song>    [ <label-time>  ]

label-song = %title% - %artist%
label-song-maxlen = 25
label-song-ellipsis = true

icon-prev = 
icon-seekb = 
icon-stop = 
icon-play = 
icon-pause = 
icon-next = 
icon-seekf = 

icon-random = 
icon-repeat = 

;toggle-on-foreground = ${colors.primary}
;toggle-off-foreground = #66

;format-online-prefix = " "
format-online-underline = #20dfdf
format-online-background = #0d5959
format-online-padding = 4

[module/myBattery]
interval=1
type = custom/script
exec = /usr/lib/i3blocks/battery
format-underline = #ffb52a

[module/mySpotify]
inherit = module/theme
interval = 1
type = custom/script
exec = sh ~/spotify.sh
click-left = i3-msg workspace number 10
label = %output:0:30:...%
format-prefix = "  "
format-underline = #20dfdf
format-foreground = ${colors.foreground}
format-background = #0d5959

[module/volume]
type = internal/volume

format-volume = <label-volume> <bar-volume>
label-volume = "%{A3:pavucontrol&:}  %%{A}"
label-volume-foreground = ${root.foreground}
click-right = pavucontrol &

format-muted-prefix = "  "
format-muted-foreground = ${colors.foreground}
label-muted = "%{A3:pavucontrol&:}MUTED%{A}"

bar-volume-width = 10
bar-volume-foreground-0 = #55aa55
bar-volume-foreground-1 = #55aa55
bar-volume-foreground-2 = #55aa55
bar-volume-foreground-3 = #55aa55
bar-volume-foreground-4 = #55aa55
bar-volume-foreground-5 = #f5a70a
bar-volume-foreground-6 = #ff5555
bar-volume-gradient = true
bar-volume-indicator = |
bar-volume-indicator-font = 2
bar-volume-fill = "%{A3:pavucontrol&:}─%{A}"
bar-volume-fill-font = 2
bar-volume-empty = ─
bar-volume-empty-font = 2
bar-volume-empty-foreground = ${colors.foreground}

[module/myVolume]
inherit = module/theme
interval = 0.5
type = custom/script
exec = /usr/lib/i3blocks/volume
scroll-up = pactl set-sink-volume 1 +1%
scroll-down = pactl set-sink-volume 1 -1%
click-left = urxvt -name float -e ncmpcpp &
click-right = pavucontrol &
format-prefix = ""
format-underline = #20dfdf

[module/myLoad]
inherit = module/theme
interval = 1
type = custom/script
exec = ~/.config/i3/scripts/load_average
click-left = urxvt -name float -e htop &
format-underline = #d33636

[module/systemRoot]
inherit = module/theme
type = internal/fs
interval = 20
mount-0 = /
label-mounted = " %free%"
label-unmounted = " ??"
format-mounted-underline = #39c639
format-unmounted-underline = #39c639

[module/systemHome]
inherit = module/theme
type = internal/fs
interval = 20
format-prefix = ""
mount-0 = /home
label-mounted = " %free%"
label-unmounted = " ??"
format-mounted-underline = #39c639
format-unmounted-underline = #39c639

[module/backlight]
type = internal/xbacklight

format = <label> <bar>
label = BL

bar-width = 10
bar-indicator = │
bar-indicator-foreground = #ff
bar-indicator-font = 2
bar-fill = ─
bar-fill-font = 2
bar-fill-foreground = #9f78e1
bar-empty = ─
bar-empty-font = 2
bar-empty-foreground = ${colors.foreground-alt}

[module/cpu]
inherit = module/theme
type = internal/cpu
interval = 2
format-padding = 2
#format-prefix = " "
format-underline = #d33636
label = %percentage:0:3%%

[module/memory]
inherit = module/theme
type = internal/memory
interval = 2
format-prefix = " "
format-underline = #999999
label = %percentage_used%

[module/wlan]
inherit = module/theme
type = internal/network
interface = wlo1
interval = 1

format-connected = <label-connected>
format-connected-underline = #268bd2
format-disconnected-underline = ${colors.alert}

;label-connected = " %local_ip% %signal% %downspeed% %upspeed%"
label-connected = " %signal% [  %downspeed% ] [  %upspeed% ]"
label-disconnected = "OFFLINE"
label-connected-foreground = ${colors.high}
label-disconnected-foreground = ${colors.alert}

ramp-signal-0 = 
ramp-signal-1 = 
ramp-signal-2 = 
ramp-signal-3 = 
ramp-signal-4 = 
ramp-signal-foreground = ${colors.foreground-alt}

[module/eth]
inherit = module/theme
type = internal/network
interface = enp7s0
interval = 3.0

format-connected-underline = #55aa55
format-connected-prefix = " "
format-connected-foreground-foreground = ${colors.foreground-alt}
label-connected = %local_ip%

format-disconnected-underline = ${self.format-connected-underline}
label-disconnected = %ifname% disconnected
label-disconnected-foreground = ${colors.foreground-alt}

[module/date]
inherit = module/theme
type = internal/date
interval = 1

time = "%a - %d.%m.%Y - %H:%M:%S"
time-alt = "%a - %d.%m.%Y - %I:%M %p"

format-prefix = " "
format-underline = ${colors.foreground}

label = %date% %time%

[module/battery]
inherit = module/theme
type = internal/battery
battery = BAT0
adapter = ADP1
full-at = 98

label-charging = " %percentage% [%time%]"
format-charging = <animation-charging> <label-charging>
format-charging-underline = #ffb52a

label-discharging = "%percentage% [%time%]"
format-discharging = <ramp-capacity> <label-discharging>
format-discharging-underline = ${self.format-charging-underline}

label-charging-foreground = ${self.format-charging-underline}
label-discharging-foreground = ${self.format-charging-underline}

format-full-prefix = " "
format-full-prefix-foreground = ${colors.foreground-alt}
format-full-underline = ${self.format-charging-underline}

ramp-capacity-0 = 
ramp-capacity-1 = 
ramp-capacity-2 = 
ramp-capacity-3 = 
ramp-capacity-4 = 
ramp-capacity-foreground = ${self.format-charging-underline}
ramp-capacity-0-foreground = ${colors.foreground}
ramp-capacity-0-background = ${colors.alert}

animation-charging-0 = 
animation-charging-1 = 
animation-charging-foreground = ${self.format-charging-underline}
animation-charging-framerate = 750

[module/temperature]
inherit = module/theme
type = internal/temperature
thermal-zone = 0
warn-temperature = 65

format = <label>
format-underline = #d33636
format-warn = <label-warn>
format-warn-underline = ${self.format-underline}

label = %temperature%
label-warn = %temperature%
format-warn-foreground = ${colors.foreground}
format-warn-background = ${colors.alert}
format-warn-padding = ${self.format-padding}

ramp-0 = 
ramp-1 = 
ramp-2 = 
ramp-foreground = ${colors.foreground-alt}

[module/powermenu]
type = custom/menu

label-open =  power
label-open-foreground = ${colors.secondary}
label-close =  cancel
label-close-foreground = ${colors.secondary}
label-separator = |
label-separator-foreground = ${colors.foreground-alt}

menu-0-0 = reboot
menu-0-0-exec = menu-open-1
menu-0-1 = power off
menu-0-1-exec = menu-open-2

menu-1-0 = cancel
menu-1-0-exec = menu-open-0
menu-1-1 = reboot
menu-1-1-exec = sudo reboot

menu-2-0 = power off
menu-2-0-exec = sudo poweroff
menu-2-1 = cancel
menu-2-1-exec = menu-open-0

; vim:ft=dosini

[module/s]
type = custom/text
content = " "

I've tried the tokens formatting (from wiki), see the [module/cpu] block, and that makes the module push right instead of left see third image, note bottom left as the padding is being ignored

Use monospace fonts, as the shifts are caused by character widths not being equal. In the future we might be able to specify module widths or something similar that might mitigate this.

Funny, I'd run into the same issue and wondered if anyone else ran into it. Looks like they have. I use a monospaced font and have this issue. Consider the following:
[module/cpu]
type = internal/cpu
interval = 2
label = %percentage%%

In this example the bars width shifts by one character when CPU percentage goes above and below 9% (adding/removing a digit).

Does label = %percentage:3%% not work?

Aha!  I'd completely missed that when reading over the formatting section of the readme! Worked like a charm.


Create Story Mode.i7x

Added X by Y

Please ensure that you have followed these steps to make a pull request for 10.1 or 9.3 (6M62):

[x] This extension is stable and production-ready

Please also check that your extension only depends on other stable extensions which are supported for the target Inform 7 release. An extension which depends on extensions which are not stable cannot be accepted.

[x] This extension has a valid version number:

For 10.1: use semantic versioning: MAJOR.MINOR.PATCH, ex: 2.1.0. This means that the major version number must be incremented when and only when you make a change that is not backwards compatible.
For 9.3: use Inform's date based version number: MAJOR/DATE, ex: 2/220517.

[x] This extension has the correct file name:

For 10.1: put the major version number at the end of the file name, ex: Extension Name-v1.i7x
For 9.3: do not include the version number, and the file name must match the extension's name as defined in the file exactly, ex:

File name: Extension Name.i7x
Extension begins: Version 1/220517 of Extension Name by Author Name begins here.

[x] This extension has documentation
[x] The correct branch (10.1 or 9.3) has been selected for this pull request

For 10.1 the version number has to be in the file name.


[BUG]: Emoji in workflow will crash Zizmor

Pre-submission checks

[X] I am not filing a feature request. These should be filed via the feature request form instead.
[X] I have looked through the open issues for a duplicate report.

Expected behavior
I expected Zizmor to handle my silly workflow that has unicode chars in it.
Actual behavior
Zizmor provided a very courteous notification and crash report.
Reproduction steps
Put an emoji in a workflow and run zizmor in that directory or on that workflow directly. For example 🚀 ...
Logs
"name" = "zizmor"
"operating_system" = "Mac OS 15.1.1 [64-bit]"
"crate_version" = "0.8.0"
"explanation" = """
Panic occurred in file '/Users/runner/.cargo/registry/src/index.crates.io-6f17d22bba15001f/annotate-snippets-0.11.4/src/renderer/display_list.rs' at line 369
"""
"cause" = '''byte index 167 is not a char boundary; it is inside '🚀' (bytes 164..168) of ...
"method" = "Panic"
"backtrace" = """
   0:        0x104060238 - backtrace::capture::Backtrace::new::hc766bbdbd5f62069
   1:        0x1040ccc60 - human_panic::report::Report::new::h69c8a5003441220f
   2:        0x1043912c4 - human_panic::setup_panic::{{closure}}::h6600a068b8f2cfed
   3:        0x104296f14 - std::panicking::rust_panic_with_hook::h7d795911432661cb
   4:        0x104296bf4 - std::panicking::begin_panic_handler::{{closure}}::h36f15310ecbde379
   5:        0x104296b64 - std::sys::backtrace::__rust_end_short_backtrace::heed121414170e0c7
   6:        0x104296b58 - _rust_begin_unwind
   7:        0x1044348d4 - core::panicking::panic_fmt::h17b1b80ec02ffd19
   8:        0x1040b802c - core::str::slice_error_fail_rt::hc9374d178fc3b440
   9:        0x104434d6c - core::str::slice_error_fail::hcaf6c10690349a36
  10:        0x10404841c - <annotate_snippets::renderer::display_list::DisplayList as core::fmt::Display>::fmt::h91834c4f0842b0e1
  11:        0x1040b1e9c - core::fmt::write::h381c0b0ce6ab972a
  12:        0x1042df12c - std::io::Write::write_fmt::hf40231a743f440e2
  13:        0x1043c1450 - <anstream::auto::AutoStream<S> as std::io::Write>::write_fmt::h3b7e71d81485b52d
  14:        0x1043bcde8 - zizmor::render::render_findings::hfd60b56526d645d9
  15:        0x1043b2844 - zizmor::run::hbc7f2116607e26c3
  16:        0x1043a7d40 - zizmor::main::he0126afb2a6287fb
  17:        0x104393104 - std::sys::backtrace::__rust_begin_short_backtrace::h4f154809c2176657
  18:        0x1043a79ac - _main
"""

Additional context
No response

Thanks for the report @peterflat!
This is a nice confirmation that our panic handler works as expected, although it's not ideal that you hit this crash 😅
Is there any chance you could share the crashing workflow? I have some testcases that use emojis and haven't seen this, so I'm wondering if it's something unusual.

For reference, I put 🚀 in a few workflows just now, and couldn't reproduce this. I suspect it needs to happen in a finding somewhere based on the crash in render_findings, although I'm not sure where we'd end up slicing within an emoji there.

Looks like this may have been a regression in annotate-snippets: https://github.com/rust-lang/annotate-snippets-rs/issues/161

#264 is a candidate fix for this. @peterflat if you could give that branch a try I'd greatly appreciate it!


The sample for setting timeout in minutes does not work

This example does not work
job: myJob
timeoutInMinutes: 10
pool:
  vmImage: 'ubuntu-16.04'
steps:
- bash: echo "Hello world"

Says job and timeoutInMinutes are not recognized

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

ID: 67504b34-d64b-02a4-2e10-ab99f3b8cfe4
Version Independent ID: 2cf63b2e-184b-7726-3b8a-d8baffd6fcce
Content: Jobs in Azure Pipelines, Azure DevOps Server, and TFS - Azure Pipelines
Content Source: docs/pipelines/process/phases.md
Product: devops
Technology: devops-cicd
GitHub Login: @vijayma
Microsoft Alias: vijayma

job is not a top level keyword. Try the following:
jobs:

job: myJob
timeoutInMinutes: 10
pool:
vmImage: 'ubuntu-16.04'
steps:

bash: echo "Hello world"

Yes I know that, I am just pointing out that the example is not correct or clear about it.

Got it, thanks. We will update the example.


SAK-33509 Disabled actions on site resources

I think the language here is a little too 'techie'. Any UX feedback? Maybe something like
"Actions will be enabled after selecting a file or folder"
Also the name of the property with the other property names in this file and not introduce camelcase and underscores.

How about "To enable the actions, select a folder or content item."
?

@jonespm , I didn't notice you had made a suggestion for the wording. Your wording and my wording are just about the same. Whichever seems closer to the current Sakai style? Maybe that is yours?

@jonespm and @ncaidin Good afternoon, Neil and I were reviewing a couple of examples during the Sakai Triage call and I feel that the active voice in Neil's is a little closer to the other examples of this:
"Check a box and use the buttons above or below to take action on a site. Click column headers to sort the table."
"Enter a user id below and click "Become user" to login as that user."


Fix: Raised error in case file name is too long on Windows

Closes #79

Note that Zarr adds many characters for when creating groups, datasets, and temporary files, so I set a MAX_FILENAME_LEN of 100 in the script.

I bumped the version. I need to figure out how to re-run the checks if another PR gets merged into main.


Wrong accepted argument inside CLI profile delete

Bug description
Currently inside the profile delete CLI command we accept 1 argument but that argument is useless due to how we handle the profile deletion now. It was probably a remaining parameter from the previous implementation.
Steps to reproduce
desmoscli tx profile create [moniker]
desmoscli tx profile delete
Expected behavior
ERROR: accepts 1 arg(s), received 0

I will fix it ASAP


Updating README.md

This updates the README to include the needed brew link --overwrite podenv command when installing for the first time.
Closes #2

If you have existing installations of CocoaPods, instead you should fully install them before installing podenv. Using brew override will result in overriding the pod bin file but leaving other parts of the previous installations behind.


Rendering external url inside xcomponent

I'm not sure if I'm just misunderstanding this, or it's an issue. Using xcomponent, I should be able to render an external url, like http:www.google.com, inside of an iFrame, inside my own component? I can't seem to get this working.
Details:
I'm working with a react project where I want to load other html pages on my site, without cross domain issues.

Hi @BrendanJones44. That's a negative -- if google.com blocks iframes, there's nothing xcomponent can do to allow it to work.
xcomponent is mostly useful when you're the owner of the page inside the iframe, and you want to easily expose your page it to 3rd party sites and allow them to pass props/callbacks/etc to you.
Hope that clarifies -- please let me know if I can elaborate! Thanks


MusicBot instantly removes majority of songs from autoplaylist

Please make sure these boxes are checked (put an 'x' inside them) before creating the issue.

[ x ] I am using Python 3.5 or higher (run python --version on the command line)
[ x ] I have followed the official guides to install the bot for my system
[ x ] I have updated my dependencies to the latest version using the appropriate update_dependencies script
[ x ] I am running version 1.9.6_1 of MusicBot

Description of issue
The MusicBot is removing ~1,400 songs from the autoplaylist, all within seconds of one another, despite the songs being both fully accessible on YouTube and present in the audio_cache.
I know from checking some of the other support threads that movement of songs to the autoplaylist_removed file is a feature by design, but I'm completely baffled as to what could be causing the majority of the files in the playlist to be moved so quickly. I mean, most of these are being dumped within the same minute of one another, if not the same second.
A dump of the autoplaylist_removed file with timestamps is viewable below (ctrl+f 20:48 and you'll surely see what I mean:)
https://pastebin.com/udT1gdBi
These other threads mention the possibility of a dropped connection causing the song removal, but I'm on a consistent wired connection and have no network troubles at all while using my computer. So I'm really at a loss, here.
Each file the bot removes is currently up and running via YouTube, and most of the files are also saved in the offline audio_cache. As such, I can't understand what's causing this issue. I'm on the latest updated build (git pulled just before writing this) and my dependencies are fully updated as well.
Does anybody have any clue what could be causing this to happen?
Steps to reproduce

Run MusicBot.
Observe changes to autoplaylist.txt and autoplaylist_removed.txt
???

Log file
musicbot.log

Nothing?

To clearify how the bot works, I’ll say this; In the pastebin you linked those errors are exceptions. By design when an exception is thrown while attempting to download the song it is removed (in most cases this will be a privated or removed video). Now this can be triggered by other issues that surface such as this or this (sand exception as you) which seem to directly correlate to connectivity issues temporary or not. I recommend trying to run the bot on another computer in the same building to see if it’s your machine or internet (even if you can visit youtube.com normally it could break with embeds). I really don’t have much more to offer you though since it’s a problem with the youtube-dl library, not musicbot (we use it to download audio).

@MattBSG Thanks for clarifying, I appreciate it. I was baffled as to whether or not the issue was on my end. I'll take a more in-depth look into the issue if it re-arises, as I've gone without issue since initially posting.

I've seen this as well.


How to get sharpdx.color in sharpdx >= 3.0

This might be a very simple problem but before version 3.0 color.cs was located under sharpdx (and sharpdx namespace). In versions >= 3.0 is it under sharpdx/Mathematics but still under namespace sharpdx. I have installed it in MSVS 2013 using nuget and here I can't seem to find Color in namespacee sharpdx.
Any help is appreciated..

aaaah.. I just needed to install sharpdx.mathematics as well :)


NullPointerException on player join

20:36:43 [INFO] PalPalycz [/***.***.***.***:16795] logged in with entity id 154 at ([world] 130.90625, 66.0, -136.3125)
20:36:43 [SEVERE] Could not pass event PLAYER_JOIN to DiscordBot
java.lang.NullPointerException
        at com.johnymuffin.discordbot.DiscordBot.execute(DiscordBot.java:138)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:338)
        at net.minecraft.server.ServerConfigurationManager.c(ServerConfigurationManager.java:118)
        at net.minecraft.server.NetLoginHandler.b(NetLoginHandler.java:97)
        at net.minecraft.server.NetLoginHandler.a(NetLoginHandler.java:33)
        at net.minecraft.server.NetworkListenThread.a(SourceFile:91)
        at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:463)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:372)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)

I sure null returns this.discord or this.discord.Discord() (because args can be null)

Hey, i was unable to recreate the issue.
Is the channel provided, and a login and quit template, and is this only occurring with Join Messages?
Can you add me on Discord: Johny Muffin#9406 as it will be easier to help in real time.

It was a once (single) error. All works fine since it was caused (and before too)


✨ [REQUEST] Addon  changedetection.io

Please add this docker image as addon to your repo
https://hub.docker.com/r/dgtlmoon/changedetection.io
"Website change detection and notification, know when JSON or websites have a change, get notified of changes in websites via Discord, Telegram, Slack, Email and 70+ more"
Official website https://changedetection.io/
Thanks

Hey, I am a fan of this tool as well and would love to see it as an addon. I've understand that images from linuxserver.io are easier to implement, so I'd think it's better to use this link:
https://docs.linuxserver.io/images/docker-changedetection.io

Hey, I am a fan of this tool as well and would love to see it as an addon. I've understand that images from linuxserver.io are easier to implement, so I'd think it's better to use this link:
https://docs.linuxserver.io/images/docker-changedetection.io

On hassos is to big interfering in os. Portainer can qickly destroy system when user is beginner.

Should be good, let me know

Working Good. Thanks 🥳

@shirou93
Did you manage to use the Visual Filter Selector?
Looks like a Playwright Chrome fetcher is needed.

I would like to ask as well regarding the visual filter selector.
Based on linuxserver:

Please note that this image does not contain the Playwright content fetcher due to a lack of support for muslc-based systems. If you require this feature please use https://github.com/linuxserver/docker-changedetection.io/issues/3#issuecomment-1250251715 or the official container

So either we need to get a Selenium addon as well developed, or maybe rebase the addon to the official docker?


What are the elements that make a successful stitching of a panoramic image possible?

Very good work, thank you for your continued support.
I have a question
What are the elements that make a successful stitching of a panoramic image possible?
Imagine a scenario where there is a building in the middle and there are about 8 surveillance cameras or UAV(unmanned aerial vehicle) around it, each taking pictures at a certain angle (which will circle around the building), what are the factors that need to be taken into account if you eventually want to achieve a successful stitching?
For example, what height do I need to place these cameras? What is the minimum number of cameras needed and how many degrees each one covers to achieve a perfect stitching?

that question is sadly out of scope of my maintainance work. I would suggest you to experiment with dummy images and in parallel check the literature. The homography model within this package expects a rotating single camera, the affine model plane images like a scan

okay, Thanks to your reply!


PR

Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Improvement (refactoring and improving code)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation update

Description

Additional context

Oops, accidentally opened it :))


IllegalArgumentException in 0.1.5

Exception in thread "main" java.lang.IllegalArgumentException: requirement failed
	at scala.Predef$.require(Predef.scala:268)
	at seed.artefact.ArtefactResolution$.resolveScalaCompiler(ArtefactResolution.scala:246)
	at seed.generation.Bloop$.$anonfun$writeJsModule$1(Bloop.scala:197)
	at seed.generation.Bloop$.$anonfun$writeJsModule$1$adapted(Bloop.scala:148)
	at scala.Option.foreach(Option.scala:274)
	at seed.generation.Bloop$.writeJsModule(Bloop.scala:148)
	at seed.generation.Bloop$.buildModule(Bloop.scala:474)
	at seed.generation.Bloop$.$anonfun$build$2(Bloop.scala:621)
	at seed.generation.Bloop$.$anonfun$build$2$adapted(Bloop.scala:607)
	at scala.collection.immutable.HashMap$HashMap1.foreach(HashMap.scala:234)
	at scala.collection.immutable.HashMap$HashTrieMap.foreach(HashMap.scala:465)
	at seed.generation.Bloop$.build(Bloop.scala:607)
	at seed.cli.Generate$.ui(Generate.scala:56)
	at seed.Cli$.main(Cli.scala:300)
	at seed.Cli.main(Cli.scala)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:564)
	at coursier.bootstrap.launcher.a.a(Unknown Source)
	at coursier.bootstrap.launcher.Launcher.main(Unknown Source)

Apparently the cause was a moduleDeps that included two modules one of which transitively depends on the other, making including that one redundant.

This can be more of an issue when there is a dependency diamond. If A depends on B and C which both depend on D, then D will be a transitive dependency twice.

Thanks for the bug report! Could you provide a minimal build file to reproduce the issue?
I tried the following, but it does not throw the exception you have seen:
[project]
scalaVersion   = "2.13.0"
scalaJsVersion = "0.6.28"

[module.a.js]
moduleDeps = ["b", "c"]
sources    = ["a/"]

[module.b.js]
moduleDeps = ["d"]
sources    = ["b/"]

[module.c.js]
moduleDeps = ["d"]
sources    = ["c/"]

[module.d.js]
sources   = ["d/"]
scalaDeps = [
  ["org.scala-js", "scalajs-dom", "0.9.7"]
]

I haven't minimized it but here is the TOML version of my build: https://gist.github.com/nafg/bcad12fab7a9e4a858e04b8a6349961b

Thanks. I managed to minimise it:
[project]
scalaVersion = "2.12.8"

[module.shared]
sources = ["shared/"]
targets = ["jvm"]

[module.a]
sources = ["a/"]
targets = ["jvm"]
moduleDeps = ["shared"]

[module.b]
sources = ["b/"]
targets = ["jvm"]
moduleDeps = ["shared"]

[module.root]
sources = ["root/"]
targets = ["jvm"]
moduleDeps = ["a", "b"]


Support skipping tests decorated by condition or parametize

Allow individual test cases to be skipped by self.skipTest.
Related to #4272.

LGTM!


Week 12 Documentation Updates

Coverage remained the same at 92.095% when pulling 2cc4127d393febfbf72826b058b2fd2cab3c2af7 on mingruiii:wk12-documentation into 5d1930956414cc802d604ff48eb71a7352772554 on CS2103AUG2017-W11-B2:GeneralDocumentation.

Coverage remained the same at 92.095% when pulling 95cc93d423c70afb745d097f7a4a18d960dd7d21 on mingruiii:wk12-documentation into 5d1930956414cc802d604ff48eb71a7352772554 on CS2103AUG2017-W11-B2:GeneralDocumentation.

Coverage remained the same at 92.095% when pulling e2a21f4917c5b79efb06506752ec8649800d4b87 on mingruiii:wk12-documentation into 5d1930956414cc802d604ff48eb71a7352772554 on CS2103AUG2017-W11-B2:GeneralDocumentation.

Coverage remained the same at 92.095% when pulling 3e165882ef7b63f08e854e7b589855daa116d57e on mingruiii:wk12-documentation into 5d1930956414cc802d604ff48eb71a7352772554 on CS2103AUG2017-W11-B2:GeneralDocumentation.

Coverage remained the same at 92.095% when pulling 5a97bc66e8e559adb4b5acb32d7b17b7173a194d on mingruiii:wk12-documentation into 5d1930956414cc802d604ff48eb71a7352772554 on CS2103AUG2017-W11-B2:GeneralDocumentation.

Coverage remained the same at 92.095% when pulling 4df4a83a05765d36862799a3900503b74f217d79 on mingruiii:wk12-documentation into ff83aef0f02d5ed82bcb7d85ec1f696b28adf566 on CS2103AUG2017-W11-B2:GeneralDocumentation.


installing package with ~= leads to installing the latest version of that package

Issue description
pipenv install "tensorflow~=2.9" leads to the installation of the latest version of tensorflow which is 2.11.x I would expect that it would not update the major version
Expected result
a version of tensorflow equal to 2.9.3 (for example)
Actual result
tensorflow 2.11.x
Steps to replicate
python 3.7
run on cli
pipenv install "tensorflow~=2.9"

I think this is expected, -- the tilde-equals operator takes the least most significant specified value, in this case .9 and makes it flexible.  If you wanted to restrict further you could do pipenv install "tensorflow~=2.9.3" which would upgrade to anything in 2.9 (making the .3 flexible).

Ok, thanks I will try this


Remove time.sleep

The script should not be relying on time.sleep for things, but currently it does because of the weirdness of Facebook. I have started work on https://github.com/weskerfoot/DeleteFB/tree/fix-waits to try and fix that.

Should be fixed by https://github.com/weskerfoot/DeleteFB/pull/4 however it still requires a call to sleep after executing the custom JS to click the "Delete" button.


MSAL implementation for AadHttpClient ?

Category

[x] Question
[ ] Typo
[ ] Additional article idea

Question
Is there an ETA, timeline, progress, info that can be shared on the MSAL implementation for AadHttpClient? @VesaJuvonen
The current ADAL implementation is giving some issues when 3rd party cookies are being blocked by the end user's browser. Do I understand it correctly that using MSAL (with or without the use of AadHttpClient) will solve this issue?
See also: #6177, #5966, #5376, #4476, #2685

Is it possible to get an update on this?

Sorry for not responding - this has shipped for a while now.  However, moving to MSAL does not make ITP / 3p cookie blocking 'great'.  In these scenarios, we will need to do a full page redirect in order to authenticate / get tokens.  This is expected.  We are working with the AAD / MSAL team on a longer term plan to not have this happen, but there is no timeline.

Thanks for the update anyhow! Better late than never! :) cheers


⚠ SceneTime has degraded performance

In 11040bc, SceneTime ($ST) experienced degraded performance:

HTTP code: 200
Response time: 1284 ms

Resolved: SceneTime performance has improved in f418991 after 7 minutes.


Cannot determine endianess

Hi,
I have the same problem as described here: https://github.com/avast/retdec/issues/722
Problem
Trying to decompile a sample with every possible architecture (-a) and endianess (-e) combination explicitly set always returns
Error: Cannot determine endiannesss.

Analyzing the same sample using the docker build yields:
No matching plugins found for 'Microsoft Linker 10.0'
No matching plugins found for 'Microsoft'
No matching plugins found for 'MSVC'
Running phase: Initialization ( 0.19s )
Running phase: Providers initialization ( 0.20s )
Error: Missing basic info about input file -> there can be no decompilation

Is there a restriction or requirement on the PE files that I am violating?

Looks like the file is damaged, invalid, or something like that. It is hard to help without the file itself. If you can share it, feel free to upload it here. If you cannot, it would be interesting to at least see what some other analysis tools think about it. What format is it? Can e.g. objdump -x handle it?


Support Agent-Agnostic Tasks for Enhanced Flexibility and Reuse

Is your feature request related to a problem? Please describe.
Currently, tasks are tied to specific agents, limiting flexibility in assigning tasks across different agents. If tasks were agent-agnostic, multiple agents could perform the same task, enabling better reuse and flexibility within the system. This would allow users to assign a task to any agent capable of performing it, without the need for agent-specific customization.
Describe the solution you'd like
Introduce the concept of agent-agnostic tasks, where a task can be defined independently of the agent performing it. Any agent with the required skills or capabilities should be able to pick up and complete the task. This would make task definitions more reusable and enable a more dynamic assignment of tasks to agents.
Describe alternatives you've considered
An alternative would be to continue defining tasks specific to each agent, but this approach reduces flexibility and increases redundancy in task definitions.

Some Resources:

Multi-agentCoordination issues

CrewAI Processes

AutoGen

Swarm


Avoid submitting txs when simulation fails, except for one special case

Closes: #1479
Related: #712
Description
This PR changes the way the relayer reacts to tx simulation failures in the following way:

if the tx simulation failed because the chain sent an account sequence mismatch error, the relayer will fallback on the default gas setting and attempt to submit the tx anyway. This is because we have seen cases in production where this happened, for reasons which are yet to be clarified.
if the tx simulation failed for any other reason, we abort the submission of the tx and bubble the error up, and let the worker deal with the error. At the moment, workers do not handle these errors in any specific manner, and will just attempt to send the tx again for a fixed number of times. In that case, the overall behavior of the relayer does not change, except that we do not waste fees unnecessarily anymore because we won't attempt to actually submit the tx using the default gas.

For contributor use:

[x] Added a changelog entry, using unclog.
[x] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
[ ] If applicable: Unit tests written, added test to CI.
[ ] Updated relevant documentation (docs/) and code comments.
[ ] Re-reviewed Files changed in the Github PR explorer.

Feedback so far: love the PR title! 💯
Quick idea we can iterate on:

if the tx simulation failed because the chain sent an account sequence mismatch error, the relayer will fallback on the default gas setting and attempt to submit the tx anyway. This is because we have seen cases in production where this happened, for reasons which are yet to be clarified.

Since we noticed this special case in production, I wonder if it makes sense to quickly parse some production logs: (1) grep for sequence mismatch error at the simulation step, and (2) derive a rough success vs. failure ratio for the submitted transactions. If many tx-es succeed, the solution here is sound! Otherwise we can think about revising the approach. Would that make sense?

A few thoughts:

we have to continue for errors that include ..verification failed: ...client state height < proof height :

2021-11-04T13:28:00.277866Z ERROR ThreadId(26) [ibc-0] send_tx: failed to estimate gas, falling back on default gas, error: GRPC call return error status status: InvalidArgument, message: "failed to execute message; message index: 0: acknowledge packet verification failed: packet acknowledgement verification failed: failed packet acknowledgement verification for client (07-tendermint-0): client state height < proof height ({1 323} < {1 400}): invalid height: invalid request", details: [], metadata: MetadataMap { headers: {"content-type": "application/grpc"} }

for account sequence mismatch we need to re-cache but with the understanding that there is still no guarantee that we get it right as other Tx-es may be in the mempool. The only cases I know where this happens are:

the wallet is being used outside of this hermes instance
a previous Tx has passed CheckTx but dropped (e.g. by the mempool) before DeliverTx has a chance to run. One example is  when we send max gas > block max gas
Continuing with sending the Tx will not solve this I think.

for all other errors is probably good to just drop the Tx with error like you propose

Regarding the first case, it's been a lot on my mind as we see this very often in the packet worker. It happens when we have to split N msgs in a number of Tx-es with n (aka max_msg_num) msgs each, with n < N and when the first message is UpdateClient.
We may have the worker determine n from the config and prepend the UpdateClient before every batch of n-1 packets. But by the time it gets serialized and into the runtime, it might have to split again due to max_tx_size. The other possibility that we discussed before is to not serialize messages at all and let the runtime ensure that each batch in the Tx starts with UpdateClient.
I think that if we could fix this then we can drop the Tx on all simulation errors.
So in summary I thinking we should consider:

fix first issue
recache account sequence on SDK 32 error
drop Tx for ALL simulation errors


meta table: 'dlng' and 'slng' data is text

According to https://developer.apple.com/fonts/TrueType-Reference-Manual/RM06/Chap6meta.html
'dlng' design languages and 'slng' supported languages are comma-separated or comma-space-separated "augmented" BCP 47 language tags.
<hexdata tag="dlng">
  4c61746e 2c477265 6b2c4379 726c2c41
  726d6e2c 48656272 2c417261 622c5468
  6169
</hexdata>

can be displayed as
<text tag="dlng">
  Latn,Grek,Cyrl,Armn,Hebr,Arab,Thai
</text>

Thanks Denis! It looks good to me.
@brawer?


WHY??

I've been using a good mod for a long time, but now this mod requires support for this library and I don't understand how to install it at all!!! (I use manual installation and not through the program)... please, the creator, please either make sure that all files are scattered in folders where they should be stored or add installation instructions in the description on the site

because of this library, I can't have the next day in the game... the game freezes literally on the first day, although the bell and sagazin become active


CI: build fails - PyInstaller issue?

...
   ModuleNotFoundError: No module named 'PyInstaller.__main__'; 'PyInstaller' is not a package
  [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

Encountered error while generating package metadata.

See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.
Error: Process completed with exit code 1.

see for example https://github.com/mandiant/capa/actions/runs/2090953281

https://github.com/pyinstaller/pyinstaller/issues/6704

i guess we don't get dependabot notices because pyinstaller is not listed in our deps. perhaps we should add pyinstaller to [dev] dependencies?

we can at least install pyinstaller successfully now: https://github.com/mandiant/capa/runs/5857908266?check_suite_focus=true

thank you!


Return empty string when there are no arguments

Fixes https://github.com/chalk/chalk/pull/182#issuecomment-317263716.

Could just fix this by doing if (argsLen === 0) return '';, and skip a bunch of branching below.


Feature request: Bring back play next video with arrow keys in preview

I remember a very nice feature of an older version running on an older macOS where hitting arrow keys would change the currently playing video. I understand that this feature is gone because of security in newer macOS versions.
However, I would love to see this feature when the screensaver is started via preview from
System Settings -> Screensaver -> Preview.
If that is not possible a dedicated button from within the screensaver settings to start such a fullscreen preview with working arrow keys would be my next suggestion.
My kids would love that feature, they once enjoyed to hit the next button from time to time to see next video. This mode should be possible, if the computer is unlocked.
Thanks in advance,
Craftey

If I hit in preview mode two times space, the preview stops and starts again with a new video. This is currently the closest I can get to simulate the desired behavior of "play next video on key stroke".

Hey @craftey
So this is an issue with restrictions in modern macOS.
Basically, 3rd party screen savers aren't allowed nowadays to intercept keyboard keys. If you use a very old macOS (10.14 or earlier), pressing the right arrow will skip video.I cannot fix that sadly.
But yep, there's a workaround ! If you use Aerial Companion (the app), there's a "fullscreen mode" where you can use arrow key again to your heart content again !
This is this button :

This will launch Aerial in a fullscreen mode. Again, right arrow key to skip.
To get the latest beta of Aerial Companion, download here : https://github.com/AerialScreensaver/AerialCompanion/releases/download/v1.5.0b3/Aerial.Companion.app.zip

@glouel Thank you very much for this wonderful reply. My kids will love Aerial Companion Fullscreen.


Does this action keep the server open until the end of the workflow?

Hello and thanks for sharing,
the doc doesn't state it, so can I please know if this action keep the server open until the end of the workflow?

The webserver should stay open until the job ends, however there is no guarantee.
Having a kill option would be good yes. I guess somebody can implement this :)

Ok.
What do you mean no guarantee ? I think if there is no guarantee you should explain why, and also state it in the README file.

Well guarantee means that this action cannot guarantee the server is always running, it won’t monitor the server.

I think this can happen with any http service, it is not specific to this module.
This looks to be a cool add on btw: https://github.com/marketplace/actions/wait-on

I used the default config and when I do curl the base endpoint, I got this:
Run curl -vvvv http://localhost:3000

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0*   Trying <IP_ADDRESS>:3000...
* Connected to localhost (<IP_ADDRESS>) port 3000 (#0)
> GET / HTTP/1.1
> Host: localhost:3000
> User-Agent: curl/7.7[4](https://github.com/pass-culture/pass-culture-app-native/runs/8142008173?check_suite_focus=true#step:13:4).0
> Accept: */*
>
* Mark bundle as not supporting multiuse

< HTTP/1.1 200 OK
< Content-Type: text/html
< Date: Thu, 01 Sep 2022 18:16:26 GMT
< Connection: keep-alive
< Keep-Alive: timeout=5
< Transfer-Encoding: chunked
<
{ [59[4](https://github.com/pass-culture/pass-culture-app-native/runs/8142008173?check_suite_focus=true#step:13:5) bytes data]

100   [5](https://github.com/pass-culture/pass-culture-app-native/runs/8142008173?check_suite_focus=true#step:13:6)13    0   513    0     0  42750      0 --:--:-- --:--:-- --:--:-- 4[6](https://github.com/pass-culture/pass-culture-app-native/runs/8142008173?check_suite_focus=true#step:13:7)636
* Connection #0 to host localhost left intact
_redirects
asset-manifest.json
images
index.html
iosSplashscreens
manifest.json
robots.txt
service-worker.js
service-worker.js.LICENSE.txt
service-worker.js.map
static

It seems it can't load default index.html as entry point. do you know how I can do that ?

Well maybe you should also request index.html
Using curl http://localhost:3000/index.html

Thisis what we did, that was the only way.


Junction being added to GDS twice for positive mask with cheesing.

What are the issues this pull addresses (issue numbers / links)?
Junction being added to GDS twice for positive mask with cheesing.
Did you add tests to cover your changes (yes/no)?
no
Did you update the documentation accordingly (yes/no)?
The source code explains choice of arguments.
Did you read the CONTRIBUTING document (yes/no)?
yes
Summary
In the top_main_# for positive mask has the cell for junction in it as a reference.
The cell top_main_# has paths and polys.  The other cells should not be part of the boolean subtraction.  For example the junction.
Details and comments
When getting the polygons, don't use the cells for junction.

This will close issue #723 when the pull request is merged.


Error when I try to add plugins.FloatImage with st_folium

Hi :wave:
... and thanks for providing this great addition to streamlit.
I was wondering: are folium.plugins generally supported? I wanted to add a FloatImage to the canvas (using st_folium) but I get an error:
.../lib/python3.11/site-packages/streamlit_folium/__init__.py", line 242, in generate_leaflet_string
    leaflet = m._template.module.script(m)
              ^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'TemplateModule' object has no attribute 'script'

I see there's some special magic for the DualMap plugins - so maybe the FloatImage requires some special treatment, too?
I'm using python 3.11 and streamlit-folium 0.7
Cheers,
C

This is a pretty old issue, but I bet it's fixed with our newest release, as we've improved how we load the folium dependencies. Closing, but if you're still interested and it's not fixed, happy to re-open


Mac Instructions

The instructions for a mac user are incomplete for many of the pages. Many of the steps assume the user has completed certain steps that aren't mentioned.

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

ID: 6719f08e-3bd7-dc1a-71df-f2ef9fbca9d8
Version Independent ID: 7096fdb3-612e-9e00-bd0b-8ea4886a09ce
Content: Add a model to a Razor Pages app in ASP.NET Core
Content Source: aspnetcore/tutorials/razor-pages/model.md
Product: aspnet-core
Technology: aspnetcore-tutorials
GitHub Login: @Rick-Anderson
Microsoft Alias: riande

Can you be specific? What steps are missing?

Page: Get Started
-The user should be given the choice to use the GUI to make the project and not just the terminal.
-Unless the user has f1, f2, etc as the standard function keys, cmd-opt-f5 won't work so it would be command-option-enter to run without the debugger.
Page: Add a model

It's assumed that we've added the Data folder without being told
I think it should be explained why we're using Models in the RazorPagesMovieContext instead of Data in the namespace

Page: Add a new field
-Mac users can delete the database by right-clicking the database and then running  "dotnet ef database update"

@angie-garciapaz  thanks for the specific information. We'll get this addressed in the next update.

I'm also getting errors on a Mac.
An unhandled exception occurred while processing the request.
PlatformNotSupportedException: LocalDB is not supported on this platform.
System.Data.SqlClient.SNI.LocalDB.GetLocalDBConnectionString(string localDbInstance)

Would it be possible to have someone complete the steps using a Mac - should be clear pretty quickly just how much of the instructions are incomplete.

@jlee-vi
The tutorial is complete for Mac users. The errors I found was more to do with the verbiage of the tutorial. The only thing that didn't work for me as it should've was the search. The search will only work if it is capitalized like the book. For example, "searchString=ghost" will not work but "searchString=Ghost" will work and the results are the same if I use the search box.
@dbrtly
What part of the tutorial are you getting this error?

Per the search article:
Note: The Contains method is run on the database, not in the C# code. The case sensitivity on the query depends on the database and the collation. On SQL Server, Contains maps to SQL LIKE, which is case insensitive. In SQLite, with the default collation, it's case sensitive.

Per the search article:
Note: The Contains method is run on the database, not in the C# code. The case sensitivity on the query depends on the database and the collation. On SQL Server, Contains maps to SQL LIKE, which is case insensitive. In SQLite, with the default collation, it's case sensitive.

Thanks this helped solve my confusion from the document.
The screenshot from the browser using the form used lowercase "ghost" and I could not figure out why that did not work for me on a mac.


Version v0.4.7: Long TXs support, NVM storage, Settings submenu, Blind Signing, fixes.

Description
Features:

Use the maximum SRAM capacity to store transactions for each Ledger model.
Implement blind signing functionality.
Create a "Settings" step in the menu.

Create data types for the NVM storage.
Add the "Show Full Message" option.
Add the "Allow Blind Signing" option.
Move the "Version" info to the "About" submenu.

Version bump to 0.4.7.

Fixes:

Fix a problem with signing short messages.
Add a string length check defining well-known transaction types.
CI: Explicitly specify the ledger-app-builder version.
Get rid of the "app-boilerplate" legacy.
Add status word for fail to display gas fee (0xB009).
Remove unnecessary transaction hash calculations.
Refactoring transaction displaying. Do not calculate gas fee when displaying a message.

Changes include

[x]  Bugfix (non-breaking change that solves an issue)
[x]  New feature (non-breaking change that adds functionality)
[ ]  Breaking change (change that is not backwards-compatible and/or changes current functionality)
[x]  Tests
[ ]  Documentation
[ ]  Other (for changes that might not fit in any category)

Codecov Report
Base: 63.83% // Head: 63.97% // Increases project coverage by +0.13% :tada:

Coverage data is based on head (b5df333) compared to base (8fcc195).
Patch coverage: 68.75% of modified lines in pull request are covered.

Additional details and impacted files
@@             Coverage Diff             @@
##           develop       #6      +/-   ##
===========================================
+ Coverage    63.83%   63.97%   +0.13%
===========================================
  Files           13       13
  Lines          777      780       +3
===========================================
+ Hits           496      499       +3
  Misses         281      281

Flag
Coverage Δ

unittests
63.97% <68.75%> (+0.13%)
:arrow_up:

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

Impacted Files
Coverage Δ

src/apdu/parser.c
100.00% <ø> (ø)

src/transaction/deserialize.c
48.58% <64.28%> (+0.29%)
:arrow_up:

src/transaction/utils.c
100.00% <100.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


feat: Add Chain Data tables

from #5
Add block_headers and chain_mmr_nodes tables with their needed insertion and getter methods to interact with the Store.

A few more comments about the overall syncing procedure (some applicable to this PR, but many probably for future PRs):
First, as already mentioned in one of the comments above, the idea is that we make requests to the sync_state endpoint until response.chain_tip == response.block_header.block_num. In the requests, we send:

block_num from state_sync table.
A list of all unique account IDs from the accounts table.
A list of tags from the state_sync table.
A list of nullifier prefixes for all un-consumed input notes.

For every response we get, we do the following:

Update block_num in the state_sync table to response.block_header.block_num.
Check if the returned account hashes match latest account hashes in the database. If they don't match, something got corrupted and we won't be able to execute transactions against accounts where there is a state mismatch.
For any consumed nullifiers update corresponding input notes. This also implies that transactions in which these notes were created have also been committed and thus we need to update their state and states of involved accounts accordingly.
Update input notes table based on the returned notes. Here, we'll assume that we already have most of the note's details in the table (these notes could be imported previously via a side channel or created locally). But these notes would be missing anchor info (e.g., location in the chain and inclusion path). So, basically, for every returned note:
a. We look up a note record by note hash in input_notes table. If no note is found, we just move to the next returned note.
b. If a note is found, we update it's anchor info. This will make this note consumable because now we build the inclusion proof for the note (which is required to execute a transaction).
If the response brought back any relevant notes (e.g., the ones that were not ignored in the previous step), we also need to update our chain data tables. Specifically, we need to insert a new block header (from response.block_header) and also update chain_mmr_nodes table. The simplest way to do this is to maintain in memory representation of PartialMmr struct which contains info from these tables.

FYI, I'm handling some of Bobbin's comments on the syncing procedure on #68 (except the account hash checks and maintaining the MMR which are more related to this PR)

Pushed some changes that use the newer changes of the crypto crate (applying the delta now returns the new nodes and we can use that to insert to the table). Further changes to the sync state procedure are left for future PRs (some of them in #68).


Download links dead?

All of the links at https://github.com/facebookmicrosites/Open-Mapping-At-Facebook/wiki/Available-Countries are now redirecting to another page. Are these files gone for good? Or is it just a mistake?

I believe this is a mistake.
@Bonkles : I think this might be a result of migrating to https://rapideditor.org/ .

@tsmock @Bonkles Is there any update on this?

I aim to get this done today by EOD. Thanks for the ping! Will update when I think it should be back up.

This should be fixed now! @iboates please let me know if you are unable to download the files. I was able to download several successfully just now.

P.S. @iboates The Demo is my fave TF2 guy.

@Bonkles i wasnt the man i was id kiss ya

(also links seem to work now)


[PORT] Create WebSocketClient.ConnectAsyncEx method to accept CancellationToken optionally

Port this change from botbuilder-dotnet/master branch:
https://github.com/microsoft/botbuilder-dotnet/pull/3399

Fixes #3155

Changes
Added ConnectAsyncEx to take CancellationToken optionally.

Specifics
WebSocketClient.ConnectAsync should be cancel-able, as the operation could take a long time.
Here, ConnectAsync does not take in a CancellationToken
https://github.com/microsoft/botbuilder-dotnet/blob/86d67b989c331fadc8f54efccf081586fc643c9a/libraries/Microsoft.Bot.Streaming/Transport/WebSocket/WebSocketClient.cs#L90
Added new method that accepts a CancellationToken that ConnectAsync will call.

Note: WebSocketClient implements IStreamingTransportClient, which requires:
https://github.com/microsoft/botbuilder-dotnet/blob/86d67b989c331fadc8f54efccf081586fc643c9a/libraries/Microsoft.Bot.Streaming/Transport/IStreamingTransportClient.cs#L40
The interface is already public. Let me know if we want to take this PR a step further, and derive from IStreamingTransportClient that has a Connect method that takes a cancellation token, and have WebSocketClient implement that derived interface. For now the edit is only on the class and not the interface
Changed projects

Microsoft.Bot.Connector
Microsoft.Bot.Streaming
Microsoft.Bot.Streaming.Tests

n/a


Otherworld Treese don't drop proper logs when vein mined.

Describe the bug
When under the third eye effect, you can't "vein mine" the occult tree and get the correct wood. You get oak wood instead.
Have used Tree Harvester mod, Ars Nouveau Fel tree spell, and Ultimine.
To Reproduce
Steps to reproduce the behavior:

Grow Otherworld tree
Attempt to vein mine
receive normal oak logs

Expected behavior
I would expect to receive the other world logs.
System (please complete the following information):

Occultism Version: occultism-1.20.1-1.139.1.jar
OS: Windows
Minecraft Version: 1.20.1
Modpack Link and Version, or list of mods:

Additional context
Have eaten the demon dream fruit and the otherworld essence when trying to vein mine. Have not tried using the goggles yet.

I am not sure if I can fix that on my end. The drop is determined based on the "playerDestroy" function of the block, and there it checks if the player has third eye effect to determine which block it represents (Oak as "hidden" state, or Otherworld wood if "visible")
Presumably the veinminer mods do not simulate this event on each destroyed block to save performance, which leads to Occultism not knowing that third eye is happening.
However, considering how old this mechanic is, it may now be possible to do the same with a loottable, which probably works with veinminers. I will look into that, if not we'll have to work with the veinminer mod makers to find a common solution

I did some tests here, Forge - 47.3.0 and occultism-1.20.1-1.139.1.jar
Works fine

ftb-ultimine-forge-2001.1.5.jar
veinmining-forge-1.5.0+1.20.1.jar (standalone enchantment mod)

Don't work and put the wrong sapling

treeharvester-1.20.1-9.1.jar

Strange reactions

ars_nouveau-1.20.1-4.12.4-all.jar
The Fell glyph really don't work, but the break glyph (also using AOE) work only with an occultism pickaxe in main hand

The goggles don't matter, only visual

That result is not too bad to be honest. Ars working with break is interesting because it means the tool is forwarded to the block, but not the player apparently maybe I don't know. But the pickaxe can harvest the logs even without the effect.

I am closing this for now as it largely behaves as intended. If a change to loot tables is necessary/recommended please reopen and we can check


Improved TYPST_FONT_PATHS documentation

Originally posted by @luochen1990 in https://github.com/typst/typst/issues/649#issuecomment-1507317901:

Hoping for a more detailed description about this ENV variable,  e.g.   WHAT is the expected seperator when there is more than one path;   Which directory level should this PATH point to,  'xxx/share/fonts/opentype/SourceCodePro-Black.otf'  or  'xxx/share/fonts/opentype'  or 'xxx/share/fonts' ?

I found I had the same question when trying to resolve font issues. The online documentation only mentions this env var in a brief CHANGELOG note.

Seems like comma is used as separator
clap::Arg::env
clap::Arg::value_delimiter

It may also be a good idea to place the details of this in the output of typst fonts --help, as that's somewhere people might look should their fonts not work as expected.
I've found that running TYPST_FONT_PATHS='~/.fonts/FontBase' typst fonts allowed me to see fonts activated in FontBase, though it's worth notn that fc-list ':' family showed me all such fonts without needing to set possible environment variables.

Seems like comma is used as separator

Doesn't it suppose value_delimiter to be used and set ?  Currently it is not, so not sure it is split
https://github.com/typst/typst/blob/897447e8593f00971de3a966d3fb23cf2b1e0f92/crates/typst-cli/src/args.rs#L116-L123
Maybe the env var should allow to provide several paths to search


"[0:] unsupported os platform, architecture: arm64" while using version 1.5.0

im using whisper.net with MAUI to build an android app.
ive updated my Whisper.net.Runtime and Whisper.net to 1.5.0 a few days ago everything was okay but now i get
[0:] unsupported os platform, architecture: arm64 while using 1.5.0.
reverting back to 1.4.7 works fine.
ive tested everything else it has to be Whisper.net 1.5.0 thats causing this.
any ideas what could be the issue?
Thanks in advance i appreciate any help.

Hello @Leonm99 ,
That code shouldn't be reached for Android, and loading should be automatically bypassed: https://github.com/sandrohanea/whisper.net/blob/7e3ee68a596ff4591651ae14327e9c2760e555b8/Whisper.net/LibraryLoader/NativeLibraryLoader.cs#L28C1-L28C42
I suspect you are using net6.0-android which was removed as targeted framework here: https://github.com/sandrohanea/whisper.net/pull/132/files#diff-1e6efca4d3eb5af047dd5e0628fad7df48807ca5628f85866b69ec30c5a083d8
This means that if you are using net6-android => you will reference the general available net6 build (not Android build) and this is why that #if Android is not reached.
The reason for this upgrade was that dotnet maui for net6.0 is out of support: https://dotnet.microsoft.com/en-us/platform/support/policy/maui
If that's the reason, please, upgrade to net8-android, and confirm/infirm if Whisper.net 1.5.0 is working as expected.

Thank you for your help, I appreciate it.
I'm using .net8 actually, but I will try and test it again in the coming days.
I'll report back when I've done so.
Have a great evening!

I'm having the same problem with .net8.0, it works fine after downgrading the version to 1.4.7, but now I'm having trouble loading the whisper model, I don't know where to put the model in maui and how to load the model in the code, newbie asking for help

Hello ! I know it's been a few month already but I encounter the same issue for a demo application I'm currently developing.
This application is made on Unity and is supposed to be built on Hololens 2 which has ARM64 architecture.
However I get the same error : PlatformNotSupportedException: Unsupported OS platform, architecture: Arm64 and I don't know if it's related to the same pattern as before, however I don't encounter this problem when trying directly on the Unity Editor. The only major change I make is changing the whisper.dll according to the target device as they don't have the same OS architecture and Unity doesn't manage projects with multiple dlls with the same name (causing errors & preventing builds).

Is there any workaround to fix this issue ?

@Leonm99 and @Kayrrhan
Unity 6 only supports C# 11 (somewhat) and the following .Net:
.NET Standard 2.1: .NET Standard 2.1, as published by the .NET Foundation.
.NET Framework: .NET Framework 4.8, as published by Microsoft, plus additional APIs in .NET Standard 2.1.
I'm currently trying to back it down to .NET 4.8. It's pretty frustrating. I've made a dent so far but WhisperProcessor.cs is going to be a challenge. Maybe https://github.com/SimonCropp/Polyfill or https://github.com/Sergio0694/PolySharp could be useful. Fingers crossed. This looks like a great project, the Unity community could really use it.


go generate failed due to hls.js hash mishash

Which version are you using?
v1.8.5
Which operating system are you using?

[ ] Linux amd64 standard
[ ] Linux amd64 Docker
[ ] Linux arm64 standard
[ ] Linux arm64 Docker
[ ] Linux arm7 standard
[ ] Linux arm7 Docker
[ ] Linux arm6 standard
[ ] Linux arm6 Docker
[x] Windows amd64 standard
[ ] Windows amd64 Docker (WSL backend)
[ ] macOS amd64 standard
[ ] macOS amd64 Docker
[ ] Other (please describe)

Describe the issue
I follow the instruction (Compile from source -> Standard) in README, when I use go generate I got hash mishash error.
my current workaround: Remove the new line in internal/servers/hls/hlsjsdownloader/HASH file
Describe how to replicate the issue

git clone https://github.com/bluenviron/mediamtx
cd mediamtx
git checkout v1.8.5
go generate ./...

2024/08/05 14:43:44 downloading hls.js version v1.5.13...
2024/08/05 14:43:46 ERR: hash mismatch
exit status 1
internal\servers\hls\http_server.go:23: running "go": exit status 1

Did you attach the server logs?

no
Did you attach a network dump?

no

this was fixed by #3622 and the fix is present since v1.9.0.


Support user assignment for flakes

If a Flake requires a root access, instead it will do something like:
Error: short-name "elektrobit/amd64_sdk" did not resolve to an alias and no unqualified-search registries are defined in "/etc/containers/registries.conf"

Calling this with sudo .... solves the issue. Probably we have to do the following:

If a Flake requires sudo, it should call it on its own with sudo. This could be set as an option in a corresponding Flake YAML config.
If sudo failed (user denied), then gracefully tell the user "sorry, you need to have sudo access, ask your admin"
I would not pre-check if sudo rights are there, but just go and call stuff with sudo and just "crash", gracefully wrapping the output, if no access.

No this has nothing to do with oci-pilot at all. This is a pure podman setup "issue" on the host where podman is used.
In root mode /etc/containers/registries.conf is used. In rootless mode this information is read from the users home directory HOME/.config/containers/registries.conf
See: https://github.com/containers/podman/blob/main/docs/tutorials/rootless_tutorial.md
Also with rootless the container registry is specific to the user. Each user can manage its own set of containers in its own registry with its own podman configuration files.
your sudo suggestion is not a solution to this behavior and oci-pilot has no responsibility to check this.
It can be very confusing if oci-pilot messes with this.
The only really good solution to this is to connect the flake config to a user like this:
container: foo
target_app_path: path/to/program/in/container
host_app_path: path/to/program/on/host
run_as: USERNAME

and then oci-pilot has to run podman under the given user identity. If the user is root we can then use sudo podman if not we need to call su user podman ...
All this is not a bug but an enhancement

Mmm... I fail to put all that together, TBH. If you use no sudo, it is trying to read /etc/containers/registries.conf, finds nothing configured and then crash. Why it then works with sudo if the /etc/containers/registries.conf is still empty and none of these in user home or /root home?

ok I can explain that. If oci-pilot launches it calls podman run ... podman now reads the local registry and tries to find the container configured in the flake. If you run as sudo the registry for the root user is looked up.
If you run as normal user and that user doesn't have the container loaded in its registry, the podman run behavior is to lookup the container in some other registry. The list of registries to lookup is as explained above. If there is no registries.conf at the end of all the lookup, podman comes up with that error message you saw
It would be imho better if podman just says "no such container for user XYZ"
Maybe we should add that check in oci-pilot prior calling podman run
So your finding is imho two fold:

oci-pilot should be able to assign the call to a user
oci-pilot should have a check if local registry for the calling user has the container loaded

It would probably solve a lot of your confusion

That will be a big problem if a system-wide flake will require its copy for each user.

I think this is a misunderstanding. A system wide flake in our case comes from a package. A package is installed as root. Thus the loading of the oci image happens as root. Therefore the container exists in the registry for root. Therefore this container can be started as root or via sudo.
My suggestion is that we run any podman command as:
sudo -u username

and username is a config setting in the flake config and defaults to root
I'm not suggesting that we copy the container image into each user registry. That would be a major pain and duplicating a million bytes and also producing forks all over the place.

I think it should still be possible to allow user specific containers and oci-pilot registrations for it.
Via /etc/sudoers a system can control which users are eligible to run system wide flakes.

From my perspective that is a flexible solution for everyone
I will create a pull request for this and then we can play a bit for a different scenarios


Unable to adjust individual volume settings in Windows Volume Mixer

OS: Windows 8.1
Issue Descriptions: The option for GPMDP in the Windows Volume Mixer is incorrectly displayed and doesn't have a slider to adjust the volume. Screenshot.
Steps to Reproduce: Simply open the Windows Volume Mixer from the system tray and scroll to the GPMDP option.

Known issue, see #848.

Oops, my bad, didn't see that.


Experiment: set startblock to 42 rather than 0

This results in:
1/ {"level":50,"time":1638657909379,"extra":{"message":"TypeError: blocks is not iterable","stack":"TypeError: blocks is not iterable\n which makes sense -> need to change init config for the DTL
2/ l2geth_1           | DEBUG[12-04|22:44:11.852] Problem committing transaction      msg="Block created with not 0 transactions at 43" which may or may not be related

Codecov Report

Merging #212 (fb95311) into develop (9f076ed) will increase coverage by 17.79%.
The diff coverage is n/a.

:exclamation: Current head fb95311 differs from pull request most recent head 7fc3427. Consider uploading reports for the commit 7fc3427 to get more accurate results

@@             Coverage Diff              @@
##           develop     #212       +/-   ##
============================================
+ Coverage    71.73%   89.52%   +17.79%
============================================
  Files           68       33       -35
  Lines         2257     1079     -1178
  Branches       335      150      -185
============================================
- Hits          1619      966      -653
+ Misses         638      113      -525

Flag
Coverage Δ

batch-submitter
?

contracts
89.52% <ø> (ø)

core-utils
?

data-transport-layer
?

message-relayer
?

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

Impacted Files
Coverage Δ

packages/core-utils/src/common/misc.ts

...ices/l1-ingestion/handlers/transaction-enqueued.ts

...ckages/data-transport-layer/src/utils/constants.ts

packages/data-transport-layer/src/utils/index.ts

...ackages/batch-submitter/src/utils/tx-submission.ts

packages/batch-submitter/src/index.ts

packages/batch-submitter/src/utils/index.ts

...ices/l1-ingestion/handlers/state-batch-appended.ts

...kages/batch-submitter/src/batch-submitter/index.ts

.../batch-submitter/src/transaction-chain-contract.ts

... and 25 more

Continue to review full report at Codecov.

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


chore: change instance type demo

This is a new PR to change the instance type

A preview environment was automatically created via Qovery.
Click on the link below to follow its deployment and use it.
:point_right: [PR] blueprint - chore: change instance type demo - 2023-01-05T09:06:47Z
Another comment will be posted when deployments are terminated