ph2energy fails with "negative samples"

Original report by Charles James Titus (Bitbucket: cjtitus, GitHub: cjtitus).

~/nist_code/mass/mass/calibration/energy_calibration.py in ph2energy(self, pulse_ht, der)
    141         """
    142         if self._model_is_stale:
--> 143             self._update_converters()
    144         result = self._ph2e(pulse_ht, der=der)
    145

~/nist_code/mass/mass/calibration/energy_calibration.py in _update_converters(self)
    423         for i in range(len(ph)-1):
    424             npts = 2+int(0.5+(ph[i+1]/ph[i]-1)*100)
--> 425             ph_pts.append(np.linspace(ph[i], ph[i+1], npts)[1:])
    426         ph_pts.append(np.linspace(ph[-1], 2*ph[-1], 101)[1:])
    427         ph_pts = np.hstack(ph_pts)

<__array_function__ internals> in linspace(*args, **kwargs)

~/.conda/envs/ucal/lib/python3.7/site-packages/numpy/core/function_base.py in linspace(start, stop, num, endpoint, retstep, dtype, axis)
    120     num = operator.index(num)
    121     if num < 0:
--> 122         raise ValueError("Number of samples, %s, must be non-negative." % num)
    123     div = (num - 1) if endpoint else num
    124

ValueError: Number of samples, -269, must be non-negative.

Somehow, for some channels, the simple npts calculation in update_converters fails, and yields a negative npts.
This results in an uncaught exception. I will try to investigate exactly why this happens.

Original comment by Charles James Titus (Bitbucket: cjtitus, GitHub: cjtitus).

mass.EnergyCalibration with 6 entries
        _ph: [-8842.82888657 15241.96150853 19054.56935384 19216.77239457
 23806.29451809 29847.9585508 ]
        _energies: [704.8  524.9  851.47 929.68 277.   392.4 ]
        _names: ['FeLAlphaquick_linequick_line', 'OKAlphaquick_linequick_line', 'NiLAlphaquick_linequick_line', 'CuLAlphaquick_linequick_line', 'CKAlphaquick_linequick_line', 'NKAlphaquick_linequick_line']
        _curvetype: 3
        _use_approximation: False

This seems to be because the _ph in the energy calibration has a negative point. I suggest that calibrations that result in negative points be marked as bad.

Original comment by Galen O'Neil (Bitbucket: oneilg, GitHub: oneilg).

makes sense

Original comment by Joseph Fowler (Bitbucket: joe_fowler, ).

Removing milestone: v0.7 (automated comment)

Original comment by Charles James Titus (Bitbucket: cjtitus, GitHub: cjtitus).

I will also note that the _ph are in order of increasing energy, but the _energies are not. This sort of cross-over should never happen, and should result in a calibration being immediately marked bad. This channel indeed is missing the high energy peaks

as compared to a normal channel

The “dynamic time warping” algorithm seems to have just totally ignored this and spit out some garbage points.

Original comment by Joseph Fowler (Bitbucket: joe_fowler, ).

Calibration should fail when PH,E not monotonic
Fixes #216.


Developing on Windows

I've yet to try (I'm away for business), but I have been reading up extensively. I program on VSCode, in Windows (and tend to fumble my way through development), so setting up for connectedhomeip/esp-matter is going to be... interesting... given that it is quite new.
I see instructions here which will set up WSL 2 and link it to VSCode. I should be able to download the specific commit required and use that for the initial build in VSCode.
I have ESP-IDF working great in VSCode already, and have developed several programs.
I see in the CMakeLists.txt file, that it would want the esp-matter SDK in the same location as the connectedhomeip Matter SDK?
set(ESP_MATTER_PATH $ENV{ESP_MATTER_PATH})
set(MATTER_SDK_PATH ${ESP_MATTER_PATH}/connectedhomeip/connectedhomeip)

So does that mean I'll have esp-matter and connectedhomeip (and esp-idf) in regular folders on Windows, and the connectedhomeip also in a docker container with all the binaries connected to VSCode?
Anyone get esp-matter working in Windows with VSCode and have any instructions?

@mriksman What we have tried is setting development environment in WSL (ubuntu) and using the VSCode and mounting that with some VSCode extensions. Let me compile the doc for this.

@mriksman Please check here: https://docs.espressif.com/projects/esp-matter/en/main/esp32/developing.html#development-setup
Added the docs for setting up esp-matter on Windows Host using WSL

Hi @shubhamdp. Thanks for that. Unfortunately, I didn't find it very clear.
In the end, I did the following

Install WSL
Install Docker Desktop
Install VSCode
Install ESP-IDF Extension
Use ESP-IDF Extension to create a New Project
Edit the Dockerfile to include stuff for Matter

However, things seem a little odd. See #142. The Build button on the Activity bar doesn't work, because the Matter pip requirements aren't loaded. Every time I open a Terminal manually, I need to run source ./activate.sh.
So I am close, but not quite there. Are you able to work out what I am missing? I used the devcontainer.json that is created when you use the ESP-IDF to create 'New Project', and then I modified the Dockerfile to add in the stuff for Matter.
 I am seeing errors; I think related to the network adapter.
[1672322082.520893][18955:18957] CHIP:DIS: Warning: Attempt to mDNS broadcast failed on eth0:  ../../src/inet/UDPEndPointImplSockets.cpp:411: OS Error 0x02000063: Cannot assign requested address
[1672322082.520932][18955:18957] CHIP:DIS: mDNS broadcast had only partial success: 1 successes and 1 failures.
[1672322090.524295][18955:18957] CHIP:DIS: Warning: Attempt to mDNS broadcast failed on eth0:  ../../src/inet/UDPEndPointImplSockets.cpp:411: OS Error 0x02000063: Cannot assign requested address
[1672322090.524335][18955:18957] CHIP:DIS: mDNS broadcast had only partial success: 1 successes and 1 failures.
[1672322105.529298][18955:18957] CHIP:CTL: Discovery timed out

Perhaps I need some of these (taken from connectedhomeip devcontainer.json file)
    "runArgs": [
        "--cap-add=SYS_PTRACE",
        "--security-opt",
        "seccomp=unconfined",
        "--network=host",
        "--privileged",
        "-v",
        "/dev/bus/usb:/dev/bus/usb:ro",
        "--device-cgroup-rule=a 189:* rmw",
        "--add-host=host.docker.internal:host-gateway"
    ],

Have you configure the ESP-IDF extension to use esp-matter ? Set the idf.espMatterPath in your settings.json to the ESP-matter path. It might be the reason the build button doesn't work. Also check the ESP-IDF: Doctor command to see your configuration is correct.

I did not try chip-tool from docker image. If you have a network interface to that docker image then it should work. (Considering no-ble scenarios). For BLE, yes, you will need to expose the Windows BLE adapter to running docker image. (No idea how to do that)

It is possible to expose Windows BLE, I did it and I was able to run chip-tool and perform a device commission through BLE using WSL.
You need to have a Bluetooth adapter that can be attached to WSL using usbipd, you can check it using usbipd list (I think that the bast majority of the bluetooth adapters are capable). Then, and this is the hardest part, you will need to recompile the WSL2 kernel in order to enable your required Bluetooth drivers. For more info, check this discussion at usbipd repo: How to make a USB bluetooth adapter work with WSL

Further to this; does chip-tool work in VSCode/Dev Container? I am seeing errors; I think related to the network adapter.
[1672322082.520893][18955:18957] CHIP:DIS: Warning: Attempt to mDNS broadcast failed on eth0:  ../../src/inet/UDPEndPointImplSockets.cpp:411: OS Error 0x02000063: Cannot assign requested address
[1672322082.520932][18955:18957] CHIP:DIS: mDNS broadcast had only partial success: 1 successes and 1 failures.
[1672322090.524295][18955:18957] CHIP:DIS: Warning: Attempt to mDNS broadcast failed on eth0:  ../../src/inet/UDPEndPointImplSockets.cpp:411: OS Error 0x02000063: Cannot assign requested address
[1672322090.524335][18955:18957] CHIP:DIS: mDNS broadcast had only partial success: 1 successes and 1 failures.
[1672322105.529298][18955:18957] CHIP:CTL: Discovery timed out

@mriksman In order to make chip-tool work in WSL on the Network part (Bluetooth and commissioning part explained in comment above) you will need to setup an Hyper-V virtual switch for WSL and enable IPv6. Despite what people think, is possible right now, but it is undocumented and not officially released.

Some time ago I made the following guide in order to help Windows devs to prepare their environment to for Matter and I was thinking to commit it to the Matter repo, but I never found the right place to store it. Maybe this issue is a right place:
Windows Subsystem for Linux environment setup
As right now, Windows is not supported by the tools and examples from matter, this guide will allow you to use these on Windows through WSL.
Tested on:

Ubuntu 20.04 LTS

Flashing examples through USB

Install udev rules that include your device in /etc/udev/rules.d to allow non-sudo users to access the device.

To make effective the rules from step 1, start udev service:
 $ sudo service udev restart

Alternatively, you can start udev service every time the distribution is booted by setting on /etc/wsl.conf the following content:
 [boot]
 command = "service udev restart"

If you had another command set before, append it with &&.

Usbipd will be used to share the device connected through USB with WSL. By executing the following line on powershell it will be installed:
 PS > winget install usbipd

Install requisites on the target distribution
 $ sudo apt install linux-tools-virtual hwdata
 $ sudo update-alternatives --install /usr/local/bin/usbip usbip `ls /usr/lib/linux-tools/*/usbip | tail -n1` 20

Connect the desired device to the target distribution:
 PS > usbipd wsl --distribution <NAME> --busid <BUSID>

If you don't know the distribution name you can check the names of the distributions installed using this command:
 PS > wsl --list

Get the list of connected USBs:
 PS > usbipd wsl list

Chip-tool requirements in WSL
Commissioning into a network/wifi network
Commissioning into a network or WiFi network on WSL2 with default configurations results in problems, but can they can be solve by using the bridege network mode in WSL2:
Disclaimer: WSL bridge mode has not been released yet as an official feature by Microsoft.

Enable Hyper-V features on by executing as administrator the following line in powershell:
 PS > Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All

Restart the host machine.

Shutdown wsl if running:
 PS > wsl --shutdown

Create an extern virtual switch on the Virtual Switch Manager that is on the Hyper-V Manager.
Alternatively, run this command on powershell:
 PS > New-VMSwitch -name <VIRTUAL SWITCH NAME>  -NetAdapterName <ADAPTER NAME (i.e., Ethernet, Wi-Fi)> -AllowManagementOS $true

You can get a list of the available adapter names and other info running Get-NetAdapter.

At your user folder (C:\Users\yourUser, can be accessed running %USERPROFILE%), create a txt file named .wslconfig if it does not exists yet and set the following parameters:
 [wsl2]
 networkingMode = bridged
 vmSwitch = <VIRTUAL SWITCH NAME>
 ipv6=true

Commissioning over Bluetooth LE
Commissioning over Bluetooth LE its possible in WSL2 if the Bluetooth adapter from the host machine is available on the USB list on usbipd.

Follow these instructions to build a custom kernel for wsl2, but in menuconfig you will need to enable the following features and those on which they depend (They can change depending on the bluetooth adapter):
Networking support -> Bluetooth subsystem support (CONFIG_BT)
Networking support -> Bluetooth subsystem support -> Bluetooth device drivers -> Bluetooth HCI USB driver (CONFIG_BT_HCIBTUSB)

Install bluez:
 $ sudo apt-get install bluez

Enable Bluetooth:
 $ echo 'export BLUETOOTH_ENABLED=1' | sudo tee /etc/default/bluetooth

Start dbus and Bluetooth services:
 $ sudo service dbus start
 $ sudo service bluetooth start

If you want to start the services every time the distribution is booted, you can setting on /etc/wsl.conf the following content:
 [boot]
 command = "service dbus start && service bluetooth start"

If you had another command set before, append it with &&

Attach the Bluetooth device to the WSL2 distribution using usbipd.
You can test that the Bluetooth adapter has been correctly connected and is usable by running bluetoothctl and its commands (for example scan on, which will print the scanned devices by the bluetooth adapter).

Now you have WSL ready to develop Matter devices and test them with chip-tool

Have you configure the ESP-IDF extension to use esp-matter ? Set the idf.espMatterPath in your settings.json to the ESP-matter path. It might be the reason the build button doesn't work. Also check the ESP-IDF: Doctor command to see your configuration is correct.

If I click the Build button, I get the following
-- Found Git: /usr/bin/git (found version "2.25.1")
CMake Error at /opt/esp/esp-matter/device_hal/device/m5stack/esp_matter_device.cmake:3 (message):
  please set esp32 as the IDF_TARGET using 'idf.py set-target esp32'
Call Stack (most recent call first):
  CMakeLists.txt:32 (include)

If I open a Terminal, and type echo $IDF_TARGET, I get esp32c3. The environment variable set by running idf.py set-target esp32c3 does not seem to be set when running via the Build command.
The Build command is trying to use /opt/esp/esp-matter/device_hal/device/m5stack/. Why? In Terminal, I have run  export ESP_MATTER_DEVICE_PATH=/opt/esp/esp-matter/device_hal/device/esp32c3_12f_devkit to set a custom device HAL. Again, this environment variable does not appear to be set when the Build button is pressed in the Activity bar.
Where should I be setting IDF_TARGET and ESP_MATTER_DEVICE_PATH? In settings.json? Or perhaps devcontainer.json?

@Diegorro98 Wow. Thanks! I actually had already followed your Bluetooth instructions from a post on usbipd-win.
Regarding the Hyper-V virtual switch. My laptop is connected to my Wi-Fi AP/router. Internet works fine.  Network connections show the following

Is that normal? How can I have my PC still access the Internet over the Wi-Fi, and have my ESP32 Matter Accessory connect to the Wi-Fi AP/router and be seen/discoverable by CHIP-Tool running in a Docker Container?

@Diegorro98 I can get bluetoothctl list working in a wsl prompt, but not in a Docker Container (which has my ESP Matter SDK) accessed from VSCode.

It just hangs when I run bluetoothctl list. Anything you can think of off the top of your head?

@Diegorro98 Ugh. Bluetooth works fine in WSL

But not having any luck from within the Docker Container (Dockerfile is the one created by ESP-IDF New Project button in VSCode)

That bluetooth service won't start.
The ESP-IDF Dockerfile is
ARG ESP_IDF_TAG
FROM espressif/idf:$ESP_IDF_TAG

ARG DEBIAN_FRONTEND=nointeractive

RUN apt-get update \
  && apt install -y -q \
  cmake \
  git \
  hwdata \
  libglib2.0-0 \
  libnuma1 \
  libpixman-1-0 \
  linux-tools-virtual \
  && rm -rf /var/lib/apt/lists/*

RUN update-alternatives --install /usr/local/bin/usbip usbip `ls /usr/lib/linux-tools/*/usbip | tail -n1` 20

<snip>

#############################
# Add bluetooth support

RUN apt-get update \
  && apt install -y -q \
  bluez

#############################
# Back to orginal Dockerfile

RUN echo "source /opt/esp/idf/export.sh > /dev/null 2>&1" >> ~/.bashrc
ENTRYPOINT [ "/opt/esp/entrypoint.sh" ]
CMD ["/bin/bash"]

Maybe some prerequisite is missing in the Dockerfile?

@Diegorro98 Wow. Thanks! I actually had already followed your Bluetooth instructions from a post on usbipd-win.
Regarding the Hyper-V virtual switch. My laptop is connected to my Wi-Fi AP/router. Internet works fine.  Network connections show the following

Is that normal? How can I have my PC still access the Internet over the Wi-Fi, and have my ESP32 Matter Accessory connect to the Wi-Fi AP/router and be seen/discoverable by CHIP-Tool running in a Docker Container?

@mriksman Creating a virtual switch over a WiFi adapter can lead to some problems, I will always recommend to do this kind of things using ethernet cable.
I remember that last summer, I got this problem also and I realized that the problem was because I was using fixed IP settings in my WiFi adapter. Just change it to DHCP and the problem might disappear.
If you really need to have a fixed IP, I just have done some testing to solve it. You can try to solve it by verifying that the IP settings at the third adapter from your image (vEtherner (hyperv)) are the ones you need, because maybe something is missing (in my case the gateway and the primary DNS server was missing).
About Bluetooth and docker concern, I have never used docker and bluetooth because WSL and Bluetooth worked great for me; Maybe you can ask about this problem at the usbipd bluetooth discussion.

Have you configure the ESP-IDF extension to use esp-matter ? Set the idf.espMatterPath in your settings.json to the ESP-matter path. It might be the reason the build button doesn't work. Also check the ESP-IDF: Doctor command to see your configuration is correct.

If I click the Build button, I get the following
-- Found Git: /usr/bin/git (found version "2.25.1")
CMake Error at /opt/esp/esp-matter/device_hal/device/m5stack/esp_matter_device.cmake:3 (message):
  please set esp32 as the IDF_TARGET using 'idf.py set-target esp32'
Call Stack (most recent call first):
  CMakeLists.txt:32 (include)

If I open a Terminal, and type echo $IDF_TARGET, I get esp32c3. The environment variable set by running idf.py set-target esp32c3 does not seem to be set when running via the Build command.
The Build command is trying to use /opt/esp/esp-matter/device_hal/device/m5stack/. Why? In Terminal, I have run  export ESP_MATTER_DEVICE_PATH=/opt/esp/esp-matter/device_hal/device/esp32c3_12f_devkit to set a custom device HAL. Again, this environment variable does not appear to be set when the Build button is pressed in the Activity bar.
Where should I be setting IDF_TARGET and ESP_MATTER_DEVICE_PATH? In settings.json? Or perhaps devcontainer.json?

You could set IDF_TARGET and ESP_MATTER_DEVICE_PATH in either. The extension has a command and shows the current IDF_TARGET in the activity bar (blue bar at the bottom).
Apologies for the ESP_MATTER_DEVICE_PATH, we set it to m5stack but should allow the user to configure it. Will post a bug fix asap

@brianignacio5 The Activity bar is set to esp32c3. So perhaps the Build button failure is because of the ESP_MATTER_DEVICE_PATH set to m5stack which expects esp32.

@Diegorro98 Nice! I actually found an article referencing issues with bridging Wi-Fi adapters, with one comment saying DHCP often doesn't work behind it. I switched to Ethernet, used WSL (with Bluetooth attached using usbipd attach) and was able to commission a device using CHIP-Tool!
But.
I was only able to issue toggle commands for about 30 seconds. Then it stopped working.
>>> onoff toggle 0x7283 0x1
[1673375655.204076][310:312] CHIP:TOO: Sending command to node 0x7283
[1673375655.204158][310:312] CHIP:TOO: Sending cluster (0x00000006) command (0x00000002) on endpoint 1
[1673375655.204211][310:312] CHIP:DMG: ICR moving to [AddingComm]
[1673375655.204218][310:312] CHIP:DMG: ICR moving to [AddedComma]
[1673375655.204270][310:312] CHIP:EM: <<< [E:571i M:7337177] (S) Msg TX to 0:FFFFFFFB00000000 [0000] --- Type 0001:08 (IM:InvokeCommandRequest)
[1673375655.204300][310:312] CHIP:IN: (S) Sending msg 7337177 on secure session with LSID: 29256
[1673375655.204353][310:312] CHIP:DMG: ICR moving to [CommandSen]
[1673375655.338115][310:312] CHIP:DL: HandlePlatformSpecificBLEEvent 16387
[1673375655.437287][310:311] CHIP:DL: Indication received, conn = 0x7f7e8004a190
[1673375655.437363][310:312] CHIP:DL: HandlePlatformSpecificBLEEvent 16389
[1673375655.437452][310:312] CHIP:EM: >>> [E:571i M:248873470] (S) Msg RX from 0:FFFFFFFB00000000 [0000] --- Type 0001:09 (IM:InvokeCommandResponse)
[1673375655.437473][310:312] CHIP:EM: Found matching exchange: 571i, Delegate: 0x7f7e8004bb18
[1673375655.437480][310:312] CHIP:DMG: ICR moving to [ResponseRe]
[1673375655.437502][310:312] CHIP:DMG: InvokeResponseMessage =
[1673375655.437513][310:312] CHIP:DMG: {
[1673375655.437516][310:312] CHIP:DMG:  suppressResponse = false,
[1673375655.437518][310:312] CHIP:DMG:  InvokeResponseIBs =
[1673375655.437523][310:312] CHIP:DMG:  [
[1673375655.437541][310:312] CHIP:DMG:          InvokeResponseIB =
[1673375655.437562][310:312] CHIP:DMG:          {
[1673375655.437574][310:312] CHIP:DMG:                  CommandStatusIB =
[1673375655.437577][310:312] CHIP:DMG:                  {
[1673375655.437581][310:312] CHIP:DMG:                          CommandPathIB =
[1673375655.437584][310:312] CHIP:DMG:                          {
[1673375655.437597][310:312] CHIP:DMG:                                  EndpointId = 0x1,
[1673375655.437632][310:312] CHIP:DMG:                                  ClusterId = 0x6,
[1673375655.437636][310:312] CHIP:DMG:                                  CommandId = 0x2,
[1673375655.437637][310:312] CHIP:DMG:                          },
[1673375655.437641][310:312] CHIP:DMG:
[1673375655.437642][310:312] CHIP:DMG:                          StatusIB =
[1673375655.437645][310:312] CHIP:DMG:                          {
[1673375655.437657][310:312] CHIP:DMG:                                  status = 0x00 (SUCCESS),
[1673375655.437659][310:312] CHIP:DMG:                          },
[1673375655.437661][310:312] CHIP:DMG:
[1673375655.437672][310:312] CHIP:DMG:                  },
[1673375655.437675][310:312] CHIP:DMG:
[1673375655.437679][310:312] CHIP:DMG:          },
[1673375655.437682][310:312] CHIP:DMG:
[1673375655.437692][310:312] CHIP:DMG:  ],
[1673375655.437696][310:312] CHIP:DMG:
[1673375655.437707][310:312] CHIP:DMG:  InteractionModelRevision = 1
[1673375655.437717][310:312] CHIP:DMG: },
[1673375655.437730][310:312] CHIP:DMG: Received Command Response Status for Endpoint=1 Cluster=0x0000_0006 Command=0x0000_0002 Status=0x0
[1673375655.437747][310:312] CHIP:DMG: ICR moving to [AwaitingDe]
[1673375658.019696][310:312] CHIP:DL: HandlePlatformSpecificBLEEvent 16387
[1673375672.939197][310:312] CHIP:BLE: ack recv timeout, closing ep 0x562a7a269ac0
[1673375672.939236][310:312] CHIP:IN: Clearing BLE pending packets.
[1673375672.940240][310:312] CHIP:DL: HandlePlatformSpecificBLEEvent 16388
[1673375672.940289][310:312] CHIP:BLE: Auto-closing end point's BLE connection.
[1673375672.940293][310:312] CHIP:DL: Closing BLE GATT connection (con 0x7f7e8004a190)
[1673375672.940368][310:311] CHIP:DL: BluezDisconnect peer=CB:B3:8A:AF:8D:FE
[1673375675.570930][310:311] CHIP:DL: Bluez disconnected
[1673375675.570960][310:311] CHIP:DL: Bluez notify CHIPoBluez connection disconnected
>>> onoff toggle 0x7283 0x1
[1673375680.116757][310:312] CHIP:TOO: Sending command to node 0x7283
[1673375680.116825][310:312] CHIP:TOO: Sending cluster (0x00000006) command (0x00000002) on endpoint 1
[1673375680.116859][310:312] CHIP:DMG: ICR moving to [AddingComm]
[1673375680.116879][310:312] CHIP:DMG: ICR moving to [AddedComma]
[1673375680.116920][310:312] CHIP:EM: <<< [E:572i M:7337178] (S) Msg TX to 0:FFFFFFFB00000000 [0000] --- Type 0001:08 (IM:InvokeCommandRequest)
[1673375680.116955][310:312] CHIP:IN: (S) Sending msg 7337178 on secure session with LSID: 29256
[1673375680.116985][310:312] CHIP:IN: Message appended to BLE send queue
[1673375680.116990][310:312] CHIP:DMG: ICR moving to [CommandSen]
[1673375697.120804][310:312] CHIP:DMG: Time out! failed to receive invoke command response from Exchange: 572i
[1673375697.120869][310:312] CHIP:TOO: Error: ../../src/app/CommandSender.cpp:248: CHIP Error 0x00000032: Timeout
[1673375697.120874][310:312] CHIP:DMG: ICR moving to [AwaitingDe]
[1673375697.121181][310:310] CHIP:TOO: Run command failure: ../../src/app/CommandSender.cpp:248: CHIP Error 0x00000032: Timeout

I can see it in a mDNS browser

And I can see it in the Home app; ready to be added. So, it is connected to Wi-Fi, and it isn't running Bluetooth commissioning.
I (7490) chip[DL]: IP_EVENT_GOT_IP6
I (7490) chip[DL]: IPv6 addr available. Ready on WIFI_STA_DEF interface: fdfa:fec9:d8ab:45fd:86f7:03ff:fe3a:7c2c
I (7500) app_main: Interface IP Address changed
I (7500) chip[DIS]: Updating services using commissioning mode 1
I (7510) chip[DIS]: CHIP minimal mDNS started advertising.
I (7530) chip[DIS]: Advertise commission parameter vendorID=65521 productID=32768 discriminator=3840/15 cm=1
I (7530) chip[DIS]: CHIP minimal mDNS configured as 'Commissionable node device'; instance name: 1D783DEF192F2D54.
I (7560) chip[DIS]: mDNS service published: _matterc._udp

In CHIP-Tool, I should be able to run this command... right? >>> pairing onnetwork 0x11 20202021. But it just times out.
[1673378226.130578][374:376] CHIP:DIS: Timeout waiting for mDNS resolution.
[1673378315.125571][374:374] CHIP:TOO: Run command failure: ../../examples/chip-tool/commands/common/CHIPCommand.cpp:512: CHIP Error 0x00000032: Timeout

So - is there some issue with my WSL and mDNS....?


5.0.0-4 and Nuxt Bridge: The requested module '@nuxt/kit' does not provide an export named 'createResolver'

Version
@nuxtjs/tailwindcss: 5.0.0-4
nuxt-edge: 2.16.0-27358576.777a4b7f
@nuxt/bridge: npm<EMAIL_ADDRESS>Reproduction Link
https://github.com/madebyfabian/nuxt-bridge-tailwind-module-5-issue-reprod
Steps to reproduce

Start Dev Server on the Reprod Repo

What is Expected?
Dev Server Working, Builds Working, No Errors
What is actually happening?
Hello there! I have an issue with the newest version of this package (5). After installing the package like in the Setup tutorial, I get this message when I try to build or start the dev server.
Dev Server erroring:
 FATAL  The requested module '@nuxt/kit' does not provide an export named 'createResolver'

import { defineNuxtModule, resolvePath, resolveAlias, createResolver, requireModule, addTemplate, isNuxt2, installModule, addServerMiddleware } from '@nuxt/kit';
  ^^^^^^^^^^^^^^
  SyntaxError: The requested module '@nuxt/kit' does not provide an export named 'createResolver'
  at ModuleJob._instantiate (node:internal/modules/esm/module_job:124:21)
  at async ModuleJob.run (node:internal/modules/esm/module_job:181:5)
  at async Promise.all (index 0)
  at async ESMLoader.import (node:internal/modules/esm/loader:281:24)
  at async importModuleDynamicallyWrapper (node:internal/vm/module:437:15)
  at async ModuleContainer.addModule (node_modules/@nuxt/core-edge/dist/core.js:174:20)
  at async ModuleContainer.ready (node_modules/@nuxt/core-edge/dist/core.js:45:7)
  at async Nuxt._init (node_modules/@nuxt/core-edge/dist/core.js:346:5)

please check the Reprod Repo on how the project is set up. It's basically a starter nuxt project with Bridge installed.

(or npx nuxi upgrade --force if not explicitly installed kit)

@madebyfabian Would you please use nuxi upgrade command instead? (and if not directly using kit, can remove it from depenednecies)

@pi0
I tried it, but the command doesn't even run:
ERROR  Cannot find module 'nuxt3/package.json'
Require stack:
- /Users/fabian/Desktop/code/_test-nuxt-bridge-minimal

  Require stack:
  - /Users/fabian/Desktop/code/_test-nuxt-bridge-minimal
  at Function.Module._resolveFilename (node:internal/modules/cjs/loader:933:15)
  at Function.resolve (node:internal/modules/cjs/helpers:108:19)
  at resolveModule (node_modules/nuxi/dist/chunks/cjs.mjs:19:29)
  at getNuxtVersion (node_modules/nuxi/dist/chunks/upgrade.mjs:18:19)
  at Object.invoke (node_modules/nuxi/dist/chunks/upgrade.mjs:40:34)
  at _main (node_modules/nuxi/dist/chunks/index.mjs:384:17)

Then remove and create lock file (yarn.lock or package.lock.json) should have same effect (will check other issue)

@pi0 If I do this, I get an issue which I get often in nuxt3 and nuxt bridge. From my experience it has something to do if you misconfigure something in nuxt.config. But that's not the case since there is not much configured here. There is an issue open for this in nuxt/framework#3147.
First of all, the build time is now about 1 minute instead of a few ms, and is stuck at one specific point this minute.

and after this, the build just keeps refreshing itsself infinitely:

So any of the upgrades that happen while removing package-lock.json and re-installing it breaks nuxt. I've added the failing new package-lock.json to a branch of my reprod repo: https://github.com/madebyfabian/nuxt-bridge-tailwind-module-5-issue-reprod/tree/failing--upgraded-package-lock.json

I'm getting the same issue! nuxt has a lot of problems

@madebyfabian did you fixed it?

@DouglasCalora haven‘t managed to find a fix for it, moved away from wanting to use nuxt3/bridge in prod.

You're right, at the moment we're not able to pin requirements to a specific version because we're using edge releases. However, the cause of this is that you are using an older version of kit (likely because of your version of bridge, which is two months old, and this feature only landed a month ago).
We can definitely improve the nuxi upgrade experience for bridge (currently it's not supported).
For now, and for reference, to upgrade your nuxt bridge version, run:
npm up @nuxt/bridge
npm up @nuxtjs/tailwindcss

I'm going to close the issue in favour of https://github.com/nuxt/framework/issues/3764. Rest assured we want to make this feel better. ❤

@madebyfabian i'm using nuxt v2 and get this issue

remove node_modules, yarn.lock
install all packages again and run dev


PR#127 not handling $ref for non-204 statutes

Seems like #127 is not handling correctly responses that references a response in the components node, so it is throwing invalid warnings.
Example:
paths:
  /authenticate:
    post:
      operationId: create_user_session
      tags:
        - Authentication
      summary: Creates a new user session
      description: Creates a new user session
      security:
        - JWT: []
      responses:
        '200':
          $ref: "#/components/responses/test"
components:
  responses:
    test:
      description: Just a test
      content:
        'application/json': ...

@daareiza Good catch, thanks for opening the issue. We will get on this

Resolved in #136

@dpopp07 @barrett-schonefeld thanks for the quick fix!!!


Improves VerticalDividerItemDecoration when used in a GridLayout

The VerticalDividerItemDecoration was being drawn over the entire recyclerview, rather than just the cell bounds for each position.
This meant that shouldHideDivider() had no effect.
The bounds calcutation for the VerticalDividerItemDecoration is now correct.
ShowLastDivider behaviour is also now supported for VerticalDividerItemDecoration in a GridLayout

@athornz

The VerticalDividerItemDecoration was being drawn over the entire recyclerview, rather than just the cell bounds for each position.

Sorry, this is the expected behaviour of this library.

This meant that shouldHideDivider() had no effect.

Please see README
For GridLayoutManager, the position parameter of above providers is group index of items. So, control your divider based on group index instead of the position of items.
So, if you want to draw ItemDecoration based on the position of grid items instead of group index, please do it by yourself.

It's fine if the library is based around group indexes, rather than positions, but is still seems like the behaviour is not quite correct.
If I have a grid layout with 2 columns, and want to achieve the following, I should be able to add a vertical divider and return true in shouldHideDivider when the position (group index) is 0, right?

@athornz
Sorry for late replay.
I've been misunderstanding what u wanted.
You want to use both vertical and horizontal dividers, right?
I'm sorry that this library does not support for drawing dividers around items.
HorizontalDividerItemDecoration is created for layout manager having vertical orientation.
VerticalDividerItemDecoration is created for layout manager having horizontal orientation.
I should've add this note on ReadMe to avoid confusion, sorry.

Whats the reason the library doesn't support it?
It seems that it could support it without too much work?

@athornz
yeah, u r right.
Recently I've been getting more and more needs for supporting GridLaoutManager.
So, I should add its support.
I'll try to implement it as different ItemDecoration as soon as I get time to do it.
Thanks for ur notice.

@athornz  +1

@athornz Great ! Perfect solution

@yqritc I don't understand why closed the commit


add progress bar

currently the progress bar is shown when reading the remote repositories, also add one when the objects inside the system is read, it seems like this is the thing taking the most time(in status method)

the progressbar now shows which repository it is currently processing
the time demanding stuff has been moved from the constructor in LCL_REPO_ONLINE to the specific methods, so that access will happen as late as possible, this will enable #174 and #207 to be fixed


Warn instead of reporting an error when a webhook cannot be found (#26039)

Backport #26039 by @puni9869
Attemp fix: #25744
Fixing the log level when we delete any repo then we get error hook not found by id. That should be warn level to reduce the noise in the logs.

1.20.2 won't get new commits, blocking until it is released.

No problem.

Approving from my side.


Qg5 changes

Added installation steps

Please close this PR and reopen/create a new PR from your fork in the NG organization to upstream. PR #12 has been reverted.

will open other PR


Add FreeLimitExhaustion Capability in 2023-02-01-preview API

ARM API Information (Control Plane)
Changelog
Add a changelog entry for this PR by answering the following questions:

What's the purpose of the update?

[ ] new service onboarding
[x] new API version
[ ] update existing version for new feature
[ ] update existing version to fix swagger quality issue in s360
[ ] Other, please clarify

When are you targeting to deploy the new service/feature to public regions? Please provide the date or, if the date is not yet available, the month. June 2023
When do you expect to publish the swagger? Please provide date or, the the date is not yet available, the month. June 2023
By default, Azure SDKs of all languages (.NET/Python/Java/JavaScript for both management-plane SDK and data-plane SDK, Go for management-plane SDK only ) MUST be refreshed with/after swagger of new version is published. If you prefer NOT to refresh any specific SDK language upon swagger updates in the current PR, please leave details with justification here.

Contribution checklist (MS Employees Only):

[x] I commit to follow the Breaking Change Policy of "no breaking changes"
[x] I have reviewed the documentation for the workflow.
[ ] Validation tools were run on swagger spec(s) and errors have all been fixed in this PR. How to fix?

If any further question about AME onboarding or validation tools, please view the FAQ.
ARM API Review Checklist

Applicability: :warning:
If your changes encompass only the following scenarios, you should SKIP this section, as these scenarios do not require ARM review.

Change to data plane APIs
Adding new properties
All removals

Otherwise your PR may be subject to ARM review requirements. Complete the following:

[ ] Check this box if any of the following apply to the PR so that the label "ARMReview" and "WaitForARMFeedback" will be added by bot to kick off ARM API Review.  Missing to check this box in the following scenario may result in delays to the ARM manifest review and deployment.

Adding a new service
Adding new API(s)
Adding a new API version
-[ ] To review changes efficiently, ensure you copy the existing version into the new directory structure for first commit and then push new changes, including version updates, in separate commits. You can use OpenAPIHub to initialize the PR for adding a new version. For more details refer to the wiki. Note that this doesn't apply if you are trying to merge a PR that was previously in the private repository.

[ ] Ensure you've reviewed following guidelines including ARM resource provider contract and REST guidelines. Estimated time (4 hours). This is required before you can request review from ARM API Review board.

[ ] If you are blocked on ARM review and want to get the PR merged with urgency, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.

Breaking Change Review Checklist
If you have any breaking changes as defined in the Breaking Change Policy, request approval from the Breaking Change Review Board.
Action: to initiate an evaluation of the breaking change, create a new intake using the template for breaking changes. Additional details on the process and office hours are on the Breaking Change Wiki.
NOTE: To update API(s) in public preview for over 1 year (refer to Retirement of Previews)
Please follow the link to find more details on PR review process.

Same azure-sdk-for-net-track2 error as PR #23802. We can ignore the failure of .NET track 2 automation for sql all the time.
For more details, check comments #23802 (comment).

@mykolian  Please contact ARM team to review this PR.

@ericshape, @mykolian - This PR is under ARM review and there are unaddressed ARM review comments. Please address them before removing the ARMChangesRequested label. If you don't want ARM review on this PR, please indicate so in comments and we will take your PR out of review.


Duplicated dict key in destroy/ntp.yml

[WARNING]: While constructing a mapping from /var/lib/jenkins/jobs/son-
install/workspace/destroy/ntp.yml, line 18, column 5, found a duplicate dict
key (when).  Using last defined value only.
[WARNING]: While constructing a mapping from /var/lib/jenkins/jobs/son-
install/workspace/destroy/ntp.yml, line 24, column 5, found a duplicate dict
key (when).  Using last defined value only.

'destroy/sp/ntp.yml' fixed and tested - ok.


cat command fails to execute with negative page offset

$ python3 -m pdfly --version
pdfly 0.3.0
  using pypdf==4.0.2

My understanding is that the following command should extract the last page of the PDF:
$ python3 -m pdfly cat resources/GeoBase_NHNC1_Data_Model_UML_EN.pdf -o geo.pdf -1
Error
No such option: -1

I've tried passing the quoted form '-1' as well but that doesn't seem to help. Positive integers work just fine.
Ranges also fail:
$ python3 -m pdfly cat resources/GeoBase_NHNC1_Data_Model_UML_EN.pdf -o geo.pdf -2:
Error
No such option: -2

Well, following https://github.com/tiangolo/typer/issues/134#issuecomment-654286948 this works:
$ pdfly cat resources/GeoBase_NHNC1_Data_Model_UML_EN.pdf -o /tmp/geo.pdf -- -1

In that case the examples for $ pdfly cat --help just need updated?


Jump by match instead of by search result

This emulates find_prev and find_next but without relying on the Search Panel’s content. Unlike the current behaviour, find_in_files_jump_match  will not jump to the first mention of the search result (Y in Searching X file for "Y" ) neither will it jump to the first match when the last is selected and vice versa like find_prev  and find_next do. The latter is already implemented as an option here. I can make only one pull request for both features or wait for this one to be merged first as you prefer.
Fixes #16.

Thanks @Kl0tl for all these awesome PR. could you merge your cycle feature to this branch so that I can merge them together.
BTW, I can give you push access if you're interested. It seems that you know enough about this package already to take it further.

Thank you for this package :)
I’ll merge the cycle option into this PR (better naming than wrap btw, I’ll change it). Should it be True by default or added to the keybindings to preserve the behavior of find_prev and find_next ?
I’ll be very interested in having push access, would be easier to tinker with #12 that way.

Was this ever integrated?


Reset local, table maintenance function group, "PROG, error updating"

RPY_PROGRAM_UPDATE raises PERMISSION_ERROR (subrc 2)
Seems like the *T00 includes in a function group cannot be edited by a normal user? There's also the flag editor-lock set in the program attributes.

Hmmm, things I did not want to know about the table maintenance generator:

The T00 include seems to be entirely generated by TOBJ objects.
The editor lock cannot be removed using ABAP SQL (and I was unable to do it using Native SQL).
SAP* cannot remove the editor lock either, because the user is not allowed to edit any programs. SAP* can also not reset the object in abapGit for the same reason.
Function module OBJ_GENERATE might do the generation (based on a maintenance view or a view cluster)

So I guess the possibilities are to either change the way T00-includes are created / updated in abapGit, by finding a parameter or a function module that allows ignoring the editor lock and possibly additional checks based on the include name suffix and user - or ignore the T00-include entirely in abapGit and add some activation step to TOBJ objects that generates the include. The generation process however might create / overwrite other objects that do not have the editor lock and can be modified. So the first approach should be the one to go for.
The editor lock flag and SAP* user are cleared on serialization. Cloning abapGit-tests/FUGR_maintenance_view will result in an editable T00-include without editor-lock and by user sy-uname. When regenerating the maintenance dialogs it's SAP* and editor-lock = X again.
By the way: refreshing the repository in abapGit to see the changes after a regenerating the maintenance views is sometimes not enough. You have to actually leave and reenter abapGit (flaiker/ci-lib@75e1c5a75a2540ca059642268c80ae0aabdf943f and flaiker/ci-lib@5de9213799b8ce14f22ffdeae9ce7e5ce7ed3f91 were part of the same generation).

Not sure how I failed to do it before but you can actually change EDTX (editor lock) in SE16 with table PROGDIR. Surprisingly that table has "Maintenance allowed".

Removing the editor lock using UPDATE_PROGDIR before calling RPY_PROGRAM_UPDATE seems to work. Is that an acceptable solution?

Yeah, its just difficult as SAP is inconsistent. When generating the function group VARCL is set to blank, manually editing the file will set VARCL to 'X', I would not expect flags to change if just code is edited. So for VARCL I suggest not putting the field into the XML, as I guess it mostly does not matter in 702+

Should I update #2289 then to include EDTX (+ UNAM if EDTX=X) serialization but keep the "workaround" in that clears the flag briefly on deserialization?

Suggest starting without the workaround, it seems quite evil

Sure, I'll create a new PR then.

Hmm, so I added EDTX and UNAM. https://github.com/flaiker/abapGit/commit/9906da0483b99d62cddd263f3ae83491d391efc6
I tried getting EDTX to work in normal programs for now, see https://github.com/abapGit-tests/PROG_EDTX
However, it seems like this UPDATE to the inactive progdir entry does not get copied to the active version, causing UNAM to not be changed.
https://github.com/flaiker/abapGit/blob/9906da0483b99d62cddd263f3ae83491d391efc6/src/objects/zcl_abapgit_objects_program.clas.abap#L557-L560
Does it work for VARCL? Seems like the object activation also just uses UPDATE_PROGDIR to copy the inactive entry over to active, therefore missing some fields.

VARCL, idea is to exclude the field in the XML file, and let the system decide what it is. SAP standard seems to work in strange/inconsistent ways


No tests were run as of today

Description
@benjamind @Westbrook
It's surprising to see  no tests were run in CircleCI even though #7 and #8 were added to resolve the testing portion.
As you can see this line does not actually run any of the tests after the build step https://github.com/adobe/lit-mobx/blob/682b7a61dd9f7cc787e1216d63f383b93b4e93ce/.circleci/config.yml#L30

Thanks for bringing this to our attention. Will get on it asap.


OpenAPI update for text-generation-webui

Update: OpenAPI Integration for text-generation-webui
This MR updates the evaluation script to use the OpenAI API with the text-generation-webui.
Workflow

No changes in the preparation steps.

To run the script interview-oobabooga.py, simply add the host flag and host:port used in ooba. Example:
python interview-oobabooga.py --host <IP_ADDRESS>:1234

+ the rest of the flags

@kisimoff Thanks for the PR! Could rebase it and back out the README.md change?  Then it's good to merge.

Rebased and removed the resolved the readme conflict, should i remove all the readme changes? Sorry for the dealy, damn.


removes feature gated code for dropping legacy shreds

Problem
Feature is activated on all clusters.
Summary of Changes
Removed feature gated code for dropping legacy shreds.

Codecov Report
Attention: Patch coverage is 89.39394% with 14 lines in your changes are missing coverage. Please review.

Project coverage is 81.9%. Comparing base (c0be86d) to head (cec0b30).
Report is 9 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #677   +/-   ##
=======================================
  Coverage    81.9%    81.9%
=======================================
  Files         851      851
  Lines      230475   230487   +12
=======================================
+ Hits       188785   188820   +35
+ Misses      41690    41667   -23

Just to confirm - the check for legacy happens at fetch stage, so we are fine to continue to have a bunch of unit tests (ie Blockstore) that insert legacy shreds right ?

yeah, but we probably should migrate them off legacy shreds at some point anyways.


(1.16.5) I can't get adding crops to work

Mod version: 2.1.7
Minecraft version: 1.16.5
I am trying to add a crop for Druidcraft's fiery glass, and it just won't work. I'm not sure what I'm doing wrong.
I named the file "fiery_glass_seeds.json" and here's what I have:
{
"name": "Fiery Glass Seeds",
"type": "resource",
"tier": "mysticalagriculture:1",
"ingredient": {
"item": "druidcraft:fiery_glass"
},
"color": "FFA500",
"textures": {
"flower": "mysticalagriculture:block/flower_rock",
"essence": "mysticalagriculture:item/essence_flame"
"seeds": "mysticalagriculture:item/mystical_seeds"
},
"crux": "minecraft:dirt"
}
Why won't it work?

Did you check the logs for errors

Did you check the logs for errors

How do I do that? I'm new to modding sorry

In your instance folder there should be a logs folder with a latest.log file

In your instance folder there should be a logs folder with a latest.log file

Alright, I looked but I can't make heads or tails of it

"essence": "mysticalagriculture:item/essence_flame" this line is missing a comma.


⚠ Bofrost.es has degraded performance

In 2a2ea1d, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1625 ms

Resolved: Bofrost.es performance has improved in 1070510 after 8 minutes.


Add support for CalendarList sync

Add support for CalendarList sync, sharing event sync.

Codecov Report

Merging #51 (60ccd18) into main (46b9adf) will increase coverage by 0.15%.
The diff coverage is 99.06%.

@@            Coverage Diff             @@
##             main      #51      +/-   ##
==========================================
+ Coverage   96.75%   96.90%   +0.15%
==========================================
  Files           7        7
  Lines         400      453      +53
==========================================
+ Hits          387      439      +52
- Misses         13       14       +1

Impacted Files
Coverage Δ

gcal_sync/sync.py
97.64% <98.48%> (+1.42%)
:arrow_up:

gcal_sync/api.py
97.97% <100.00%> (-0.46%)
:arrow_down:

gcal_sync/const.py
100.00% <100.00%> (ø)

:mega: Codecov can now indicate which changes are the most critical in Pull Requests. Learn more


[network] Add ErrorCode::NotSupported to wire protocol

Motivation
ErrorCode::ParsingError does not capture the case where we support a protocol in the code, but don't want to expose it to a client. An example might be the internal protocols like the one that will be created for Validator -> SafetyRules communication - these protocols can be correctly parse, but should not be exposed to external nodes.

:v: @bothra90 can now approve this pull request

@metajack: I do have the same content in the commit msg as well.  Do you think we need more context?

My bad, Github hides that part in the list of commits. I see it now :)
@bors-libra r+

:pushpin: Commit ff5de5c has been approved by metajack

:hourglass: Testing commit ff5de5c5935ff77aa78d1d96417dd9ec6287d311 with merge 97b7eda88acbd8d6052b32cf250dfad83145b491...

:sunny: Test successful - checks-actions_land_blocking_test, checks-circle_commit_workflow
Approved by: metajack
Pushing 97b7eda88acbd8d6052b32cf250dfad83145b491 to master...


Remove compaction hierarchy from cluster.yaml

Now that the CompactionCoordinator was moved into the Manager, there is no need for the extra heirarchy in the cluster.yaml file.
This:
compaction:
  compactor:

Can now simply become:
compactor:

Is this causing harm? It seems like unnecessary churn. What's the risk of leaving it the way it is?

I have worked with the cluster.yaml file before. I can do this ticket (if it is deemed necessary). Could someone assign to me?
If this change is completed it looks like a test, the ClusterConfigParserTest, will need to be updated as well.

Is this causing harm? It seems like unnecessary churn. What's the risk of leaving it the way it is?

We could easily support both, as long as only one is specified.

Is this causing harm? It seems like unnecessary churn. What's the risk of leaving it the way it is?

We could easily support both, as long as only one is specified.

Only if it's not much code to support both. accumulo-cluster is supposed to be a very lightweight tool that serves as a reference for how one might manage a cluster. It really shouldn't be getting too complex. It'd be easy for this tool to start accruing technical debt through these kinds of choices. It might be simpler to just leave the existing hierarchy... it's  just one extra element, and it might not be causing any harm.

This was completed as part of #3591


About classification

Hello, I tried your method and succesfully got the images. I now confused about how many classfications do the dataset have? Are there four classfications?

Hi.
Please go to the following web site:
https://humanheart-project.creatis.insa-lyon.fr/database/#item/64b5abe573e9f00492ce9061
and download  *script_camus_ef.ipynb *from the following link
https://humanheart-project.creatis.insa-lyon.fr/database/api/v1/file/64b5abe573e9f00492ce9062/download
You can see the following code in the the ipynb, which helps to get
multi-class
segmentation masks.
###########################################
PARAMETERS TO PLAY WITH
database_nifti_root = Path("../database_nifti")
lv_label = 1
Select the patient identification (scalar value between 1 and 500)
patient_id = 1

Specify the ID and path of the patient to be loaded
patient_name = f"patient{patient_id:04d}"
patient_dir = database_nifti_root / patient_name
gt_mask_pattern = "{patient_name}{view}{instant}_gt.nii.gz"
print(f"Loading data from patient folder: {patient_dir}")
view = "2CH"
instant = "ED"
a2c_ed, a2c_info = sitk_load(patient_dir /
gt_mask_pattern.format(patient_name=patient_name, view=view,
instant=instant))
a2c_voxelspacing = a2c_info["spacing"][:2][::-1]    # Extract the
(width,height) dimension from the metadata and order them like in the mask
instant = "ES"
a2c_es, _ = sitk_load(patient_dir /
gt_mask_pattern.format(patient_name=patient_name, view=view,
instant=instant))
view = "4CH"
instant = "ED"
a4c_ed, a4c_info = sitk_load(patient_dir /
gt_mask_pattern.format(patient_name=patient_name, view=view,
instant=instant))
a4c_voxelspacing = a4c_info["spacing"][:2][::-1]    # Extract the
(width,height) dimension from the metadata and order them like in the mask
instant = "ES"
a4c_es, _ = sitk_load(patient_dir /
gt_mask_pattern.format(patient_name=patient_name, view=view,
instant=instant))
# Extract binary LV masks from the multi-class segmentation
masksa2c_ed_lv_mask = a2c_ed == lv_labela2c_es_lv_mask = a2c_es ==
lv_labela4c_ed_lv_mask = a4c_ed == lv_labela4c_es_lv_mask = a4c_es ==
lv_label
Use the provided implementation to compute the LV volumes
edv, esv = compute_left_ventricle_volumes(a2c_ed_lv_mask, a2c_es_lv_mask,
a2c_voxelspacing, a4c_ed_lv_mask, a4c_es_lv_mask, a4c_voxelspacing)
ef = round(100 * (edv - esv) / edv) # Round the computed value to the
nearest integer
print(f"{patient_name=}: {ef=}, {edv=}, {esv=}")
2024年9月30日(月) 21:35 Xincheng Yao @.***>:

Hello, I tried your method and succesfully got the images. I now confused
about how many classfications do the dataset have? Are there four
classfications?
—
Reply to this email directly, view it on GitHub
https://github.com/atlan-antillia/CAMUS_public-ImageMask-Dataset/issues/2,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALPI2IIOI2IWTH2Q7AMIZJLZZFAP3AVCNFSM6AAAAABPDF77OSVHI2DSMVQWIX3LMV43ASLTON2WKOZSGU2TMNJSGI2TCMQ
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Hi. Please go to the following web site: https://humanheart-project.creatis.insa-lyon.fr/database/#item/64b5abe573e9f00492ce9061 and download script_camus_ef.ipynb from the following link https://humanheart-project.creatis.insa-lyon.fr/database/api/v1/file/64b5abe573e9f00492ce9062/download You can see the following code in the the ipynb, which helps to get multi-class segmentation masks. ------------------------------------------------------------------------ ########################################### # PARAMETERS TO PLAY WITH database_nifti_root = Path("../database_nifti") lv_label = 1 # Select the patient identification (scalar value between 1 and 500) patient_id = 1 # # Specify the ID and path of the patient to be loaded patient_name = f"patient{patient_id:04d}" patient_dir = database_nifti_root / patient_name gt_mask_pattern = "{patient_name}{view}{instant}_gt.nii.gz" print(f"Loading data from patient folder: {patient_dir}") view = "2CH" instant = "ED" a2c_ed, a2c_info = sitk_load(patient_dir / gt_mask_pattern.format(patient_name=patient_name, view=view, instant=instant)) a2c_voxelspacing = a2c_info["spacing"][:2][::-1] # Extract the (width,height) dimension from the metadata and order them like in the mask instant = "ES" a2c_es, _ = sitk_load(patient_dir / gt_mask_pattern.format(patient_name=patient_name, view=view, instant=instant)) view = "4CH" instant = "ED" a4c_ed, a4c_info = sitk_load(patient_dir / gt_mask_pattern.format(patient_name=patient_name, view=view, instant=instant)) a4c_voxelspacing = a4c_info["spacing"][:2][::-1] # Extract the (width,height) dimension from the metadata and order them like in the mask instant = "ES" a4c_es, _ = sitk_load(patient_dir / gt_mask_pattern.format(patient_name=patient_name, view=view, instant=instant)) # Extract binary LV masks from the multi-class segmentation masksa2c_ed_lv_mask = a2c_ed == lv_labela2c_es_lv_mask = a2c_es == lv_labela4c_ed_lv_mask = a4c_ed == lv_labela4c_es_lv_mask = a4c_es == lv_label # Use the provided implementation to compute the LV volumes edv, esv = compute_left_ventricle_volumes(a2c_ed_lv_mask, a2c_es_lv_mask, a2c_voxelspacing, a4c_ed_lv_mask, a4c_es_lv_mask, a4c_voxelspacing) ef = round(100 * (edv - esv) / edv) # Round the computed value to the nearest integer print(f"{patient_name=}: {ef=}, {edv=}, {esv=}") 2024年9月30日(月) 21:35 Xincheng Yao @.>:
…
Hello, I tried your method and succesfully got the images. I now confused about how many classfications do the dataset have? Are there four classfications? — Reply to this email directly, view it on GitHub <#2>, or unsubscribe https://github.com/notifications/unsubscribe-auth/ALPI2IIOI2IWTH2Q7AMIZJLZZFAP3AVCNFSM6AAAAABPDF77OSVHI2DSMVQWIX3LMV43ASLTON2WKOZSGU2TMNJSGI2TCMQ . You are receiving this because you are subscribed to this thread.Message ID: @.**>

Thank you very much.


notify consumers of rebalance in progress #98

the problem with rebalance currently is that downstream consumers have no idea when it’s happening because the Message() channel will just block, but they are expected to commit offsets within Synchronisation.DwellTime
the workaround is to have a periodic timer and always commit at Synchronisation.DwellTime / 2 interval, but that’s not ideal for either library or the downstream consumers.
the solution here is to use the Notifications() channel to notify downstream consumers of a rebalance in progress, so they can start committing current state, and also has a MarkConsumersDone() function that allows downstream consumers to notify sarama-cluster that the clients are ready for rebalancing, instead of waiting for the full Synchronisation.DwellTime to pass.

@vavrusa I think there is a misunderstanding here

but they are expected to commit offsets within Synchronisation.DwellTime. the workaround is to have a periodic timer and always commit at Synchronisation.DwellTime / 2 interval, but that’s not ideal for either library or the downstream consumers.

That's not right. The consumers are not expected to commit offsets at all. The consumers are only expected to process messages and call MarkPartitionOffset afterwards. The commits are then happening  automatically either every Consumer.Offsets.CommitInterval or when a topic/partition is released on reblance. The Synchronisation.DwellTime setting is a (usually short) delay which allows the downstream consumer to finish reading the message and call MarkPartitionOffset before the offsets are (auto-)committed, see https://github.com/bsm/sarama-cluster/blob/master/consumer.go#L482

Yes, I meant "mark offsets". I use it interchangeably, because I tend to do both, sorry about the confusion. The "allows the downstream consumer to finish reading the message" only works if you mark offsets after each processed message (e.g. streaming), but not if you buffer messages and write them to external storage in chunks (like people do in #98). In my case, I buffer a chunk of messages and write offsets in a separate OffsetStash. When the chunk is large enough, I schedule the chunk for writing into the the external storage by a background worker, wait for it, call consumer.MarkOffsets and call consumer.CommitOffsets because it's worth to me not to have duplicated data if the service were to crash before the next CommitInterval. When a rebalance happens, I need to wait for this "background flush" to finish before proceeding with the rebalance, and then clear the currently buffered data (which is why I need the notification of rebalance in progress). The DwellTime alone would work, but I'd have to make it large enough (~30s) to allow for long flushes to finish (again to avoid duplicated data during rebalances), which is why I added the MarkConsumersDone, so that consumer can tell sarama that the rebalance can proceed without waiting for the timer to expire. Does that make sense?

See #160

@bocharov because of this issue (among others) I decided to abandon sarama-cluster and instead focus on https://github.com/Shopify/sarama/pull/1099 which will support this natively


host: Always resurrect jobs

Being able to connect to discoverd nodes on other peers doesn't necessarily mean the scheduler is healthy. We should resurrect our own jobs regardless so that if the cluster is damaged then the cluster-monitor will be able to fix it.

Is this related to #2494?

LGTM

Yes, I suspect this is the cause of #2494.


Replace origindb with nef

@Lord-Haji Tournaments, Drafts, and Uno arent refactored yet.

Ohhh gosh
I forgot @hoeencoder I'll do it tomorrow morning

Since @Mystifi told me this was ready to merge ill just go ahead and merge it.


Fails on local files

When using crconsole with a local file file:///Users/me/index.html I get an error:
"Parameter 'url' must be a string, not " + typeof url

Does not work with a local server (python) on http://localhost:8000/ either:
"Parameter 'url' must be a string, not " + typeof url

Nevermind, it was a problem in the url-package. Just updated Node and everything works fine!

oh, great :)


playing with sub menus

Quick suggestion, pleas add [WIP] to the title to indicate work in progress.  Thanks!


[workers] add wrangler v3 dependency info for updating

Added note about better-sqlite3 dependency for Wrangler v3 per #9463
For more information: https://github.com/cloudflare/workers-sdk/issues/3531

Does this solve https://github.com/cloudflare/cloudflare-docs/issues/10230 ?

following https://github.com/cloudflare/miniflare/pull/656, this docs update is no longer needed 👍


caffeine-ng: init at 3.4.2 (and setproctitle: 1.1.9 -> 1.1.10)

Motivation for this change
Caffeine-ng is a tray bar application to temporarily inhibit screensaver etc.
Things done

Added myself to maintainers
Updated setproctitle package (newer version was needed for caffeine-ng)
Packaged caffeine-ng

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Assured whether relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

tested without nix-review and seemed to work.


fix(sdk/elixir): add :inets to :extra_applications

:inets requires to start before using the SDK because of :httpc module.

Sorry for not noticing this one @wingyplus, merged :tada:
Feel free to ping if that happens again in the future, sorry!

@jedevc thank you 🙏


add validation info

https://github.com/keboola/kbc-ui/pull/2028#issuecomment-432158624
Pridat vetu 'Tables defined in Output Mapping that does not yet exist in Storage are not validated.'
Nejspise umistit sem https://help.keboola.com/manipulation/transformations/

waits for backend release

https://keboola.atlassian.net/jira/software/projects/DOC/boards/15?selectedIssue=DOC-8


add typescript definitions

Started to use your lib in one typescript project. Would like to contribute with the typings I made.

Nice work! Appreciate it.


Slice validation error message tweaks for data viewer

Got feedback that the messages should be more specific. Also localizing them and ensuring that long message text wraps around. FWIW we also considered a tooltip as an alternative way to display long text, but I'm not submitting that after discussing with Jill because VS Code doesn't have a pattern of showing error messages in tooltips.

[ ] Pull request represents a single change (i.e. not fixing disparate/unrelated things in a single PR).
[ ] Title summarizes what is changing.
[ ] Has a news entry file (remember to thank yourself!).
[ ] Appropriate comments and documentation strings in the code.
[ ] Has sufficient logging.
[ ] Has telemetry for enhancements.
[ ] Unit tests & system/integration tests are added/updated.
[ ] Test plan is updated as appropriate.
[ ] package-lock.json has been regenerated by running npm install (if dependencies have changed).

Codecov Report

Merging #4997 (79c4d38) into main (fabfc4c) will increase coverage by 0%.
The diff coverage is n/a.

@@          Coverage Diff          @@
##            main   #4997   +/-   ##
=====================================
  Coverage     76%     76%
=====================================
  Files        404     404
  Lines      26749   26749
  Branches    3866    3866
=====================================
+ Hits       20420   20484   +64
+ Misses      4712    4657   -55
+ Partials    1617    1608    -9

Impacted Files
Coverage Δ

src/client/common/process/pythonDaemonPool.ts
83% <0%> (-2%)
:arrow_down:

src/client/datascience/telemetry/telemetry.ts
85% <0%> (-2%)
:arrow_down:

...ient/datascience/interactive-ipynb/nativeEditor.ts
70% <0%> (+<1%)
:arrow_up:

src/client/datascience/jupyter/jupyterNotebook.ts
79% <0%> (+<1%)
:arrow_up:

src/client/datascience/baseJupyterSession.ts
76% <0%> (+<1%)
:arrow_up:

...datascience/notebookStorage/nativeEditorStorage.ts
80% <0%> (+<1%)
:arrow_up:

...ent/datascience/notebook/notebookEditorProvider.ts
90% <0%> (+<1%)
:arrow_up:

...ce/raw-kernel/liveshare/hostRawNotebookProvider.ts
80% <0%> (+<1%)
:arrow_up:

src/client/datascience/jupyter/kernels/kernel.ts
84% <0%> (+1%)
:arrow_up:

...lient/datascience/jupyter/jupyterSessionManager.ts
73% <0%> (+1%)
:arrow_up:

... and 14 more


add logrocket documentation

Proposed changes
Added docs for the LogRocket destination.
Merge timing
asap
Related issues (optional)
https://github.com/segmentio/action-destinations/pull/835

Thanks @nminchow! I've opened #3778 so that we can push updates. We'll get this deployed tomorrow, but it will remain hidden from search and nav until it enters Public or Public Beta status.


Add feature "disable-ui-test" and use it for wasmer-sandbox ci

Fix https://github.com/paritytech/substrate/issues/9799
Add feature "disable-ui-test" and use it for wasmer-sandbox ci

bot merge


Error with exit code<PHONE_NUMBER>

Setup
Versions

Rust:1.25.0(stable-x86_64-pc-windows-msvc)
Diesel:1.1.1
Database:pg10
Operating System: Windows7 ultimate 64bit Service pack 1

Feature Flags

diesel:

Problem Description
cargo.toml:
[dependencies]
diesel = { version = "1.0.0", features = ["postgres"]}
dotenv = "0.10.0"
dotenv_codegen = "0.10"

main.rs:
extern crate diesel;
extern crate dotenv;

use diesel::prelude::*;
//use diesel::mysql::MysqlConnection;
use diesel::pg::PgConnection;
use dotenv::dotenv;
use std::env;

fn establish_connection() -> PgConnection {
    dotenv().ok();

    let database_url = env::var("DATABASE_URL")
        .expect("DATABASE_URL must be set");

    PgConnection::establish(&database_url)
        .expect(&format!("Error connection to {}", database_url))
}

fn main() {
    println!("start ...");
    let _t = establish_connection();
}

When i run:
xxx>cargo run

I got error:
Finished dev [unoptimized + debuginfo] target(s) in 0.0 secs
     Running `target\debug\diesel_demo.exe`
error: process didn't exit successfully: `target\debug\diesel_demo.exe` (exit code:<PHONE_NUMBER>)

What are you trying to accomplish?
I just do with the start guide...，and when i use diesel-cli，it didn't return any wrong message。I don't know how to deal with it. Could you please help me？thank you！
What is the expected output?
What is the actual output?
Are you seeing any additional errors?
Steps to reproduce

Checklist

[y] I have already looked over the issue tracker for similar issues.

sorry for my foolish, :)  I should double-click to run rather than through the console，so I can see the exact cause of the error. sorry，please close this issue :)


Finish TODO: handle error

Merged in https://github.com/cloudflare/pingora/commit/d41231191cdc233c69d718c19826c5550fa77375. Thanks for contributing!


feat(code): creating example code

:tada: This PR is included in version 1.0.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Docs say space-separated instead of comma-separated

The documentation of az storage entity query says the following:

--select
Space-separated list of properties to return for each entity.

However I got the following error:

ERROR: Term 'PartitionKey RowKey' is not valid in a $select or $expand expression.

After trying --select 'PartitionKey,RowKey', so comma-separated, it did work.

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

ID: 9a4d128f-a98f-d07b-0183-90ca79cc5fdc
Version Independent ID: 83084fff-ea1b-a9e7-b7a9-40023de43542
Content: az storage entity
Content Source: latest/docs-ref-autogen/storage/entity.yml
Service: storage
GitHub Login: @rloutlaw
Microsoft Alias: routlaw

storage

Hi, @mdenhoedt
When you use --select parameters, you do not need to use '' marks, you can try --select PartitionKey RowKey again.

@mdenhoedt Did you try what @jonie001 suggested?


Update MD file on new branch 2017-12-07_05-42-59

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

split/updateTestCon1.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Fix to return context aware future from Java9RequestContextAwareCompl…

…etableFuture
Found out that we forget to add ctx.makeContextAware() in `Java9RequestContextAwareCompletableFuture

We're not supposed to need it because of newIncompleteFuture
https://github.com/line/armeria/blob/cc514074338d6bad8e92092ada242367c8373a39/core/src/main/java9/com/linecorp/armeria/internal/Java9RequestContextAwareCompletableFuture.java#L253
Do you an issue without makeContextAware?

Do you see an issue without makeContextAware?

Oops, I completely miss that. Let me close this then, thanks!

@minwoox The unit test look good to me. 😀


HWKALERTS-277 Fix on tests for high events load scenario

Minor PR to fix a test related to the discussed scenario of high load.

lgtm


self-hosted runners

- What I did
- How I did it
- How to verify it
- Description for the changelog

- A picture of a cute animal (not mandatory but encouraged)

2 cents on self-hosting runners:
I built a service for running self-hosted GitHub Action runners on cloud with 0 maintenance and free for open source: https://cirun.io/
It's on-demand, which means you only pay to your cloud provider for the time you're using it.
All you need is a simple configuration .cirun.yml file, here is a demo.
Also available on GitHub Marketplace as well: https://github.com/marketplace/cirun-io


mobile adjustments

[ ] the circle is not visible on my phone (safari & Chrome)

[ ] can you reduce the button sizes to fit two next to each other on mobile?

[ ] can you align the JetBrains logo behind sourcegraph?

[ ] on my phone I can weirdly move all content horizontally. It's not fixed to the center. For gitpod.io it works fine. Could you adjust that for cde universe as well?

That's super weird that ring is not visible on mobile🤯


DSD-1221: Add onChangeEnd prop to Slider

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

Adds the onChangeEnd prop in the Slider component.

How has this been tested?
Locally in StoryBook and unit tests.
Accessibility concerns or updates

Checklist:

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

Front End Review:

[ ] Review the Vercel preview deployment once it is ready.

@jackiequach This is good to go.  If you merge it in today or early tomorrow, we can include it in the 1.4.0 release.

@bigfishdesign13 Should I update the version in the StoryBook page for these changes?

@bigfishdesign13 Should I update the version in the StoryBook page for these changes?

@jackiequach Yes, good point.  It would need the Latest Version number updated to 1.4.0.  Edwin and I both missed that when we approved the PR.  Oops.


fix bug in hlist.{Intersection, Union}

Fix bugs described in #562.
Currently Intersection is witnessed by three cases:
hnilIntersection says ∅ ∩ M = ∅, which is good.
hlistIntersection1 says (H :: T ∩ M) = T ∩ M
hlistIntersection2 says: if H ∈ M, (H :: T ∩ M) = H :: (T ∩ (M - R))
Unfortunately, (H :: T ∩ M) = T ∩ M is false if H ∉ M.  This patch adds the H ∉ M condition to hlistIntersection1 using a FilterNot.Aux[M,H,M] witness.
The patch also fixes an equivalent bug in Union.

I had a couple additional questions:

Should hlistIntersection1 and hlistIntersection2 reside in the same trait now, eliminating the need for LowPriorityIntersection?
Why is it that Intersection extends DepFn1 but Union extends DepFn2?  It seems like they should be the same, but I don't know what the right answer is.

Fails mima check — this is tricky, the patch not bincompat with existing, but existing is buggy. :-\

Hi @refried, thanks for fixing this, your changes are LGTM!
Regarding your 2nd question, I think A ∩ B only contains elements from A, while A U B could have elements from both A and B, which would explain why you don't need the same number of arguments to produce the output. Note that for A - B, the type of B is also sufficient, as the output will only contain values from A.

About MiMa, it is possible keep binary compatibility. You just have to keep the former methods as is, possibly modifying a bit their implementation, and removing their implicit modifier.
This way, code compiled against older versions of shapeless will still find the methods they're looking for at runtime, and code compiled against the newer version will only find the newest method, which are the only ones flagged as implicit.

+1 to @alexarchambault's advice ... I'll merge when MiMa passes ... thanks! :-)

@alexarchambault @milessabin Ok, I can make that MiMa change, but please advise/confirm:  the binary-compatible version will necessarily continue to be buggy, which is pretty scary to me.  (The fix was to add the additional witness.)  My instinct to add a @deprecation warning won't help if there's no recompilation.
Do I add @deprecation for now we delete the buggy method in the next minor version?  Is there a process for remembering to have that happen?  Thanks!

@refried As the methods kept for binary compatibility don't have the implicit modifier anymore, they won't be found when using Intersection or Union. Only code compiled against older versions of shapeless should use them.
I don't mind about adding @deprecated. These methods are seldomly directly called anyway...

@alexarchambault Sure, I understand that — I just wished there was a way to warn the person linking against the old version; but I guess there isn't, and they wouldn't discover a bincompat issue until runtime.  I pushed the update, so fingers crossed! :smile:

LGTM. Many thanks ... merging :-)


Permission denied @ rb_sysopen - /usr/local/bin/hub when installing

I am trying to install Hub on LInux Mint 17 (14.04) with ruby 2.1.2. I followed the install instructions and bundle passes, but rake install gives:
rake aborted!
Permission denied @ rb_sysopen - /usr/local/bin/hub
/home/sopharma/Code/hub/Rakefile:121:in `block in <top (required)>'
Tasks: TOP => install
(See full trace by running task with --trace)

Any help would be appreciated.

New versions of hub are no longer implemented in Ruby and don't have rake install task anymore. Instead, each prebuilt release will come with an installer script. See #922


Dev to Main Sync

Date: 11 Aug 2023
Developer Name: @mailmesriza98 @bksh05
PR Number(s):-
https://github.com/Real-Dev-Squad/website-backend/pull/1363/
#1309
Issue Ticket Number:-
https://github.com/Real-Dev-Squad/website-backend/pull/1314/
#1382
Backend changes

[x] Yes
[ ] No

Frontend Changes

[x] Yes
[ ] No

Database changes

[ ] Yes
[ ] No

Breaking changes (If your feature is breaking/missing something please mention pending tickets)

[ ] Yes
[x] No

Deployment notes
Any special instructions for the deployment
Tested in staging

[x] Yes
[ ] No

Date: 12th Aug 2023
Developer Name: @gauravsinhaweb
PR Number(s):- #1329 #1403
Issue Ticket Number:- #1214
Backend changes

[x] Yes
[ ] No

Frontend Changes

[ ] Yes
[x] No

Database changes

[ ] Yes
[x] No

Breaking changes (If your feature is breaking/missing something please mention pending tickets)

[ ] Yes
[x] No

Deployment notes
Any special instructions for the deployment
Tested in staging

[x] Yes
[ ] No

List of PRs going in this Sync.
Also attach their screenshots.


NIFI-3508 Added support for PATCH identical to that of PUT/POST

Thank you for submitting a contribution to Apache NiFi.
In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:
For all changes:

[x] Is there a JIRA ticket associated with this PR? Is it referenced
in the commit message?

[x] Does your PR title start with NIFI-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.

[x] Has your PR been rebased against the latest commit within the target branch (typically master)?

[x] Is your initial contribution a single, squashed commit?

For code changes:

[ ] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi folder?
[x] Have you written or updated unit tests to verify your changes?
[x] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?
[x] If applicable, have you updated the LICENSE file, including the main LICENSE file under nifi-assembly?
[x] If applicable, have you updated the NOTICE file, including the main NOTICE file found under nifi-assembly?
[x] If adding new Properties, have you added .displayName in addition to .name (programmatic access) for each of the new properties?

For documentation related changes:

[x] Have you ensured that format looks appropriate for the output in which it is rendered?

Note:
Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible.

NIFI-3508

Thanks @nickcarenza for contributing this improvement. I'm going to review!

Reviewed code and docs updates, unit test passed, and using InvokeHTTP, HandleHTTPRequest and Response, confirmed that incoming FlowFile contents can be sent with PATCH method. All looks good! Thanks @nickcarenza merged into master.


readme for multiapi

Latest improvements:
MSFT employees can try out our new experience at OpenAPI Hub  - one location for using our validation tools and finding your workflow.

Contribution checklist:

[ ] I have reviewed the documentation for the workflow.
[ ] Validation tools were run on swagger spec(s) and have all been fixed in this PR.
[ ] The OpenAPI Hub was used for checking validation status and next steps.

ARM API Review Checklist

[ ] Service team MUST add the "WaitForARMFeedback" label if the management plane API changes fall into one of the below categories.
adding/removing APIs.
adding/removing properties.
adding/removing API-version.
adding a new service in Azure.

Failure to comply may result in delays for manifest application. Note this does not apply to data plane APIs.

[ ] If you are blocked on ARM review and want to get the PR merged urgently, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.
Please follow the link to find more details on API review process.

@sergey-shandar  and @fearthecowboy can we close this PR?

Automation for azure-sdk-for-js

Automation for azure-sdk-for-python

Automation for azure-sdk-for-ruby

Automation for azure-sdk-for-go

Automation for azure-sdk-for-java

Hi, @sergey-shandar. The PR has be closed for a long time and it's related branch still exist. If no further used for over 14 days, I will delete this related branch. Please tell me if you still need this branch.

Hi, @sergey-shandar. The PR has be closed for a long time and it's related branch still exist. Please tell me if you still need this branch or i will delete it in 14 days.

Hi, @sergey-shandar. The PR has be closed for a long time and it's related branch still exist. Please tell me if you still need this branch or i will delete it in 14 days.

Hi, @sergey-shandar. The PR has be closed for a long time and it's related branch still exist. Please tell me if you still need this branch or i will delete it in 14 days.


"true" to true

The sample for 2 NICs does not work pasted into an ARM template. Need to use true instead of "true"

@andhesky : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@andhesky Thank you for your contribution :)
#sign-off

@cynthn: I'm sorry - only the author of this article, @mayanknayar, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.


[Hacktoberfest] A function to remove a model

Task
Implement a function to remove a model in JavaScript SDK.
Follow similar pattern as in the Python SDK.
Deliverables
Create a PR to this repository with the implementation.
:loudspeaker: Additional rewards :trophy:
This issue brings up to :five:  :zero:  points for SWAG and entry into the draw for a  :point_down: :

:three:  :x:   :computer:  Razer Blade 16 Gaming Laptop
:shirt: :bear:  MindsDB Swag

:information_source: For more info check out https://mindsdb.com/hacktoberfest :point_left:

@quest-bot embark


Update deploying-with-docker.mdx to indicate it does not work with npm

All the examples are with npm except the last full example of the Dockerfile
That gives the impression that it does work with npm :)
yarn global has also been removed

Hi @kevinsimper, we recently implemented prune for npm (#2203). It's available on 1.6.0-canary.0 at the moment if this is blocking you. Since we plan on doing a full release in the very near future and would need to revert this docs change, I'm closing this.

@chris-olszewski That is pretty interesting


Implement Bulk Label Interface

This is an interface for bulk labeling/previewing/persisting those
labels. Closes #7

This is what it looks like.

This looks very nice.  I spun it up locally and played with it and everything worked as expected, except:

the updates didn't trigger reindexing in Solr
clicking Save didn't take me back to the ScannedResource (or we add a button to go back to the ScannedResource)

the updates didn't trigger reindexing in Solr

Are you sure? It's using the file set update action, this would be odd. Steps to reproduce?

You're right -- it is updated Solr.  It's just that the ScannedResource view of the FileSets is using ebucore:filename instead of dc:title, so the display wasn't updated.  I've created #183 for using dc:title (if available).

@escowles Added a link back to parent.


We should re-think where nuget symbol packages go

From https://github.com/dotnet/source-build/blob/dev/release/2.0/Documentation/auto-dependency-flow/api.md#recommended-implementation-4

Place NuGet library packages (.nupkg) directly in $(DotNetOutputBlobFeedDir)packages/.
Place all other assets, such as installers, lzma files, and NuGet symbol packages (.symbols.nupkg), in $(DotNetOutputBlobFeedDir)assets/.

This doesn't play well with dotnet pack.  dotnet pack has an --output parameter, but as far as I can tell, there is no way to specify that you want the non-symbols package to go to one folder, and the symbols package to go to a different folder.  dotnet pack will place them both in a single folder.
See https://github.com/NuGet/NuGet.Client/blob/63e8539791d4f662efffceb2185ad4510396d76e/src/NuGet.Core/NuGet.Build.Tasks.Pack/GetPackOutputItemsTask.cs#L54-L62
If this is our policy, then every repo that uses dotnet pack will have to manually copy files around, which is less than ideal.
@dotnet/source-build-contrib

The reason it's spec'd this way right now is because that's how transport/blob feeds are spec'd. Sorry for the Msft link: Package-Acquisition.md#layout. @chcosta @karajas @jcagme @markwilkie is this open to change or flexibility?
I agree that it makes the most sense to lay blob feeds out in the way that is most easily compatible with the product features we ship.
Background: a scenario where splitting them up helps a lot is when you only have access to rudimentary tools and need to treat lib packages vs. symbol packages differently. E.g. push to different feeds, push all libs and no symbols, etc., when all you can do is run nuget commands with basic globbing. The difficulty is that *.nupkg also matches *.symbols.nupkg. Just mentioning this to get it out of the way: we aren't limited in this way for source-build/product-build, and isolated builds can continue to split them up if it helps them.

[Triage] Closing - This api is dead and therefore this issue is no longer relevant.


Limiting observation period options

@lisu-stats
For limiting the observation period there are different thing that can be done, such as

limit maximum follow up time in a trial
Only allow trials to begin in certain periods
Censor the whole data set at some (calendar) time

Currently in initiators() we have the following arguments

first_period: First period value to start expanding about
last_period: Last period value to expand about
first_followup: First follow-up period
last_followup: Last follow-up period

Should these correspond with the above? 1 and 2? Something else?
Can we give better names and descriptions?
Need to implement tests to ensure correct and expected behaviour.
See also #43

@gravesti
I just tried the first_period and last_period in the data_preparation function. They did not limit the trial periods for expansion. The resulting data are exactly the same with/without these options.
The  first_followup and last_followup in the data_modelling function worked. Basically, they will include observations between the  first_followup and last_followup for fitting the logistic models. This will fulfil the requirement if users want to limit maximum follow-up time in a trial (1st point in your list).

The first_period and last_period options did change the summaries such as the min_period and max_period , but the expanded data don't look different.

The user can select only part of follow-up to be included in all analyses by setting first_period= and last_period= to the desired first and last periods (inclusive).
The user may also limit the periods included in the outcome model by setting first_followup= and last_followup= to the desired first and last follow-up periods. Notice that periods not included in this range will still contribute to the weight models.

@lisu-stats Do you think first_period/last_period should have an impact before the weight models are calculated?
I suppose the user could easily filter the data themselves if that's what they wanted, which would be my 3.
So the I think first_period/last_period  needs to be implemented as number 2.

@gravesti I just checked the SAS macro. It did exclude observations outside first_period/last_period for estimating weights and for expanding data. I agree these options should be implemented as number 2. Yes, number 3 can be done by users by filtering the original data.

@gravesti The SAS macro first_period/last_period options do not work properly either. Somehow it gives different fitted weight models when setting first_period/last_period or not. But in the end, the expanded data look exactly the same with/without these options.
The comments for these options state that they should specify the periods to expand the data.

first_period = ,    /* first period to start expanding about /
last_period = ,     / last period to expand about */

Just found that when fitting the weights models,  first_period/last_period options in the SAS macro will use subsetted data. But when expanding data, the SAS macro runs into errors:
> ERROR: Array subscript out of range at line 95 column 41.
>  t=4 A=1 X1=0 X2=-0.453560925 X3=0 X4=-0.307927217 age_s=1.8333333333 Y=0 C=0 eligible=0 _time_of_event=9999 _regime_start=2
>  _newid_=3 _cumA_=3 switch=0 _Am1_=1 _time_on_regime_=2 _time_on_regime2_=4 _started0=0 _started1=1 _stop0=0 _stop1=0 _eligible0=0
>  _eligible1=1 _eligible0_sw=0 _eligible1_sw=1 p0_d=. p0_n=. p1_d=0.4746074122 p1_n=0.6322294426 pC_d0=. pC_n0=. pC_d1=0.9841235746
>  pC_n1=0.9514925373 wt=1.2879409487 pC_n=0.9514925373 pC_d=0.9841235746 wtC=0.9668425408 FIRST._newid_=0 LAST._newid_=0 FIRST.t=1
>  LAST.t=1 for_period=. _followup_time=. _assigned_treatment=. for_period2=. _followup_time2=. _case=. X1_new=. X2_new=. X3_new=.
>  X4_new=. age_s_new=. _weight0_=0.6826918167 i=. _weight_=. _ERROR_=1 _N_=4
>  NOTE: The SAS System stopped processing this step because of errors.
>  NOTE: There were 5 observations read from the data set WORK.SW.
>  WARNING: The data set WORK._SWITCH may be incomplete.  When this step was stopped there were 3 observations and 13 variables.

Does that make sense for the weight models? Say if last_period = 10 but last_followup = 20 we should not cut off the data when we fit the model based on  last_period.

As discussed, let's just expand the data using the first_period/last_period options, but use the original data for estimating weights.


Added a new ripper for madokami

Category
This change is exactly one of the following (please change [ ] to [x]) to indicate which:

[ ] a bug fix (Fix #...)
[X] a new Ripper
[X] a refactoring
[ ] a style change/fix
[X] a new feature

Description

Refactor: In AbstractRipper, extracted some code into a new function in order to re-use
Feature: In AlbumRipper, added a new parameter to addURLToDownload in order to be able to add custom headers to requests. In DownloadFileThread, added a new property and some code to be able to add custom headers.
Ripper: Madokami ripper. It needs basic authentication, so the username and password is taken from the config file and is added as a custom header.

Testing
Required verification:

[X] I've verified that there are no regressions in mvn test (there are no new failures or errors).
[X] I've verified that this change works as intended.

[X] Downloads all relevant content.
[ ] Downloads content from multiple pages (as necessary or appropriate).
[X] Saves content at reasonable file names (e.g. page titles or content IDs) to help easily browse downloaded content.

[X] I've verified that this change did not break existing functionality (especially in the Ripper I modified).

Optional but recommended:

[ ] I've added a unit test to cover my change.

Testing this it seems to break a bunch of rippers
Trying to rip https://www.deviantart.com/faterkcx/gallery/ with these changes fails with
https://images-wixmp-ed30a86b8c4ca887773594c2.wixmp.com/intermediary/f/5c35096b-bf02-49c9-9aa3-a6dc4e5470d6/dcpqgz6-305d5630-610b-4c21-9057-abb915124eac.jpg already saved as /home/$USER/rips/deviantart_faterkcx
This line repeat with various different image urls
The same thing happens for the JagodibujaRipper and the instagramRipper
The mangadex ripper failing is unrelated.


feat: add mtls feature to http and grpc transport provider

Internal doc: go/java-gapic-client-mtls.
AIP: https://google.aip.dev/auth/4114
Short summary:
Background
mtls has two parts: client certificate, endpoint

client certificate
(1) client certificate is loaded from device by running the command specified in ~/.secureConnect/context_aware_metadata.json
(2) whether to load/use client certificate is controlled by GOOGLE_API_USE_CLIENT_CERTIFICATE env variable. To load/use it, set the env var to "true".
(3) if client cert exists and used, it will be used to create a HttpTransport for http, and ChannelCredentials for grpc
endpoint
(1) there are regular endpoint and mtls endpoint. Regular endpoint is used by default.
(2) if user provides endpoint, it should always be used as it is
(3) if endpoint is not provided by the user (i.e. it is set by client lib), then endpoint behavior can be controlled by GOOGLE_API_USE_MTLS_ENDPOINT env var
i) if client cert exists and is used, auto switch to use mtls endpoint
ii) if env var is "never", always use regular endpoint
iii) if env var is "always", always use mtls endpoint

This PR
This PR is organized as follows:

mtls client cert loading and the two mtls env var are wrapped in MtlsProvider class.
client cert is converted to key store by MtlsProvider, and used to create HttpTransport for http, and ChannelCredentials for grpc (key store is converted to key manager for grpc)
in stub setting, adds allowSwitchToMtlsEndpoint property. This is used to tell who sets the endpoint. Client lib needs to set it to true. If the value is false, we just use the provided endpoint and cannot switch to mtls endpoint.

Testing
This PR has been tested with pubsub (for grpc) and compute (for http).
https://github.com/arithmetic1728/java-pubsub/pull/1
https://github.com/arithmetic1728/java-compute/pull/4
Additional comments
Don't merge until grpc-java 1.37.0 is released in March. Currently we are using the API in grpc-java 1.37.0-SNAPSHOT.
We tested the API with pubsub client libraries and it worked perfectly. The testing project is specially designed for mtls (request will fail with 403 if mtls is not correctly configured), so we have high confidence of the new API.

As I mentioned in grpc/grpc-java#7667, even non-shaded Netty is a no-no for gax, as it is unstable API. Gax should really be using https://github.com/grpc/grpc-java-api-checker, to make that sort of bug a compile error. Discussion about which API to use (there isn't one currently) will continue on grpc/grpc-java#7667

I'm a bit concerned by usage of system tools to read files: is it necessary? if yes, then why? It seems like the same result can be achieved in pure system-independent java-native way. Which will be more efficient and most importantly more portable and reliable.

Because we need to run a system-dependent native helper binary to get the certificate. This is mentioned in Obtaining the Default Device Certificate section in the AIP. Quoted from the AIP:
The default device certicate should be procured using the EndpointVerification workflow,
which fetches the certificate from a platform-specific credential store (ex. KeyChain in
macOS) via a native helper.

Exporting the certificate via the native helper involves executing a "cert provider command"
specified in a well-known gcloud metadata file of the following format:

{
   "version": 1
   "min_cloud_sdk_version": "240.0.0"
   "has_client_cert": true
   "endpoint_verification_error": ""
   "cert_provider_command": "[absolute_path_to_provider_command] --fetch_client_cert"
}

For Linux and macOS platforms, the above metadata file is located at "~/.secureConnect/context_aware_metadata.json".

The cert provider command will print the certificate to stdout

I will revisit this PR and re-implement the grpc part after a new stable api is available in grpc-java. Currently putting this PR on hold.

@googlebot I fixed it.

This PR is ready for review now, please take another look. Thank you @ejona86 for providing the new API for grpc.
I have provided more details in the description. This PR has been tested using pubsub/compute client with a project specially designed for mtls (request is rejected unless mtls is correctly configured).

Could you take another look?  Thanks! @ejona86 @elharo @miraleung @vam-google

This PR is ready now. Please take another look, thanks! @elharo @miraleung @vam-google @ejona86


Closing extension Code instance doesn't make Run stop

Testing #3906
Linux

yo code, TypeScript extension, code into it
Run the Run action until the extension Code instance comes up
Close the Code instance that comes up

It appears that the instance is still running, in the original Code window.

@isidorn could you please stop the debug adapter in this case?

@bpasero in this particular case I do not get called from the workbench. It would be great if the workbench could notify me via the broadcast mechanism the same way it does when the user reloads the other window.
Could we add something like this?

@isidorn we could but I am not sure about doing this for GA, I do not think running an extension without debugger attached is a real scenario with many users, is it?

@bpasero I agree this is not GA. I think @weinand agrees, Andre let us know

I agree. It's just for completeness... moved to backlog

Assigning to @bpasero, once you start broadcasting something give the bug back to me so I do the right thing

@isidorn I added a new broadcast you should listen to: https://github.com/Microsoft/vscode/blob/master/src/vs/workbench/services/thread/electron-browser/threadService.ts#L29


Passing selectors from client for inexpensive DB querying

I'm trying to specify selectors for the meteor collection.find in order to implement search functionality in my app. I know 'how to' questions are best for SO but I got nowhere there.
1st attempt:
// inside on of the controllers (Client)

var selectors = {"make.name":"Toyota"}
var test = Listings.find(selectors);

var test2 = Listings.findOne(selectors);
console.log(test); // undefined for obvious reasons
console.log(test2);// logs only one listing

2nd attempt:
Listing = new Mongo.Collection('listings');

// Server
Meteor.publish('listings', function(selectors) {
    if (selectors) {
        return Listings.find(selectors);
    }
    return Listings.find();
});

// Client
var test = $meteor.collection(Listings);
var selectors = {"make.name":"Toyota"}
$meteor.subscribe("listings", selectors);

console.log(test);  // logs everything in db instead of just listings with property "make.name" = "Toyota"

I just want to be able to pass the damn selectors to the server. :sob:

I think you flipped your logic. The server publish code should be
if (selectors), or if (!!selectors).

Thank you so much for the response! if (selectors) is actually what I have, it was a typo I made posting the issue. I'm still getting the entire db, could it be that I'm timing the $meteor.subscribe  call incorrectly? or passing the selecters var in the wrong place? I'm able to get around this issue if I try something like Meteor.subscribe('listings', selectors) but this feels hacky, and it breaks all other parts of my app that use the 'listings' collection.

I would suspect that there is another subscription which get the full listing, and in this case the collection gets everything. try and remove the return Listings.find();
If you want to further discuss it - I suggest to go on gitter.

That ^ + $or syntax did the trick; thanks!

Btw, be sure to check your selectors on the server, to avoid stuff like: http://blog.east5th.co/2015/08/10/dos-your-meteor-application-with-where/

thanks everyone!


SAK-29497 Improve usability of Schedule's "List of events" page

I did a brief review and this is looking pretty good to me. Anyone else available to review?

LGTM

Thanks for the review, chaps.


Change default az to empty when create cinder volume

What this PR does / why we need it:
Which issue this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): fixes #72
Special notes for your reviewer:
Release note:

signed

/assign @aglitke

/approve

@zetaab Note that this is the new external volume service, not the regular cinder one from the main k/k. So no one is using this yet.

/ok-to-test

@dims ok but still I would like to get answer how it behaves if az is empty.

@animationzl please respond to @zetaab 's question

@zetaab yes, the cloud provider I use has a different az name than nova, the default az in cinder create api is None, when creating volume without a specific az(such as cinder create 1), a random az of specific volume host which the volume is scheduled to will be chose as result.

ok then I can approve that change :)

/approve
@dims add LGTM if you think this is ok to merge

/lgtm