Latency

Hi,
I am using sounddevice to trig a sound when an event occurs.
Now I am testing the latency that the sound have, I mean I want to know how many time there is between the event and the sound triggered.
I am using Ubuntu and I installed the lowlatency kernel. I have 3 sound card Asusu DX installed as you can see here:
   0 Xonar DX: Multichannel (hw:0,0), ALSA (2 in, 8 out)
   1 Xonar DX: Digital (hw:0,1), ALSA (2 in, 2 out)
   2 HDA Intel PCH: ALC887-VD Analog (hw:1,0), ALSA (2 in, 2 out)
   3 HDA Intel PCH: ALC887-VD Digital (hw:1,1), ALSA (0 in, 2 out)
   4 HDA Intel PCH: ALC887-VD Alt Analog (hw:1,2), ALSA (2 in, 0 out)
   5 HDA Intel PCH: HDMI 0 (hw:1,3), ALSA (0 in, 8 out)
   6 Xonar DX: Multichannel (hw:2,0), ALSA (2 in, 8 out)
   7 Xonar DX: Digital (hw:2,1), ALSA (2 in, 2 out)
   8 Xonar DX: Multichannel (hw:3,0), ALSA (2 in, 8 out)
   9 Xonar DX: Digital (hw:3,1), ALSA (2 in, 2 out)
  10 sysdefault, ALSA (128 in, 128 out)
  11 front, ALSA (0 in, 8 out)
  12 surround40, ALSA (0 in, 4 out)
  13 surround41, ALSA (0 in, 6 out)
  14 surround50, ALSA (0 in, 6 out)
  15 surround51, ALSA (0 in, 6 out)
  16 surround71, ALSA (0 in, 8 out)
  17 iec958, ALSA (0 in, 2 out)
  18 spdif, ALSA (2 in, 2 out)
  19 pulse, ALSA (32 in, 32 out)
  20 dmix, ALSA (0 in, 2 out)
* 21 default, ALSA (32 in, 32 out)

I note that when I use the following command the latency is about 45ms:
sd.play(sound, blocking=False, device = 0)
And if I remove the device info as the following the latency was about 10ms
sd.play(sound, blocking=False)
Could you help me? I need less latency possible, and I need to play different sounds using different cards. So I can't use the default output to play the sound, I need to specify which card.

it's hard to tell what you're asking for help with...Your example just shows that one device has a different latency than another; thats not unexpected. Each hardware device has its own inherent latency and virtual devices will have latency on top of that depending on the configuration.
As a starting point for optimizing for latency did you know you can pass a  latency parameter to the play() function? It's mentioned in the docs here. You can just try passing latency='low' and see how it effects your measured latency.

It could also be interesting to see what the 'default_low_output_latency' and 'default_high_output_latency' values of the different devices are. You get them when you specify a device argument with sd.query_devices().
If you really want to reduce latency, you should be aware that sd.play() starts a fresh PortAudio stream with each invocation, which also takes some amount of time (but I have no clue how much that is).
You can probably reduce the latency further, if you start an sd.OutputStream and then use the write() method on it to trigger the sound.
Or you can try to write your own callback function.
And just out of curiosity: how are you measuring the latency?

Maybe I didn't explain well. I said that I have 3 sound card, but for the moment I am using only one.
@tgarc, as you suggested here (https://github.com/spatialaudio/python-sounddevice/issues/92) I used the function sd.play(sound, blocking=False, device = 0) to control directly the hardware. In this case the latency is about 45ms. Otherwise, when I used the function sd.play(sound, blocking=False) without specify the hardware (but the sound is coming from the same sound card) the latency is about 10ms.
As you said, I fixed the latency to 'low' and now using the function sd.play(sound, blocking=False, device = 0, latency='low') the latency is about 12ms. It is better than before.
I was just interesting why this appends.
@mgeier I saw the two o see what the default_low_output_latency and  default_high_output_latency, you can see here the results:

>>> sd.query_devices()
   0 HDA Intel PCH: ALC887-VD Analog (hw:0,0), ALSA (2 in, 2 out)
   1 HDA Intel PCH: ALC887-VD Digital (hw:0,1), ALSA (0 in, 2 out)
   2 HDA Intel PCH: ALC887-VD Alt Analog (hw:0,2), ALSA (2 in, 0 out)
   3 HDA Intel PCH: HDMI 0 (hw:0,3), ALSA (0 in, 8 out)
   4 Xonar DX: Multichannel (hw:1,0), ALSA (2 in, 8 out)
   5 Xonar DX: Digital (hw:1,1), ALSA (2 in, 2 out)
   6 Xonar DX: Multichannel (hw:2,0), ALSA (2 in, 8 out)
   7 Xonar DX: Digital (hw:2,1), ALSA (2 in, 2 out)
   8 Xonar DX: Multichannel (hw:3,0), ALSA (2 in, 8 out)
   9 Xonar DX: Digital (hw:3,1), ALSA (2 in, 2 out)
  10 sysdefault, ALSA (128 in, 128 out)
  11 front, ALSA (0 in, 2 out)
  12 surround40, ALSA (0 in, 2 out)
  13 surround51, ALSA (0 in, 2 out)
  14 surround71, ALSA (0 in, 2 out)
  15 iec958, ALSA (0 in, 2 out)
  16 spdif, ALSA (0 in, 2 out)
  17 hdmi, ALSA (0 in, 8 out)
  18 pulse, ALSA (32 in, 32 out)
  19 dmix, ALSA (0 in, 2 out)
* 20 default, ALSA (32 in, 32 out)
>>> sd.query_devices(20)
{'hostapi': 0, 'default_samplerate': 44100.0, 'name': 'default', 'default_high_output_latency': 0.034829931972789115, 'default_high_input_latency': 0.034829931972789115, 'default_low_input_latency': 0.008707482993197279, 'default_low_output_latency': 0.008707482993197279, 'max_input_channels': 32, 'max_output_channels': 32}
>>> sd.query_devices(4)
{'hostapi': 0, 'default_samplerate': 44100.0, 'name': 'Xonar DX: Multichannel (hw:1,0)', 'default_high_output_latency': 0.034829931972789115, 'default_high_input_latency': 0.034829931972789115, 'default_low_input_latency': 0.008707482993197279, 'default_low_output_latency': 0.008707482993197279, 'max_input_channels': 2, 'max_output_channels': 8}
>>> sd.query_devices(6)
{'hostapi': 0, 'default_samplerate': 44100.0, 'name': 'Xonar DX: Multichannel (hw:2,0)', 'default_high_output_latency': 0.034829931972789115, 'default_high_input_latency': 0.034829931972789115, 'default_low_input_latency': 0.008707482993197279, 'default_low_output_latency': 0.008707482993197279, 'max_input_channels': 2, 'max_output_channels': 8}

They are the same, right? It is strange for me.
Moreover I saw the function write(). It is not possible to play it on background right?
To compute the latency I am using a National Instrument card connected by RCA cable to sound card and an other cable to an Arduino card that trig the event. In the figure you can see the 2 signals.

I do the opposite, I trigger stuff using sound :) but I also need a low latency. Indeed, I have much better results with OutputStream(). I achieved ~2ms latency with the following setup:

Linux RT kernel;
Consider the Xenomai and the ProAudio tutorials on kernel options

Jack audio server (without pulseaudio);

Using sd.OutputStream():

import sounddevice as SD

SD.default.device = 'system'
SD.default.samplerate = 192000
SD.default.blocksize = 384
SD.default.channels = 2
Stim = SD.OutputStream(dtype='float32')

## Generate your sound arrays
# BG = blahblah
# Gap = arrayofzeros
# Pulse = loremipsum

Stim.start()
for Sound in [BG, Gap, Pulse, BG]:
    Stim.write(Sound)

Stim.stop()

Thanks @malfatti!
I have some question:

Is this solution works to trigger 3 different sound using 3 different soundcard at the same time?
Is this solution works in backgronud?

Because my system needs to run 3 different tasks in the same time, and each one has to control one soundcard.

Sure :)
There should be a simpler way, but to deal with 3 streams and simultaneous write I would use the threading package:
import numpy as np
import sounddevice as SD

from threading import Thread

## Set your things
Rate = 192000       # in Hz
BlockSize = 384     # in samples
ChsPerDevice = 1    # in number
Duration = 3        # in seconds
DeviceIndex = [0, 1, 2]

## Apply settings
SD.default.samplerate = Rate
SD.default.blocksize = BlockSize
SD.default.channels = ChsPerDevice

## Create streams
Streams = [SD.OutputStream(dtype='float32', device=Index) for Index in DeviceIndex]

## Define thread class
class Play(Thread):
    def __init__(self, Stream, Sound):
       Thread.__init__(self)
       self.Stream = Stream
       self.Sound = Sound

    def run(self):
        self.Stream.write(self.Sound)

## Generate your sound arrays
BG = np.random.uniform(-0.3, 0.3, size=(ChsPerDevice, Rate*Duration))
Pulse = np.random.uniform(-1, 1, size=(ChsPerDevice, Rate*Duration))
Gap = np.zeros((ChsPerDevice, Rate*Duration))

Stim = [BG, Pulse, Gap] # Order according to what you want each card to output

## Create threads
Threads = [Play(Stream, Stim[S]) for S, Stream in enumerate(Streams)]

## Play
for S in Streams S.start()
for T in Threads: T.start()

# Do whatever other thing while stimuli are played
# and whenever you want to wait for them all to finish, just:
for T in Threads: T.join()
for S in Streams S.stop()

Unfortunately I cannot test, since I only have one sound card :)

Thanks @malfatti! I will try it.
One question, in this case to use jack audio server I should run 3 jack audio server right? each one for each sound card.

Precisely. I don't know, however, how this would impact on the performance (since all three would have RT priority). I never used 2 jack instances simultaneously.

Thank @malfatti!
At the end I created a function based on OutputStrem and I had a 3-4ms of latency.


Unhandled exception

Description
System.BadImageFormatException: An attempt was made to load a program with an incorrect format.
(0x8007000B)
[1]    25941 abort (core dumped)  dotnet --info

Configuration

Regression?

Other information

Can you share more information about this issue? What source code where you using to get that exception? What is the issue you're trying to solve?


Documentation incorrect call

I believe the code in the ServiceProvider should be bind(), not share().

It looks like this was fixed by #13. I didn't see your issue at the time, sorry about that!
I think this can be close now?


allow multiple all test flags

Hope you don't mind but I've also removed
mod = find_default_export(nb['cells']) from test_nb
mod isn't used and find_default_export has no side effects.

Ah yes, it's probably some code I forgot to remove when I was adding a cell that imports that module. Thanks a lot!


Converter: add warning when running with -jar instead of -cp

Prevents users like me wasting time

Accepting both -cp and -jar would result in even better user experience.
Instead of printing a suggestion, converter can do the trick automatically.

Accepting both -cp and -jar would result in even better user experience. Instead of printing a suggestion, converter can do the trick automatically.

Updated

I've merged PR with minor changes. Thank you for the contribution.


migrate pendingChatMembers to reportMetadata

Explanation of Change

Follow up PR moving another key from report collections to reportMetadata
Fixed Issues

$ https://github.com/Expensify/App/issues/51867
PROPOSAL:
Tests

Create chatroom with two other users
Go offline
Add another member to created chat
Verify it is visible on the members list and it's greyed out

[x] Verify that no errors appear in the JS console

Offline tests

Create chatroom with two other users
Go offline
Add another member to created chat
Verify it is visible on the members list and it's greyed out

QA Steps

// TODO: These must be filled out, or the issue title must include "[No QA]."

Create chatroom with two other users
Go offline
Add another member to created chat
Verify it is visible on the members list and it's greyed out

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] I added unit tests for any new feature or bug fix in this PR to help automatically prevent regressions in this user flow.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native

https://github.com/user-attachments/assets/671aab1e-7e22-45bc-a8da-4bba51f9aa30

Android: mWeb Chrome

https://github.com/user-attachments/assets/68755eea-2a90-434d-8306-766d49cfc282

iOS: Native

https://github.com/user-attachments/assets/a87222a6-53d4-43b5-a69f-686abaca1b52

iOS: mWeb Safari

MacOS: Chrome / Safari

https://github.com/user-attachments/assets/4fbb0cb0-bf79-4e1c-bb80-dfc5e8978e2d

MacOS: Desktop

https://github.com/user-attachments/assets/8a0c9d80-a2bc-4d0a-966a-d760c7e9932c

blocked by https://github.com/Expensify/App/pull/54288

done ✅

@TMisiukiewicz you have conflicts now after I merged the other one.

should be good now 👍

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.


fix: label dom leak when chart re-render

fixed https://github.com/antvis/G2/issues/5390
https://github.com/antvis/G/issues/1475 G 底层 HTML 组件通过 id 查找的 bug

等待 G 发布版本解决。

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 89.434%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
9645

Relevant Lines:
10444

💛  - Coveralls


NodeGroup Broadcasts creates many copies of the message for point to point sends

Original issue: https://charm.cs.illinois.edu/redmine/issues/1633

Broadcast to a nodegroup results in the message being copied once for each destination node.  These are then sent in a loop.
This results in numnodes copies of the message, which has a time, space, and bandwidth cost proportional to the size of the message and the number of hosts.
For large messages (where large varies by machine layer, but 128k should be fine) this should be replaced by an RDMA scheme that arranges for each destination to RDMA get the payload.  Thereby reducing the space and time cost.  This could be further enriched by a spanning tree approach to reduce the single link bandwidth cost, though at the price of increased latency at the leaves.  Probably best to cut over to that scheme when the number of hosts is large, and/or the size of the message is very large (~1G).  This should be implementable using our existing zero copy semantics to avoid writing a new implementation at each machine layer. If not, then we should extend our semantics to facilitate this kind of usage.
An even more advanced scheme would use message layer broadcast primitives.  However, their applicability and portability has its own research agenda, so a distinct subtask should be created for that by whoever goes that direction.

Original date: 2017-07-14 19:26:39

This all boils down to src/arch/util/machine-broadcast.c and the setting of CMK_BROADCAST_USE_CMIREFERENCE in src/conv-cor/conv-config.h. It's default set to 0, because CmiReference and CmiFree would have to use atomic increment/decrement operations. We should make a version of those that uses the atomic operations, and performance test them on applications. My expectation is that they shouldn't hurt anything, and make a lot of other things way easier.
The important characteristic to note is that there's nothing in the messages themselves (including any header fields) that should change from one recipient to the next. It looks like the 'destination rank' field does get set in SendSpanningTreeChildren.
There's also the concern about recipient PEs unpacking the message once they have a pointer to it. Depending on whether we want to optimize for latency or memory footprint, there's a tradeoff between making a copy for local delivery while sending the still-packed copy off to other nodes, or waiting for the remote sends to complete and then locally delivering the original.

Original date: 2018-05-02 23:49:05

~~https://charm.cs.illinois.edu/gerrit/4109~~ https://github.com/UIUC-PPL/charm/commit/cac43d5804a1ab866dd68dfafc13f0070fd32b3d

Original date: 2018-05-08 17:24:36

Enabling this for SMP builds causes megatest to hang at test 0: initiated [groupring (milind)] when run as ./charmrun ++local +p4 ++ppn 2 ./pgm.
(gdb) thread 1
[Switching to thread 1 (Thread 0x7ffff7fd6d00 (LWP 24496))]
#0  0x0000555555929f82 in CmiGetNonLocalNodeQ () at machine-common-core.c:1835
1835        if (!CMIQueueEmpty(CsvAccess(NodeState).NodeRecv)) {
(gdb) bt
#0  0x0000555555929f82 in CmiGetNonLocalNodeQ () at machine-common-core.c:1835
#1  0x0000555555931e80 in CsdNextMessage (s=0x7fffffffe160) at convcore.C:1815
#2  0x0000555555932095 in CsdScheduleForever () at convcore.C:1922
#3  0x0000555555932004 in CsdScheduler (maxmsgs=-1) at convcore.C:1861
#4  0x0000555555929beb in ConverseRunPE (everReturn=0) at machine-common-core.c:1591
#5  0x0000555555929857 in ConverseInit (argc=2, argv=0x7fffffffe3a8, fn=0x555555834dd3 <_initCharm(int, char**)>, usched=0, initret=0) at machine-common-core.c:1484
#6  0x000055555582dd53 in main (argc=2, argv=0x7fffffffe3a8) at main.C:9
(gdb) thread 2
[Switching to thread 2 (Thread 0x7ffff6ee2700 (LWP 24500))]
#0  0x0000555555931e27 in CsdNextMessage (s=0x7ffff6ee1850) at convcore.C:1789
1789            if ( NULL!=(msg=CmiGetNonLocal()) ||
(gdb) bt
#0  0x0000555555931e27 in CsdNextMessage (s=0x7ffff6ee1850) at convcore.C:1789
#1  0x0000555555932095 in CsdScheduleForever () at convcore.C:1922
#2  0x0000555555932004 in CsdScheduler (maxmsgs=-1) at convcore.C:1861
#3  0x0000555555929beb in ConverseRunPE (everReturn=0) at machine-common-core.c:1591
#4  0x000055555592659f in call_startfn (vindex=0x1) at machine-smp.c:414
#5  0x00007ffff7bbd7fc in start_thread (arg=0x7ffff6ee2700) at pthread_create.c:465
#6  0x00007ffff6ff7b5f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
(gdb) thread 3
[Switching to thread 3 (Thread 0x7ffff66e1700 (LWP 24502))]
#0  0x00007ffff6feb951 in __GI___poll (fds=0x7ffff66e0780, nfds=4, timeout=0) at ../sysdeps/unix/sysv/linux/poll.c:29
29      ../sysdeps/unix/sysv/linux/poll.c: No such file or directory.
(gdb) bt
#0  0x00007ffff6feb951 in __GI___poll (fds=0x7ffff66e0780, nfds=4, timeout=0) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x000055555592cf7b in CheckSocketsReady (withDelayMs=0) at machine-eth.c:79
#2  0x000055555592e742 in CommunicationServerNet (sleepTime=0, where=0) at machine-eth.c:720
#3  0x000055555592ee72 in LrtsAdvanceCommunication (whileidle=1) at machine.C:1762
#4  0x0000555555929c1e in AdvanceCommunication (whenidle=1) at machine-common-core.c:1611
#5  0x0000555555929c36 in CommunicationServer (sleepTime=5) at machine-common-core.c:1636
#6  0x0000555555929c77 in CommunicationServerThread (sleepTime=5) at machine-common-core.c:1655
#7  0x0000555555929baf in ConverseRunPE (everReturn=0) at machine-common-core.c:1586
#8  0x000055555592659f in call_startfn (vindex=0x2) at machine-smp.c:414
#9  0x00007ffff7bbd7fc in start_thread (arg=0x7ffff66e1700) at pthread_create.c:465
#10 0x00007ffff6ff7b5f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
(gdb) thread 4
Unknown thread 4.

(gdb) thread 1
[Switching to thread 1 (Thread 0x7ffff7fd6d00 (LWP 24489))]
#0  0x0000555555938057 in ccd_heap_update (curWallTime=18.305255174636841) at conv-conds.c:379
379       ccd_heap_elem *e = h+CpvAccess(ccd_heapmaxlen);
(gdb) bt
#0  0x0000555555938057 in ccd_heap_update (curWallTime=18.305255174636841) at conv-conds.c:379
#1  0x0000555555938a5a in CcdCallBacks () at conv-conds.c:561
#2  0x000055555593211a in CsdScheduleForever () at convcore.C:1959
#3  0x0000555555932004 in CsdScheduler (maxmsgs=-1) at convcore.C:1861
#4  0x0000555555929beb in ConverseRunPE (everReturn=0) at machine-common-core.c:1591
#5  0x0000555555929857 in ConverseInit (argc=2, argv=0x7fffffffe3a8, fn=0x555555834dd3 <_initCharm(int, char**)>, usched=0, initret=0) at machine-common-core.c:1484
#6  0x000055555582dd53 in main (argc=2, argv=0x7fffffffe3a8) at main.C:9
(gdb) thread 2
[Switching to thread 2 (Thread 0x7ffff6ee2700 (LWP 24501))]
#0  0x000055555595d7a3 in CdsFifo_Dequeue (q=0x7ffff0001470) at conv-lists.C:18
18      void *  CdsFifo_Dequeue(CdsFifo q) { return ((_Fifo*)q)->deq(); }
(gdb) bt
#0  0x000055555595d7a3 in CdsFifo_Dequeue (q=0x7ffff0001470) at conv-lists.C:18
#1  0x0000555555931e3b in CsdNextMessage (s=0x7ffff6ee1850) at convcore.C:1790
#2  0x0000555555932095 in CsdScheduleForever () at convcore.C:1922
#3  0x0000555555932004 in CsdScheduler (maxmsgs=-1) at convcore.C:1861
#4  0x0000555555929beb in ConverseRunPE (everReturn=0) at machine-common-core.c:1591
#5  0x000055555592659f in call_startfn (vindex=0x1) at machine-smp.c:414
#6  0x00007ffff7bbd7fc in start_thread (arg=0x7ffff6ee2700) at pthread_create.c:465
#7  0x00007ffff6ff7b5f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
(gdb) thread 3
[Switching to thread 3 (Thread 0x7fffee6e1700 (LWP 24503))]
#0  0x00007ffff6feb951 in __GI___poll (fds=0x7fffee6e0780, nfds=4, timeout=0) at ../sysdeps/unix/sysv/linux/poll.c:29
29      ../sysdeps/unix/sysv/linux/poll.c: No such file or directory.
(gdb) bt
#0  0x00007ffff6feb951 in __GI___poll (fds=0x7fffee6e0780, nfds=4, timeout=0) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x000055555592cf7b in CheckSocketsReady (withDelayMs=0) at machine-eth.c:79
#2  0x000055555592e742 in CommunicationServerNet (sleepTime=0, where=0) at machine-eth.c:720
#3  0x000055555592ee72 in LrtsAdvanceCommunication (whileidle=1) at machine.C:1762
#4  0x0000555555929c1e in AdvanceCommunication (whenidle=1) at machine-common-core.c:1611
#5  0x0000555555929c36 in CommunicationServer (sleepTime=5) at machine-common-core.c:1636
#6  0x0000555555929c77 in CommunicationServerThread (sleepTime=5) at machine-common-core.c:1655
#7  0x0000555555929baf in ConverseRunPE (everReturn=0) at machine-common-core.c:1586
#8  0x000055555592659f in call_startfn (vindex=0x2) at machine-smp.c:414
#9  0x00007ffff7bbd7fc in start_thread (arg=0x7fffee6e1700) at pthread_create.c:465
#10 0x00007ffff6ff7b5f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
(gdb) thread 4
Unknown thread 4.

Original date: 2018-05-08 23:22:42

The std::atomic prerequisite has been satisfied as of ~~https://charm.cs.illinois.edu/gerrit/4108~~ https://github.com/UIUC-PPL/charm/commit/716024c94421c7e4dfdb018bc89ae1ec4a053086 but the existing implementation of CMK_BROADCAST_USE_CMIREFERENCE is incomplete and/or buggy.

Original date: 2018-05-15 21:56:39

When running megatest as ./pgm +p2, failure sometimes occurs before the first test begins, with the message
[1] Assertion "getMsgtype()==BocInitMsg || getMsgtype()==ForBocMsg || getMsgtype()==NodeBocInitMsg || getMsgtype()==ForNodeBocMsg" failed in file ./envelope.h line 437.

getMsgtype() is reported to be 18, or ArrayEltInitMsg.
I sometimes get this instead:
------------- Processor 1 Exiting: Called CmiAbort ------------
Reason: _processBufferedBocInits: empty message

I changed CMK_BROADCAST_SPANNING_TREE to 0 and the problems still occur, so we can rule out those code sections. I also disabled the larger switched sections to no effect -- it must come down to some side effect in the system that is brought out by the small code sections that replace a CopyMsg with a CmiReference.


feat(tql): add initial support for start,stop,step as sql functions

I hereby agree to the terms of the GreptimeDB CLA.
Refer to a related PR or issue link (optional)
https://github.com/GreptimeTeam/greptimedb/issues/3452
https://github.com/GreptimeTeam/greptimedb/issues/3453 (lookback parameter)
What's changed and what's your intention?
TQL parser accepts SQL functions such as now() for  start,end and step parameters:
Please explain IN DETAIL what the changes are in this PR and why they are needed:

enhanced the tql_parser logic with small pre-planning and pre-executing phases to evaluate start,end and step into number (timestamp) if those parameter were passed as SQL functions; The logic is the following

converting the function into “logical” expr
using simplifier evaluate expr.

Checklist

[ ]  I have written the necessary rustdoc comments.
[x]  I have added the necessary unit tests and integration tests.
[x]  This PR does not require documentation updates.

add lookback param support for TQL EVAL
https://github.com/GreptimeTeam/greptimedb/issues/3453

Thank you @waynexia for useful tips(especially with the simplification) and help during the implementation!
It was a great pleasure to collaborate on this ticket!

Thanks for keeping working on this huge and exciting feature. I can't wait to try it out!


Ipad Rotation (home button right) and inmobiSDK pod install

Fixes the problem with iPadOS not being able to rotate to 'home button right' with the newest version of BattleBuddy. Which is problematic for use with keyboard accessory attached to the iPad.
This also includes changing the inmobiSDK to use the pod named version as apposed to the bitbucket link. The link within that repo is supposed to point to the zip file of inmobisdk but the link is giving an 'AccessDenied' message. Updated the pod.lock file in the process.

Thanks for the help here @PieMyth! Sorry I missed this before, but I actually just removed the inmobi SDK and fixed this bug on my master branch. Appreciate the help and hope you will contribute again!


Error output on invalid tokens/options

Heya, I just started playing with it and noticed some UX problem:
If you use an invalid token e.g. '{doesNotExist}' or if you have a tipo like {firsname} it just results in an empty string. This can be confusing, especially if you have a tiny tipo you don't immediately see.
Even worse, if you chose an invalid option, e.g. an unsupported language for a firstname it just seem to silently ignore that option, which results in the user wondering if this language is not supported or the names that are associated with that language are just not properly curated.
I would expect some error output like Invalid token 'firsname' in column 12. and Invalid value 'obscure language here' for option 'language' of token 'firstname' in column 12..
The column output is not strictly necessary but would still be useful information, especially if you have lots of tokens in your template.
Ideally the output we have so far would still be output to stdout, but the error output would be output via the stderr not the stdout, so you can just pipe it to /dev/null if you are not interested in any error messages.

Hey, sorry for the delay, I just noticed this issue now (and for some reason, I never get emails from GH).
I think these changes make sense. Let me work on a quick PR and I'll tag you in it.

So, failing on an unknown token/word is pretty straightforward, i'll open the PR in a minute (I cleaned up the error handling in general with a bit of a newer approach i've taken in other libraries, which will let callers determine the type of error to take further action if need be).
The unknown language one, with how i've currently structured it, is a bit more difficult - it was designed so you could provide a list of "desired" languages, but that it would always fall-back to the default language if there were no language-specific spellings found. So it's sort of designed around the idea of always giving you something in the default language as a last resort, instead of failing.
I'll open the PR and you can provide feedback on the language issue there if you'd like

Heya, thx for reacting so quickly. 😃
I can see why you wouldn't want to output errors on false languages. I would still argue that you should (Maybe prefix it as warning instead of error) because if you output the warning to stderr and the fallback output to stdout you could still easily pipe the stderr to /dev/null. Or if you pipe the output like moldova ... | myslq ... it will still work, as the stderr won't be redirected by default. However I see your point and won't hold it against you if you stick to it. 😉
I will take a look at your PR and test it a little on the weekend.

TL;DR; the logging to stderr is a workable idea, but to make it work smoothly for the library and the standalone binary, it will take a little refactoring.
The other concern here with just emitting to stderr is that Moldova is meant to function both as a library, and as a standalone binary.
So I don't want to just emit to stderr if something goes wrong from inside the library, ideally I'd only want to do that from the binary.
This means that I need to make it so people can pass in a logger to be used, so that the caller of the code can define "When an error happens but isn't stop-the-world bad, how do I learn about it?" via the logger.
So while I do think your idea works, it will take a bit of time to make it so the caller can define the log they want to emit to (because maybe they also want it to go to stdout for some reason, you never know).
I might punt on that part for now, in lieu of fixing the core issue you reported, but open a new PR once the current one is closed where i refactor and make it friendly to custom logging.

Contradicting myself a bit, I've been thinking about it and I could see where, if you provided a language which we had 0 support for (ie, is not in the languages collection overall), that would be an error.
Under the current design, you've built the template wrong, but the system has no direct tangible way of informing you, other than to fail. But in this case, it doesn't. That seems wrong to me lol.
The logger abstraction would still work for other purposes, but this does feel like maybe I was wrong and it makes sense to return an error (when the language flat out doesn't exist in the system).

Alright - I went with the hard error when a language doesn't exist at all, updated the PR - writing some tests now

Sorry for the delay, I had quite the week and a half.
Looks quite good to me. 👍
To your point of using it both as a library and as a tool: I totally agree that a library should really not just output stuff to either stderr or stdout. However I think there is a pretty easy sollution (I haven't looked at your code yet). I would just have my render template function return an error but not output anything and then just have the error output to stderr inside of the cli-tool part of the code.

That is how it works now, actually. My concern was to keep it that way in
the face of these changes, which i think I've accomplished.
If The code looks good, I can merge and do an official release tonight.
On Jul 13, 2017 06:35, "Luca Corbatto"<EMAIL_ADDRESS>wrote:

Sorry for the delay, I had quite the week and a half.
Looks quite good to me. 👍
To your point of using it both as a library and as a tool: I totally agree
that a library should really not just output stuff to either stderr or
stdout. However I think there is a pretty easy sollution (I haven't looked
at your code yet). I would just have my render template function return an
error but not output anything and then just have the error output to stderr
inside of the cli-tool part of the code.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/StabbyCutyou/moldova/issues/14#issuecomment-315040604,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABdTKt1JWJwlBFNzgVOwrC-uLUuP8V2fks5sNfMDgaJpZM4OB59E
.

Brilliant! That should make your tool a lot more easily usable. 😃

Released v2.0.0 since this sort of breaks the existing way the templates are handled. should be all set.


Add test for "Incorrect redirecting assembly to the GAC" #144

:white_check_mark: Build ConfuserEx 489 completed (commit https://github.com/mkaring/ConfuserEx/commit/bd885d2196 by @KvanTTT)

:white_check_mark: Build ConfuserEx 490 completed (commit https://github.com/mkaring/ConfuserEx/commit/287181d62e by @KvanTTT)

But this issue is not fixed yet, there is Skip attribute in the test.

I am aware. But I can't update this PR and creating PRs that are based on other PRs isn't working very well, expecially if you merge the PR by rebase or squash. So I merged this PR because it just creates an disabled test and continued the work in #232


Quiz 6

Database state:
sqlite> SELECT * FROM quizzes;
id  title    description        is_active  updated_at           created_at           deleted_at  photo
--  -------  -----------------  ---------  -------------------  -------------------  ----------  ------------------------------------------------------------
1   Quiz 1   This is quiz N1.   1          2023-11-24 10:32:12  2023-11-24 10:32:12              https://images.unsplash.com/photo-1606326608606-aa0b62935f2b
2   Quiz 2   This is quiz N2.   1          2023-11-24 10:32:12  2023-11-24 10:32:12              https://images.unsplash.com/photo-1539628399213-d6aa89c93074
3   Quiz 3   This is quiz N3.   1          2023-11-24 10:32:12  2023-11-24 10:32:12              https://images.unsplash.com/photo-1488190211105-8b0e65b80b4e
4   Quiz 4   This is quiz N4.   1          2023-11-24 10:32:12  2023-11-24 10:32:12              https://images.unsplash.com/photo-1539628399213-d6aa89c93074
5   Quiz 5   This is quiz N5.   1          2023-11-24 10:32:12  2023-11-24 10:32:12              https://images.unsplash.com/photo-1488190211105-8b0e65b80b4e
6   Quiz 6   This is quiz N6.   1          2023-11-24 10:32:12  2023-11-24 10:32:12              https://images.unsplash.com/photo-1539628399213-d6aa89c93074
7   Quiz 7   This is quiz N7.   1          2023-11-24 10:32:12  2023-11-24 10:32:12              https://images.unsplash.com/photo-1539628399213-d6aa89c93074
8   Quiz 8   This is quiz N8.   1          2023-11-24 10:32:12  2023-11-24 10:32:12              https://images.unsplash.com/photo-1520004434532-668416a08753
9   Quiz 9                      1          2023-11-24 10:32:12  2023-11-24 10:32:12              https://images.unsplash.com/photo-1488190211105-8b0e65b80b4e
10  Quiz 10  This is quiz N10.  1          2023-11-24 10:32:12  2023-11-24 10:32:12
11  Quiz 11  This is quiz N11.  0          2023-11-24 10:32:12  2023-11-24 10:32:12              https://images.unsplash.com/photo-1520004434532-668416a08753
12  Quiz 12  This is quiz N12.  0          2023-11-24 10:32:12  2023-11-24 10:32:12              https://images.unsplash.com/photo-1539628399213-d6aa89c93074
13  Quiz 13  This is quiz N13.  0          2023-11-24 10:32:12  2023-11-24 10:32:12
14  Quiz 14  This is quiz N14.  1          2023-11-24 10:32:12  2023-11-24 10:32:12              https://images.unsplash.com/photo-1606326608606-aa0b62935f2b
15  Quiz 15                     0          2023-11-24 10:32:12  2023-11-24 10:32:12              https://images.unsplash.com/photo-1606326608606-aa0b62935f2b
16  Quiz 16                     1          2023-11-24 10:32:12  2023-11-24 10:32:12              https://images.unsplash.com/photo-1606326608606-aa0b62935f2b
17  Quiz 17  This is quiz N17.  0          2023-11-24 10:32:12  2023-11-24 10:32:12              https://images.unsplash.com/photo-1488190211105-8b0e65b80b4e
18  Quiz 18  This is quiz N18.  1          2023-11-24 10:32:12  2023-11-24 10:32:12              https://images.unsplash.com/photo-1488190211105-8b0e65b80b4e
19  Quiz 19  This is quiz N19.  0          2023-11-24 10:32:12  2023-11-24 10:32:12


Why was privateDNSZone Property ManagedClusterAPIServerAccessProfile custom removed

Hi guys,
https://learn.microsoft.com/en-us/azure/templates/microsoft.containerservice/managedclusters?pivots=deployment-language-bicep
I see in the change log 2020-11-01 that ManagedClusterAPIServerAccessProfile privateDNSZone property now restricts to allowed values only 'system' and 'none', therefore a custom resource id string can longer be defined for the private zone.
This is still currently available with az cli 2.48.1
--private-dns-zone                            : Private dns zone mode for private cluster.
Allowed values are "system", "none" or custom private dns zone resource id. If not set,
defaults to type system. Requires --enable-private-cluster to be used.
What are the options for defining this with the latest Bicep API?
Thanks
Dan

Can you share a repro in bicep demonstrating the issue? It sounds like this is an issue with the resource provider's API definition, but hard to say for sure.

Hi Alex, thanks for coming back to me, I don't have a repro at this point I'm afraid. Do you think the resource id could still be supported then, shall I remove the allowed value definition for the parameter and try? I'm  researching deployment options for a private cluster with custom DNS. I've opened a separate issue with the docs team as they refer to defining the id but don't specify which Param.

There is no change with this specific setting privateDNSZone

it's just the text "Allowed values are 'system' and 'none'." that is incorrect, however the link with more information has the correct settings, which can include the private dns zone resourceid, so you can just ignore that text.

The docs link within the description, has the correct information as below:

https://learn.microsoft.com/en-us/azure/templates/microsoft.containerservice/managedclusters?pivots=deployment-language-bicep#managedclusterapiserveraccessprofile

privateDNSZone
The default is System. For more details see configure private DNS zone. Allowed values are 'system' and 'none'.
string

That link takes you here:

https://learn.microsoft.com/en-us/azure/aks/private-clusters#create-a-private-aks-cluster-with-a-custom-private-dns-zone-and-custom-subdomain

# The custom private DNS zone name should be in one of the following formats: "privatelink.<region>.azmk8s.io" or "<subzone>.privatelink.<region>.azmk8s.io"

az aks create -n <private-cluster-name> -g <private-cluster-resource-group> --load-balancer-sku standard --enable-private-cluster --enable-managed-identity --assign-identity <resourceID> --private-dns-zone <custom private dns zone resourceID> --fqdn-subdomain <subdomain>

The value used there is: --private-dns-zone <custom private dns zone resourceID>
This is the exact same setting in Bicep
    apiServerAccessProfile: {
      authorizedIPRanges: bool(AKSInfo.privateCluster) || bool(AKSInfo.?AllowALLIPs ?? false) ? null : AllowIPList
      enablePrivateCluster: bool(AKSInfo.privateCluster)
      privateDNSZone: bool(AKSInfo.privateCluster) ? DNSAKSPrivate.id : null // <-- this one
      enablePrivateClusterPublicFQDN: true
    }

This results in private cluster and this record will be set in the provided zone within the deployment.

If you do not provide the resourceId for the zone the deployment will create a new private DNS zone in the managed resource group.

After you deploy this you will see something similar to below on the cluster.
    privateLinkResources: [
      {
        id: '/subscriptions/fe8c6f31-247d-4941-a62d-fde7a2185aca/resourcegroups/AEU1-PE-AKS-RG-D2/providers/Microsoft.ContainerService/managedClusters/AEU1-PE-AKS-D2-aks01/privateLinkResources/management'
        name: 'management'
        type: 'Microsoft.ContainerService/managedClusters/privateLinkResources'
        groupId: 'management'
        requiredMembers: [
          'management'
        ]
      }
    ]
    apiServerAccessProfile: {
      enablePrivateCluster: true
      privateDNSZone: '/subscriptions/fe8c6f31-247d-4941-a62d-fde7a2185aca/resourceGroups/ACU1-PE-HUB-RG-P0/providers/Microsoft.Network/privateDnsZones/privatelink.eastus.azmk8s.io'
      enablePrivateClusterPublicFQDN: true
    }

opened docs bug:

https://github.com/MicrosoftDocs/azure-docs/issues/108915

We can move this issue over to api specs repo.


Update version file.

Missed updating the version file in v2.12.0.  Since this is community, and it is only really 'informational' for the user, I don't think it is a huge deal that our release doesn't reflect it, but if there is an easy way to fix the tags we can give it a shot (probably not).  We could alternatively do a quick v2.12.1 release that updates it again?

It would be nice if we could update the release. It looks like we could update the tag locally and push it, but I'm not sure if the source assets would update automatically.
Easiest might be to just delete the release and create it fresh.

It would be nice if we could update the release. It looks like we could update the tag locally and push it, but I'm not sure if the source assets would update automatically.
Easiest might be to just delete the release and create it fresh.

Will deleting the release delete the tag too?  I figured the release just points to a tag.  Deleting tags is not something I understand very well so It makes me nervous to do anything with it.

Will deleting the release delete the tag too?  I figured the release just points to a tag.  Deleting tags is not something I understand very well so It makes me nervous to do anything with it.


Rename 'async' to 'async_'

Rename 'async', it's a reserved keyword with py3.7
Description
This is a simple change that just renames 'async' to 'async_'. Starting with python 3.7, async became a reserved keyword and without this change we see errors like these:
  File "/usr/lib/python3/dist-packages/libcloud/compute/drivers/azure.py", line 1438
    def _perform_post(self, path, body, response_type=None, async=False):
                                                                ^
                                                                SyntaxError: invalid syntax

In https://github.com/apache/libcloud/pull/1227#issuecomment-405817214, it was suggested to remove this argument entirely, but I'm not familiar enough with the code to do that, and this seems like a simpler fix to get things going.
Status

done, ready for review

Checklist (tick everything that applies)

[ ] Code linting (required, can be done after the PR checks)
[ ] Documentation
[x] Tests
[ ] ICLA (required for bigger changes)

Thanks!
I think async can be removed altogether: all those methods are private and async is always False.
See https://github.com/apache/libcloud/pull/1227#issuecomment-405817214 for more things to do to support Python 3.7.

Should I just remove this bit entirely then from libcloud/compute/drivers/azure.py:1473?
        if async:
            return self._parse_response_for_async_op(response)

@panlinux Yes, please! Thanks for tackling this.

Thanks! Merged in trunk. ✨


Update monitor-pool.md

This doc still contained some bad / old references, erroneous error messages, and straight up misspellings.
Fixed to the best of my knowledge.

@steved0x
Can you review the proposed changes?
Important: When the changes are ready for publication, adding a #sign-off comment is the best way to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

@bjompen Thank you!
#sign-off


feat: default to tls=preferred for mysql connection

Description
For communication from manager to mysql server, use tls=preferred parameter to enable TLS whenever possible. This should not be a breaking change, as per the library documentation the client will only attempt to use TLS if supported by the server. But this will fix the case where the manager cannot connect to a server that requires TLS.
Related Issue
https://github.com/dragonflyoss/Dragonfly2/issues/1299
Motivation and Context
Currently Manager cannot connect to a MySQL database that requires TLS, without fully configuring certs/keys (functionality added in https://github.com/dragonflyoss/Dragonfly2/pull/1015). By adding this new default, TLS will be used whenever possible (even with only password), without breaking any existing functionality.
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Documentation Update (if none of the other choices apply)

Checklist

[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.

Can tls be changed to manager configuration?
https://github.com/dragonflyoss/Dragonfly2/blob/main/manager/config/config.go#L71

@gaius-qi  Yes I like that better, I will make the change.

@gaius-qi Yes I like that better, I will make the change.

Thx

@gaius-qi  I have added it to the configuration, and created a PR to update the docs here: https://github.com/dragonflyoss/d7y.io/pull/79

You can refer to harbor, TLSConfig is used to set the SSL mode, do not rename the TLS configuration.
When ssl mode is preferred and skip-verify set InsecureSkipVerify to true.
https://github.com/goharbor/harbor/blob/main/src/vendor/github.com/go-sql-driver/mysql/dsn.go#L48

Please fix unit tests. @embroede
2022-06-27T12:42:43.5657961Z === RUN   TestManagerConfig_Load
2022-06-27T12:42:43.5658567Z     config_test.go:107:
2022-06-27T12:42:43.5659014Z         	Error Trace:	config_test.go:107
2022-06-27T12:42:43.5659405Z         	Error:      	Not equal:
2022-06-27T12:42:43.5662766Z         	            	expected: &config.Config{Options:base.Options{Console:false, Verbose:false, PProfPort:0, Telemetry:base.TelemetryOption{Jaeger:"", ServiceName:""}}, Server:(*config.ServerConfig)(0xc00005b840), Database:(*config.DatabaseConfig)(0xc000338330), Cache:(*config.CacheConfig)(0xc000338340), ObjectStorage:(*config.ObjectStorageConfig)(0xc000012900), Metrics:(*config.MetricsConfig)(0xc00004f4c0)}
2022-06-27T12:42:43.5666560Z         	            	actual  : &config.Config{Options:base.Options{Console:false, Verbose:false, PProfPort:0, Telemetry:base.TelemetryOption{Jaeger:"", ServiceName:""}}, Server:(*config.ServerConfig)(0xc00005bb00), Database:(*config.DatabaseConfig)(0xc000339610), Cache:(*config.CacheConfig)(0xc000339b20), ObjectStorage:(*config.ObjectStorageConfig)(0xc000012fc0), Metrics:(*config.MetricsConfig)(0xc00004fc80)}
2022-06-27T12:42:43.5667595Z
2022-06-27T12:42:43.5667961Z         	            	Diff:
2022-06-27T12:42:43.5668504Z         	            	--- Expected
2022-06-27T12:42:43.5668899Z         	            	+++ Actual
2022-06-27T12:42:43.5669429Z         	            	@@ -33,3 +33,3 @@
2022-06-27T12:42:43.5669999Z         	            	    Migrate: (bool) false,
2022-06-27T12:42:43.5670858Z         	            	-   TLSConfig: (string) (len=9) "preferred",
2022-06-27T12:42:43.5671408Z         	            	+   TLSConfig: (string) "",
2022-06-27T12:42:43.5671986Z         	            	    TLS: (*config.TLSConfig)({
2022-06-27T12:42:43.5672378Z         	Test:       	TestManagerConfig_Load
2022-06-27T12:42:43.5672763Z --- FAIL: TestManagerConfig_Load (0.01s)
2022-06-27T12:42:43.5673014Z FAIL

@gaius-qi Sorry about that, fixed.


IR-412: IBMCloud: Add support for endpoint overrides

Add support to override IBM Cloud Service endpoints, when provided.
Related: https://issues.redhat.com/browse/IR-412

Nice work @cjschaef. I have no objections towards merging this. Do you have a plan in regards to px, docs and qe approval?
/test e2e-ibm-ovn

/test e2e-aws-operator

@flavianmissi We will be providing some documentation for IBM Cloud Restricted Network setup and configuration. At this time, these code changes are dependent on the installer, the CCM, and MAPI, to even get to a point to exercise this code (I've best testing in a Disconnected environment). But there are still some items I am working on yet related to the installer.
I will want to work with QE on whether an environment can be configured to test IBM Cloud Disconnected, as I know it requires a good number of user configuration steps and resource setup at this time. If I am able, I'd like to also investigate extending the ibmcos_test.go tests, in case I can add something there. If I can do that before 4.15 FF.

Thanks for clarifying @cjschaef.
@wewang58 is our QE currently, she might be able to help you out with a cluster.
Maybe you already know this but you can reach the image registry team in Red Hat internal Slack at #forum-ocp-imageregistry if you need faster response.
Also recall that TRT is blocking non-critical merges for the next two weeks due to shift week and US holidays, this might affect your plans for 4.15 (it surely has affected mine).

@flavianmissi Okay, thanks for the details.
I have completed testing of these changes in my Disconnected (air-gapped) environment, using all of the changes with installer, CCM, and MAPI, to validate this Operator came up successfully and was using the provided overrides, and was able to communicate with the IBM Cloud Service endpoints (overrides), using IBM Cloud VPC VPE Gateways.
I'll have to guide @wewang58 on the complete setup of this Disconnected environment, and the current dependencies, and limitations (other ClusterOperators require similar changes, etc.), given the vast number of changes across components to test this code, and other components to get a happy IPI cluster (Storage, etc.), if we are going to need that kind of confirmation. It is certainly non-trivial by default, not including the requirement of these other dependent PR's.
Otherwise, not breaking existing functionality, for Public, Private, and BYON IBM Cloud IPI clusters would be good confirmation.
Okay, I believe we will be working on getting approval for these feature changes for the TRT.

https://github.com/openshift/api/pull/1657 has merged, I will attempt to update the api go dep and update the ServiceName's to use these new enum's.

/retest

Sounds like a plan @cjschaef.
I'll leave it to you to sync with Wen to get QE approval. Do let me know if I can help.

/lgtm
it looks like QE needs some help testing this.

/docs-approved

/label px-approved

/label docs-approved

Now installer qe team is trying to provide a private cluster which support for endpoint overrides, they met some issues need time to resolve.

Tested in version: 4.15.0-0.ci.test-2023-12-08-081140-ci-ln-1sdsy7t-latest, cos endpoint is override, thanks @jianlinliu  provides the cluster
/label qe-approved

/retest

/retest

/retest-required

/test e2e-hypershift-conformance

It looks like the e2e-hypershift-conformance failures are consistent across other PR's as well.
Not sure if that issue is being addressed, or whether we can ignore the failure, given the code changes aren't involved, as other PR's suffer the same failure.

Yep it does happen everywhere. Let's retry one last time before I make some noise.
/retest

last error looks different than the previous.
/retest

@flavianmissi the e2e-hypershift-conformance test is failing in other PRs as well. Are we certain there isn't an issue with the test itself? The code in this PR doesn't have any hypershift relationship.

oh yes there certainly is an issue with the these tests - I was just hoping they had fixed it between today and yesterday but it doesn't look like it. I'll have to find out how to skip them, will write back here when I know more.

/override ci/prow/e2e-hypershift-conformance

@cjschaef we need to backport this PR into 4.15 branch, right?

@jianlinliu It would appear so. Let me try to get that done.
/cherry-pick release-4.15


Razer logo not lighting up

Is there really no option to make the logo (in my case the razer logo) light up?

Not with the current public version, no. I didn't include it because I was not able to find Razer users to test with. I've got a bunch of Logitech and Corsair users.

This is a small cosmetic issue I noticed as well. Any way I can help resolve this? If you point me where to look I can try and resolve it..?


Knip reports sass-loader as unused dependency

When using sass-loader in the React component to load .scss files, knip reports this as an unused dependency. For example:
import 'style-loader!css-loader!sass-loader!./App.scss';

"devDependencies": {
   "sass-loader": "^14.0.0"
}

Holy crap, is that a thing. Yeah currently it strips of !.*

https://github.com/webpro/knip/blob/main/packages/knip/src/util/modules.ts#L74
I think it actually doesn't mark any of those loaders from that specifier alone. I guess style-loader and css-loader are referenced elsewhere/differently too?

Shouldn't those loaders be referenced in Webpack config (or what else understands this)?
And then I guess those should be listed in package.json as well.

Sounds like Knip behaves as expected then? Why is sass-loader listed?

Not sure if this is an issue with Knip. This feels similar to using peer dependencies. If you remove sass-loader from the list it shouldn't break?
From Knip perspective, the question might be whether sass-loader being referenced in an import specifier is enough, and I'm on the fence with that. Either way, it wouldn't be trivial to support and I think it won't happen soon. So at this point there isn't much I can do, sorry.

Ok, well it breaks if I remove the sass-loader dependency. Have to just add it to the ignoredDependencies list then

Yes here knip should detect sass-loader as a dependency because it's explicitly listed: https://webpack.js.org/concepts/loaders/#inline
This type of loader configuration is very old and has been mostly replaced by rules in webpack.config.js, but the docs still mention it as first-class 🤷♂ 🤢


[Bug]: ODC v4.2.4 cannot connect to ODP Sharding

ODC version
4.2.4
OB version
not related
What happened?
ODC v4.2.4 cannot connect to ODP Sharding, ODC v4.2.3 is okay.
What did you expect to happen?
ODC v4.2.4 can connect to ODP Sharding
How can we reproduce it (as minimally and precisely as possible)?
create a ODP Sharding datasource,
try connect.
Anything else we need to know?
No response

test pass


Can't resolve 'mobx' in '.../node_modules/mobx-react' after install in a fresh react app

Module not found: Can't resolve 'mobx' in '/Users/jco/my-app/node_modules/mobx-react'
Steps:

follow guide here:
https://github.com/facebook/create-react-app/blob/master/README.md#getting-started

yarn start

confirm app works (it does)

yarn add mobx-react

add import { observer } from 'mobx-react'; to src/App.js

Result:
Failed to compile
./node_modules/mobx-react/index.module.js
Module not found: Can't resolve 'mobx' in '/Users/jcol53/learning/my-app/node_modules/mobx-react'
This error occurred during the build time and cannot be dismissed.

This could be a react issue but the relevant issue is locked.

Add it.
yarn add mobx-react mobx-persist mobx mobx-react-form validatorjs valid-url

That yarn add seems to have fixed it. Is this a bug?

No, mobx is a peer dependency. It is like using react-dom without react
Op vr 15 jun. 2018 23:58 schreef jcollum-nike<EMAIL_ADDRESS>
That yarn add seems to have fixed it. Is this a bug?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/mobxjs/mobx-react/issues/506#issuecomment-397752748,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABvGhKlAHWSgVbBfO-VFvz0GMBZnKSOCks5t9C32gaJpZM4UqMEY
.


Insert action ac009 ac0010

the plain move of code and injecting empty actions 9 and 10
all these insert actions PRs are super hard to read but I have no idea how to do it better, maybe just do it automatically by code so we don't have to double-check changes

If it is so painful we could also sort out the "insert automation". I am just not sure how much of an issue this is in general or if this just hurts once in a while. Feel free to raise this in the team. 🙈


Not getting Mail if i set AnalyzeWithDoctorDump= "false".

If i set AnalyzeWithDoctorDump as false i am not getting mail. @ravibpatel

Try it like this.
var reportCrash = new ReportCrash
{
	AnalyzeWithDoctorDump = false,
	SmtpHost = "smtp.gmail.com",
	Port = 465
	EnableSSL = true,
	UserName = "Your Gmail Account Email",
	Password = "Your Gmail Account Password",
        ToEmail = "Email address where you want receive crash reports",
	FromEmail = "Any Email you want",
	DeveloperMessage = developerMessage,
};

I tried that but i am getting following error:

Can you try following steps.
Allowing less secure apps to access your account

I got the same error after allowing less secure apps to access my gmail account

Try 587 in Port.

Yeah it worked. Thanks


How to filter liveness request form kiali

Describe the bug

This unknow service is liveness, how to filter it?
Expected behavior
undisplay it from kiali
Steps to reproduce the bug
add http liveness
Version
Version: 1.0.4
GitRevision: d5cb99f479ad9da88eebb8bb3637b17c323bc50b
User: root@8c2feba0b568
Hub: docker.io/istio
GolangVersion: go1.10.4
BuildStatus: Clean

Client Version: version.Info{Major:"1", Minor:"12", GitVersion:"v1.12.0", GitCommit:"0ed33881dc4355495f623c6f22e7dd0b7632b7c0", GitTreeState:"clean", BuildDate:"2018-09-28T15:18:13Z", GoVersion:"go1.11", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.3", GitCommit:"a4529464e4629c21224b3d52edfe0ea91b072862", GitTreeState:"clean", BuildDate:"2018-09-09T17:53:03Z", GoVersion:"go1.10.3", Compiler:"gc", Platform:"linux/amd64"}

Installation
helm
Environment
Centos
Cluster state

As far as i know  that is stored by istio and Kiali only displays what Istio have saved.
I pinged the developers of Kiali about this.

As far as i know that is stored by istio and Kiali only displays what Istio have saved.
I pinged the developers of Kiali about this.

How to fix it?

don't use port -> containerPort directive in k8s deployment/Pod

don't use port -> containerPort directive in k8s deployment/Pod

If you don't use port -> containerPort, it will cause jaeger don't trace inbound problems.

i changed the match spec rule resource named promhttp in namespace istio-system
context.protocol == "http" || context.protocol == "grpc"
(context.protocol == "http" || context.protocol == "grpc") && ( request.path != "/healthz")
cause i use /healthz for my livenessProbe

i changed the match spec rule resource named promhttp in namespace istio-system
context.protocol == "http" || context.protocol == "grpc"
(context.protocol == "http" || context.protocol == "grpc") && ( request.path != "/healthz")
cause i use /healthz for my livenessProbe

I use this yaml to fix it, it's more general
---
apiVersion: "config.istio.io/v1alpha2"
kind: rule
metadata:
  name: promhttp
  namespace: istio-system
spec:
  match: (context.protocol == "http" || context.protocol == "grpc") && ( match(request.useragent, "kube-probe*") == false )
  actions:
  - handler: handler.prometheus
    instances:
    - requestcount.metric
    - requestduration.metric
    - requestsize.metric
    - responsesize.metric

So if having match: (context.protocol == "http" || context.protocol == "grpc") && match(request.useragent | "", "kube-probe*") == false in promhttp sounds good, maybe it could come as a default in istio templates for kubernetes? What do you think?

@jotak +1 to your suggestion. If you feel up to it, please send a PR my way. Otherwise, I'll get to it when I next am at a computer.

@jotak +1

Seems that the patch does not work on GKE.
The probe does not return kube-probe as user-agent:
test-health-5c97cfdfbb-lwbg6 istio-proxy [2019-03-27T13:18:25.386Z] "- - -" 0 - "-" 119 181 0 - "-" "-" "-" "-" "<IP_ADDRESS>:8080" inbound|8080||test-health.default.svc.cluster.local <IP_ADDRESS>:57026 <IP_ADDRESS>:8080 <IP_ADDRESS>:37926 -

It still show the http liveness unknown icon.
My promhttp configuration:

you can set test-health

@anthonyhaussman you use tcp liveness?

@Liv1020 I use HTTP liveness:
...
    spec:
      containers:
      - image: infrastructureascode/hello-world
        imagePullPolicy: Always
        livenessProbe:
          failureThreshold: 3
          httpGet:
            path: /health
            port: 8080
            scheme: HTTP
          periodSeconds: 10
          successThreshold: 1
          timeoutSeconds: 1
        name: test-health
        ports:
        - containerPort: 8080
          protocol: TCP
        readinessProbe:
          failureThreshold: 3
          httpGet:
            path: /health
            port: 8080
            scheme: HTTP
          periodSeconds: 10
          successThreshold: 1
          timeoutSeconds: 1
...

This still doesn't seem to be fixed. I'm running Istio 1.1.5 and I have a service with a liveness check on the same port that still shows up as unknown in Kiali.
I checked the user-agent of the request and it's: kube-probe/1.12
The promhttp match rule looks like:
match: (context.protocol == "http" || context.protocol == "grpc") && (match((request.useragent
| "-"), "kube-probe*") == false)
It doesn't seem to matter what I put in the match for promhttp. But when I remove the liveness check from my service the unknown traffic goes away.

This still doesn't seem to be fixed. I'm running Istio 1.1.5 and I have a service with a liveness check on the same port that still shows up as unknown in Kiali.
I checked the user-agent of the request and it's: kube-probe/1.12
The promhttp match rule looks like:
match: (context.protocol == "http" || context.protocol == "grpc") && (match((request.useragent
| "-"), "kube-probe*") == false)
It doesn't seem to matter what I put in the match for promhttp. But when I remove the liveness check from my service the unknown traffic goes away.

Your liveness is http?

@Liv1020 I use HTTP liveness:
...
    spec:
      containers:
      - image: infrastructureascode/hello-world
        imagePullPolicy: Always
        livenessProbe:
          failureThreshold: 3
          httpGet:
            path: /health
            port: 8080
            scheme: HTTP
          periodSeconds: 10
          successThreshold: 1
          timeoutSeconds: 1
        name: test-health
        ports:
        - containerPort: 8080
          protocol: TCP
        readinessProbe:
          failureThreshold: 3
          httpGet:
            path: /health
            port: 8080
            scheme: HTTP
          periodSeconds: 10
          successThreshold: 1
          timeoutSeconds: 1
...

What version about istio and k8s?

kube-probe/1.12

I use istio 1.1.5 too, k8s is 1.13.5. I hasn't this problem, you can modify promhttp file to test

@Liv1020 I updated k8s to 1.13.5 and still have the problem. promhttp is correct as well and excludes kube-probe. But unknown traffic still appears in Kiali for liveness checks.

@dbarentine Can you show connect-dev service 's istio-proxy log?

@Liv1020 This dump is from three days ago. I can pull a more recent version in the morning if you need.
istio-dump.tar.gz

@dbarentine istio-dump/logs/dev/connect-dev-699f55479f-qjgwz/istio-proxy.log not accesslog, please look https://istio.io/docs/tasks/telemetry/logs/access-log/#enable-envoy-s-access-logging enable

@Liv1020 I apologize for the delay but here are the access logs for a connect-dev instance.
connect-dev.log

mybe you use tcp health check

It's definitely an httpGet. I've tried it with and without the readinessProbe:
      containers:
      - name: {{ .Release.Name }}
        image: {{ .Values.image.repository }}:{{ .Values.image.tag }}
        livenessProbe:
          httpGet:
            path: /heartbeat
            port: {{ .Values.resources.port }}
          initialDelaySeconds: 30
          timeoutSeconds: 10
          periodSeconds: 60
        readinessProbe:
          httpGet:
            path: /heartbeat
            port: {{ .Values.resources.port }}
          initialDelaySeconds: 10
          timeoutSeconds: 10
          periodSeconds: 60

It seems like the problem here is not really the filter in promhttp but rather that the Envoy proxy doesn't seem to have any of the typical request information. At least it's not logging it.
If I change Envoy's access log format to be the following:
[%START_TIME%],%REQ(:METHOD)%,%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%,%PROTOCOL%,%REQ(USER-AGENT)%\n

All I ever get is:
[2019-05-24T18:02:46.222Z],-,-,-,-
[2019-05-24T18:02:59.090Z],-,-,-,-
[2019-05-24T18:02:06.178Z],-,-,-,-
[2019-05-24T18:03:46.222Z],-,-,-,-
[2019-05-24T18:03:59.090Z],-,-,-,-

I suspect that because of that promhttp never filters it because Envoy seems to see the user-agent as empty. But I'm pretty sure I checked user-agent at the application level and it was correct there.
Looks identical to the problem in #13551

I appeared to have inadvertently fixed this. I was messing with tracing and traffic management when I came across this page: https://istio.io/faq/traffic-management/ which at the bottom talks about port names.
It turns out my ports weren't named following the convention. Once I renamed them though, all the unknown traffic for the liveness requests seems to have disappeared from Kiali.

@dbarentine  This doc will help you, https://istio.io/docs/setup/kubernetes/additional-setup/requirements/. This issue can close?

@Liv1020 Yes good to close the issue from my standpoint.


When there is no lockscreen password (and fingerprint/face recognition is not enabled), hitting enter in "Set Keystore Password" screen does nothing

Set keystore password is for export only. But there seems to be something odd happening here.


Setup billing management system in Azure in cpg-infra

Create billing management functions in Azure
Sub-tasks:

[ ] Create subscription level deployment of a function "stop-compute" that applies a policy to any child resource group able to prevent new compute (using a policy) and pause/stop existing vms in the resource group
[ ] Add dataset level budget triggers (either a pub/sub like equivalent or budget trigger) to call the global "stop-compute" function when budget is exceeded
[ ] Add a follow up trigger/dataset function that when a budget is increased/updated (using pulumi) the "stop-compute" function is called to re-enable compute on that resource group (change the policy back to allow vms again)
[ ] Test the setup to ensure that when budget is exceeded vms are prevented/stopped
[ ] Test the setup to ensure that when the budget is increased through pulumi vms are allowed

Hey @violetbrina, going to dismiss my review until you're ready for me again


[Bug] Positions of cardcount icons faulty when in two display mode Pt. II (2nd Screen)

So here is the situation on my second screen (wacom cintiq 13 HD @ 1080p):
If start hearthstone and put it onto my 2nd screen it looks like this when HSTracker satarts:

After I deactivate and activate the "auto tracker position" in the preferences menus, the Tracker positions were smoothly resetted:

After I focussed the HS window per click into it, the Tracker windows jump to these positions again:

This is my arrangement for the Screens:

But I changed it a few times to check it out and it didn't seem to be it what is responsible for that phenomenon.

This should (maybe) be fixed by next version (coming today (probably))

Can't wait! I am thrilled about the new candidate!

Update: Still faulty Card-Icons while using HSTracker on the second screen or using it on the mainscreen and clicking on the second.

I know what's cause this, but did not find the cause nor the resolution. I'm closing this one because it's the same error than #313


JSON Filter does not work

Bug description
The 2.1.0 release notes claims that "When querying data, you can now perform basic filtering with Json fields using equal and not".
However, it's not true - looks like the filter object is treated as the JSON payload.
prisma:query SELECT "public"."Post"."uuid", "public"."Post"."createdAt", "public"."Post"."updatedAt", "public"."Post"."published", "public"."Post"."title", "public"."Post"."content", "public"."Post"."authorId", "public"."Post"."kind", "public"."Post"."metadata" FROM "public"."Post" WHERE "public"."Post"."uuid" = $1 LIMIT $2 OFFSET $3
{ publishedOnWikiLeaks: false }
prisma:query SELECT "public"."Post"."uuid", "public"."Post"."createdAt", "public"."Post"."updatedAt", "public"."Post"."published", "public"."Post"."title", "public"."Post"."content", "public"."Post"."authorId", "public"."Post"."kind", "public"."Post"."metadata" FROM "public"."Post" WHERE "public"."Post"."metadata"::jsonb = $1 OFFSET $2
[]
prisma:query SELECT "public"."Post"."uuid", "public"."Post"."createdAt", "public"."Post"."updatedAt", "public"."Post"."published", "public"."Post"."title", "public"."Post"."content", "public"."Post"."authorId", "public"."Post"."kind", "public"."Post"."metadata" FROM "public"."Post" WHERE "public"."Post"."metadata"::jsonb = $1 OFFSET $2
[
  {
    uuid: 'f2d47551-366d-4e9f-a437-25a361537603',
    createdAt: 2019-08-17T00:00:00.000Z,
    updatedAt: 2020-06-10T12:19:57.330Z,
    published: false,
    title: 'Post title 2',
    content: 'Content 2',
    authorId: 1,
    kind: 'ADVERT',
    metadata: { publishedOnWikiLeaks: false }
  }
]

How to reproduce

import { PrismaClient } from "./prisma/generated/client";

async function main() {
  const prisma = new PrismaClient({
    log: ["query"],
  });

  const post = await prisma.post.findOne({
    where: {
      uuid: "f2d47551-366d-4e9f-a437-25a361537603",
    },
  });
  console.log(post?.metadata);

  console.log(
    await prisma.post.findMany({
      where: {
        metadata: {
          equals: post?.metadata,
        },
      },
    }),
  );
  console.log(
    await prisma.post.findMany({
      where: {
        metadata: post?.metadata,
      },
    }),
  );

  await prisma.disconnect();
}

main().catch(console.error);

Expected behavior

Properly filter by equal and not equal.
Prisma information

model Post {
  uuid      String    @default(uuid()) @id
  metadata  Json
}

Environment & setup

@prisma/cli          : 2.1.0
Current platform     : debian-openssl-1.1.x
Query Engine         : query-engine<PHONE_NUMBER>795a0424be62040e2295c56e5c6ad0 (at<EMAIL_ADDRESS>Migration Engine     : migration-engine-cli<PHONE_NUMBER>795a0424be62040e2295c56e5c6ad0 (at<EMAIL_ADDRESS>Introspection Engine : introspection-core<PHONE_NUMBER>795a0424be62040e2295c56e5c6ad0 (at<EMAIL_ADDRESS>Format Binary        : prisma-fmt<PHONE_NUMBER>795a0424be62040e2295c56e5c6ad0 (at<EMAIL_ADDRESS>

OS: WSL Ubuntu 20.04
Database: PostgreSQL
Prisma version: 2.1.0
Node.js version: v14.3.0

I can confirm this.
Reproduction is very detailed. Huge thanks for that. I will add running this SQL statement to make it complete:
INSERT INTO "public"."Post" ("metadata", "uuid") VALUES ('{"test":"test"}', 'f2d47551-366d-4e9f-a437-25a361537603');

Same problem with :
prisma.my_table.findMany({
   where: {
      some_jsonb_column: {
        not: null,
      }
   },
  });

Does not return any result.

Thanks for reporting! This is fixed in 2.1.2.


Improve Table typing

Changes

We no longer depend on @types/react-table. Instead, I merged the types from @types/react-table with our custom types from react-table.config.ts. The new file is called react-table.ts.

We now export all react-table types from a new endpoint called /react-table.

import { Table } from '@itwin/itwinui-react';
- import { Column, TableState } from 'react-table';
+ import { Column, TableState } from '@itwin/itwinui-react/react-table';

But for our internal files, we make no change. i.e. We still import from react-table. This is because of the following reason:

Since we don't depend on @types/react-table anymore, I added paths to the compilerOptions in itwinui-react/tsconfig.json to point to our react-table-types.d.ts for the types. This enables intellisense/type checking to work correctly without any import change.

Exposed endpoint /react-table works only for new node versions. Thus, react-table.ts is transpiled to react-table.d.ts and stored in the root folder so that this file is accessible to users with old node versions who cannot use the exports map in package.json and have to import by paths. (https://github.com/iTwin/iTwinUI/pull/1514#discussion_r1317310924)
Instead of each of the row data to extend object (like in @types/react-table), each row data now extends Record<string, unknown> (like in our Table files (e.g. TextFilter))

- export type Column<D extends object = {}> = ...
+ export type Column<D extends Record<string, unknown> = {}> = ...

Since we are now fixing Table types properly, I undid the parts of #1072 that were meant to be temporary changes.
Created tsconfig.react-table.json to transpile react-table.ts to react-table.d.ts. This is used in @itwinui-react's build and dev:types scripts.
@itwinui-react's test is not split into yarn test:types (new) and yarn test:unit (existing). yarn test:types checks the types of all Table files (including unit tests, etc.) and not just the files that will be built using tsc.

Testing

First, I ensured that the below long and convoluted type error when doing [...] satisfies Column<DataType>[] was fixed:

...
Type Record<string, unknown> is not assignable to type TableStoryDataType.

Then I created react-table-types.test.tsx to only verify that there were no type errors for some unique cases. This also ensures there are type errors where we expected them. No unit testing is done here.
I then fixed all type errors in Table.story.tsx.
I created yarn test:types scripts that ran tsc --noEmit (docs) on all Table files in itwinui-react (including react-table-types.test.tsx), and also Table.stories.tsx in storybook.

As mentioned in the below TODOs section, I hope to extend these type checks to other files too in a future PR.

Docs

I fixed all type errors in Table.stories.tsx. These fixes demonstrate how to use satisfies or sometimes provide types to the function parameters to solve type errors.
I did not add anything to the website, because the Table doc page was not complete before this PR. When working on the Table page in the future, we can include info about this PR.
I updated CONTRIBUTING.md to mention that itwinui-react unit tests are now run using yarn test:unit instead of yarn test. I didn't mention about yarn test:types as of now since this script only tests the types for Table files and not all files. But in the future PR that checks the types for all files, I will include info about this script.
TODOs:

This PR:

[x] Confirm that the Table -> Full story's hover is working correctly.
[x] Confirm that the Table -> StatusAndCellIcons story is loading correctly.
[x] Double check react-table-types.d.ts once again (https://github.com/iTwin/iTwinUI/pull/1514#discussion_r1320051718)

Separate PRs:

[ ] Disallow top level header. i.e. Remove the backward compatibility added in #1072
[ ] Test for types across all pertinent parts of the repo, instead of just type checking in Table files
[ ] Add Table types info to docs site

LGTM! nice work, and everything seems to work much better now.

Thanks!

would be nice if you can remove outdated parts from PR description before merging.

Sounds good, updated.

do we need wiki for these changes?

Added:


Metal rendering in mixed immersion now supported in VisonOS 2

https://developer.apple.com/wwdc24/10092
It sounds like depth rendering would need to be properly implemented first.
https://github.com/scier/MetalSplatter/issues/12

I was so happy about that. This has absolutely moved to the top of my TODO list for MetalSplatter :-)


Add documentation about using local files in custom schemas

Closes: #7
If there are any other details I should mention or edits I should make please let me know. Thanks

I force pushed because I didn't want to have a bunch of commits in the history for this. Hopefully that's fine

Thank you!


When enabling "Service Mesh" , "Ingress Gateway" is disabled by default .

Rancher Server version - Build from master  - Jun 7
Steps to reproduce the problem:
Create a cluster.
Try to enable "Service Mesh" .
When enabling "Service Mesh" , "Ingress Gateway" is disabled by default .
Should we have this option enabled by default?
Only with Ingress gateway deployed we will have the gateway url being made available which is needed for viewing "Traffic Graph" when accessing services created with "VirtualService"  and "Gateway" in namespace enabled with istio-injection=enabled label.
Also mixer policy is not enabled by default .Should we have this option enabled by default as well?

Even without ingress gateway, users still can see the traffic graph and traffic metrics. Confirmed with Darren , we don’t need to enable them by default during design review meeting

For mixer policy, I think we should make it enabled by default.

Created another issue for enabling mixer policy https://github.com/rancher/rancher/issues/20840

Per @ibuildthecloud the ingress gateway should be disable by default because it requires additional DNS configuration.

Close, see https://github.com/rancher/rancher/issues/20738#issuecomment-501898183


Self Registration with ApprovalWorkflow does not check if the password meets the established pattern.

Describe the issue:
When configure Approval workflow to registration process, the form does not check if the password meet with the patterns established in the Resident Identity Provider.
How to reproduce:

Configure the Approval Workflow like this.
Configure Self Registration like this.
Configure Password Patterns like this
Click on Create Account, enter Username and click Proceed.... Enter any password that does not meet the established pattern.

Expected behavior:
The user should get a notification about the established pattern.
Environment information (Please complete the following information; remove  any unnecessary fields) :

Product Version: [IS 5.10.0]
OS: [Docker 19.03.8]
Database: [PostgreSQL 12.2]
Userstore: [JDBC]

This issue is being closed due to extended inactivity. Please feel free to reopen it if further attention is needed. Thank you for helping us keep the issue list relevant and focused!


add Ontology Service Landscape article

Description
We added an article describing the ontologies included in the SwateDB and how to use and contribute to them.

Cool!
I would suggest to remove the bold formatting from headlines. This disturbs the TOC.

And please double-check the table. I can see it displayed properly in vscode preview, but apparently fornax does not like it.

You can also check the rendering locally. Explained here:  https://nfdi4plants.org/nfdi4plants.knowledgebase/docs/CONTRIBUTING.html

@Brilator please check formally

Looks good from my side.
Just two things:

the image resolution seems low
Do me a favor and list the images in the image index src/docs/image-index.md


Add travis nightly job for builders

A nightly cron job that runs all the builder tests.
Make sure that the builder tests ONLY RUN during this job, and never on each commit, as they take too long.
it should produce a nice report of which tests are passing and which are failing and why they're failing

think this can go away, we have other cards about testing where we do the basis in our OVH server


Performance improvement of cupy.unique

Description
Use thrust::unique for 1d-unique for the performance.
https://github.com/cupy/cupy/pull/7985#issuecomment-1935030682
Additional Information
No response

Also, when implementing https://github.com/cupy/cupy/pull/7985, I found that `


Retry session

We've found with CircleCI that we randomly received timeouts when using standalone selenium Chrome instance.
From time to time these timeouts occur more often and seem to randomly disappear again. My suspicion is that the networking of CircleCI (I believe they use AWS) cannot be relied upon to disable the timeouts in the tests.
Is there a particular reason why the start of the session is not retried?

I would very much like this fixed as well if there's not a reason for the retries being stripped out. it also affects my use case


When run with the -r flag, pmenu opens the menu whenever the button is pressed, not only on the root window.

Steps to reproduce: install dwm, open a window, run
pmenu -r 3 <<!
a
b
!

right click on the window, pmenu still opens a menu.
Expected behaviour: This only happens when clicking on the root window, like what happens with xsetroot.

Fixed!
The behavior was  actually theexpected when a modifier was provided with the -m option.  Since I always use pmenu with the -m option I never realized it didn't work without it.


Updating to 0.12.1.

Updating conda package to aGrUM 0.12.1.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@conda-forge-admin, please rerender


Default embedded content to null.

I've been playing around with this library to write a bot that posts to Blue Sky every so often.  I noticed that whenever I posted something that did not contain a link, the post would show up very briefly on the account's timeline and profile.  However, it would disappear after a couple of minutes.  Any other logged in account wouldn't see the post at all.
Stranger still, the client did not report any HTTP errors.  And the posts appear just fine when querying /xrpc/com.atproto.repo.listRecords.  But, I did notice something.
When posting through Blue Sky's web interface, the message JSON looks like this:
{
  "uri": "at://did:plc:wyvn4l5fxqfva2u2shmc7xp6/app.bsky.feed.post/3lbrzykiqer2c",
  "cid": "bafyreibxeidxzc43w5e37yn4vguponi77exzl6eelk4fla5nb464olysom",
  "value": {
    "text": "Testing to see if PDS at at.shendrick.net is working!",
    "$type": "app.bsky.feed.post",
    "langs": [
      "en"
    ],
    "facets": [
      {
        "index": {
          "byteEnd": 41,
          "byteStart": 25
        },
        "features": [
          {
            "uri": "https://at.shendrick.net",
            "$type": "app.bsky.richtext.facet#link"
          }
        ]
      }
    ],
    "createdAt": "2024-11-25T17:23:17.619Z"
  }
}

However, when posting with this library, I noticed it adds an "embed" property with a bunch of empty strings when no URL is present.
{
  "uri": "at://did:plc:wyvn4l5fxqfva2u2shmc7xp6/app.bsky.feed.post/3lbw7jox5322i",
  "cid": "bafyreianmrjszogap2subqsc6vquxzuidvwldxyym5wz7efmaq4u2mfo3a",
  "value": {
    "text": "Chirp! The PDS at at.shendrick.net is still online as of: Wednesday, November 27 2024, 4:13AM server time.\nServer's been up for 0 days, 0 hours. #Uptime",
    "$type": "app.bsky.feed.post",
    "embed": {
      "$type": "",
      "external": {
        "uri": "",
        "title": "",
        "description": ""
      }
    },
    "langs": [
      "en",
      "en-US"
    ],
    "facets": [
      {
        "index": {
          "byteEnd": 152,
          "byteStart": 145
        },
        "features": [
          {
            "tag": "Uptime",
            "$type": "app.bsky.richtext.facet#tag"
          }
        ]
      }
    ],
    "createdAt": "2024-11-27T09:13:00Z"
  }
}

When I tweaked this library's default embed value to null instead of a bunch of empty strings, posts without any embeds now show up as expected!

I also tweaked how the timestamp string was generated.  This issue with the current way is it does not include milliseconds.  I remember reading somewhere (lost the link, sadly) that not including milliseconds may cause posts to not show up in the search windows on Blue Sky.  "o" puts it in the correct format that ATProto requires.

Quick disclaimer:  I haven't tested anything else besides my one bot with this change.

Hi! Thank you for your PR!


Have sz-search automatically update identifier drop down on config change

The pulldown can hit a race condition when running against api server instances that are not on default port number. This affects web-components more than standard angular usage since the webcomponents configure their api config through a component that renders in the page instead of being compiled.
The search component will try and pull it's identifier list immediately using the default settings, get an error, then the config change will happen and the list is never updated unless done so explicitly.
We should do this automatically on config change.

Pull Requests:

https://github.com/Senzing/sdk-components-ng/pull/85


enhancement in stats and newsletter section

Current behavior

Proposed changes

Improved the stats and newsletter section in terms of visual presentation

Checks

[x] All commits in this Pull Request are signed and Verified by Github.

Okay will work on it

Please review

Hey @mahekkg , deployment for your changes is failing. you have to look for this.

Hey can you guide me regarding the issue as I cannot see what's wrong.

I would like to work on this issue Please assign me this issue under GSSoC'24
I have experience doing this.
LinkedIn - https://www.linkedin.com/in/sohan-guptha/
Mail -<EMAIL_ADDRESS>

Hey can you guide me regarding the issue as I cannot see what's wrong.

okay, I'll check it up and reach out to once get some time.

Hey @mahekkg, This error is being displayed on vercel, there are issue from react-hot-toast library. you can remove it or use alternatives.

@Yash636261 can I generate a new pull  request?

@Yash636261 can I generate a new pull request?

go for it!!

@Yash636261 can I generate a new pull request?

go for it!!

Thanks,
https://github.com/TechNodes2-0/ElectiveHub/pull/115


Modify _encode_datetime_with_cftime for compatibility with cftime > 1.4.0

[x] Closes #4870
[x] Tests added
[x] Passes pre-commit run --all-files
[x] User visible changes (including notable bug fixes) are documented in whats-new.rst

LGTM - did you check if that makes it slower? (Probably not as vectorize is also a for loop under to hood).
I think the failures are #4873 and #4865

Thanks @mathause -- indeed the timings are pretty similar.
Before:
In [1]: import numpy as np; import xarray as xr

In [2]: times = xr.cftime_range("2000", periods=1000).values

In [3]: units = "days since 2000-01-01"

In [4]: calendar = "gregorian"

In [5]: %%timeit
   ...: xr.coding.times._encode_datetime_with_cftime(times, units, calendar)

15.5 ms ± 170 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)

After:
In [1]: import numpy as np; import xarray as xr

In [2]: times = xr.cftime_range("2000", periods=1000).values

In [3]: units = "days since 2000-01-01"

In [4]: calendar = "gregorian"

In [5]: %%timeit
   ...: xr.coding.times._encode_datetime_with_cftime(times, units, calendar)

14.9 ms ± 160 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)


Update stop tag to accept strings

Description:
The NextBus library was updated with #26681 to accept strings for the value self.stops, but the sensor itself was not updated to leverage that change and stop tags containing non-numeric values are still causing problems.
Related issue (if applicable): #24561
Pull request with documentation for home-assistant.io (if applicable): home-assistant/home-assistant.io#
Example entry for configuration.yaml (if applicable):
sensor:
  - platform: nextbus
    name: 48 Est
    agency: stl
    route: 48E
    stop: "CP47048"

Checklist:

[x] The code change is tested and works locally.
[x] Local tests pass with tox. Your PR cannot be merged unless tests pass
[x] There is no commented out code in this PR.
[x] I have followed the development checklist

If user exposed functionality or configuration variables are added/changed:

[not yet] Documentation added/updated in home-assistant.io

If the code communicates with devices, web services, or third-party tools:

[N/A] The manifest file has all fields filled out correctly. Update and include derived files by running python3 -m script.hassfest.
[N/A] New or updated dependencies have been added to requirements_all.txt by running python3 -m script.gen_requirements_all.
[N/A] Untested files have been added to .coveragerc.

If the code does not interact with devices:

[x] Tests have been added to verify that the new code works.

Hello @Grodesh,
When attempting to inspect the commits of your pull request for CLA signature status among all authors we encountered commit(s) which were not linked to a GitHub account, thus not allowing us to determine their status(es).
The commits that are missing a linked GitHub account are the following:

d5e69cc87a26a49eb24f78f0b5918f6830c9495e - This commit has something that looks like an email address (grodesh@gmail.com). Maybe try linking that to GitHub?.

Unfortunately, we are unable to accept this pull request until this situation is corrected.
Here are your options:

If you had an email address set for the commit that simply wasn't linked to your GitHub account you can link that email now and it will retroactively apply to your commits. The simplest way to do this is to click the link to one of the above commits and look for a blue question mark in a blue circle in the top left. Hovering over that bubble will show you what email address you used. Clicking on that button will take you to your email address settings on GitHub. Just add the email address on that page and you're all set. GitHub has more information about this option in their help center.

If you didn't use an email address at all, it was an invalid email, or it's one you can't link to your GitHub, you will need to change the authorship information of the commit and your global Git settings so this doesn't happen again going forward. GitHub provides some great instructions on how to change your authorship information in their help center.

If you only made a single commit you should be able to rungit commit --amend --author="Author Name<EMAIL_ADDRESS>
(substituting Author Name and<EMAIL_ADDRESS>for your actual information) to set the authorship information.
If you made more than one commit and the commit with the missing authorship information is not the most recent one you have two options:

You can re-create all commits missing authorship information. This is going to be the easiest solution for developers that aren't extremely confident in their Git and command line skills.
You can use this script that GitHub provides to rewrite history. Please note: this should be used only if you are very confident in your abilities and understand its impacts.

Whichever method you choose, I will come by to re-check the pull request once you push the fixes to this branch.

We apologize for this inconvenience, especially since it usually bites new contributors to Home Assistant. We hope you understand the need for us to protect ourselves and the great community we all have built legally. The best thing to come out of this is that you only need to fix this once and it benefits the entire Home Assistant and GitHub community.
Thanks, I look forward to checking this PR again soon! :heart:

Is there anything else I have to do to fix the cla-error other than adding my email address to my GitHub account? The instructions provided are not clear to me, and after reading the cla blog post from 2017, I’m not sure how to correct the situation to get the link to sign the cla. Do I just wait for a bot to get back to and reverify this PR at a later time or can I actively do something about it?
Thanks for your help!

Hi @Grodesh,
It seems you haven't yet signed a CLA. Please do so here.
Once you do that we will be able to review and accept this pull request.
Thanks!


I try to enable the splash screen and after some seconds disable it

I noticed the same message this morning. confused me a little since it comes up from calling .hide(), but anyways.. just for clarification, this is being through from SplashScreen.java line 120.
this only comes up for me if the app launches without showing any splash screen, which means there is nothing to hide, and it doesn't break anything else in my app startup. 🤔 @aparajita is this "expected behaviour", despite the incorrect error message string?

For me even when the SplashScreen is showing it does not work when i try to call hide and show in the app

@danielehrhardt @ZaLiTHkA I can't help anyone without seeing the plugin configuration and your code.


Try to unconfig runner before delete the pod.

There is a trace condition between ARC and GitHub service about deleting runner pod.

The ARC use REST API to find a particular runner in a pod that is not running any jobs, so it decides to delete the pod.
A job is queued on the GitHub service side, and it sends the job to this idle runner right before ARC deletes the pod.
The ARC delete the runner pod which cause the in-progress job to end up canceled.

To avoid this race condition, I am calling r.unregisterRunner() before deleting the pod.

r.unregisterRunner() will return 204 to indicate the runner is deleted from the GitHub service, we should be safe to delete the pod.
r.unregisterRunner will return 400 to indicate the runner is still running a job, so we will leave this runner pod as it is.

TODO: I need to do some E2E tests to force the race condition to happen.

@TingluoHuang Hey! Thanks a lot for your contribution.
I completely forgot the fact that the deletion of a runner on scale down is usually handled by the processRunnerDeletion function in the same Reconcile process, rather than where you patched.
processRunnerDeletion works in concert with Kubernetes's built-in functionality that cascade-deletes resources. It firstly unregisters the runner, then removes the k8s resource finalizer(which is a marker that prevents K8s from cascade-deletion), so that after the reconciliation success, K8s detects the runner has no finalizer and commit cascade-deleting the runner and the runner pod.
Your patch would instead fix a race issue when the runner pod needs to be recreated (due to token update, possible registration timeout, recreating the ephemeral runner's pod that stopped by itself). It's still a nice thing to have so I'm definitely going to merge this soon!
But note that we'd still need to implement a much longer grace period between the time ARC unregisters the runner and it deletes the runner pod, as we've been discussing at https://github.com/actions-runner-controller/actions-runner-controller/pull/1085#issuecomment-1031539089

But note that this fix isn't perfect can be incomplete, as we apparently saw the usual runner pod termination process(=processRunnerDeletion), which is already handled the way you do in this PR, doesn't seem like race-free.

I noticed that this can be my mistake. If we can safely assume that GitHub Actions can guarantee that no runner will get a new job assigned after a successful RemoveRunner call, this can be the enough and sufficient fix for the race issue.
cc/ @jbkc85