Out of memory error on GPU 0

运行deepspeech2offline_aishell模型的时候提示：
Connected to pydev debugger (build 201.8538.36)
/home/ssd/suimang/miniconda3/envs/paddle/lib/python3.7/site-packages/librosa/core/constantq.py:1059: DeprecationWarning: np.complex is a deprecated alias for the builtin complex. To silence this warning, use complex by itself. Doing this will not modify any behavior and is safe. If you specifically wanted the numpy scalar type, use np.complex128 here.
Deprecated in NumPy 1.20; for more details and guidance: https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations
dtype=np.complex,
[2022-05-23 09:27:06,773] [    INFO] - start to init the model
[2022-05-23 09:27:06,774] [    INFO] - File /root/.paddlespeech/models/deepspeech2offline_aishell-zh-16k/asr0_deepspeech2_aishell_ckpt_0.1.1.model.tar.gz md5 checking...
[2022-05-23 09:27:11,201] [    INFO] - Use pretrained model stored in: /root/.paddlespeech/models/deepspeech2offline_aishell-zh-16k/asr0_deepspeech2_aishell_ckpt_0.1.1.model.tar
[2022-05-23 09:27:11,201] [    INFO] - /root/.paddlespeech/models/deepspeech2offline_aishell-zh-16k/asr0_deepspeech2_aishell_ckpt_0.1.1.model.tar
[2022-05-23 09:27:11,201] [    INFO] - /root/.paddlespeech/models/deepspeech2offline_aishell-zh-16k/asr0_deepspeech2_aishell_ckpt_0.1.1.model.tar/model.yaml
[2022-05-23 09:27:11,201] [    INFO] - /root/.paddlespeech/models/deepspeech2offline_aishell-zh-16k/asr0_deepspeech2_aishell_ckpt_0.1.1.model.tar/exp/deepspeech2/checkpoints/avg_1.pdparams
[2022-05-23 09:27:13,483] [    INFO] - unique_endpoints {''}
[2022-05-23 09:27:13,484] [    INFO] - File /root/.paddlespeech/models/language_model/data/lm/zh_giga.no_cna_cmn.prune01244.klm md5 checking...
[2022-05-23 09:27:20,268] [    INFO] - Found /root/.paddlespeech/models/language_model/data/lm/zh_giga.no_cna_cmn.prune01244.klm
/home/ssd/suimang/miniconda3/envs/paddle/lib/python3.7/site-packages/_distutils_hack/init.py:30: UserWarning: Setuptools is replacing distutils.
warnings.warn("Setuptools is replacing distutils.")
W0523 09:27:20.295001 1187855 gpu_context.cc:278] Please NOTE: device: 0, GPU Compute Capability: 8.6, Driver API Version: 11.5, Runtime API Version: 10.2
W0523 09:27:20.299127 1187855 gpu_context.cc:306] device: 0, cuDNN Version: 8.3.
[2022-05-23 09:27:30,077] [    INFO] - Preprocess audio_file:/home/ssd/suimang/project/PaddleSpeech/1.wav
[2022-05-23 09:27:30,091] [    INFO] - audio feat shape: [1, 707, 161]
[2022-05-23 09:27:30,092] [    INFO] - audio feat process success
[2022-05-23 09:27:58,393] [    INFO] - start to infer the model to get the output
Traceback (most recent call last):
File "/home/ssd/suimang/miniconda3/envs/paddle/lib/python3.7/site-packages/paddle/fluid/dygraph/base.py", line 354, in _decorate_function
return func(*args, **kwargs)
File "/home/ssd/suimang/project/PaddleSpeech/paddlespeech/cli/asr/infer.py", line 302, in infer
result_transcripts = self.model.decode(audio, audio_len)
File "/home/ssd/suimang/miniconda3/envs/paddle/lib/python3.7/site-packages/decorator.py", line 232, in fun
return caller(func, *(extras + args), **kw)
File "/home/ssd/suimang/miniconda3/envs/paddle/lib/python3.7/site-packages/paddle/fluid/dygraph/base.py", line 354, in _decorate_function
return func(*args, **kwargs)
File "/home/ssd/suimang/project/PaddleSpeech/paddlespeech/s2t/models/ds2/deepspeech2.py", line 171, in decode
eouts, eouts_len = self.encoder(audio, audio_len)
File "/home/ssd/suimang/miniconda3/envs/paddle/lib/python3.7/site-packages/paddle/fluid/dygraph/layers.py", line 930, in call
return self._dygraph_call_func(*inputs, **kwargs)
File "/home/ssd/suimang/miniconda3/envs/paddle/lib/python3.7/site-packages/paddle/fluid/dygraph/layers.py", line 915, in _dygraph_call_func
outputs = self.forward(*inputs, **kwargs)
File "/home/ssd/suimang/project/PaddleSpeech/paddlespeech/s2t/models/ds2/deepspeech2.py", line 77, in forward
x, x_lens = self.conv(x, x_lens)
File "/home/ssd/suimang/miniconda3/envs/paddle/lib/python3.7/site-packages/paddle/fluid/dygraph/layers.py", line 930, in call
return self._dygraph_call_func(*inputs, **kwargs)
File "/home/ssd/suimang/miniconda3/envs/paddle/lib/python3.7/site-packages/paddle/fluid/dygraph/layers.py", line 915, in _dygraph_call_func
outputs = self.forward(*inputs, **kwargs)
File "/home/ssd/suimang/project/PaddleSpeech/paddlespeech/s2t/models/ds2/conv.py", line 168, in forward
x, x_len = self.conv_in(x, x_len)
File "/home/ssd/suimang/miniconda3/envs/paddle/lib/python3.7/site-packages/paddle/fluid/dygraph/layers.py", line 930, in call
return self._dygraph_call_func(*inputs, **kwargs)
File "/home/ssd/suimang/miniconda3/envs/paddle/lib/python3.7/site-packages/paddle/fluid/dygraph/layers.py", line 915, in _dygraph_call_func
outputs = self.forward(*inputs, **kwargs)
File "/home/ssd/suimang/project/PaddleSpeech/paddlespeech/s2t/models/ds2/conv.py", line 114, in forward
masks = make_non_pad_mask(x_len)  #[B, T]
File "/home/ssd/suimang/project/PaddleSpeech/paddlespeech/s2t/modules/mask.py", line 90, in make_non_pad_mask
return make_pad_mask(lengths).logical_not()
File "/home/ssd/suimang/project/PaddleSpeech/paddlespeech/s2t/modules/mask.py", line 61, in make_pad_mask
seq_range = paddle.arange(0, max_len, dtype=paddle.int64)
File "/home/ssd/suimang/miniconda3/envs/paddle/lib/python3.7/site-packages/paddle/tensor/creation.py", line 567, in arange
return paddle.fluid.layers.range(start, end, step, dtype, name)
File "/home/ssd/suimang/miniconda3/envs/paddle/lib/python3.7/site-packages/paddle/fluid/layers/tensor.py", line 1505, in range
out = _C_ops.range(start, end, step)
SystemError: (Fatal) Operator range raises an paddle::memory::allocation::BadAlloc exception.
The exception content is
:ResourceExhaustedError:
Out of memory error on GPU 0. Cannot allocate 1.035075EB memory on GPU 0, 1.563965GB memory has been allocated and available memory is only 22.135559GB.
Please check whether there is any other process using GPU 0.

If yes, please stop them, or start PaddlePaddle on another GPU.
If no, please decrease the batch size of your model.
If the above ways do not solve the out of memory problem, you can try to use CUDA managed memory. The command is export FLAGS_use_cuda_managed_memory=false.
(at /paddle/paddle/fluid/memory/allocation/cuda_allocator.cc:87)
. (at /paddle/paddle/fluid/imperative/tracer.cc:307)
但是我0卡的显存应该够用啊，是我输入的不对么，下面的代码：
import paddle
from paddlespeech.cli import ASRExecutor

asr_executor = ASRExecutor()
text = asr_executor(
model='deepspeech2offline_aishell',
lang='zh',
sample_rate=16000,
config=None,  # Set config and ckpt_path to None to use pretrained model.
ckpt_path=None,
audio_file='1.wav',
force_yes=False,
device=paddle.get_device())
print('ASR Result: \n{}'.format(text))

我推理的7秒的音频，转成cpu就可以运行了，这是为什么？

你可以按照提示试试，可能 GPU 有问题？
If yes, please stop them, or start PaddlePaddle on another GPU.
If no, please decrease the batch size of your model.
If the above ways do not solve the out of memory problem, you can try to use CUDA managed memory. The command is export FLAGS_use_cuda_managed_memory=false.
(at /paddle/paddle/fluid/memory/allocation/cuda_allocator.cc:87)
. (at /paddle/paddle/fluid/imperative/tracer.cc:307)

我在运行demo时遇到了同样的问题，export FLAGS_use_cuda_managed_memory=false无用。paddlespeech asr --lang zh --input zh.wav ，Out of memory error on GPU 0. Cannot allocate 655.142555PB memory on GPU 0, 1.729004GB memory has been allocated and available memory is only 21.970520GB

paddle降级到2.3.0试试


[bug] killed:9

:)
A "Killed: 9" error typically indicates that your program was forcibly terminated by the operating system, often due to excessive memory usage or other resource constraints. This is also known as the "SIGKILL" signal.
Based on the log messages and the error, here are a few potential reasons for this issue:

FFmpeg not found: The warning message suggests that FFmpeg wasn't found in the expected resources directory. This could lead to unexpected behavior if the program relies on a specific FFmpeg version.

Memory usage: The [save_frames_as_video](file:///Users/louisbeaumont/Documents/screen-pipe/screenpipe-server/src/video.rs#202%2C4-202%2C4) function (lines 14-128 in the first code block) seems to be handling video encoding. If this process is consuming too much memory, it might trigger the OS to kill the program.

Resource exhaustion: The program is using thread pools and multiple threads for video capture and encoding. If too many resources are being used simultaneously, it could lead to the program being terminated.

To address this issue:

Ensure FFmpeg is properly installed and accessible.
Monitor the memory usage of your program during execution.
Consider implementing more efficient memory management in the video processing functions.
Add error handling and graceful shutdown mechanisms to better manage resources.

For more detailed debugging:

Run the program with increased logging.
Use tools like top or htop to monitor resource usage while the program is running.
Implement checkpoints in your code to identify where the program is failing.

If you need more specific advice, please provide more details about the exact circumstances when this error occurs.

memory is very poorly managed atm, tons of optims there anyway

likely memory leak (only happen after running screenpipe for 20h)

i solved the problem, not pushing until i tested a bit for longer times, lmk if anyone wanna try too

suspecting it's not even a memory issue, just apple deciding to kill the process because it's not signed and run for a while :)
https://stackoverflow.com/questions/51833310/what-is-killed9-and-how-to-fix-in-macos-terminal

maybe related
somehow the vision logic stop running after long running overnight with sleep etc
simple workaround now is to have program reboot itself after a while

suspecting it's not even a memory issue, just apple deciding to kill the process because it's not signed and run for a while :)
https://stackoverflow.com/questions/51833310/what-is-killed9-and-how-to-fix-in-macos-terminal

this was the issue
signing the executable solved problem


Catalan keyboard: Missing characters and wrong order of popups

In the Catalan keyboard there are some important characters missing: è, é, ú, ü

Besides, Catalans usually also write in Spanish and could write in other languages, so other characters are equally important to have: á, ñ, ë, ä, ö.

In the top row, popups give numbers as the first option. Numbers are far less used than accentuated vowels and therefore should be left as a secondary option. Grave accents in a, e and o should be first in the popup because they are more common than acute accents in those vowels.

The dash symbol should be readily available because it's very common in Catalan.

merged #242

Hi @David-Gil !
I'm happy to know I'm not the only one interested in the catalan keyboard in ASK :)
I like you your changes except for the fourth point... I expect the letter "P" in the upper-right corner instead of the hyphen ("-"), and this makes me to write a lot of typos...
I propose to create two Catalan keyboards:

simplified as it is without "-"
extended with "-"

What do you think?

Hi, @masipcat,
In principle, I'm totally ok with your proposal, but before doing something like that, we should think carefully about it because the disposition of the keys makes a huge difference in the speed and precision the user can achieve.
Where would you like the hyphen? It is so common in Catalan that, from my point of view, it should be rapidly accessible.

Hi,
I understand ASK as a free (as in freedom) keyboard replacement for Gboard or Swiftkey. When I use ASK, I expect the "standard Catalan disposition" like in Gboard:

(gboard in catalan)

(ASK catalan keyboard without "-")
That's why I think that changing the disposition is a downside for all users that are familiarized with the "standard catalan disposition".
You asked me where I would like the hyphen: I want to use the standard disposition so I prefer the hyphen hidden as a subkeyboard in the comma key :P
As I said in the first comment, I think the best solution is to keep a standard keyboard (the one in the picture) and another one with the hyphen (the current one).
I'll open a PR so we can discuss the changes in the code.

Well, that's the explanation I needed to understand the reasons behind your proposal. Thank you.
I'm totally ok with your proposal.


Improve test/system/README.md

https://github.com/containers/toolbox/pull/517#discussion_r504125993

I'd put an extra warning in the README that the tests will affect the environment in which they are run.

The dependency on skopeo was not documented

@hexagonrecursion I used your patches and applied them locally because there were some conflicts after rebasing from toolbox:master.
Thanks for your help.
BTW, I hope you don't mind, but I shorted the lines so they fit with the style of the document.

@hexagonrecursion I used your patches and applied them locally because there were some conflicts after rebasing from toolbox:master.
Thanks for your help.
BTW, I hope you don't mind, but I shorted the lines so they fit with the style of the document.


is this repo still maintained?

Just asking because it looks like it isnt anymore.

It is maintained, updates are still being pushed.


Does Spooky stage raise a lua event for the thunderstrike?

What is your question?
If not is there another way to predict it so I can action an event in time?

There is no official event for it, and there is no way to predict it either, It's random.


[Error handling] Removing a non-existent key doesn't return any error

I am trying to handle success & failure scenarios when an already stored key is being removed.
EXPECTED: removeSensitiveInfo() would return error if the key being removed doesn't exist in Keychain
CURRENT: Doesn't return any error and try block executes successfully

This is my removeSensitiveInfo() implementation as suggested by README

export const removeSensitiveInfo = async key => {
  try {
    const result = await EncryptedStorage.removeItem(key)
    return result
  } catch (error) {
    console.error('Encountered error while removing data: ', error)
  }
}

This is my component calling removeSensitiveInfo() when user tries to logout.

await removeSensitiveInfo('user_session').then(() => {
        navigation.reset({
          index: 0,
          routes: [{ name: 'Home' }]
        })
        dispatch({ type: 'DESTROY_STATE' })
      })

This seems to happen on android. I've tried both, using ios on Mac, and using android on windows, Android bypass the error, but IOS catches it.

I tend to disagree about throwing an error. I know several APIs are implementing it this way but IMHO, if what you try to delete doesn't exist in the first place, the result is successful. Aka the data is not there.


Docs: Document generate_random_sframe

Ref https://github.com/apple/turicreate/issues/1603.

@tapaswenipathak - I'm a little confused. I'm not understanding how this pull request relates to #1603. Did you perhaps reference the wrong issue?

@TobyRoseman: Do you see the last line?

In addition generate_random_sframe is not documented either.

I documented that.

@tapaswenipathak - got it. Thanks for clarifying and thanks for another pull request.


Arco Resolver options增加exclude选项

Describe the bug
我有一个API封装的组件，因为开头是A，内部命名触发了ArcoResolver的规则，导致被错误import了

希望Arco Resolver支持exclude，把我自己A开头组件给排除掉。目前只能在自己的代码里暂时改成别的名字实现。
Reproduction
custom A-prefix ts moudle import
System Info
System:
    OS: Windows 10 10.0.22621
    CPU: (20) x64 12th Gen Intel(R) Core(TM) i7-12700H
    Memory: 45.10 GB / 63.80 GB
  Binaries:
    Node: 18.12.1 - C:\Program Files\nodejs\node.EXE
    npm: 9.2.0 - C:\Program Files\nodejs\npm.CMD
  Browsers:
    Edge: Spartan (44.22621.1413.0), Chromium (112.0.1722.34)
    Internet Explorer: 11.0.22621.1

Used Package Manager
npm
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guide.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Check that this is a concrete bug. For Q&A, please open a GitHub Discussion instead.
[X] The provided reproduction is a minimal reproducible of the bug.

antfu/unplugin-vue-components#621


[microTVM][zephyr] skip mps2_an521 for host-driven AoT zephyr tests

Skip mps2_an521 for host-driven AoT zephyr tests.
Fixes #11831
cc @gromero @mehrdadh

just fyi @alanmacd if you put something like Fixes #11831 then the corresponding issue will get closed when the PR is merged: https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue#linking-a-pull-request-to-an-issue-using-a-keyword

@driazati thank you, updated


fix: update @open-draft/deferred-promise to 2.2.0 (esm)

Addresses failing browser ESM compatibility originating from deferred-promise.

Released: v0.25.1 🎉
This has been released in v0.25.1!

📄 Release notes
📦 npm package

Make sure to always update to the latest version (npm i @mswjs/interceptors@latest) to get the newest features and bug fixes.

Predictable release automation by @ossjs/release.


Make image prefix configurable

[sad]   Vishnu Govind Attur reacted to your message:

From: Niladri Halder @.>
Sent: Saturday, May 11, 2024 6:01:04 AM
To: openebs/mayastor-extensions @.>
Cc: Vishnu Govind Attur @.>; Review requested @.>
Subject: Re: [openebs/mayastor-extensions] Make image prefix configurable (PR #499)
CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.
@niladrih commented on this pull request.

In nix/config.nixhttps://github.com/openebs/mayastor-extensions/pull/499#discussion_r1597364287:

Set a value here if you want to share a nix value across all of the repos

which use this repo as a git submodule.

Oh, I forgot about the comment. Removed the last 2 lines.
—
Reply to this email directly, view it on GitHubhttps://github.com/openebs/mayastor-extensions/pull/499#discussion_r1597364287, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AB3HYVTSSDRNGHYK6DSEHWDZBWX2BAVCNFSM6AAAAABHQGEC4GVHI2DSMVQWIX3LMV43YUDVNRWFEZLROVSXG5CSMV3GSZLXHMZDANJRGA4DQNRXGA.
You are receiving this because your review was requested.Message ID: @.***>

bors merge


Improve Reader Performance with Builder Reserve

UnsafeAppend does not seem to work with utf8. Need to investigate why


Subgraph github workflow

Signed-off-by: Maksim Dimitrov<EMAIL_ADDRESS>Description:

Related issue(s):
Fixes #
Notes for reviewer:

Checklist

[ ] Documented (Code comments, README, etc.)
[ ] Tested (unit, integration, etc.)

Codecov Report
Base: 72.89% // Head: 72.89% // No change to project coverage :thumbsup:

Coverage data is based on head (ce2b916) compared to base (12b4fd0).
Patch has no changes to coverable lines.

:exclamation: Current head ce2b916 differs from pull request most recent head 94c7e6e. Consider uploading reports for the commit 94c7e6e to get more accurate results

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #780   +/-   ##
=======================================
  Coverage   72.89%   72.89%
=======================================
  Files          16       16
  Lines        1247     1247
  Branches      232      232
=======================================
  Hits          909      909
  Misses        280      280
  Partials       58       58

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

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


GitHub Teams audit bot

This bot would audit the project's GitHub Team memberships against the team members reported on Astropy Team webpage. If any inconsistency is found, bot would open issue(s) on the relevant repository.
Possible cadence: Scheduled, when GitHub Team change is made, when repo access is updated.
Proposed by: @astrofrog
Blocked by: astropy/astropy.github.com#393
Also see: https://github.com/astropy/astropy.github.com/issues/323#issuecomment-689802741

Possible cadence: Scheduled, when GitHub Team change is made, when repo access is updated.

It could also run weekly, or bi-weekly, or monthly from cron, and report to a slack channel.

(also, the script could live in https://github.com/astropy/astropy-procedures, so we could run it manually if needed)

I think reporting to e.g. a Slack channel would be more effective than an issue on the relevant repo since otherwise we might miss those issues?

Just in case anyone is tempted to suggest it, the bot should definitely not try and actually update the teams otherwise anyone with write access to the website repo could edit any team 😆


ColData Tensor is not updated after manipulation

Steps to reproduce:

Create a new dataframe with 3 columns and 10 rows.
Add 1 new column with 10 values.

Expected Result:
col_data_tensor.shape should be [4,10]
Actual result:
col_data_tensor.shape is [3,10]
Same applies for dropping columns.

@mjarmoc thanks for pointing this out, I just scheck this out and also see that df.shape after addColumn is not outputing the updated shape.
Are you working on this already?

@mjarmoc thanks for pointing this out, I just scheck this out and also see that df.shape after addColumn is not outputing the updated shape.
Are you working on this already?


subscribe to metrics for scaling instead of direct kafka events

rather than subscribing directly to the kafka-specific offset topic, we can track the delta between producers and consumers at the sidecar/http-gateway level (including when consumers are activated/deactivated) to drive the scaling algorithm

This issue was moved to projectriff/riff#322


#859 [MoM] Improve button bar look and placement

replace '->' by a unicode arrow, and place it on the lower right corner
make button size dynamic depending on text, and change button placements to free space the middle of the screen
change the text style of 'phase name' and remove borders
do not display the button bar until we have a tile displayed

Closing and creating a new one to workaround the reverts


Add border to keys

This PR adds a black border to the inside of the keys and lowers the key spacing from 1 to 0 (not sure if that was needed). It also decreases the min keyboard height and width so that it will fit on iPhone portrait.

Thanks! You are indeed #1 in my book!


The grid system not working with semantic-ui

Hello, I followed the semantic-ui example to make semantic-ui-react work with my app, but I noticed that the grid system's not working, I see no css for the row and column class in the chrome devtools.
<AppLayout>
        <Grid.Row columns={1}>
            <Grid.Column floated='right' textAlign='right'>
                <Link href='#'>Contact Us</Link>
            </Grid.Column>
        </Grid.Row>
</AppLayout>

And in AppLayout.js file:
const AppLayout = (props) => (

            <link rel='stylesheet' href='static/styles/semantic.min.css' />

        {props.children}

)

Try href=/static/styles/semantic.min.css


Tree Details Container redesign project

Quick summary:
The Tree Details Container is the sidebar component that pops open upon selecting a tree marker on waterthetrees.com. It contains information about a tree including health, core details, maintenance history, photo, carbon stats. It is also the primary way users interact with existing trees where the maintenance, adopt, and like actions live. This design revamp will seek to improve the UI and UX so that:

Users can understand what maintenance actions they can do and what maintenance a tree is in dire need of
Users can intuitively find the information they're looking for

Example of current state of the Tree Details Container:

To get started looking at the front-end code, start looking at client/src/pages/Tree/Tree.js
The front-end code makes a couple calls per tree id to https://waterthetrees.com/api/trees?${tree_id} and https://waterthetrees.com/api/treehistory?id=${tree_id} endpoints that live in https://github.com/waterthetrees/wtt_server
Resources:

Design git issue with discussion https://github.com/waterthetrees/wtt_front/issues/283
Design Figma: https://www.figma.com/file/5C3v1LUNwMPQy9JOgnKEtr/Water-the-Trees?node-id=1355%3A9085

What's out:

The menu redesign (https://github.com/waterthetrees/wtt_front/issues/262) is not part of this project
The new photos component (the photo gallery and uploaded photos) https://github.com/waterthetrees/wtt_front/issues/482

Milestone 1 - Restyling the overall tree details to match All Tree Tab mocks, without adding tab components yet

[ ] #484
[ ] #486
[ ] #485
[ ] #487
[ ] #488

Milestone 2 - Break components into tabs

[ ] #483

Milestone 3 - New features

[ ] #489

@mwpark2014 To add to this epic, where should we plan to add the sticky component, animations for mobile, and I need to add the carbon section.
For mobile, rather than having the tree details just fade in the screen, I would like to see it slideup from the bottom of the screen. Function as a swiping section.

Great call-outs. I'll add these tasks to the overall project.

@mwpark2014 im gonna redo the figma file, so the task is more clear per milestone. Also I'm redoing parts of the tree details, so may need to revise some tickets partially.

In a general scope can we change the scope to go from
redesign of the existing features ---> implementing preview for mobile ----> attaching tree detail to vertical menu  ----> (start of new features ) tabs and detail sections ----> photos implementation (when ready)
@mwpark2014 or when is it the devs choice to what they are interested in?

@zoobot I may be missing a few categories / information that isn't present on all tree information. Could you list all possible categories / sections of the tree info sidebar? Initially I didn't know there was a plant date (Date of plant) but added it into the sticky section of the tree info menu.
Also FUF wanted a comment / notes section which seemed like a comment thread that is similar to what you see on reddit, youtube, and end of articles. I dont know if that is what you are thinking, but seems like a large task to moderate as well (if we want it child friendly).
I sort of see some flaws in the design especially the photo upload and how I designed photo preview which I want to resolve soon since paul is working on it.
I believe I have to design out more of the photos since its very bare.
Anything else am I missing regarding the tree info sidebar?


Bump release number for next cycle

This bumps the release number to 2.2.12 so that development
can continue.  Note the next release doesn't actually need to be 2.2.12.

Codecov Report

Merging #402 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #402   +/-   ##
=======================================
  Coverage   96.38%   96.38%
=======================================
  Files          14       14
  Lines        1078     1078
  Branches      128      128
=======================================
  Hits         1039     1039
  Misses         18       18
  Partials       21       21

Continue to review full report at Codecov.

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


Rethinking queues

Clarification and motivation

Currently, Otter uses ring buffer based queues, but this type of queue does not allow easy deletion of an arbitrary element, and we need it because of the expiration policy and arbitrary calls to the Delete function by the user.
Queues on a doubly-linked list can solve this problem, but instead require 16 bytes for each key-value pair (prev and next pointers), and put additional pressure on gc. So one would like to come up with a workaround for this.
And the workaround suggestion is pretty simple. Let's store in each key-value pair store an index to the location where it is stored in the buffer. For example, like this:
type Node[K comparable, V any] struct {
    ...
    policyIndex uint32
}

And when deleting it, just put nil in the right cell. Such a solution will additionally waste 12 bytes (pointer to node and index). The only problem is that we need to maintain indexes in nodes when expanding the buffer. Also, after deleting a node we still occupy space for the cell and when adding new nodes the buffer will have to be expanded twice, but we will not use half of these cells.
That's why we want to understand what type of queues suits us better and implement it
Acceptance criteria

The type of queues to be used in the future has been selected.
Implemented a new version of eviction policy on these queues.
Implementation tests are written

It seems that the best choice in this case would be queues based on double-linked lists. Since in case of ring buffers we can use twice as much space for pointers as we need due to removal of random elements.

But I will leave ring buffers in consideration for now.

Okay, I think I've made my peace with double-linked lists, so this issue can be closed.


Update version to 2.1.0

Coverage remained the same at 65.102% when pulling 9c1c02bb2d7950807100250a997485c2fa6610fa on fcastilloes:master into 58ec3adfcb872a9a4d74c2bfb8c4af5ea1f707bb on kusanagi:master.


Missing key(s) in state_dict when dsnorm is true

When dsnorm is true there are some keys that are missing from the state dict so the loading can not be done properly
 File "../pcdet/models/detectors/detector3d_template.py", line 380, in load_params_from_file     state_dict, update_model_state = self._load_state_dict(model_state_disk, strict=strict)   File "../pcdet/models/detectors/detector3d_template.py", line 356, in _load_state_dict     self.load_state_dict(update_model_state)   File "/opt/conda/lib/python3.8/site-packages/torch/nn/modules/module.py", line 1070, in load_state_dict     raise RuntimeError('Error(s) in loading state_dict for {}:\n\t{}'.format( RuntimeError: Error(s) in loading state_dict for PVRCNN:         Missing key(s) in state_dict: "backbone_3d.conv_input.1.running_mean", "backbone_3d.conv_input.1.running_mean", "backbone_3d.conv_input.1.running_var", "backbone_3d.conv_input.1.running_var", "backbone_3d.conv1.0.1.running_mean", "backbone_3d.conv1.0.1.running_mean", "backbone_3d.conv1.0.1.running_var", "backbone_3d.conv1.0.1.running_var", "backbone_3d.conv2.0.1.running_mean", "backbone_3d.conv2.0.1.running_mean", "backbone_3d.conv2.0.1.running_var", "backbone_3d.conv2.0.1.running_var", "backbone_3d.conv2.1.1.running_mean", "backbone_3d.conv2.1.1.running_mean", "backbone_3d.conv2.1.1.running_var", "backbone_3d.conv2.1.1.running_var", "backbone_3d.conv2.2.1.running_mean", "backbone_3d.conv2.2.1.running_mean", "backbone_3d.conv2.2.1.running_var", "backbone_3d.conv2.2.1.running_var", "backbone_3d.conv3.0.1.running_mean", "backbone_3d.conv3.0.1.running_mean", "backbone_3d.conv3.0.1.running_var", "backbone_3d.conv3.0.1.running_var", "backbone_3d.conv3.1.1.running_mean", "backbone_3d.conv3.1.1.running_mean", "backbone_3d.conv3.1.1.running_var", "backbone_3d.conv3.1.1.running_var", "backbone_3d.conv3.2.1.running_mean", "backbone_3d.conv3.2.1.running_mean", "backbone_3d.conv3.2.1.running_var", "backbone_3d.conv3.2.1.running_var", "backbone_3d.conv4.0.1.running_mean", "backbone_3d.conv4.0.1.running_mean", "backbone_3d.conv4.0.1.running_var", "backbone_3d.conv4.0.1.running_var", "backbone_3d.conv4.1.1.running_mean", "backbone_3d.conv4.1.1.running_mean", "backbone_3d.conv4.1.1.running_var", "backbone_3d.conv4.1.1.running_var", "backbone_3d.conv4.2.1.running_mean", "backbone_3d.conv4.2.1.running_mean", "backbone_3d.conv4.2.1.running_var", "backbone_3d.conv4.2.1.running_var", "backbone_3d.conv_out.1.running_mean", "backbone_3d.conv_out.1.running_mean", "backbone_3d.conv_out.1.running_var", "backbone_3d.conv_out.1.running_var", "pfe.SA_layers.0.mlps.0.1.running_mean", "pfe.SA_layers.0.mlps.0.1.running_mean", "pfe.SA_layers.0.mlps.0.1.running_var", "pfe.SA_layers.0.mlps.0.1.running_var", "pfe.SA_layers.0.mlps.0.4.running_mean", "pfe.SA_layers.0.mlps.0.4.running_mean", "pfe.SA_layers.0.mlps.0.4.running_var", "pfe.SA_layers.0.mlps.0.4.running_var", "pfe.SA_layers.0.mlps.1.1.running_mean", "pfe.SA_layers.0.mlps.1.1.running_mean", "pfe.SA_layers.0.mlps.1.1.running_var", "pfe.SA_layers.0.mlps.1.1.running_var", "pfe.SA_layers.0.mlps.1.4.running_mean", "pfe.SA_layers.0.mlps.1.4.running_mean", "pfe.SA_layers.0.mlps.1.4.running_var", "pfe.SA_layers.0.mlps.1.4.running_var", "pfe.SA_layers.1.mlps.0.1.running_mean", "pfe.SA_layers.1.mlps.0.1.running_mean", "pfe.SA_layers.1.mlps.0.1.running_var", "pfe.SA_layers.1.mlps.0.1.running_var", "pfe.SA_layers.1.mlps.0.4.running_mean", "pfe.SA_layers.1.mlps.0.4.running_mean", "pfe.SA_layers.1.mlps.0.4.running_var", "pfe.SA_layers.1.mlps.0.4.running_var", "pfe.SA_layers.1.mlps.1.1.running_mean", "pfe.SA_layers.1.mlps.1.1.running_mean", "pfe.SA_layers.1.mlps.1.1.running_var", "pfe.SA_layers.1.mlps.1.1.running_var", "pfe.SA_layers.1.mlps.1.4.running_mean", "pfe.SA_layers.1.mlps.1.4.running_mean", "pfe.SA_layers.1.mlps.1.4.running_var", "pfe.SA_layers.1.mlps.1.4.running_var", "pfe.SA_rawpoints.mlps.0.1.running_mean", "pfe.SA_rawpoints.mlps.0.1.running_mean", "pfe.SA_rawpoints.mlps.0.1.running_var", "pfe.SA_rawpoints.mlps.0.1.running_var", "pfe.SA_rawpoints.mlps.0.4.running_mean", "pfe.SA_rawpoints.mlps.0.4.running_mean", "pfe.SA_rawpoints.mlps.0.4.running_var", "pfe.SA_rawpoints.mlps.0.4.running_var", "pfe.SA_rawpoints.mlps.1.1.running_mean", "pfe.SA_rawpoints.mlps.1.1.running_mean", "pfe.SA_rawpoints.mlps.1.1.running_var", "pfe.SA_rawpoints.mlps.1.1.running_var", "pfe.SA_rawpoints.mlps.1.4.running_mean", "pfe.SA_rawpoints.mlps.1.4.running_mean", "pfe.SA_rawpoints.mlps.1.4.running_var", "pfe.SA_rawpoints.mlps.1.4.running_var", "pfe.vsa_point_feature_fusion.1.running_mean", "pfe.vsa_point_feature_fusion.1.running_mean", "pfe.vsa_point_feature_fusion.1.running_var", "pfe.vsa_point_feature_fusion.1.running_var", "backbone_2d.blocks.0.2.running_mean", "backbone_2d.blocks.0.2.running_mean", "backbone_2d.blocks.0.2.running_var", "backbone_2d.blocks.0.2.running_var", "backbone_2d.blocks.0.5.running_mean", "backbone_2d.blocks.0.5.running_mean", "backbone_2d.blocks.0.5.running_var", "backbone_2d.blocks.0.5.running_var", "backbone_2d.blocks.0.8.running_mean", "backbone_2d.blocks.0.8.running_mean", "backbone_2d.blocks.0.8.running_var", "backbone_2d.blocks.0.8.running_var", "backbone_2d.blocks.0.11.running_mean", "backbone_2d.blocks.0.11.running_mean", "backbone_2d.blocks.0.11.running_var", "backbone_2d.blocks.0.11.running_var", "backbone_2d.blocks.0.14.running_mean", "backbone_2d.blocks.0.14.running_mean", "backbone_2d.blocks.0.14.running_var", "backbone_2d.blocks.0.14.running_var", "backbone_2d.blocks.0.17.running_mean", "backbone_2d.blocks.0.17.running_mean", "backbone_2d.blocks.0.17.running_var", "backbone_2d.blocks.0.17.running_var", "backbone_2d.blocks.1.2.running_mean", "backbone_2d.blocks.1.2.running_mean", "backbone_2d.blocks.1.2.running_var", "backbone_2d.blocks.1.2.running_var", "backbone_2d.blocks.1.5.running_mean", "backbone_2d.blocks.1.5.running_mean", "backbone_2d.blocks.1.5.running_var", "backbone_2d.blocks.1.5.running_var", "backbone_2d.blocks.1.8.running_mean", "backbone_2d.blocks.1.8.running_mean", "backbone_2d.blocks.1.8.running_var", "backbone_2d.blocks.1.8.running_var", "backbone_2d.blocks.1.11.running_mean", "backbone_2d.blocks.1.11.running_mean", "backbone_2d.blocks.1.11.running_var", "backbone_2d.blocks.1.11.running_var", "backbone_2d.blocks.1.14.running_mean", "backbone_2d.blocks.1.14.running_mean", "backbone_2d.blocks.1.14.running_var", "backbone_2d.blocks.1.14.running_var", "backbone_2d.blocks.1.17.running_mean", "backbone_2d.blocks.1.17.running_mean", "backbone_2d.blocks.1.17.running_var", "backbone_2d.blocks.1.17.running_var", "backbone_2d.deblocks.0.1.running_mean", "backbone_2d.deblocks.0.1.running_mean", "backbone_2d.deblocks.0.1.running_var", "backbone_2d.deblocks.0.1.running_var", "backbone_2d.deblocks.1.1.running_mean", "backbone_2d.deblocks.1.1.running_mean", "backbone_2d.deblocks.1.1.running_var", "backbone_2d.deblocks.1.1.running_var", "point_head.cls_layers.1.running_mean", "point_head.cls_layers.1.running_mean", "point_head.cls_layers.1.running_var", "point_head.cls_layers.1.running_var", "point_head.cls_layers.4.running_mean", "point_head.cls_layers.4.running_mean", "point_head.cls_layers.4.running_var", "point_head.cls_layers.4.running_var", "roi_head.roi_grid_pool_layer.mlps.0.1.running_mean", "roi_head.roi_grid_pool_layer.mlps.0.1.running_mean", "roi_head.roi_grid_pool_layer.mlps.0.1.running_var", "roi_head.roi_grid_pool_layer.mlps.0.1.running_var", "roi_head.roi_grid_pool_layer.mlps.0.4.running_mean", "roi_head.roi_grid_pool_layer.mlps.0.4.running_mean", "roi_head.roi_grid_pool_layer.mlps.0.4.running_var", "roi_head.roi_grid_pool_layer.mlps.0.4.running_var", "roi_head.roi_grid_pool_layer.mlps.1.1.running_mean", "roi_head.roi_grid_pool_layer.mlps.1.1.running_mean", "roi_head.roi_grid_pool_layer.mlps.1.1.running_var", "roi_head.roi_grid_pool_layer.mlps.1.1.running_var", "roi_head.roi_grid_pool_layer.mlps.1.4.running_mean", "roi_head.roi_grid_pool_layer.mlps.1.4.running_mean", "roi_head.roi_grid_pool_layer.mlps.1.4.running_var", "roi_head.roi_grid_pool_layer.mlps.1.4.running_var", "roi_head.shared_fc_layer.1.running_mean", "roi_head.shared_fc_layer.1.running_mean", "roi_head.shared_fc_layer.1.running_var", "roi_head.shared_fc_layer.1.running_var", "roi_head.shared_fc_layer.5.running_mean", "roi_head.shared_fc_layer.5.running_mean", "roi_head.shared_fc_layer.5.running_var", "roi_head.shared_fc_layer.5.running_var", "roi_head.cls_layers.1.running_mean", "roi_head.cls_layers.1.running_mean", "roi_head.cls_layers.1.running_var", "roi_head.cls_layers.1.running_var", "roi_head.cls_layers.5.running_mean", "roi_head.cls_layers.5.running_mean", "roi_head.cls_layers.5.running_var", "roi_head.cls_layers.5.running_var", "roi_head.reg_layers.1.running_mean", "roi_head.reg_layers.1.running_mean", "roi_head.reg_layers.1.running_var", "roi_head.reg_layers.1.running_var", "roi_head.reg_layers.5.running_mean", "roi_head.reg_layers.5.running_mean", "roi_head.reg_layers.5.running_var", "roi_head.reg_layers.5.running_var". srun: error: kyoto: task 0: Exited with exit code 1 srun: Terminating job step 358824.0 srun: error: serv-9222: task 1: Terminated srun: Force Terminated job step 358824.0

I ignore those keys when loading, but it led to producing zero pseudo labels so it does not seem to be right.

The previous (ST3D) pre-trained model uses BNorm that has running_mean and running_var which are removed in the new model. Therefore their keys are missing now. Please pre-train a new model containing DSNorm.


Revert mistakenly added fields in DraftReviewComment

In https://github.com/google/go-github/pull/3169 I mistakenly added CommitID, InReplyTo, and SubjectType to DraftReviewComment while referring to https://docs.github.com/en/rest/pulls/reviews?apiVersion=2022-11-28#create-a-review-for-a-pull-request. These fields are not however supported in the comments array of https://docs.github.com/en/rest/pulls/reviews?apiVersion=2022-11-28#create-a-review-for-a-pull-request which is what DraftReviewComment was intended for. Sorry for the confusion and time wasted.
My intention was to mimic the workflow in the github UI where you can submit a pull request review with review comments on files instead of a line numbers, however on second look I don't think this is possible to do via the API, please correct me if I'm wrong again.
Revert for PR https://github.com/google/go-github/pull/3218

My intention was to mimic the workflow in the github UI where you can submit a pull request review with review comments on files instead of a line numbers, however on second look I don't think this is possible to do via the API, please correct me if I'm wrong again.

I believe you are correct.  The GitHub UI appears to take advantage of many of the GitHub v4 GraphQL API, which this repo doesn't support. See README.md for more information about this other API.


Not able to delete assistants.

Steps to reproduce the problem:

Created an assistant.
Deleted this assistant.
Assistant continues to be present in the Explore_Assistants page and is also listed as one of the available assistants in the Chat page and continues to be usable.

Expected Behavior:
Deleted this assistant should not be shown in  Explore_Assistants and Chat page

I mistakenly added too many files to an assistant. After deleting some, I later wanted to delete the assistant.
After 'running' for about 45 seconds, I receive the message:
Failed to delete: Internal Server Error

With v0.0.2 , I am seeing the assistant delete report errors and see the following exception in logs
2024-02-17 17:02:00 ERROR:app.vector_db.milvus.query_milvus:Failed to create new connection using: f5082f40e190421bb062d5e3c08c4935
2024-02-17 17:02:00 INFO:     <IP_ADDRESS>:43250 - "DELETE /assistants/asst_693acf HTTP/1.1" 500 Internal Server Error
2024-02-17 17:02:00 ERROR:    Exception in ASGI application
2024-02-17 17:02:00 Traceback (most recent call last):
2024-02-17 17:02:00   File "/usr/local/lib/python3.10/site-packages/pymilvus/client/grpc_handler.py", line 133, in _wait_for_channel_ready
2024-02-17 17:02:00     grpc.channel_ready_future(self._channel).result(timeout=timeout)
2024-02-17 17:02:00   File "/usr/local/lib/python3.10/site-packages/grpc/_utilities.py", line 162, in result
2024-02-17 17:02:00     self._block(timeout)
2024-02-17 17:02:00   File "/usr/local/lib/python3.10/site-packages/grpc/_utilities.py", line 106, in _block
2024-02-17 17:02:00     raise grpc.FutureTimeoutError()
2024-02-17 17:02:00 grpc.FutureTimeoutError
2024-02-17 17:02:00
2024-02-17 17:02:00 The above exception was the direct cause of the following exception:
2024-02-17 17:02:00
2024-02-17 17:02:00 Traceback (most recent call last):
2024-02-17 17:02:00   File "/usr/local/lib/python3.10/site-packages/uvicorn/protocols/http/h11_impl.py", line 408, in run_asgi
2024-02-17 17:02:00     result = await app(  # type: ignore[func-returns-value]
2024-02-17 17:02:00   File "/usr/local/lib/python3.10/site-packages/uvicorn/middleware/proxy_headers.py", line 84, in __call__
2024-02-17 17:02:00     return await self.app(scope, receive, send)
2024-02-17 17:02:00   File "/usr/local/lib/python3.10/site-packages/fastapi/applications.py", line 1106, in __call__
2024-02-17 17:02:00     await super().__call__(scope, receive, send)
2024-02-17 17:02:00   File "/usr/local/lib/python3.10/site-packages/starlette/applications.py", line 122, in __call__
2024-02-17 17:02:00     await self.middleware_stack(scope, receive, send)
2024-02-17 17:02:00   File "/usr/local/lib/python3.10/site-packages/starlette/middleware/errors.py", line 184, in __call__
2024-02-17 17:02:00     raise exc
2024-02-17 17:02:00   File "/usr/local/lib/python3.10/site-packages/starlette/middleware/errors.py", line 162, in __call__
2024-02-17 17:02:00     await self.app(scope, receive, _send)
2024-02-17 17:02:00   File "/usr/local/lib/python3.10/site-packages/starlette/middleware/cors.py", line 83, in __call__
2024-02-17 17:02:00     await self.app(scope, receive, send)
2024-02-17 17:02:00   File "/usr/local/lib/python3.10/site-packages/starlette/middleware/exceptions.py", line 79, in __call__
2024-02-17 17:02:00     raise exc
2024-02-17 17:02:00   File "/usr/local/lib/python3.10/site-packages/starlette/middleware/exceptions.py", line 68, in __call__
2024-02-17 17:02:00     await self.app(scope, receive, sender)
2024-02-17 17:02:00   File "/usr/local/lib/python3.10/site-packages/fastapi/middleware/asyncexitstack.py", line 20, in __call__
2024-02-17 17:02:00     raise e
2024-02-17 17:02:00   File "/usr/local/lib/python3.10/site-packages/fastapi/middleware/asyncexitstack.py", line 17, in __call__
2024-02-17 17:02:00     await self.app(scope, receive, send)
2024-02-17 17:02:00   File "/usr/local/lib/python3.10/site-packages/starlette/routing.py", line 718, in __call__
2024-02-17 17:02:00     await route.handle(scope, receive, send)
2024-02-17 17:02:00   File "/usr/local/lib/python3.10/site-packages/starlette/routing.py", line 276, in handle
2024-02-17 17:02:00     await self.app(scope, receive, send)
2024-02-17 17:02:00   File "/usr/local/lib/python3.10/site-packages/starlette/routing.py", line 66, in app
2024-02-17 17:02:00     response = await func(request)
2024-02-17 17:02:00   File "/usr/local/lib/python3.10/site-packages/fastapi/routing.py", line 274, in app
2024-02-17 17:02:00     raw_response = await run_endpoint_function(
2024-02-17 17:02:00   File "/usr/local/lib/python3.10/site-packages/fastapi/routing.py", line 191, in run_endpoint_function
2024-02-17 17:02:00     return await dependant.call(**values)
2024-02-17 17:02:00   File "/app/app/backend.py", line 401, in delete_assistant
2024-02-17 17:02:00     drop_collection(assistant_id)
2024-02-17 17:02:00   File "/app/app/vector_db/milvus/main.py", line 37, in drop_collection
2024-02-17 17:02:00     load_collection(collection_name).drop_collection()
2024-02-17 17:02:00   File "/app/app/vector_db/milvus/main.py", line 41, in load_collection
2024-02-17 17:02:00     return Milvus(
2024-02-17 17:02:00   File "/app/app/vector_db/milvus/query_milvus.py", line 134, in __init__
2024-02-17 17:02:00     self.alias = self._create_connection_alias(connection_args)
2024-02-17 17:02:00   File "/app/app/vector_db/milvus/query_milvus.py", line 208, in _create_connection_alias
2024-02-17 17:02:00     raise e
2024-02-17 17:02:00   File "/app/app/vector_db/milvus/query_milvus.py", line 203, in _create_connection_alias
2024-02-17 17:02:00     connections.connect(alias=alias, **connection_args)
2024-02-17 17:02:00   File "/usr/local/lib/python3.10/site-packages/pymilvus/orm/connections.py", line 356, in connect
2024-02-17 17:02:00     connect_milvus(**kwargs, user=user, password=password, token=token, db_name=db_name)
2024-02-17 17:02:00   File "/usr/local/lib/python3.10/site-packages/pymilvus/orm/connections.py", line 302, in connect_milvus
2024-02-17 17:02:00     gh._wait_for_channel_ready(timeout=timeout)
2024-02-17 17:02:00   File "/usr/local/lib/python3.10/site-packages/pymilvus/client/grpc_handler.py", line 136, in _wait_for_channel_ready
2024-02-17 17:02:00     raise MilvusException(
2024-02-17 17:02:00 pymilvus.exceptions.MilvusException: <MilvusException: (code=2, message=Fail connecting to server on localhost:19530. Timeout)>
2024-02-17 17:02:01 WARNING:root:assistant file file_5ebf34 for assistant asst_693acf not found
2024-02-17 17:02:11 ERROR:app.vector_db.milvus.query_milvus:Failed to create new connection using: 0d43c08ea669480f92ed19001cfd3cc8
2024-02-17 17:02:11 INFO:     <IP_ADDRESS>:55066 - "DELETE /assistants/asst_693acf HTTP/1.1" 500 Internal Server Error
2024-02-17 17:02:11 ERROR:    Exception in ASGI application
2024-02-17 17:02:11 Traceback (most recent call last):
2024-02-17 17:02:11   File "/usr/local/lib/python3.10/site-packages/pymilvus/client/grpc_handler.py", line 133, in _wait_for_channel_ready
2024-02-17 17:02:11     grpc.channel_ready_future(self._channel).result(timeout=timeout)
2024-02-17 17:02:11   File "/usr/local/lib/python3.10/site-packages/grpc/_utilities.py", line 162, in result
2024-02-17 17:02:11     self._block(timeout)
2024-02-17 17:02:11   File "/usr/local/lib/python3.10/site-packages/grpc/_utilities.py", line 106, in _block
2024-02-17 17:02:11     raise grpc.FutureTimeoutError()
2024-02-17 17:02:11 grpc.FutureTimeoutError
2024-02-17 17:02:11
2024-02-17 17:02:11 The above exception was the direct cause of the following exception:
2024-02-17 17:02:11
2024-02-17 17:02:11 Traceback (most recent call last):
2024-02-17 17:02:11   File "/usr/local/lib/python3.10/site-packages/uvicorn/protocols/http/h11_impl.py", line 408, in run_asgi
2024-02-17 17:02:11     result = await app(  # type: ignore[func-returns-value]
2024-02-17 17:02:11   File "/usr/local/lib/python3.10/site-packages/uvicorn/middleware/proxy_headers.py", line 84, in __call__
2024-02-17 17:02:11     return await self.app(scope, receive, send)
2024-02-17 17:02:11   File "/usr/local/lib/python3.10/site-packages/fastapi/applications.py", line 1106, in __call__
2024-02-17 17:02:11     await super().__call__(scope, receive, send)
2024-02-17 17:02:11   File "/usr/local/lib/python3.10/site-packages/starlette/applications.py", line 122, in __call__
2024-02-17 17:02:11     await self.middleware_stack(scope, receive, send)
2024-02-17 17:02:11   File "/usr/local/lib/python3.10/site-packages/starlette/middleware/errors.py", line 184, in __call__
2024-02-17 17:02:11     raise exc
2024-02-17 17:02:11   File "/usr/local/lib/python3.10/site-packages/starlette/middleware/errors.py", line 162, in __call__
2024-02-17 17:02:11     await self.app(scope, receive, _send)
2024-02-17 17:02:11   File "/usr/local/lib/python3.10/site-packages/starlette/middleware/cors.py", line 83, in __call__
2024-02-17 17:02:11     await self.app(scope, receive, send)
2024-02-17 17:02:11   File "/usr/local/lib/python3.10/site-packages/starlette/middleware/exceptions.py", line 79, in __call__
2024-02-17 17:02:11     raise exc
2024-02-17 17:02:11   File "/usr/local/lib/python3.10/site-packages/starlette/middleware/exceptions.py", line 68, in __call__
2024-02-17 17:02:11     await self.app(scope, receive, sender)
2024-02-17 17:02:11   File "/usr/local/lib/python3.10/site-packages/fastapi/middleware/asyncexitstack.py", line 20, in __call__
2024-02-17 17:02:11     raise e
2024-02-17 17:02:11   File "/usr/local/lib/python3.10/site-packages/fastapi/middleware/asyncexitstack.py", line 17, in __call__
2024-02-17 17:02:11     await self.app(scope, receive, send)
2024-02-17 17:02:11   File "/usr/local/lib/python3.10/site-packages/starlette/routing.py", line 718, in __call__
2024-02-17 17:02:11     await route.handle(scope, receive, send)
2024-02-17 17:02:11   File "/usr/local/lib/python3.10/site-packages/starlette/routing.py", line 276, in handle
2024-02-17 17:02:11     await self.app(scope, receive, send)
2024-02-17 17:02:11   File "/usr/local/lib/python3.10/site-packages/starlette/routing.py", line 66, in app
2024-02-17 17:02:11     response = await func(request)
2024-02-17 17:02:11   File "/usr/local/lib/python3.10/site-packages/fastapi/routing.py", line 274, in app
2024-02-17 17:02:11     raw_response = await run_endpoint_function(
2024-02-17 17:02:11   File "/usr/local/lib/python3.10/site-packages/fastapi/routing.py", line 191, in run_endpoint_function
2024-02-17 17:02:11     return await dependant.call(**values)
2024-02-17 17:02:11   File "/app/app/backend.py", line 401, in delete_assistant
2024-02-17 17:02:11     drop_collection(assistant_id)
2024-02-17 17:02:11   File "/app/app/vector_db/milvus/main.py", line 37, in drop_collection
2024-02-17 17:02:11     load_collection(collection_name).drop_collection()
2024-02-17 17:02:11   File "/app/app/vector_db/milvus/main.py", line 41, in load_collection
2024-02-17 17:02:11     return Milvus(
2024-02-17 17:02:11   File "/app/app/vector_db/milvus/query_milvus.py", line 134, in __init__
2024-02-17 17:02:11     self.alias = self._create_connection_alias(connection_args)
2024-02-17 17:02:11   File "/app/app/vector_db/milvus/query_milvus.py", line 208, in _create_connection_alias
2024-02-17 17:02:11     raise e
2024-02-17 17:02:11   File "/app/app/vector_db/milvus/query_milvus.py", line 203, in _create_connection_alias
2024-02-17 17:02:11     connections.connect(alias=alias, **connection_args)
2024-02-17 17:02:11   File "/usr/local/lib/python3.10/site-packages/pymilvus/orm/connections.py", line 356, in connect
2024-02-17 17:02:11     connect_milvus(**kwargs, user=user, password=password, token=token, db_name=db_name)
2024-02-17 17:02:11   File "/usr/local/lib/python3.10/site-packages/pymilvus/orm/connections.py", line 302, in connect_milvus
2024-02-17 17:02:11     gh._wait_for_channel_ready(timeout=timeout)
2024-02-17 17:02:11   File "/usr/local/lib/python3.10/site-packages/pymilvus/client/grpc_handler.py", line 136, in _wait_for_channel_ready
2024-02-17 17:02:11     raise MilvusException(
2024-02-17 17:02:11 pymilvus.exceptions.MilvusException: <MilvusException: (code=2, message=Fail connecting to server on localhost:19530. Timeout)>
2024-02-17 17:02:13 WARNING:root:assistant file file_5ebf34 for assistant asst_693acf not found
2024-02-17 17:02:23 ERROR:app.vector_db.milvus.query_milvus:Failed to create new connection using: 68970d0837cb40cabb44bbeda2f930be
2024-02-17 17:02:23 INFO:     <IP_ADDRESS>:44404 - "DELETE /assistants/asst_693acf HTTP/1.1" 500 Internal Server Error
2024-02-17 17:02:23 ERROR:    Exception in ASGI application
2024-02-17 17:02:23 Traceback (most recent call last):
2024-02-17 17:02:23   File "/usr/local/lib/python3.10/site-packages/pymilvus/client/grpc_handler.py", line 133, in _wait_for_channel_ready
2024-02-17 17:02:23     grpc.channel_ready_future(self._channel).result(timeout=timeout)
2024-02-17 17:02:23   File "/usr/local/lib/python3.10/site-packages/grpc/_utilities.py", line 162, in result
2024-02-17 17:02:23     self._block(timeout)
2024-02-17 17:02:23   File "/usr/local/lib/python3.10/site-packages/grpc/_utilities.py", line 106, in _block
2024-02-17 17:02:23     raise grpc.FutureTimeoutError()
2024-02-17 17:02:23 grpc.FutureTimeoutError
2024-02-17 17:02:23
2024-02-17 17:02:23 The above exception was the direct cause of the following exception:
2024-02-17 17:02:23
2024-02-17 17:02:23 Traceback (most recent call last):
2024-02-17 17:02:23   File "/usr/local/lib/python3.10/site-packages/uvicorn/protocols/http/h11_impl.py", line 408, in run_asgi
2024-02-17 17:02:23     result = await app(  # type: ignore[func-returns-value]
2024-02-17 17:02:23   File "/usr/local/lib/python3.10/site-packages/uvicorn/middleware/proxy_headers.py", line 84, in __call__
2024-02-17 17:02:23     return await self.app(scope, receive, send)
2024-02-17 17:02:23   File "/usr/local/lib/python3.10/site-packages/fastapi/applications.py", line 1106, in __call__
2024-02-17 17:02:23     await super().__call__(scope, receive, send)
2024-02-17 17:02:23   File "/usr/local/lib/python3.10/site-packages/starlette/applications.py", line 122, in __call__
2024-02-17 17:02:23     await self.middleware_stack(scope, receive, send)
2024-02-17 17:02:23   File "/usr/local/lib/python3.10/site-packages/starlette/middleware/errors.py", line 184, in __call__
2024-02-17 17:02:23     raise exc
2024-02-17 17:02:23   File "/usr/local/lib/python3.10/site-packages/starlette/middleware/errors.py", line 162, in __call__
2024-02-17 17:02:23     await self.app(scope, receive, _send)
2024-02-17 17:02:23   File "/usr/local/lib/python3.10/site-packages/starlette/middleware/cors.py", line 83, in __call__
2024-02-17 17:02:23     await self.app(scope, receive, send)
2024-02-17 17:02:23   File "/usr/local/lib/python3.10/site-packages/starlette/middleware/exceptions.py", line 79, in __call__
2024-02-17 17:02:23     raise exc
2024-02-17 17:02:23   File "/usr/local/lib/python3.10/site-packages/starlette/middleware/exceptions.py", line 68, in __call__
2024-02-17 17:02:23     await self.app(scope, receive, sender)
2024-02-17 17:02:23   File "/usr/local/lib/python3.10/site-packages/fastapi/middleware/asyncexitstack.py", line 20, in __call__
2024-02-17 17:02:23     raise e
2024-02-17 17:02:23   File "/usr/local/lib/python3.10/site-packages/fastapi/middleware/asyncexitstack.py", line 17, in __call__
2024-02-17 17:02:23     await self.app(scope, receive, send)
2024-02-17 17:02:23   File "/usr/local/lib/python3.10/site-packages/starlette/routing.py", line 718, in __call__
2024-02-17 17:02:23     await route.handle(scope, receive, send)
2024-02-17 17:02:23   File "/usr/local/lib/python3.10/site-packages/starlette/routing.py", line 276, in handle
2024-02-17 17:02:23     await self.app(scope, receive, send)
2024-02-17 17:02:23   File "/usr/local/lib/python3.10/site-packages/starlette/routing.py", line 66, in app
2024-02-17 17:02:23     response = await func(request)
2024-02-17 17:02:23   File "/usr/local/lib/python3.10/site-packages/fastapi/routing.py", line 274, in app
2024-02-17 17:02:23     raw_response = await run_endpoint_function(
2024-02-17 17:02:23   File "/usr/local/lib/python3.10/site-packages/fastapi/routing.py", line 191, in run_endpoint_function
2024-02-17 17:02:23     return await dependant.call(**values)
2024-02-17 17:02:23   File "/app/app/backend.py", line 401, in delete_assistant
2024-02-17 17:02:23     drop_collection(assistant_id)
2024-02-17 17:02:23   File "/app/app/vector_db/milvus/main.py", line 37, in drop_collection
2024-02-17 17:02:23     load_collection(collection_name).drop_collection()
2024-02-17 17:02:23   File "/app/app/vector_db/milvus/main.py", line 41, in load_collection
2024-02-17 17:02:23     return Milvus(
2024-02-17 17:02:23   File "/app/app/vector_db/milvus/query_milvus.py", line 134, in __init__
2024-02-17 17:02:23     self.alias = self._create_connection_alias(connection_args)
2024-02-17 17:02:23   File "/app/app/vector_db/milvus/query_milvus.py", line 208, in _create_connection_alias
2024-02-17 17:02:23     raise e
2024-02-17 17:02:23   File "/app/app/vector_db/milvus/query_milvus.py", line 203, in _create_connection_alias
2024-02-17 17:02:23     connections.connect(alias=alias, **connection_args)
2024-02-17 17:02:23   File "/usr/local/lib/python3.10/site-packages/pymilvus/orm/connections.py", line 356, in connect
2024-02-17 17:02:23     connect_milvus(**kwargs, user=user, password=password, token=token, db_name=db_name)
2024-02-17 17:02:23   File "/usr/local/lib/python3.10/site-packages/pymilvus/orm/connections.py", line 302, in connect_milvus
2024-02-17 17:02:23     gh._wait_for_channel_ready(timeout=timeout)
2024-02-17 17:02:23   File "/usr/local/lib/python3.10/site-packages/pymilvus/client/grpc_handler.py", line 136, in _wait_for_channel_ready
2024-02-17 17:02:23     raise MilvusException(
2024-02-17 17:02:23 pymilvus.exceptions.MilvusException: <MilvusException: (code=2, message=Fail connecting to server on localhost:19530. Timeout)>

this is addressed in PR #89 , commit 4b83518

With latest version of rubra , we are able to delete assistants (that were created with files) successfully.


Character in user badge should be centered

line-height: var(--circle-diameter);

Update bricks version in this ticket

main ticket
https://github.com/taskany-inc/bricks/issues/1110


Ques ans virtual assistant

added a question answer virtual assistant that can help to answer user questions based on an existing knowledge base. It matches the user input to the most matching question and supply the appropriate answer

@NitkarshChourasia kindly review. new example added


Fix several sources of undefined behavior in type casters

Some cast operators can raise exceptions, but many container casters would call the cast operator in their noexcept from_python function. Fix by adding a new can_cast<T>() caster method that returns false if operator cast_op<T>() would throw an exception. Note that implementing this properly for unique_ptr required some changes to the nb_type_relinquish_ownership API, mostly in the creation of a new nb_type_restore_ownership function to reverse its effects. Fixes #497.

In nb::cast and nb::try_cast, we were previously deallocating the cleanup list before initializing the result object, which is generally UB when implicit conversions are involved.

Avoid creating dangling pointers/references in container type casters, using a new flags_for_local_caster() function that casters call when they're delegating to an inner caster. There are two ways this would happen in the past:

Pointers to bound types created using implicit conversions would dangle once the cleanup_list was destroyed, which is problematic for nb::cast(). This is resolved by removing convert from the inner caster's flags if the manual flag is set.
Pointers to custom-caster types usually refer into the type caster object, so they would dangle if the caster were stored on the stack, which is a common idiom for containers. This is resolved by static_asserting in flags_for_local_caster that we're not casting to T* unless T is a bound type.

I'm not sure yet what's going on with the failing tests - all of them are because the destruction of one of the Example objects is being delayed past the end of the test. It happens on different builds each time I run, but consistently 2-3 of them. Haven't been able to reproduce it locally yet. Adding an extra collect() didn't help.

Hi @oremanj, just to keep you posted: I'm currently swamped with a deadline (in ~2 weeks), and then I'm moving to another country. I won't have time to debug the test issue in a near timeframe.

I looked into the GC issue and was eventually able to reproduce it on a windows machine. As far as flakes go, it seems relatively benign -- some instances not being collected by the time they're supposed to, but then they do get deleted later on.
It's weird, as if something was wrong with the GC. Or somebody else is holding further references. Perhaps it's a combination of the GC and the extra rewriting that Pytest does to capture exceptions and warnings with extra contexts to provide readable output. But then it's weird that this only seems to happen on Windows.
The issue goes away simply by refactoring the big test into smaller ones. So I will leave it at this for now.

This PR was merged out of band in commit c36584e577686500842e0cf1ac04f45608bd73de.

(I officially merged the PR but will force-push the tweaked version. Just in case it plays a role for the bean counting somewhere ;))


Support under @fastly/compute-js-static-publish@5 and @fastly/js-compute@2

Make changes to support:
@fastly/compute-js-static-publish@5 - this changes the interface between apps and assets, so some work will be needed.
@fastly/js-compute@2 - this is pretty much a drop-in change from @1, but best to also do because compute-js-static-publish@5 specifies it.
Might also as well update to typescript@5.

Released 2.0.0 with this fix. Template has been updated too.
Closing this ticket.


Translation to polish

Will try to finish it till the end of weekend.
Contributors welcomed on the fork, cheers.

Hi, I already translated it into polish: https://github.com/sin/trust & https://sin.github.io/trust/
@agagata also started translating it into polish here: https://github.com/agagata/trust
We're going to merge our translations eventually. @agagata's friend agreed to proofread it and she's a professional translator, so it's going to be awesome :)

Thank you so much, @sin! (Sorry for the late reply, was visiting family last week) I've pushed your translation up to the main site:

Many thanks again! :)

Polish has gendered verb conjugation. It really throws me off as a woman because the default chosen for this translation is male. Would you accept a fork that adds gender choice at the beginning, if done right and pretty of course? Polish version also has minor styling issues that I'd be glad to fix.

@Senthe we're aware of the things you mentioned and we're working on them in this issue https://github.com/agagata/trust/pull/1 We'll merge it soon [hopefully today-tomorrow] so maybe then you could take a look? We'd appreciate your help :)

@agagata Thanks for the response, I'm glad you're working on this : ). If I have the time, I'll take a look this weekend.

Polish letters do not work correctly with this font (look at the "Ł")

At the end of the single game the text hides under the buttons

@DavidSypniewski I just changed the font to one that supports polish letters and we're working on other issues right now. As @agagata said, we would appreciate your help if you could take a look again tomorrow. :)

@sin the font is fine!

Closing this issue.
Thanks @sin.

Sorry @paddyzab for the confusion, when @agagata @sin started translation there was only one general issue and no recommended protocol.


JS/JSX: Add support for recursive expressions

So after #2159 I wanted to add support for arbitrary JS spread expressions and kinda overdid it. I also added support for deeply nested expressions in JS template string interpolations.
Because I need very similar patterns in #2139, I decided that JS is going to share its patterns and added a way for languages to share internal patterns. It's done via a non-enumerable property $. Because the property is non-enumerable, it won't be cloned (e.g. for extend) but it will be kept by insertBefore.
Btw. I'm not very attached to this version by variable sharing, so better ideas are very welcome.
Edit: Maybe we could do a Prism.patterns for globally shared patterns (RegExp or string)?
This PR is a 3 in 1: JS Template strings, JSX spread expressions, and the $ property.

Another one worth refreshing for bundle size impacts.

@RunDevelopment this looks really interesting, but I'm not sure how to help since a lot of it is out of date at this point. Do you think this is worth picking back up again?

Do you think this is worth picking back up again?

Not in its current form, no. This PR relies on a sorta hack to share regexes across languages. I'd rather wait for v2 where we can just directly import/export regexes via ESM.


Power-operation takes extremely long

Measuring execution time of power operation as shown in the snippet below, I get the following results on my machine:
a**2 -> 0.002812599999999943
b**2 ->  0.514684
c**2 -> 4.9153115
compared to d (numpy array):
d**2 -> 5.50000000032469e-06
import numpy as np
from fxpmath import Fxp
import timeit

a = Fxp(2.5, signed=True, n_word=10, n_frac=6, overflow='wrap')
b = Fxp(2.5, signed=True, n_word=13, n_frac=9, overflow='wrap')
c = Fxp(2.5, signed=True, n_word=14, n_frac=10, overflow='wrap')
d = np.array(2.5)

print(timeit.timeit('a**2', globals=globals(), number=1))
print(timeit.timeit('b**2', globals=globals(), number=1))
print(timeit.timeit('c**2', globals=globals(), number=1))
print(timeit.timeit('d**2', globals=globals(), number=1))

When you execute a powe function using a constant, this constant is converted to a Fxp with same format that base.
The computation is more expensive using a fixed point number with 10 fractional bit powered with other fixed point number with 10 fractional bits. Additionally to this, converting 2 to Fxp a process to calculate the optimal sizes is also time consuming process.
The following alternatives must be faster:
c**Fxp(2) # optimal size is calculated for value 2.
c**Fxp(2, dtype='S8.0') # you can change dtype according your needs or power value.
c**Fxp(2, like=c) # if you want to maintain same size than `c` (this could be slower depending of amount of fractional bits)

Performance in my PC:
c**2    # 3.9 s ± 83.7 ms
c**Fxp(2)    # 436 µs ± 40.5 µs
c**Fxp(2, dtype='S8.0')    # 381 µs ± 3.91 µs
c**Fxp(2, like=c)    # 418 µs ± 9.14 µs


update setuptools.py to pyproject.toml

many advantages and will become the standard soon
Official links:
https://pip.pypa.io/en/stable/reference/build-system/pyproject-toml/
https://packaging.python.org/en/latest/tutorials/packaging-projects/

Any chances that this PR will get reviewed/merged?


MeshNetworks docs is wrong - networks is a map not an array

Bug description
Look at the docs here: https://istio.io/latest/docs/reference/config/istio.mesh.v1alpha1/#MeshNetworks
and notice the dash (-) before endpoints in the example:
networks:
  network1:
  - endpoints:   <<<<----- LOOK HERE!
    - fromRegistry: registry1 #must match kubeconfig name in Kubernetes secret
    - fromCidr: <IP_ADDRESS>/22 #a VM network for example
    gateways:
    - registryServiceName: istio-ingressgateway.istio-system.svc.cluster.local
      port: 15443
      locality: us-east-1a
    - address: <IP_ADDRESS>
      port: 15443
      locality: us-east-1a

When you follow this example, the istiod pod will log the following (side note: this should NOT be an "info" level message - it should at minimum be "warn" if not "error"):
info	failed to read mesh networks configuration from "/etc/istio/config/meshNetworks": failed to convert to proto. json: cannot unmarshal array into Go value of type map[string]json.RawMessage

I happen to notice another example for this section of the config here in this issue comment. And this is what it shows:
data:
  meshNetworks: |-
   networks:
     network1:
       endpoints:  <<<<---- LOOK HERE! Not array (no dash)
         - fromRegistry: cluster1
       gateways:
         - address: <IP_ADDRESS>
           port: 15443

Notice the difference.
When I changed my config to match that, things parsed successfully and the istiod pod shows the parsed json.
SOLUTION:

The documentation needs to change - that single "dash" effectively wasted a few hours of my time :)

The log message should not be at "info" level - that will clearly cause istiod to misbehave since it effectively is missing configuration - it should at minimum be a "warn" message (I would think it should be "error" since the behavior of the istiod pod will be broken).

[x] Docs
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Extensions and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
[ ] Upgrade
Version
1.9.2

+1

This is a good point. I will call out though, that meshNetworks is deprecated.
Using address in mesh networks can be accomplished by setting .spec.externalIP on a Service annotated with topology.istio.io/network.
Using registryServiceName simply requires the annotation, and will automatically use the LoadBalancer IP(s).

Looks like both areas are fixed in master. I just opened PRs to fix the docs in previous versions:
https://github.com/istio/api/pull/1961
https://github.com/istio/api/pull/1960


Webhooks MVP: "stream_session_started"

With the webhooks feature, we add the ability for the video developer's platform to hook into all the different events -- not just if the video is ready, but the progress, the session ending, and more to be decided. This will make interactivity easier and also allow the video platform to feed in events during ingest and surface them in playback.
For the MVP of the new webhooks feature, `stream_session_started is the only requirements.

These should be triggered when a session starts.
At minimum these need to be triggered for all stream ingested via RTMP, if not all streams.
We can use the Mist Server triggers panel to set up this up. See section 2.5 in the Mist Server Manual.
If stream_session_started gets an error, disallow all sessions for that stream.

Research to do: Do we have a way to distinguish between the session finishing or disconnecting temporarily? The really quick reconnection case should be easy, same mist server instance. But if reconnecting and hitting a different mist server, do we just stop and start a new session. This is ok but not ideal. Does Mist server have anything that can abstract this and workaround it?

@wohlner docs for this need information about how to query the API to know that the stream has stopped.

Do we have a way to distinguish between the session finishing or disconnecting temporarily?

If it helps, the node behavior is as following:

For RTMP, the session is maintained as long as the connection is alive. If there's a disconnect, the session closes.
For HTTP ingest, there's a one-minute timeout. If no segments are received within a minute, the session is terminated.

Am guessing these webhooks are more for fire-and-forget notifications, rather than a RPC-type where the requester is expected to take an action based on the webhook response (ex. the node's auth webhook). If fire-and-forget, it would be good to also consider the semantics around retries and ordering:

If a notification fails. Should retries be done? How frequently and how often? Is there a limit on retention time or retry attempts?
Should delivery ordering be maintained? Eg, if the session start notification fails, should the session ended notification be delayed until the start succeeds? (Edit: I realize now that "session ended" has been punted, but it's still worth considering how that might fit later into the overall system.)
How to handle a higher volume of notifications. Maybe less of an issue now but worth thinking about as the system scales, since this will be a major integration point for users, and we want to minimize churn there.

One thought to resolve these issues is to batch up notifications if necessary. So rather than a single request per notification, a request could potentially have multiple notifications carried within it. This may mitigate ordering issues and ease load on customer endpoints (eg, maybe we can throttle requests to one per second, and accumulate events in the interim).

@iameli will spec this today. @ya7ya will do an initial implementation this week. @iameli will review and possibly finalize.

@ya7ya and me technical spec:

New schema in schema.yaml: webhook

Fields:

id
name - "my favorite webhook"
userId
timestamp
eventType - Right now, required to be streamStarted, maybe others later
url
Not yet: streamId - eventually we might allow users to have multiple "stream groups"
backed by different webhooks

New endpoints: POST /api/webhook, GET /api/webhook, GET /api/webhook/:id, PUT /api/webhook/:id, DELETE /api/webhook/id and for triggering: POST /api/webhook/trigger (requires admin access)

Workflow:

New RTMP connection comes in to Mist, it triggers the RTMP_PUSH_REWRITE action.

After we successfully retrieve the stream, mist-api-connector should fire POST /api/webhook/trigger with a body of {"streamId": "ABC123", eventType: "streamStarted"}

API server handles that request and looks up all of the webhooks for that streamId and eventType.

API server fires a JSON body at all user-defined webhooks:

Payload:

eventType
webhookId
stream (sanitized, no stream key)

If we get a HTTP response that is not a 200, return a 400 to mist-api-connector

If mist-api-connector gets an HTTP response that is not a 200, return an error to Mist

@ya7ya small note - in RTMP_PUSH_REWRITE mist-api-connector calls /stream/manifetId/setactive endpoint with Active param set to true.
Upon connection close it calls /setactive with false.
I think /setactive should be used instead of introducing separate /api/webhook/trigger endpoint.


cranelift-object: Make sections read only by default

This changes the default section type to be ReadOnlyDataWithRel instead of Data.
On COFF the CRT initializers do not run unless their section is read only. (See:  https://github.com/bjorn3/rustc_codegen_cranelift/issues/1249#issuecomment-1382431789)
The new SectionKind makes these sections read only for COFF and MachO, but leaves it as Writable as required by ELF.
cc: @bjorn3

The diff itself looks fine here; I'll trust that this section type is what is needed :-)
Regarding CI:

Can you see if you can consolidate deps back to one version of object? There's probably another crate somewhere still using the old version.
One of us will need to vet the diff for the object upgrade; I'll get to this in a bit if no one else does first!

Can you see if you can consolidate deps back to one version of object? There's probably another crate somewhere still using the old version.

Did the best I could, we are now only duplicating the hashbrown crate. The old version is a dependency of indexmap which itself is a dependency of 3-4 other crates, and I figured this would be a good place to stop.
Also hashbrown has moved some of their API that we used behind a feature flag.

One of us will need to vet the diff for the object upgrade; I'll get to this in a bit if no one else does first!

👍, You also recently did a similar vet for object up to 0.30 in https://github.com/bytecodealliance/wasmtime/pull/5434#issuecomment-1350337637 so we're just missing 0.30 -> 0.30.3.

@afonso360 would you be willing to update this with an exemption for the hashbrown version duplication to the cargo-deny config (if the issue hasn't gone away with updates in the meantime)? Otherwise I think this PR is ready to go...

I've rebased this and added the exception, but I think we still have the same issue with cargo vet of missing a few vet's

Rebased this on top of main, and that resolves pretty much all of our vet issues. With the exception of object 0.30.1 -> 0.30.3, that update is introduced in this PR since SectionKind::ReadOnlyDataWithRel didn't exist before.

Thanks for unblocking this! 🎉

The merge queue failure seems to have been sporadic, I retried the job and it passed. I'm going to retry the merge queue again.


[Docs] Typo in Defining Props example code

See: https://rescript-lang.org/docs/react/latest/components-and-props#defining-props
vistorCount should be visitorCountMsg

done. Please report such issues on the rescript-lang.org repo!


Rebuild python3801 v3

Potentially closes #62

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.


Add FAQ about full and incremental backup

Added a FAQ about how Azure Backup leverages full and incremental backups. Described the block and pointers method.

@HueVang : Thanks for your contribution! The author, @markgalioto, has been notified to review your proposed change.

@HueVang  thank you for providing this information. Is the section on Incremental backup explained, lacking information? We added the explanation of Full and incremental backup to the What is Azure Backup article to address the questions that we were getting. To help maintain SEO, I'd prefer to keep the explanation of how backup works, in the What is Azure Backup article. I value your feedback, but I don't want to add the explanation to the FAQ.


Feat: add schema filtering for table search

This feature allows DataDocs to be filtered by a schema.
A user can select schema using multi select.
A user can select more than one schema.
A user can remove any selected schema.

@czgu Done!


consider slashes while cleaning labels

I was running into this kind of error, while trying to deploy to my k8s cluster.
error: invalid label value: "workflowFriendlyName=Develop_/_Deploy_To_k8s_Cluster": a valid label must be an empty string or consist of alphanumeric characters, '-', '_' or '.', and must start and end with an alphanumeric character (e.g. 'MyValue',  or 'my_value',  or '12345', regex used for validation is '(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?')

In addition to https://github.com/Azure/k8s-deploy/pull/211 which does not remove slashes, I replaced slashes with dashes. This fixes #105 again which is already merged and fixed, but the implementation misses consideration of slashes, as mentioned here https://github.com/Azure/k8s-deploy/issues/105#issuecomment-1127785348
What I did in this PR: In the cleanLabel method, I

replace whitespaces   with underscore _
replace slashes, pipes and backslashes \ | / with dash -
remove invalid characters

Can you rebase and use commit signature verification? We recently added this to improve repo security.

@OliverMKing needed some trial and error to get my signing key setup done. I squashed my commits and force pushed the "new" signed commit.


invisible reCaptcha in flutter

HI,
How can I do invisible reCaptcha in flutter?

You can try https://pub.dev/packages/flutter_firebase_recaptcha


Log health check DOWN reasons

Today when a readiness/liveness is failing, the reason for the failure doesn't appear anywhere for developers to see it.  You have to exec in the pod and curl the /health endpoint manually (if having permissions to do so and fast enough during a CrashLoopBackOff...) which is a pain.

Kubernetes/OpenShift only care about the HTTP status of an HTTP probe. The HTTP response body is not stored, when describing a failing pod you simply see "Readiness probe failed: HTTP probe failed with statuscode: 503"
quarkus-smallrye-health / smallrye-health is not writing any ERROR log with the reasons when sending back a DOWN global status
health check providers typically don't log any error either when implementing microprofile-health API (cf try/catch in user guide sample https://quarkus.io/guides/microprofile-health )

Proposal would be to add an ERROR log when a DOWN global status response is being sent (since it will likely result in the pod getting killed).

Btw the only ticket I managed to find on Kubernetes side about HTTP probe response body is https://github.com/kubernetes/kubernetes/issues/35438 and it didn't seem to have much traction.


fix: preserve zoomFactor on restarts

Related issues
#1034
Context
Small tweak to retrieve the previous zoomFactor on app start

I just tested on v5.3.0 and for me the previous zoom level is preserved, but with a visible flicker on first load.
Is it the flicker that what this is resolving @adufr ?

I've just added a small video in the issue #1034 to better describe it

I just tested on v5.3.0 and for me the previous zoom level is preserved, but with a visible flicker on first load.
Is it the flicker that what this is resolving @adufr ?

I've just added a small video in the issue #1034 to better describe it

thanks.  odd, that works for me 🤷♂


TACOPIE_CMAKE_ARGS is a string on Windows

When building on Windows the build fails with the following error:
network/tcp_client.hpp(28): fatal error C1083: Cannot open include file: 'tacopie/tacopie': No such file or directory
Before this error the following occurs:
-- Installing: C:/path/to/cpp_redis/deps -DMSVC_RUNTIME_LIBRARY_CONFIG=/MT/lib/tacopie.lib
This is caused by the TACOPIE_CMAKE_ARGS getting converted to a string instead of a list.

wow, good catch indeed!
Thanks for your contribution, that's really cool :)
I merge that right now, I tested on my side and it is fine.
Thanks again,
Best!


Some mouse hover info boxes are broken

When hovering over the icons within the details section of a dataset the last icon info box does not work properly (when looking from left to right).

This issue also occurs when hovering over the icons within the Details of a variable.
Not working are the 3rd and the last icon (when looking from left to right).

Within the operation section, for the button Add Step the same issue appears:

Also mentioned in #12 .

This was fixed by PR #75


Ability to shorten test recorded file names

Find a way if we can shorten the recorded file name without asking test authors to change anything.
Should be a httprecorder/testframework solution.

Done


add_lat_lon_gridlines in native_1 and native_2

Use add_lat_lon_gridlines in native_1 and native_2
native_1:

native_2:

@anissa111 @michaelavs What is our plan with this?

@anissa111 @michaelavs What is our plan with this?

I believe this PR (along with the others from Jiaqi that are still open) has functions being implemented in GeoCAT-viz and it was anticipated that when Erin wrapped up her work on that side, these would be updated with the GeoCAT-viz calls and then we would merge from there.


Error with 3.0 version of Zabbix

Hi,
Thanks for this amazing dashboard, but..
Since the last update (3.0.4) my dashboard show anything just the link setting..
There is an error of compatibility? I search with the new nersion of API but there is no fondamental update..
I'm lost..
Thanks
JB

I update from the 2.4 version

https://github.com/velinath/zabbixweb/blob/master/index.html#L162 - change to 3.0.4 instead of 3.0.1. Does the dashboard work if you do that?

No it's doesn't work.. I try with a clean VM and reinstall Ubuntu and Zabbix with the 3.0.4 version and this is the same pb. The 3.0.1 version is working?

thanks for your reponse

Try commenting out the entire referenced if block and trying again. Thank you.

Should be fixed in d0ffd44, if I hear nothing in the next couple days I will close.

I just clone the latest code, but still didn't work. My zabbix version is 3.0.5.

can you open your developer tools and see if there are any errors being thrown?

Check the network tab, if length is undefined it sounds like data isn't getting returned from zabbix if I had to guess.

Yes. But how to get data from zabbix? I've changed var zabbix = new $.zabbix ('http://zabbix.org/zabbix/api_jsonrpc.php', 'guest', '') to my zabbix server information. Are there any other thing I have to do?

Right. You would need to check and see what the code being returned is from the AJAX request.

Try it now! I just pushed a new change.


Fix hardcoded chain/asset unitvalues

Added singleton function/class to store chains/assets config,
Extracted asset balance calculation into separate utils method from all files (Applying DRY)
Fixes #19

Need to check if decimal values are configured from json file. Currently decimal values are hardcoded in following functions (Utils.js)

getNumericAssetBalance
getLiteralAssetBalance

Also https://github.com/Leasehold/ldex-ui/blob/34d9a399369667b831636879ac3997745e59270b/lisk-dex-electron/src/App.jsx#L243
Can we remove this hardcoded value?


Adding changes issue #424

…es/424

We don't want to add specific vendor flags in tests like this, so this is not something we can do.  It also wouldn't line up with the GNOI spec for how dual supervisor upgrades are handled.  If this was understood as a bug or unintended temporary state we could have a deviation.
It sounds like either the device behavior needs to change to support the GNOI spec, or you would like to make a change to the GNOI OS upgrade spec.

I've added @xw-g for this review who will help find a solution.

I've added @xw-g for this review who will help find a solution.

https://github.com/openconfig/featureprofiles/issues/424#issuecomment-1273924798

…es/424

Please help keep the title in a clean format thanks :) I just changed your PR title.

Let's continue the discussion first in https://github.com/openconfig/featureprofiles/issues/424#issuecomment-1273924798

duplicate of https://github.com/openconfig/featureprofiles/pull/675?

Refering to https://github.com/openconfig/featureprofiles/pull/675


modules/flower-power: Add module with 3 node types

Parrot Flower Power is a wireless plant monitor that measures
and analyses the four elements crucial to plant's health:
sunlight, temperature, soil moisture and fertilizer.
Initial version provides node types to fetch data via
HTTP, to filter packets per id, and to get measures
values from packets.
Details can be obtained from its website,
http://developer.parrot.com/flowerpower.html/
@lpereira could you please take a look on this commit?
Signed-off-by: Bruno Dilly<EMAIL_ADDRESS>

@edersondisouza  there is an extra slash in the end, sorry.

Looks good. Not much of a big fan of custom packet types but in this case it seemed inevitable. Maybe we need a struct packet type so that it's understood by the inspector? It would be useful in other places.

Merged with most suggestions applied.
Some stuff was marked as TODO and we'll work on that soon.
Thanks

@lpereira extra packet types are not bad, they are good. The bad part is having to do all the cumbersome stuff... like converters.
My patchset #271 was about adding the introspection you said, but @cmarcelo is always against it saying we're going the wrong route, too much stuff, etc...
My idea was to merge something in those lines and then add support to node-type-gen.py to get packet description from the JSON, generating the packet type and all the C functions and converter nodes for you.


Created Options Screen

Currently it has fullscreen and windowed mode setting Volume Slider
Exposure Slider (Which will effect exposure of our main Level camera) For Volume Slide i'm Currently changing volume in Music sound class(Unreal Default) I have sound class of our music audio as music class for now.

Conflicts
both modified:   Content/Audio/Songs/Soulless_Procedural_Waveform.uasset
both modified:   Content/Levels/Gameplay_Level.umap
both modified:   Content/Levels/SongGameInstance.uasset
both modified:   Content/ThirdPerson/Blueprints/Widgets/Title_Screen.uas
Solved all conflicts by keep main branch files expect titleScreen Bp.
Change in Content/Audio/Songs/Soulless_Procedural_Waveform.uasset  (Change in sound class from empty to engine default music)

###Change in Content/Levels/Gameplay_Level.umap (Created function to set exposurefrom game instance)

Change in  Content/Levels/SongGameInstance.uasset (Created some variable in Game Instance for menu settings)


Choppy sound during playback

On one of my machines I get choppy playback using this library. I'm trying to figure out why. Any ideas?

Du you use one of the included audio sinks, or your own audio data handling?
If an included sink, which one?
What OS do the troubled machine run?
What's the difference between the system where it is choppy and the systems
where it works nicely?
Anything else you can think of that might be relevant to reproduce the
issue?
On Sun, Jun 28, 2015, 20:13 patrickcorrigan<EMAIL_ADDRESS>wrote:

On one of my machines I get choppy playback using this library. I'm trying
to figure out why. Any ideas?
—
Reply to this email directly or view it on GitHub
https://github.com/mopidy/pyspotify/issues/167.

I use the AlsaSink. I'm running Arch Linux. The machine that I didn't have trouble with was a Ubuntu 15.04 virtual machine with gnome.
Here is the output of aplay -l listing playback hardware devices.
card 0: PCH [HDA Intel PCH], device 0: CS4206 Analog [CS4206 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 1: CS4206 Digital [CS4206 Digital]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

I'm using pyalsaaudio (0.8.2) the latest pyspotify and python 3.4.3
Thank you very much for your quick response. I really appreciate it.
If you would like anymore information just let me know.

Solved by installing and configuring pulseaudio :)

I'm having this issue, or a similar one, on my Arch setup. When I try to play the track I just get constant stuttering/skipping multiple times a second. I tried installing and configuring pulseaudio but I think it actually made the problem worse.
ALSA Info:  http://www.alsa-project.org/db/?f=d38a574964a957afda7b43edb75f4daff271832e
I'm using the default examples/play_track.py script for testing.


Fix grammar path in pom.xml

This PR updates the path in pom.xml to reflect the new location of the IDL.g4 grammar file.

Thank you @roehling !


[FEATURE] Bump support-bundle kit version

Is your feature request related to a problem? Please describe.
Bump the support-bundle-kit to a newer version to align with go 1.18 and k8s client-go v1.23.x
https://github.com/rancher/support-bundle-kit

This looks good :smile: :+1: - I'll go ahead and close this out per testing preformed on:
https://github.com/harvester/harvester/issues/3064#issuecomment-1322843500
Validated, manually building the binaries in dist/artifacts at v0.0.12 worked great too.


Upgrade to v3 of AWS SDK

Business Context:
V2 of the AWS SDK is going into maintenance mode some time this year, and we need to upgrade to v3, which splits the different services into different libraries. This will require finding all the places where aws-sdk is imported or required and replacing it with the appropriate v3 library or libraries
As a Complaint Manager
I want to use the most up to date AWS SDK package so that
So that I can have the benefit of regular updates that will solve security issues and stay in sync with AWS services
In Scope

Remove aws-sdk from package.json
Add new v3 packages to package.json (definitely s3 and secrets-manager, look around to see if there are more)
Replace uses of aws-sdk with the appropriate v3 library

Out of Scope

Open Questions

Mockups
Checklist (should be reviewed before grooming as the BA or Pair are writing the card—NOT reviewed for the first time at grooming)

[x] Ensure to include all necessary mockups to this card.
[x] Discuss what success/failure user feedback messages would be present, if any occur (front end/back end).
[x] Discuss Feature Flag: Where could a development flag go to flag off incomplete work? Do we want to keep the flag long-term?
[x] If this card is part of a sequence of cards, discuss if this card should be blocked until the testing of previous cards in the sequence have been finished.
[x] Have we added edge cases as ACs that we're considered from a QA perspective
[x] Should the new functionalities be offered only to users with certain permissions?
[x] How should this functionality differ between different orgs, and if it does differ, what is the hingepoint we should use for that functionality?

Notes:

Auto migration/transformation from aws sdk v2 to v3 in JS: https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/migrating-to-v3.html


Expose the option --enable-reconcileWebhookConfiguration

Expose the option --enable-reconcileWebhookConfiguration, which allows a user to turn on/off Galley managing its own webhookconfiguration.
Related PR: https://github.com/istio/istio/pull/16118
Please provide a description for what this PR is for: https://github.com/istio/istio/issues/8736
Design document: https://docs.google.com/document/d/1VHyBre8943USOx_YEVtA18KfEoGTmLT1iBHESO5bzcA
And to help us figure out who should review this PR, please
put an X in all the areas that this PR affects.
[ ] Configuration Infrastructure
[ ] Docs
[X ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[X ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure

/retest

I met offline with @costinm and we agreed on the following plan of action:

We need a way to disable webhook configuration in Citadel and Injection Webhook, and such flags are the right way to implement feature flags in the istio/istio installer.
The flags can be added into istio/istio installer.
The flags will not be added into the new istio/installer, since webhook configuration will be disabled by default in Citadel and Injection Webhook. So we will close this PR.
We need to test the logic and combinations of flags, especially upgrade from 1.3. This is tracked in https://github.com/istio/istio/issues/16860.