Install Vim (or better, NeoVim)

[x] Install NeoVim
[x] Go through vimtutor
[x] Start using it for writing commit messages
[x] Optionally, look into integrating https://astronvim.github.io

[x] Try enabling some plugins, like Python syntax highlighting/jedi, flake8
[x] Install RipGrep, fzf

Hello, Sviatoslav,
I am trying to install some plugins (from your list and also some internet recommendations). I wrote this syntax in file
init.vim
set number
set autoindent
set tabstop=4
set smarttab
set softtabstop=4
set mouse=a
set encoding=utf-8
syntax enable
set scrolloff=7
set shiftwidth=4
set expandtab
set fileformat=unix
call plug#begin('~/.vim/plugged')
Plug 'morhetz/gruvbox'
Plug 'windwp/nvim-autopairs'
Plug 'preservim/nerdtree'
Plug 'preservim/nerdcommenter'
Plug 'norcalli/nvim-colorizer.lua'
Plug 'vim-airline/vim-airline-themes'
Plug 'SirVer/ultisnips'
Plug 'davidhalter/jedi-vim'
Plug 'PyCQA/flake8'
Plug 'junegunn/fzf'
Plug 'duane9/nvim-rg'
call plug#end()
Then, I got this alarm:
Finishing ... Done!
x ripgrep:
Cloning into '/home/olenayefymenko/.vim/plugged/ripgrep'...
fatal: could not read Username for 'https://github.com/': terminal prompts disabled
Please, help me in this question. Should I find another resource for RipGrep?

It looks like you use custom/manual setup for packages, outside of astronvim. When you use astronvim, you need to place the configuration in a dedicated place, not overriding the entry point config file.
Regarding the error, it looks like the underlying git clone is failing. The URL uses HTTPS transport, not SSH. Normally, this works for public repositories but the private repos need some sort of credentials. For SSH, it's a private key, for HTTPS it's a login+password or an access token. Since you don't run git clone in your terminal interactively, git is unable to prompt for the username and the password and fails to complete cloning.
Back to the point of private vs. public repos, Vim plugins are usually maintained as public repos, not needing any authentication credentials whatsoever — you won't be prompted for those. But it seems like the target repo does not exist so git is trying to see if sending credentials would reveal it to be private which is what you observe.
So ultimately, the problem seems to be that you might've listed a plugin that no longer exists or moved elsewhere.
Still, I'd recommend trying to stick to the config layout provided by Astronvim for better structure.
Note that some of the Vim plugins require third-party software installed additionally, with a system package manager (dnf).

Sviatoslav, also I would like to ask you about correct adding Nerd fonts (the first requirement in instruction for install), I spent a lot of time to understanding how I should to write command in CLI. I learned basic commands in Linux (https://www.hostinger.com/tutorials/linux-commands) and cp as well. Firstly, I was trying to add archive in zip format (also unzip) in  /usr/share/fonts/ or /usr/local/share/fonts/ , but I had errors connected with permissions. In the end, I used this way:
git clone --depth=1 https://github.com/ryanoasis/nerd-fonts ~/.nerd-fonts
cd .nerd-fonts
sudo ./install.sh
Please, give a hint, how would you add the font for this issue (install Astronvim?)

but I had errors connected with permissions

Yep, when you have permission errors, it's a red flag. Of course, it's possible to override that with sudo but it'd be dangerous (and is a common rookie mistake). So it's good that you've gone for doing this in userspace.
In general, you should only install things in superuser-controlled locations through dnf and maybe edit some configs in /etc if needed. But most of the stuff you need for your dev env should fit in your user's home directory, where you would have enough privileges for virtually anything.
Note that you should never need sudo when putting things into user-owned directories — it'll work at first, but the files produced will be owned by root, making them inaccessible to your regular user. And it only goes downhill from there.

In the end, I used this way:
git clone --depth=1 ryanoasis/nerd-fonts ~/.nerd-fonts
cd .nerd-fonts
sudo ./install.sh

I never used it like this, but downloaded a font from https://www.nerdfonts.com/font-downloads and unpacked it under ~/.local/share/fonts (there's also curl-based examples at the bottom of that page). I think, it might also be necessary to run fc-cache -fv to reset the font cache.
After that, once the font is in your system, various software can pick it up and you can select it in apps. In case of Kitty, it's config is located at ~/.config/kitty/kitty.conf. Here's a config sample you can use as a starting point — https://sw.kovidgoyal.net/kitty/_downloads/433dadebd0bf504f8b008985378086ce/kitty.conf.
Once you change the Kitty config, remember to kill it and start a fresh Kitty window — most programs only read their config file during startup so you can't see any changes while running an instance that was started before the config changes were made.
Why am I even talking about Kitty? That's because it's what is using the fonts to render characters on screen. NeoVim does not do that — just like any other TUI, it works with character streams, it reads them from stdin/keyboard and prints out other characters back to the terminal, refreshing what you see. When such output reaches to the terminal (or the emulator, Kitty, in our case), it's the terminal's job to display all that. There are standards in place that allow injecting text sequences in the output instructing the terminal to switch colors for the following test or apply other simple decorations — that's how you see it colored, but those CLI/TUI apps don't actually interact with your display directly at all.
Oh, and one more thing. Please, check out Markdown and start using code-block highlighting. Like this, kinda.
def hello(world):
    ...

$ command --options
output

@webknjaz thank you a lot for details about the peculiarities of symbols transmission!
Yes, I installed fonts like in your example in ~/.local/share/fonts.
I tried to check applied font:
[olenayefymenko@fedora kitty]$ kitty --debug-font-fallback
[026 17:48:37.980866] Preloaded font faces:
[026 17:48:37.980919] normal face: /usr/share/fonts/google-noto-vf/NotoSansMono-VF.ttf:0
[026 17:48:37.980938] bold face: /usr/share/fonts/google-noto-vf/NotoSansMono-VF.ttf:262144
[026 17:48:37.980952] italic face: /usr/share/fonts/google-noto-vf/NotoSansMono-VF.ttf:0
[026 17:48:37.980974] bi face: /usr/share/fonts/google-noto-vf/NotoSansMono-VF.ttf:262144
I didn't find another way. I interpret this as a font replacement. If I am wrong, I will be grateful if you give maybe the link where I can check, I read about this in google and https://sw.kovidgoyal.net/kitty/conf/
As for Markdown, I checked some file.py and I made sure about highlighter in GitHub. But, I am confused about style of writing for example path in your comment. I have another, without gray background (I mean  ~/.local/share/fonts.)

In Markdown, you can wrap text with single backticks to mark it as "inline code", as opposed to the triple backticks with an optional lexer name which is used for marking code blocks.

As for the font, I see that it's loaded from the system location. It is typical that a list of paths is checked for file existence — first software checks user dirs and then, the system ones. In your log, it's found that font in the system location which probably means that it's not present in the user directory. What font family have you sent in the Kitty config? Is it present in the fonts folder under the user home dir?

I have chosen BitstreamVeraSansMono Nerd Font

Also I have  .kitty.config.swp

I assumed that configuration settings were not saved (I had swp file, I fixed this by correct saving in Vim).
Now, when I type in CLI:
$ kitty ls -a
I don't have any editable file (swp format I mean), after command:
$ vim .kitty.config
My vim is opened.
After
$ kitty --debug-font-fallback
I obtained the same location:
"/usr/share/fonts/google-noto-vf/NotoSansMono"
Finally, (after "--debug-font-fallback"), I have a new open kitty window.

Did you put the config in the correct location or do you pass this custom name to the Kitty invocation?
What's the full config entry line for the font family?

Note that for terminal it's best to use fixed-width fonts, also known as monospace. These often have "Mono" in their names.
P.S. For terminal session logs (where you have a terminal prompt, followed by a command and its output), use code blocks with the console lexer. It's source would look smth like this:
```console
$ command --args
Lines of
output.
Here.
```

The above is rendered as follows:
$ command --args
Lines of
output.
Here.

As for the font, I see that it's loaded from the system location. It is typical that a list of paths is checked for file existence — first software checks user dirs and then, the system ones. In your log, it's found that font in the system location which probably means that it's not present in the user directory. What font family have you sent in the Kitty config? Is it present in the fonts folder under the user home dir?

Hello, Sviatoslav, I am sure that the downloaded font is in the home directory.
$ cd fonts/
$ ls -a
.
..

I check in https://sw.kovidgoyal.net/kitty/conf/

As for the font, I see that it's loaded from the system location. It is typical that a list of paths is checked for file existence — first software checks user dirs and then, the system ones. In your log, it's found that font in the system location which probably means that it's not present in the user directory. What font family have you sent in the Kitty config? Is it present in the fonts folder under the user home dir?

Hello, Sviatoslav, I am sure that the downloaded font is in the home directory.
$ cd fonts/ $ ls -a . ..

I consider that I implemented incorrect actions when I wrote scripts in Vim

No, Vim (nor NeoVim) does not know anything about the fonts. It's Kitty that is using them.
Oh, and I still haven't seen any confirmation that you modify the config in the right location. Try to include such details in the logs. Because when you say that you think you edit the right file, I can't verify/compare that with the information provided. One of the ways to verify that the config file is loaded is to set a large font size, so it'd be visually noticeable that it's changed. FWIW kitty --help lists the config lookup paths under the --config option description.
Here are the values I've got:
$ grep '^font_family ' ~/.config/kitty/kitty.conf | tail -n1
font_family      Fira Code Retina Nerd Font Complete

$ grep '^font_size ' ~/.config/kitty/kitty.conf | tail -n1
font_size 29.0

(the size is large due to me having a 4K display + it's more comfortable with big letters, it may be different for your laptop, though)
P.S. It seems like you've only got *.ttf font files. IIRC those are bitmap which means that they are rendered poorly in Kitty. Always use vector fonts, their files will have the *.otf extension, for example. I've checked out a few fonts and it seems like Hack, Hasklig, Overpass Mono, Fira Mono, Code New Roman, Hermit, Droid Sans Mono (I've excluded a few r*ssian fonts from this list) — if you use any of them, it's likely to fix your problem. You can preview some of these (unpatched?) fonts at https://www.programmingfonts.org/#hack.

No, Vim (nor NeoVim) does not know anything about the fonts. It's Kitty that is using them.

I understood, but wrote not clear for you. Sorry
in terminal, I typed:
$ vim .kitty.config
then I wrote first var options of fonts (example from youtube, mix. It is not correct):
font family Bitstream Vera Sans Mono Nerd Font Complete
bold_font auto:
italic_font auto
bold_italic_font auto
Then I saved it. (:wq)
I also had second var like in example in https://sw.kovidgoyal.net/kitty/conf/
font_family      Operator Mono Book
bold_font        Operator Mono Medium
italic_font      Operator Mono Book Italic
bold_italic_font Operator Mono Medium Italic`
But, I steel can't understand:

How to save parametrs through the vim editor for kitty.config
I am confused by checking config file in Kitty. When I typed
$  ~/.config/kitty/kitty.conf
Permission denied

Also, it'd be interesting to see ls -alh — this reveals the file privileges/owners info, not just names.

drwxr-xr-x. 1 olenayefymenko olenayefymenko  46 Jan 27 17:14 .
drwxr-xr-x. 1 olenayefymenko olenayefymenko 728 Jan 26 18:34 ..
-rw-r--r--. 1 olenayefymenko olenayefymenko 77K Jan 27 15:59 kitty.conf
-rw-r--r--. 1 olenayefymenko olenayefymenko 163 Jan 27 17:14 .kitty.config

No, Vim (nor NeoVim) does not know anything about the fonts. It's Kitty that is using them.
Oh, and I still haven't seen any confirmation that you modify the config in the right location. Try to include such details in the logs. Because when you say that you think you edit the right file, I can't verify/compare that with the information provided. One of the ways to verify that the config file is loaded is to set a large font size, so it'd be visually noticeable that it's changed. FWIW kitty --help lists the config lookup paths under the --config option description.
Here are the values I've got:

Thank you, I will test this
P.S. I am sorry, that I can't resolve this task so long(

No, Vim (nor NeoVim) does not know anything about the fonts. It's Kitty that is using them.

I understood, but wrote not clear for you. Sorry in terminal, I typed:
$ vim .kitty.config

Note that since it's inline highlighting, there's no need to prepend a $ prompt or put it on a separate line. Use an explicit console highlighting with a triple-backticked code block otherwise.
This name you used (.kitty.config) is a random file that Kitty does not load by default (that is, unless you pass it explicitly, as in kitty --config=.kitty.config). The correct filename is kitty.conf and the full path would be ~/.config/kitty/kitty.conf. This means that you edit some random file that does not get loaded by Kitty at all, no matter how many times you save it, it just exists on disk and that's about it.

then I wrote first var options of fonts (example from youtube, mix. It is not correct):
font family Bitstream Vera Sans Mono Nerd Font Complete bold_font auto: italic_font auto bold_italic_font auto

Try to use code blocks for any excerpts from text files or terminal output. So it's visible where this text starts and ends, and the formatting wouldn't be broken — as you see, GitHub thinks it's a paragraph of regular text, not a part of some code-like block.
It'd be better if it looked like this:
font family Bitstream Vera Sans Mono Nerd Font Complete
bold_font auto:
italic_font auto
bold_italic_font auto

use the preview feature on GH UI, if unsure how it'll get rendered. Now, it's evident that the colon there might be a syntax error.

Then I saved it. (:wq) I also had second var like in example in sw.kovidgoyal.net/kitty/conf

Here, you have a chance to highlight the keystrokes as :wq.

font_family Operator Mono Book bold_font Operator Mono Medium italic_font Operator Mono Book Italic bold_italic_font Operator Mono Medium Italic`

When formatted as a Markdown code block, it'd look like this:
font_family Operator Mono Book
bold_font Operator Mono Medium
italic_font Operator Mono Book Italic
bold_italic_font Operator Mono Medium Italic`

What's that rogue trailing backtick doing there?

But, I steel can't understand:

https://en.wikipedia.org/wiki/Steel. Of course, you could proofread it manually, but it's still a subject to “situational blindness”. So I recommend you using https://languagetool.org and/or https://grammarly.com to avoid such typos, as companion tools.

1. How to save parametrs through the vim editor for kitty.config

You're saving the file correctly. But the file name is wrong. See above. By the way, highlight kitty.config. I also see that you use this interchangeably with .kitty.config which has a leading period.

2. I am confused by checking config file in Kitty. When I typed
   `$  ~/.config/kitty/kitty.conf`
   Permission denied

Don't use inline highlighting here, just for the first line. It should be a code block, since “Permission denied” is probably an output you've got on the terminal and not some arbitrary text you typed in above manually. This looks nicer:
$  ~/.config/kitty/kitty.conf
Permission denied

Indent every line if you need it to be under a list item.
So the reason you can't execute ~/.config/kitty/kitty.conf is that (1) it's a text file that is not an executable program and (2) it does not have the executable bit set (you'd see this in the ls -alh output as x). When you type in a file path in the terminal, and hit Enter, the shell is trying to execute it as if it's a program. When you type in a command and other whitespace-separated things — the first part is the program and the rest is just inputs/arguments passed to that program.
Now, you don't actually need to execute a text file as a script. You need to open it with a code editor, for example, you can use nvim ~/.config/kitty/kitty.conf to open it for editing in NeoVim, just like you did with the incorrect filename .kitty.config.
In this example, nvim is a program and ~/.config/kitty/kitty.conf is its first command line argument. The shell locates the nvim program's full path by checking the $PATH environment variable (it'll probably resolve it to /usr/bin/nvim), and then, it executes that file /usr/bin/nvim. From that moment on, NeoVim sees that '~/.config/kitty/kitty.conf' is passed and opens it by itself.
/usr/bin/nvim is a binary (compiled executable) that also has an executable bit in the file system metadata. If it didn't have that bit set, it'd fail with a permission error, too. But that's a separate topic to explore.
FWIW, after saving the config file, you can restart Kitty or run it with font debug from a separate tab (Ctrl+Shift+T) to verify the effect.

Also, it'd be interesting to see ls -alh — this reveals the file privileges/owners info, not just names.

drwxr-xr-x. 1 olenayefymenko olenayefymenko  46 Jan 27 17:14 .
drwxr-xr-x. 1 olenayefymenko olenayefymenko 728 Jan 26 18:34 ..
-rw-r--r--. 1 olenayefymenko olenayefymenko 77K Jan 27 15:59 kitty.conf
-rw-r--r--. 1 olenayefymenko olenayefymenko 163 Jan 27 17:14 .kitty.config

Try bundling this output with the actual command as shown above. Also, it's useful to include the output of pwd.
Anyway... This confirms my guesses and observations I wrote above — you've created the correct file kitty.conf on Jan 27 at 15:59, but then, for some reason, you've added another file .kitty.config at 17:14 — the one you don't actually need. So you should only edit the former to see the effect of the changes you're trying to make, and remove the latter, so it doesn't just lay on disk confusingly.
As a bonus exploration pointer, google chown and chmod to learn about the file system privileges, separately from the task here — you can just add this to your backlog for future learning.

P.S. I am sorry, that I can't resolve this task so long(

That's okay, no need to apologize. Everyone's pace is different.

Thank you very much for the detailed description of the command execution algorithm in the terminal.
And for your patience.
I changed the different font options several times. Reopened Kitty and everything works as it should :)

Great, I do suppose we can close this now, provided that you'll keep practicing this. Note that you can always enable more plugins in AstroNvim and update the user config as you go. Feel free to post links or notes in this issue if you need to keep track of things you're trying out.

@webknjaz

Great, I do suppose we can close this now, provided that you'll keep practicing this. Note that you can always enable more plugins in AstroNvim and update the user config as you go. Feel free to post links or notes in this issue if you need to keep track of things you're trying out.

I practiced writing code a bit in AstroNvim. pylint and flake8 were installed due to :MasonInstall <package>. They are working properly.
And I am trying to run code in AstroNvim. So far it has been possible to do this in tab Bufs  (in Toggle Explorer mode), using the following command: :! python <file.py>.
Maybe there are plugins/packages that you would recommend installing for launch code?

I think there's a way to get a shell or a Python REPL through those -driven hotkeys but I prefer running stuff in a dedicated Kitty tab, separately from any editor. It's the same for all, no need to memorize how each individual editor runs stuff.
Though, one of the valid cases when you might want to run software through the editor is the availability of debuggers.

https://astronvim.github.io/#-requirements says that <Space>tp runs a Python REPL. There's also a way to install stuff visually, through that <Space> menu — the one appearing when you hit spacebar once.

Thank you! I will try


A Matrix Parallelization

Hi Jordan,
I saw that you modified the A matrix code for parallel computations. Well done!
The A_piecewise can also be parallelized. It should be an embarrassingly parallel function and no interaction among threads are needed.
I estimate that the A matrix code computation speed can double.

@XiaoWang-Github  Yes, I'm working on that as we speak.  For moderate size CT problem, just parallelizing the section before the transpose gave me a 6x speedup overall with 20 threads.

Matrix parallelization is implemented now


[Bug] Inpaiting - deepfillv2 pretrained model - stage 2 results different between months ago

Prerequisite

[X] I have searched Issues and Discussions but cannot get the expected help.
[X] I have read the FAQ documentation but cannot get the expected help.
[X] The bug has not been fixed in the latest version (master) or latest version (1.x).

Task
I'm using the official example scripts/configs for the officially supported tasks/models/datasets.
Branch
master branch https://github.com/open-mmlab/mmediting
Environment
sys.platform: linux
Python: 3.8.12 (default, Oct 12 2021, 13:49:34) [GCC 7.5.0]
CUDA available: True
GPU 0,1,2,3: Quadro RTX 8000
CUDA_HOME: /usr/local/cuda
NVCC: Cuda compilation tools, release 10.2, V10.2.8
GCC: gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0
PyTorch: 1.12.1+cu102
PyTorch compiling details: PyTorch built with:

GCC 7.3
C++ Version: 201402
Intel(R) Math Kernel Library Version 2020.0.0 Product Build 20191122 for Intel(R) 64 architecture applications
Intel(R) MKL-DNN v2.6.0 (Git Hash 52b5f107dd9cf10910aaa19cb47f3abf9b349815)
OpenMP 201511 (a.k.a. OpenMP 4.5)
LAPACK is enabled (usually provided by MKL)
NNPACK is enabled
CPU capability usage: AVX2
CUDA Runtime 10.2
NVCC architecture flags: -gencode;arch=compute_37,code=sm_37;-gencode;arch=compute_50,code=sm_50;-gencode;arch=compute_60,code=sm_60;-gencode;arch=compute_70,code=sm_70
CuDNN 7.6.5
Magma 2.5.2
Build settings: BLAS_INFO=mkl, BUILD_TYPE=Release, CUDA_VERSION=10.2, CUDNN_VERSION=7.6.5, CXX_COMPILER=/opt/rh/devtoolset-7/root/usr/bin/c++, CXX_FLAGS= -fabi-version=11 -Wno-deprecated -fvisibility-inlines-hidden -DUSE_PTHREADPOOL -fopenmp -DNDEBUG -DUSE_KINETO -DUSE_FBGEMM -DUSE_QNNPACK -DUSE_PYTORCH_QNNPACK -DUSE_XNNPACK -DSYMBOLICATE_MOBILE_DEBUG_HANDLE -DEDGE_PROFILER_USE_KINETO -O2 -fPIC -Wno-narrowing -Wall -Wextra -Werror=return-type -Wno-missing-field-initializers -Wno-type-limits -Wno-array-bounds -Wno-unknown-pragmas -Wno-unused-parameter -Wno-unused-function -Wno-unused-result -Wno-unused-local-typedefs -Wno-strict-overflow -Wno-strict-aliasing -Wno-error=deprecated-declarations -Wno-stringop-overflow -Wno-psabi -Wno-error=pedantic -Wno-error=redundant-decls -Wno-error=old-style-cast -fdiagnostics-color=always -faligned-new -Wno-unused-but-set-variable -Wno-maybe-uninitialized -fno-math-errno -fno-trapping-math -Werror=format -Wno-stringop-overflow, LAPACK_INFO=mkl, PERF_WITH_AVX=1, PERF_WITH_AVX2=1, PERF_WITH_AVX512=1, TORCH_VERSION=1.12.1, USE_CUDA=ON, USE_CUDNN=ON, USE_EXCEPTION_PTR=1, USE_GFLAGS=OFF, USE_GLOG=OFF, USE_MKL=ON, USE_MKLDNN=OFF, USE_MPI=OFF, USE_NCCL=ON, USE_NNPACK=ON, USE_OPENMP=ON, USE_ROCM=OFF,

TorchVision: 0.13.1+cu102
OpenCV: 4.5.4
MMCV: 1.6.2
MMCV Compiler: GCC 7.5
MMCV CUDA Compiler: 10.2
MMEditing: 0.12.0+
Reproduces the problem - code sample
Same code as your repo.
Reproduces the problem - command or script
python tools/test.py configs/inpainting/deepfillv2/deepfillv2_car_256x256.py CKPT/Inpaiting/deepfillv2_1017.pth --save-path results/Car_Removal/test_1017
Reproduces the problem - error message
No error but result wrong.
Additional information
Few months ago , I used the pretrained deepfillv2 model to inference, everything was ok , but now with same code , the predict results of stage 2 is different and wrong.
Maybe it is about the version of pytorch and mmcv? stage 1 is still same, but stage2 get strange results.
Maybe is the unfold operation in contextual_attention module?

Hey @LoveU3tHousand2, have you ever updated any packages (e.g., MMCV, Pytorch) or switched your GPU during the recent month?
Can you provide the results of both outputs?

Hey @LoveU3tHousand2, have you ever updated any packages (e.g., MMCV, Pytorch) or switched your GPU during the recent month?
Can you provide the results of both outputs?
是的， 有对cuda、pytorch mmcv 进行版本更新， 但是之前也尝试过将版本回退 可是结果就是不对，目前测试出来deepfillv1是没问题的 但是deepfillv2结果与之前不一致 ， 我这里只有错误的结果了。。。

图中最左边是GT ，第四张是stage1的结果， 第五张是stage2未与原图组合的结果， 最后一张是stage2 * m + img * (1-m)的结果。  目前猜测会不会是gated_conv的原因，或者mmcv对ConvModule这个模块有什么更新？  在正确的结果中被mask的位置修复的效果还是挺好的， 因为背景本身就挺简单。

fxxk,  I found the problem ... it is my mistake.!


Post polls

Because who doesn't love a good'ol poll.

When building this, we should also take into account the possibility of it being a quizz.


ci: validate that resolved url matches the package name

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

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

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
507

Relevant Lines:
507

💛  - Coveralls


fix(lambda): increase socket and HTTP timeout for Lambda extension

It turns out that 100 ms is sometimes not enough, although
communication to the Lambda extension happens on localhost. If the
extension is up and runnig but communication between the Node.js
in-process collector and the extension fails at some point, the
Node.js in-process collector will stop attempting to talk to the
extension. Consequently, the extension will wait to receive the Lambda
entry span, which will never happen, causing the Lambda invocation to
run into a timeout.

Once https://github.ibm.com/instana/lambda-extension/pull/4 has been reviewed and merged, we could also include the new binary from that PR here (or in a separate PR).


KAFKA GH-223: Handle unexpected content type

See https://github.com/spring-cloud/spring-cloud-stream-binder-kafka/issues/223
When using native encoding; NPE when no class name derived from the content type.
Do not attempt deserialization if JavaClassMimeTypeUtils.classNameFromMimeType(contentType)
returns null.
Test case in the Kafka binder.
cherry-pick to master

Codecov Report

Merging #1095 into 1.3.x will decrease coverage by 0.02%.
The diff coverage is 0%.

@@             Coverage Diff              @@
##              1.3.x    #1095      +/-   ##
============================================
- Coverage     51.48%   51.45%   -0.03%
  Complexity      707      707
============================================
  Files           134      134
  Lines          4005     4007       +2
  Branches        542      543       +1
============================================
  Hits           2062     2062
- Misses         1786     1788       +2
  Partials        157      157

Impacted Files
Coverage Δ
Complexity Δ

...cloud/stream/binder/MessageSerializationUtils.java
0% <0%> (ø)
0 <0> (ø)
:arrow_down:

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 e2c214b...ff34d16. Read the comment docs.

@garyrussell ,
You know looks like nothing to fix in master on the matter.
Or there is needed a fix in different place. Sorry I can't figure out where, since JavaClassMimeTypeUtils is out of use on the master...

OK; let's cherry-pick the kafka test and we can verify it works ok.


feature request: js notification when the address book changes

(note to self!)

hello,
is there any roadmap for detect if contact has been changed? I need this feature for my chatting app, which auto refresh contact if any change happened.
It's not efficient to trigger getAll every background->foreground state.
Thanks.

@pewh no roadmap. Feel free to submit a PR.

dupe https://github.com/rt2zz/react-native-contacts/issues/57


Reflect starting point for Custom CSS in ReadMe

I had a bit of trouble getting started and this might help other people trying to figure out where to start!

Thanks. your work assists theme creators. :+1:
Because a DOM structure or defined classes could change in future, Marp don't recommend custom styling to users, ... unless you are developer :wrench:


latency evaluation

Thanks for this project.
Is there any latency metrics of the feed ?
I intend to use a GoPro in a live gesture recognition project and I wonder how much is the latency.
(anything beyond 100ms will be a huge problem for me)

I've just tested my hero 9, and the

latency seems to be in few seconds.
The connection is over a USB C cable.
Using it on an high end jetson device (AGX-orin).
Is there any way we can reduce the incoming frame size to improve the latency.

Latency is ~500ms on a ubuntu PC with the latest AMD CPU.

latency is ~700ms use UDP, ubuntu 20.04, i9-12900k, GoPro Hero 13


Diff renamed files?

I've been trying to get the list of files that have been renamed from a particular diff.
I can see that I get at least get the SHAs for the src and dst of a particular DiffFile.
Ideally I'd want the process_full_diff method inside diff.rb:
          if m = /^diff --git a\/(.*?) b\/(.*?)/.match(line)
            current_file = m[1]
            final[current_file] = defaults.merge({:patch => line, :path => current_file})
          else

to also include the second capture and expose these properties as src_file_path and dst_file_path.
Is there something I'm missing?
Is there an easier way to do this today?

I suppose I could match each line of the diff, but it'd be nice to have built-in support for this.

Also vote for this issue, both old and new filepaths must be exposed.

Old, closed, but still missing.
Maybe using --no-renames option could be added?


Always use VP8 codec when streaming audio only

VP8 is more commonly hardware accelerated, and thus results in a lighter load on the user's device. When streaming audio only, the video quality and bandwidth doesn't matter, so using the hardware accelerated codec will result in a more optimal solution until W3C natively support audio only streams.

Fixed in f89db401fafadb36ec4b26774bca4634e49405a0


Couchbase Support for GraphRAG

Description
This pull request adds a new Jupyter notebook demonstrating how to set up and use GraphRAG with Couchbase as a vector store. The notebook walks through the process of loading data, setting up models, storing embeddings, and running a search engine query.
Related Issues
N/A (or reference any existing issues if applicable)
Proposed Changes

Set up Couchbase vector store integration
Added new Jupyter notebook demonstrating graphrag with couchbase as vector strore
Demonstrate a sample query execution

Checklist
[x] I have tested these changes locally.
[x] I have reviewed the code changes.
[x] I have updated the documentation (the notebook itself serves as documentation).
[x ] I have added appropriate unit tests (if applicable).
Additional Notes
This notebook provides a comprehensive example of using GraphRAG with Couchbase, which can be valuable for users looking to implement similar setups. It covers important aspects such as environment configuration, data loading, model setup, and query execution.

@microsoft-github-policy-service agree [company="{Couchbase}"]

@microsoft-github-policy-service agree company="Couchbase"


New playbook to run database setup and update django local settings

update postgres host variables for new servers
update postgres version to 15
new playbook to run postgres database setup tasks and update django local settings

notes:

specific tags are required for the new playbook to operate the way it's intended; I have it documented in the comments, but it bothers me a little
I'm understanding ansible better, and I know now from trying it that this playbook doesn't work properly when run on multiple hosts at a time. I suspect this is because we have tasks using register where we should be using set_fact; this is something I'd be interested in improving

@acozine thank you for review and feedback, I've done some cleanup based on your suggestions and questions. Is there anything you think is important to address before merging?
There are larger problems with cdh-ansible that I'd like to address at some point, and would love to get your input on priority & order once we do an overview/deep dive on current state, but don't want to hold this up.

Looks good to merge. This makes the automation better, so let's not wait for more refinements. Happy to look at the variables issues together - maybe next week sometime?

Thank you! That would be helpful, I've done some preliminary work in a different branch and I think I made some progress - I think that's when I tripped over / figured out the set_fact; it would be valuable to look at together.


MITRE STIX object "Campaign" added

Signed-off-by: Arnav Das<EMAIL_ADDRESS>

This PR is concerning the Issue #125. I have added the Campaign class that gets populated from the new data

@MSAdministrator ?

Code looks good! I can confirm fixes Pyattck issue #125.

@MSAdministrator ?

@MSAdministrator @arnavdas88  any new about this MR?

@brantw is it possible to give me access to this repository so I can merge this open PR? I’ll need pyattck repo as well.

@brantw thank you!
@arnavdas88 @adamcysec @SirSkizo i’m going to merge this but I won’t be able to fully integrate the change into pyattck until tomorrow.
Thanks for creating this PR and for all the support and work!

Thank you @MSAdministrator 😊

Any Update @MSAdministrator ?


How to build ?

This project is under development.
If I finish, I will write document.

@Maxmudjon
Now you can build the project


Undefined method make_button

Hi, In a PM::TableScreen I'm trying to use the app.make_button method to create some buttons for an ActionSheet. Unfortunately I get an undefined method error.
I copied the button code from an example of the docs, my code looks basically like this (the error happens using this code):
class HomeTableScreen < PM::TableScreen
  title "Test"
  stylesheet HomeTableScreenStylesheet

  def on_load
    some_action
  end

  def table_data
    [{ cells: some_data }]
  end

  def some_action
    taco = app.make_button("Taco") {
            puts "Taco pressed"
          }
  end
end

Here is the stack trace (I can provide the generated crashlog if needed):
undefined method `make_button' for RubyMotionQuery::App:Class (NoMethodError)
2015-05-10 12:42:15.041 testapp[7212:7434475] *** Terminating app due to uncaught exception 'NoMethodError', reason: 'home_table_screen.rb:29:in `gram_button': undefined method `make_button' for RubyMotionQuery::App:Class (NoMethodError)
'
*** First throw call stack:
(
	0   CoreFoundation                      0x000000010343ec65 __exceptionPreprocess + 165
	1   libobjc.A.dylib                     0x000000010077ebb7 objc_exception_throw + 45
	2   testapp                            0x000000010036a91f _ZL10__vm_raisev + 399
	3   testapp                            0x000000010036aa4d rb_vm_raise + 205
	4   testapp                            0x0000000100268b59 rb_exc_raise + 9
	5   testapp                            0x0000000100368cc2 rb_vm_method_missing + 786
	6   testapp                            0x000000010033bbf5 rb_vm_dispatch + 5925
	7   testapp                            0x000000010033a38d rb_vm_trigger_method_missing + 1053
	8   testapp                            0x000000010033b5ef rb_vm_dispatch + 4383
	9   testapp                            0x00000001000415bc vm_dispatch + 1436
	10  testapp                            0x0000000100226a43 rb_scope__gram_button__ + 355
	11  testapp                            0x0000000100226fcd __unnamed_29 + 13
	12  UIKit                               0x0000000100ca2da2 -[UIApplication sendAction:to:from:forEvent:] + 75
	13  UIKit                               0x0000000100ca2da2 -[UIApplication sendAction:to:from:forEvent:] + 75
	14  UIKit                               0x0000000100db454a -[UIControl _sendActionsForEvents:withEvent:] + 467
	15  UIKit                               0x0000000100db3919 -[UIControl touchesEnded:withEvent:] + 522
	16  UIKit                               0x0000000100cef998 -[UIWindow _sendTouchesForEvent:] + 735
	17  UIKit                               0x0000000100cf02c2 -[UIWindow sendEvent:] + 682
	18  UIKit                               0x0000000100cb6581 -[UIApplication sendEvent:] + 246
	19  UIKit                               0x0000000100cc3d1c _UIApplicationHandleEventFromQueueEvent + 18265
	20  UIKit                               0x0000000100c9e5dc _UIApplicationHandleEventQueue + 2066
	21  CoreFoundation                      0x0000000103372431 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
	22  CoreFoundation                      0x00000001033682fd __CFRunLoopDoSources0 + 269
	23  CoreFoundation                      0x0000000103367934 __CFRunLoopRun + 868
	24  CoreFoundation                      0x0000000103367366 CFRunLoopRunSpecific + 470
	25  GraphicsServices                    0x0000000105067a3e GSEventRunModal + 161
	26  UIKit                               0x0000000100ca1900 UIApplicationMain + 1282
	27  testapp                            0x000000010004964f main + 111
	28  libdyld.dylib                       0x00000001047ef145 start + 1
	29  ???                                 0x0000000000000001 0x0 + 1
)
libc++abi.dylib: terminating with uncaught exception of type NoMethodError

================================================================================
The application terminated. A crash report file may have been generated by the
system, use `rake crashlog' to open it. Use `rake debug=1' to restart the app
in the debugger.
================================================================================

I've triple checked everything so I hope it's not a typo from my side. Thanks a lot for your help and your work on this brilliant gem.

app.make_button is a method of RedAlert. Add gem "RedAlert" to your gemfile, bundle and try again... but also note that app.make_button is specifically meant for using alert views, so you'll  need a bit more than what you have in your some_action method above to get it working.

Thanks for your fast answer! That was it, the RedAlert gem was missing. I've reduced the code to only contain the problematic code. Maybe this dependency could be mentioned in the docs: docs

sounds like we should require the redalert gem in the rakefile - since its listed as a runtime dependency.
Pushing a PR momentarily.  thanks for pointing this out @andersennl


riscv64gc-unknown-linux-gnu fails to build after upgrade from 300.1.6+3.1.4 to 300.2.0+3.2.0

I built riscv64gc-unknown-linux-gnu of my program in CI. After updating dependencies openssl-src fails to build. I don't know if this is a binding issue or an issue with upstream OpenSSL. I don't really want to set up a non-rust cross compiling environment to find out either.
[...]
  riscv64-linux-gnu-gcc  -I. -Icrypto -Iinclude -Iproviders/implementations/include -Iproviders/common/include  -fPIC -pthread -Wall -O3 -O2 -ffunction-sections -fdata-sections -fPIC -gdwarf-4 -fno-omit-frame-pointer -march=rv64gc -mabi=lp64d -mcmodel=medany -DOPENSSL_USE_NODELETE -DOPENSSL_PIC -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/target/riscv64gc-unknown-linux-gnu/debug/build/openssl-sys-f3521352c2d5de8b/out/openssl-build/install/lib/engines-3\"" -DMODULESDIR="\"/target/riscv64gc-unknown-linux-gnu/debug/build/openssl-sys-f3521352c2d5de8b/out/openssl-build/install/lib/ossl-modules\"" -DOPENSSL_BUILDING_OPENSSL -DNDEBUG  -MMD -MF providers/implementations/ciphers/libdefault-lib-cipher_aes_gcm_siv.d.tmp -MT providers/implementations/ciphers/libdefault-lib-cipher_aes_gcm_siv.o -c -o providers/implementations/ciphers/libdefault-lib-cipher_aes_gcm_siv.o providers/implementations/ciphers/cipher_aes_gcm_siv.c
  riscv64-linux-gnu-gcc  -I. -Icrypto -Iinclude -Iproviders/implementations/include -Iproviders/common/include  -fPIC -pthread -Wall -O3 -O2 -ffunction-sections -fdata-sections -fPIC -gdwarf-4 -fno-omit-frame-pointer -march=rv64gc -mabi=lp64d -mcmodel=medany -DOPENSSL_USE_NODELETE -DOPENSSL_PIC -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/target/riscv64gc-unknown-linux-gnu/debug/build/openssl-sys-f3521352c2d5de8b/out/openssl-build/install/lib/engines-3\"" -DMODULESDIR="\"/target/riscv64gc-unknown-linux-gnu/debug/build/openssl-sys-f3521352c2d5de8b/out/openssl-build/install/lib/ossl-modules\"" -DOPENSSL_BUILDING_OPENSSL -DNDEBUG  -MMD -MF providers/implementations/ciphers/libdefault-lib-cipher_aes_gcm_siv_hw.d.tmp -MT providers/implementations/ciphers/libdefault-lib-cipher_aes_gcm_siv_hw.o -c -o providers/implementations/ciphers/libdefault-lib-cipher_aes_gcm_siv_hw.o providers/implementations/ciphers/cipher_aes_gcm_siv_hw.c
  Makefile:12023: recipe for target 'providers/implementations/ciphers/libdefault-lib-cipher_aes_ccm_hw.o' failed
  Makefile:12039: recipe for target 'providers/implementations/ciphers/libdefault-lib-cipher_aes_gcm_hw.o' failed
  make[1]: Leaving directory '/target/riscv64gc-unknown-linux-gnu/debug/build/openssl-sys-f3521352c2d5de8b/out/openssl-build/build/src'
  Makefile:2282: recipe for target 'build_libs' failed

  --- stderr
  providers/implementations/ciphers/cipher_aes_ccm_hw_rv64i.inc: In function 'ccm_rv64i_zknd_zkne_initkey':
  providers/implementations/ciphers/cipher_aes_ccm_hw_rv64i.inc:20:27: warning: implicit declaration of function 'rv64i_zkne_set_encrypt_key'; did you mean 'AES_set_encrypt_key'? [-Wimplicit-function-declaration]
       AES_HW_CCM_SET_KEY_FN(rv64i_zkne_set_encrypt_key, rv64i_zkne_encrypt,
                             ^
  providers/implementations/ciphers/cipher_aes_ccm_hw.c:21:5: note: in definition of macro 'AES_HW_CCM_SET_KEY_FN'
       fn_set_enc_key(key, keylen * 8, &actx->ccm.ks.ks);                         \
       ^~~~~~~~~~~~~~
  providers/implementations/ciphers/cipher_aes_ccm_hw_rv64i.inc:20:55: error: 'rv64i_zkne_encrypt' undeclared (first use in this function); did you mean 'AES_bi_ige_encrypt'?
       AES_HW_CCM_SET_KEY_FN(rv64i_zkne_set_encrypt_key, rv64i_zkne_encrypt,
                                                         ^
  providers/implementations/ciphers/cipher_aes_ccm_hw.c:23:36: note: in definition of macro 'AES_HW_CCM_SET_KEY_FN'
                          (block128_f)fn_blk);                                    \
                                      ^~~~~~
  providers/implementations/ciphers/cipher_aes_ccm_hw_rv64i.inc:20:55: note: each undeclared identifier is reported only once for each function it appears in
       AES_HW_CCM_SET_KEY_FN(rv64i_zkne_set_encrypt_key, rv64i_zkne_encrypt,
                                                         ^
  providers/implementations/ciphers/cipher_aes_ccm_hw.c:23:36: note: in definition of macro 'AES_HW_CCM_SET_KEY_FN'
                          (block128_f)fn_blk);                                    \
                                      ^~~~~~
  In file included from providers/implementations/ciphers/cipher_aes_ccm_hw.c:65:0:
  providers/implementations/ciphers/cipher_aes_ccm_hw_rv64i.inc: In function 'ossl_prov_aes_hw_ccm':
  providers/implementations/ciphers/cipher_aes_ccm_hw_rv64i.inc:36:12: warning: implicit declaration of function 'RISCV_HAS_ZKND_AND_ZKNE' [-Wimplicit-function-declaration]
       return RISCV_HAS_ZKND_AND_ZKNE() ? &rv64i_zknd_zkne_ccm : &aes_ccm;
              ^~~~~~~~~~~~~~~~~~~~~~~
  make[1]: *** [providers/implementations/ciphers/libdefault-lib-cipher_aes_ccm_hw.o] Error 1
  make[1]: *** Waiting for unfinished jobs....
  In file included from providers/implementations/ciphers/cipher_aes_gcm.h:12:0,
                   from providers/implementations/ciphers/cipher_aes_gcm_hw.c:18:
  providers/implementations/ciphers/cipher_aes_gcm_hw_rv64i.inc: In function 'rv64i_zknd_zkne_gcm_initkey':
  providers/implementations/ciphers/cipher_aes_gcm_hw_rv64i.inc:20:31: warning: implicit declaration of function 'rv64i_zkne_set_encrypt_key'; did you mean 'AES_set_encrypt_key'? [-Wimplicit-function-declaration]
       GCM_HW_SET_KEY_CTR_FN(ks, rv64i_zkne_set_encrypt_key, rv64i_zkne_encrypt,
                                 ^
  providers/implementations/include/prov/ciphercommon_gcm.h:128:5: note: in definition of macro 'GCM_HW_SET_KEY_CTR_FN'
       fn_set_enc_key(key, keylen * 8, ks);                                       \
       ^~~~~~~~~~~~~~
  providers/implementations/ciphers/cipher_aes_gcm_hw_rv64i.inc:20:59: error: 'rv64i_zkne_encrypt' undeclared (first use in this function); did you mean 'AES_bi_ige_encrypt'?
       GCM_HW_SET_KEY_CTR_FN(ks, rv64i_zkne_set_encrypt_key, rv64i_zkne_encrypt,
                                                             ^
  providers/implementations/include/prov/ciphercommon_gcm.h:129:51: note: in definition of macro 'GCM_HW_SET_KEY_CTR_FN'
       CRYPTO_gcm128_init(&ctx->gcm, ks, (block128_f)fn_block);                   \
                                                     ^~~~~~~~
  providers/implementations/ciphers/cipher_aes_gcm_hw_rv64i.inc:20:59: note: each undeclared identifier is reported only once for each function it appears in
       GCM_HW_SET_KEY_CTR_FN(ks, rv64i_zkne_set_encrypt_key, rv64i_zkne_encrypt,
                                                             ^
  providers/implementations/include/prov/ciphercommon_gcm.h:129:51: note: in definition of macro 'GCM_HW_SET_KEY_CTR_FN'
       CRYPTO_gcm128_init(&ctx->gcm, ks, (block128_f)fn_block);                   \
                                                     ^~~~~~~~
  In file included from providers/implementations/ciphers/cipher_aes_gcm_hw.c:146:0:
  providers/implementations/ciphers/cipher_aes_gcm_hw_rv64i.inc: In function 'ossl_prov_aes_hw_gcm':
  providers/implementations/ciphers/cipher_aes_gcm_hw_rv64i.inc:36:9: warning: implicit declaration of function 'RISCV_HAS_ZKND_AND_ZKNE' [-Wimplicit-function-declaration]
       if (RISCV_HAS_ZKND_AND_ZKNE())
           ^~~~~~~~~~~~~~~~~~~~~~~
  make[1]: *** [providers/implementations/ciphers/libdefault-lib-cipher_aes_gcm_hw.o] Error 1
  make: *** [build_libs] Error 2
  thread 'main' panicked at /cargo/registry/src/index.crates.io-6f17d22bba15001f/openssl-src-300.2.0+3.2.0/src/lib.rs:611:9:

  Error building OpenSSL:
      Command: cd "/target/riscv64gc-unknown-linux-gnu/debug/build/openssl-sys-f3521352c2d5de8b/out/openssl-build/build/src" && MAKEFLAGS="-j --jobserver-fds=7,8 --jobserver-auth=7,8" "make" "build_libs"
      Exit status: exit status: 2

  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
+ rustup component list --toolchain stable-x86_64-unknown-linux-gnu
Error: Process completed with exit code 101.

Note: This was built using https://github.com/cross-rs/cross
Build command was: cross test --locked --no-default-features --features=updater-tls-native-vendored --target riscv64gc-unknown-linux-gnu --verbose. I don't know how to figure out what features for the openssl crate itself that corresponds to.
Here is a link to the full CI run: https://github.com/VorpalBlade/chezmoi_modify_manager/actions/runs/7159126052/job/19494770480

See https://github.com/openssl/openssl/issues/22871 and https://github.com/openssl/openssl/commit/ff279597692f9f19dca5b147944d3d96f2e109f8 should have fixed it but not yet released.

When will it be released? Thanks

Looks like upstream openssl 3.2.1 has the fix. People can now help check the release log and update openssl git submodule.

Looks like upstream openssl 3.2.1 has the fix. People can now help check the release log and update openssl git submodule.

@weihanglo This is weird. After updating to 3.2.1 I'm still having the same issue with Rustup...


PUT as collection method

my server REST api PUT route is /objects (not objects/{id}) because it accepts json data representing the object to be updated, including its id.
The problem in restangular is that put is an element method, meaning that it will always have routes like /objects/{id} witch is not suitable for me (and for other people as well) because the server update method gets the id from the object received in the request body.
an example of my java server update method :
@Consumes({ MediaType.APPLICATION_JSON })
@PUT
public Response update(SomeObject object) {
String objectId = object.getId(); // No need for the id in the url !
...
}
I think there should be some kind of configuration for the put method to fit to those needs.
I hope I make sense

editUser.put().then(
function(res) {
console.log(res);
},
function (error) {
console.log(error);
});

editUser.put().then(function() { });

Hi i have the same problem with laravel
function update(taskId, data, onSuccess, onError) {
    Restangular.all("api/task").customPUT(data, taskId).then(function (response) {
   // Restangular.one(data, taskId).customPUT(data, 'api/task').then(function (response) {

        onSuccess(response);

    }, function (response) {

        onError(response);

    }
    );

}

here is my service function
$api->put('task/{id}', 'App\Api\V1\Controllers\TaskController@update')
and my api laravel route
what am i not doing right?


Allow using VmID instead of VMName

VMName is not unique in Hyper-V. If there is more than one VM with the same name, all commandlets that accept a VMName will yield an error.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: gabriel-samfira sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

LGTM


Outline pannel doesn't show functions inside classes

Problem description
I just tried the outline feature in visual code but I noticed that functions which are defined as methods under a class do not show up in the outline panel or symbol search database ````ctrl + shift+ o```. I was not sure if this is a bug or that this still needs to be implemented.
System information

VSCode Version: 1.27.0-insider
OS Version: Windows 7 enterprise (Service Pack 1)

Steps to Reproduce:

Create a python file with a method defined inside a class
Look at the outline panel and see that the methods are not displayed as a sub level under a class.

Does this issue occur when all extensions are disabled?:
Yes
Pictures:

Please file this issue against the python extension


Uncaught TypeError: Cannot read property 'getPath' of undefined

[Enter steps to reproduce:]

press ctrl-alt-c twice
select "Add annotation with content"
Enter a name (for example, "Notes on transfer.create")
4.) press enter (then editor throws an error)

Atom: 1.25.1 x64
Electron: 1.7.11
OS: Ubuntu 16.04.4
Thrown From: code-annotations package 2.2.0
Stack Trace
Uncaught TypeError: Cannot read property 'getPath' of undefined
At /home/brad/.atom/packages/code-annotations/lib/annotation-manager.coffee:100

TypeError: Cannot read property 'getPath' of undefined
    at CodeAnnotationNameDialog.onSubmitCallback (/packages/code-annotations/lib/annotation-manager.coffee:100:57)
    at CodeAnnotationNameDialog.module.exports.CodeAnnotationNameDialog._submit (/packages/code-annotations/lib/views/asset-name-dialog.coffee:14:22)
    at /packages/code-annotations/lib/views/dialog.coffee:20:25)
    at CommandRegistry.handleCommandEvent (/snap/atom/144/usr/share/atom/resources/app/src/command-registry.js:384:49)
    at KeymapManager.module.exports.KeymapManager.dispatchCommandEvent (/snap/atom/144/usr/share/atom/resources/app/node_modules/atom-keymap/lib/keymap-manager.js:621:22)
    at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (/snap/atom/144/usr/share/atom/resources/app/node_modules/atom-keymap/lib/keymap-manager.js:412:28)
    at WindowEventHandler.handleDocumentKeyEvent (/snap/atom/144/usr/share/atom/resources/app/src/window-event-handler.js:110:40)

Commands
     -1:34 vim-mode-plus:move-right (input.hidden-input)
  2x -1:33 vim-mode-plus:move-left (input.hidden-input)
     -1:32.4.0 vim-mode-plus:move-right (input.hidden-input)
  4x -1:15.1.0 vim-mode-plus:move-down (input.hidden-input)
     -1:06.3.0 intentions:highlight (input.hidden-input)
     -0:35.2.0 vim-mode-plus:reset-normal-mode (input.hidden-input)
  3x -0:34.9.0 vim-mode-plus:move-down (input.hidden-input)
  4x -0:33.6.0 vim-mode-plus:move-up (input.hidden-input)
     -0:32.6.0 vim-mode-plus:move-down (input.hidden-input)
  4x -0:29.3.0 vim-mode-plus:move-left (input.hidden-input)
     -0:21 code-annotations:show-commands (input.hidden-input)
     -0:19.1.0 core:move-down (input.hidden-input)
     -0:18.9.0 core:confirm (input.hidden-input)
     -0:18.8.0 code-annotations:add-annotation-with-content (atom-workspace.workspace.scrollbars-visible-always.theme-one-dark-syntax.theme-one-dark-ui.has-code-annotations-container)
  2x -0:12.8.0 core:backspace (input.hidden-input)
     -0:08.2.0 core:confirm (input.hidden-input)

Non-Core Packages
activate-power-mode 2.7.0
atom-beautify 0.32.2
atom-ctags 5.1.2
atom-typescript 12.3.8
atom-updater-linux 1.0.6
autocomplete-ionic-framework 0.2.2
autocomplete-ionic2-framework 0.3.2
busy-signal 1.4.3
code-annotations 2.2.0
color-picker 2.2.5
emmet 2.4.3
goto-definition 1.3.4
intentions 1.1.5
last-cursor-position 0.9.2
linter 2.2.0
linter-ui-default 1.7.1
minimap-find-and-replace 4.5.2
symbol-gen 1.3.1
symbols-tree-view 0.14.0
sync-settings 0.8.5
tab-to-escape 0.1.0
teletype 0.10.0
todo-show 2.1.0
unsaved-changes 0.1.0
vim-mode-plus 1.31.1
vim-surround 0.8.1
vmp-gutter-annotate-mark 0.3.2
wakatime 7.0.4

Hey, unfortunately I can't reproduce the error. Looking through the code I have an idea though. These two seem to be the reason.
Line 100 is where the error is thrown
https://github.com/jneuendorf/code-annotations/blob/c9e0994fa9f6a6a3d6e45378ee9834eba4b744b4/lib/annotation-manager.coffee#L91-L100
and I guess the NullPointerException comes from here
https://github.com/jneuendorf/code-annotations/blob/c9e0994fa9f6a6a3d6e45378ee9834eba4b744b4/lib/annotation-manager.coffee#L328-L337
So seeing this, could it be that your project does NOT have a .code-annotations folder AND the editor throwing the error is not contained in any of the project subdirectories (atom.project.getDirectories())? In that case _initAssetDirectory would return null causing the error.

how would I run atom.project.getDirectories() ?
that doesn't look like a terminal command.

You can run the command in the chrome developer tools (since Atom is a Chrome 😉). On Linux the shortcut should be Ctrl+Shift+I I guess. Or you can use the menu: View > Developer > Toggle Developer Tools

Would this error be caused if I had opened multiple folders (from the same Angular project) in separate windows, then added annotations in those separate windows? I noticed that I have .code-annotations files in multiple folders in the same project. Should they only exist at the root-level of the project?
I think it might have created multiple .code-annotations files because I had opened multiple windows and it just 'assumed' that those were not part of the same project.

I haven't tested anything but I think this would not be a problem. Your scenario is another issue that's hard to fix, I believe. If you work with multiple windows on the same (git) project (which leads to multiple .code-annotations directories, everything should work as long as you keep working that way. A problem would only arise if the project is opened in only 1 window: In that case no code annotations would be detected because the .code-annotations directory would be assumed to be directly under the actual (git) project root.
But to be sure you could try to merge the multiple .code-annotations- directories into 1 (unless you have dozens of them 😉).
You should probably back up your project or use a VCS to be able to revert the changes if anything breaks!
If your annotations all have different names it shouldn't be too hard: Create a .code-annotations directory under the actual project's root and copy all assets into that directory. Then create a .names.cson file and copy the contents of all .names.cson files into that file. The old directories can be deleted.
If the problem persists this is not the reason.
If it persists...
In the initial comment you gave the steps for reproduction. Since I couldn't reproduce the problem could you tell me more about your project structure. Maybe I can further narrow down possible reasons for the problem.

Closing due to inactivity and since v3 has been out for a while now. @bradleyDean Feel free to reopen if anything new comes up.


Download part of the video to stream from certain time

Hi,
Is there a wa to stream a video starting from for a example 30min while this part not yet downloaded?
When we select a certain duration, this part will start automatically to be downloaded.
Thank you

Yes, it is possible. Since torrodle uses http localhost to serve the video file, you should be able to jump to a certain timestamp and torrodle will start downloading that particular part automatically.


helm_resource: Support to specify a specific version of the chart to install

While using helm_resource to install a chart from remote repo, currently, there is no option to specify the specific version of the chart to install. Similar option exists for helm_remote.

helm_resource has a flags parameter that lets you pass arbitrary flags to the install. So this looks like:
helm_resource(..., flags=['--version=2'])


Async operations not cancelled on validators called via SetValidator()

Using the code below, I wouldn't expect Task.Delay() in AddressValidator to complete successfully but it does. This behaviour appears to be different if a request is cancelled before the async method inside CustomerValidator completes.
When running the code, the console outputs:
Customer Task Completed
Address Task Completed
A task was canceled.
Press ENTER to exit...

What I expect to see is:
Customer Task Completed
A task was canceled.
Press ENTER to exit...

If I change await Task.Delay( 7000 ) to await Task.Delay( 3000 ), I get the expected output:
A task was canceled.
Press ENTER to exit...

    class Program
    {
        static async Task Main( string[] args )
        {
            try
            {
                var tcs = new CancellationTokenSource();
                var validator = new CustomerValidator();
                var task = validator.ValidateAsync( new Customer(), tcs.Token );

                await Task.Delay( 7000 );

                tcs.Cancel();

                await task;
            }
            catch( Exception ex )
            {
                Console.WriteLine( ex.Message );
            }

            Console.WriteLine( "Press ENTER to exit..." );
            Console.ReadLine();
        }
    }

    public class CustomerValidator : AbstractValidator<Customer>
    {
        public CustomerValidator()
        {
            RuleFor( m => m.Name )
                .MustAsync( async ( m, p, ct ) =>
                {
                    await Task.Delay( 5000, ct );

                    Console.WriteLine( "Customer Task Completed" );

                    return true;
                } );

            RuleFor( m => m.Address )
                .SetValidator( new AddressValidator() );
        }
    }

    public class AddressValidator : AbstractValidator<Address>
    {
        public AddressValidator()
        {
            RuleFor( m => m.Street )
                .MustAsync( async ( m, p, ct ) =>
                {
                    await Task.Delay( 5000, ct );

                    Console.WriteLine( "Address Task Completed" );

                    return true;
                } );
        }
    }

    public class Customer
    {
        public Customer()
        {
            Address = new Address();
        }

        public string Name { get; set; }
        public Address Address { get; set; }
    }

    public class Address
    {
        public string Street { get; set; }
        public string Town { get; set; }
    }

Looks like ChildValidatorAdapter doesn't pass the cancellation token through to the child validator. I'll get that chnaged for the next release.

4d045e58b4a94176ada5135bebc4bd7e7dd22376

I had to push out 7.3.2 with some fixes for the AspNetCore integration, so this is actually released.

Thank you - have updated, issue is now resolved.


Update Narrowing.md

Fix jumbled sentence.

The newer text is better than my jumbled sentence fix.


Add project description in readme

Update detailed overview of the project and it's features.

Resolved in #18


Run AGiXT with Text Generation Web UI and Stable Diffusion (NVIDIA Only) does not work.

Description
OPENAI_API_KEY=sk-....
oEnter your choice: 3
Confirmed NVIDIA Container Toolkit is installed.
Running Docker install...
Starting Docker Compose...
Traceback (most recent call last):
File "/home/admin/.local/lib/python3.10/site-packages/urllib3/connectionpool.py", line 791, in urlopen
response = self._make_request(
File "/home/admin/.local/lib/python3.10/site-packages/urllib3/connectionpool.py", line 497, in _make_request
conn.request(
File "/home/admin/.local/lib/python3.10/site-packages/urllib3/connection.py", line 395, in request
self.endheaders()
File "/usr/lib/python3.10/http/client.py", line 1278, in endheaders
self._send_output(message_body, encode_chunked=encode_chunked)
File "/usr/lib/python3.10/http/client.py", line 1038, in _send_output
self.send(msg)
File "/usr/lib/python3.10/http/client.py", line 976, in send
self.connect()
File "/home/admin/.local/lib/python3.10/site-packages/docker/transport/unixconn.py", line 27, in connect
sock.connect(self.unix_socket)
FileNotFoundError: [Errno 2] No such file or directory
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/admin/.local/lib/python3.10/site-packages/requests/adapters.py", line 486, in send
resp = conn.urlopen(
File "/home/admin/.local/lib/python3.10/site-packages/urllib3/connectionpool.py", line 845, in urlopen
retries = retries.increment(
File "/home/admin/.local/lib/python3.10/site-packages/urllib3/util/retry.py", line 470, in increment
raise reraise(type(error), error, _stacktrace)
File "/home/admin/.local/lib/python3.10/site-packages/urllib3/util/util.py", line 38, in reraise
raise value.with_traceback(tb)
File "/home/admin/.local/lib/python3.10/site-packages/urllib3/connectionpool.py", line 791, in urlopen
response = self._make_request(
File "/home/admin/.local/lib/python3.10/site-packages/urllib3/connectionpool.py", line 497, in _make_request
conn.request(
File "/home/admin/.local/lib/python3.10/site-packages/urllib3/connection.py", line 395, in request
self.endheaders()
File "/usr/lib/python3.10/http/client.py", line 1278, in endheaders
self._send_output(message_body, encode_chunked=encode_chunked)
File "/usr/lib/python3.10/http/client.py", line 1038, in _send_output
self.send(msg)
File "/usr/lib/python3.10/http/client.py", line 976, in send
self.connect()
File "/home/admin/.local/lib/python3.10/site-packages/docker/transport/unixconn.py", line 27, in connect
sock.connect(self.unix_socket)
urllib3.exceptions.ProtocolError: ('Connection aborted.', FileNotFoundError(2, 'No such file or directory'))
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/admin/.local/lib/python3.10/site-packages/docker/api/client.py", line 214, in _retrieve_server_version
return self.version(api_version=False)["ApiVersion"]
File "/home/admin/.local/lib/python3.10/site-packages/docker/api/daemon.py", line 181, in version
return self._result(self._get(url), json=True)
File "/home/admin/.local/lib/python3.10/site-packages/docker/utils/decorators.py", line 46, in inner
return f(self, *args, **kwargs)
File "/home/admin/.local/lib/python3.10/site-packages/docker/api/client.py", line 237, in _get
return self.get(url, **self._set_request_timeout(kwargs))
File "/home/admin/.local/lib/python3.10/site-packages/requests/sessions.py", line 602, in get
return self.request("GET", url, **kwargs)
File "/home/admin/.local/lib/python3.10/site-packages/requests/sessions.py", line 589, in request
resp = self.send(prep, **send_kwargs)
File "/home/admin/.local/lib/python3.10/site-packages/requests/sessions.py", line 703, in send
r = adapter.send(request, **kwargs)
File "/home/admin/.local/lib/python3.10/site-packages/requests/adapters.py", line 501, in send
raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', FileNotFoundError(2, 'No such file or directory'))
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/admin/.local/bin/docker-compose", line 8, in
sys.exit(main())
File "/home/admin/.local/lib/python3.10/site-packages/compose/cli/main.py", line 81, in main
command_func()
File "/home/admin/.local/lib/python3.10/site-packages/compose/cli/main.py", line 200, in perform_command
project = project_from_options('.', options)
File "/home/admin/.local/lib/python3.10/site-packages/compose/cli/command.py", line 60, in project_from_options
return get_project(
File "/home/admin/.local/lib/python3.10/site-packages/compose/cli/command.py", line 152, in get_project
client = get_client(
File "/home/admin/.local/lib/python3.10/site-packages/compose/cli/docker_client.py", line 41, in get_client
client = docker_client(
File "/home/admin/.local/lib/python3.10/site-packages/compose/cli/docker_client.py", line 170, in docker_client
client = APIClient(use_ssh_client=not use_paramiko_ssh, **kwargs)
File "/home/admin/.local/lib/python3.10/site-packages/docker/api/client.py", line 197, in init
self._version = self._retrieve_server_version()
File "/home/admin/.local/lib/python3.10/site-packages/docker/api/client.py", line 221, in _retrieve_server_version
raise DockerException(
docker.errors.DockerException: Error while fetching server API version: ('Connection aborted.', FileNotFoundError(2, 'No such file or directory'))
Traceback (most recent call last):
File "/home/admin/.local/lib/python3.10/site-packages/urllib3/connectionpool.py", line 791, in urlopen
response = self._make_request(
File "/home/admin/.local/lib/python3.10/site-packages/urllib3/connectionpool.py", line 497, in _make_request
conn.request(
File "/home/admin/.local/lib/python3.10/site-packages/urllib3/connection.py", line 395, in request
self.endheaders()
File "/usr/lib/python3.10/http/client.py", line 1278, in endheaders
self._send_output(message_body, encode_chunked=encode_chunked)
File "/usr/lib/python3.10/http/client.py", line 1038, in _send_output
self.send(msg)
File "/usr/lib/python3.10/http/client.py", line 976, in send
self.connect()
File "/home/admin/.local/lib/python3.10/site-packages/docker/transport/unixconn.py", line 27, in connect
sock.connect(self.unix_socket)
FileNotFoundError: [Errno 2] No such file or directory
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/admin/.local/lib/python3.10/site-packages/requests/adapters.py", line 486, in send
resp = conn.urlopen(
File "/home/admin/.local/lib/python3.10/site-packages/urllib3/connectionpool.py", line 845, in urlopen
retries = retries.increment(
File "/home/admin/.local/lib/python3.10/site-packages/urllib3/util/retry.py", line 470, in increment
raise reraise(type(error), error, _stacktrace)
File "/home/admin/.local/lib/python3.10/site-packages/urllib3/util/util.py", line 38, in reraise
raise value.with_traceback(tb)
File "/home/admin/.local/lib/python3.10/site-packages/urllib3/connectionpool.py", line 791, in urlopen
response = self._make_request(
File "/home/admin/.local/lib/python3.10/site-packages/urllib3/connectionpool.py", line 497, in _make_request
conn.request(
File "/home/admin/.local/lib/python3.10/site-packages/urllib3/connection.py", line 395, in request
self.endheaders()
File "/usr/lib/python3.10/http/client.py", line 1278, in endheaders
self._send_output(message_body, encode_chunked=encode_chunked)
File "/usr/lib/python3.10/http/client.py", line 1038, in _send_output
self.send(msg)
File "/usr/lib/python3.10/http/client.py", line 976, in send
self.connect()
File "/home/admin/.local/lib/python3.10/site-packages/docker/transport/unixconn.py", line 27, in connect
sock.connect(self.unix_socket)
urllib3.exceptions.ProtocolError: ('Connection aborted.', FileNotFoundError(2, 'No such file or directory'))
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/admin/.local/lib/python3.10/site-packages/docker/api/client.py", line 214, in _retrieve_server_version
return self.version(api_version=False)["ApiVersion"]
File "/home/admin/.local/lib/python3.10/site-packages/docker/api/daemon.py", line 181, in version
return self._result(self._get(url), json=True)
File "/home/admin/.local/lib/python3.10/site-packages/docker/utils/decorators.py", line 46, in inner
return f(self, *args, **kwargs)
File "/home/admin/.local/lib/python3.10/site-packages/docker/api/client.py", line 237, in _get
return self.get(url, **self._set_request_timeout(kwargs))
File "/home/admin/.local/lib/python3.10/site-packages/requests/sessions.py", line 602, in get
return self.request("GET", url, **kwargs)
File "/home/admin/.local/lib/python3.10/site-packages/requests/sessions.py", line 589, in request
resp = self.send(prep, **send_kwargs)
File "/home/admin/.local/lib/python3.10/site-packages/requests/sessions.py", line 703, in send
r = adapter.send(request, **kwargs)
File "/home/admin/.local/lib/python3.10/site-packages/requests/adapters.py", line 501, in send
raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', FileNotFoundError(2, 'No such file or directory'))
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/admin/.local/bin/docker-compose", line 8, in
sys.exit(main())
File "/home/admin/.local/lib/python3.10/site-packages/compose/cli/main.py", line 81, in main
command_func()
File "/home/admin/.local/lib/python3.10/site-packages/compose/cli/main.py", line 200, in perform_command
project = project_from_options('.', options)
File "/home/admin/.local/lib/python3.10/site-packages/compose/cli/command.py", line 60, in project_from_options
return get_project(
File "/home/admin/.local/lib/python3.10/site-packages/compose/cli/command.py", line 152, in get_project
client = get_client(
File "/home/admin/.local/lib/python3.10/site-packages/compose/cli/docker_client.py", line 41, in get_client
client = docker_client(
File "/home/admin/.local/lib/python3.10/site-packages/compose/cli/docker_client.py", line 170, in docker_client
client = APIClient(use_ssh_client=not use_paramiko_ssh, **kwargs)
File "/home/admin/.local/lib/python3.10/site-packages/docker/api/client.py", line 197, in init
self._version = self._retrieve_server_version()
File "/home/admin/.local/lib/python3.10/site-packages/docker/api/client.py", line 221, in _retrieve_server_version
raise DockerException(
docker.errors.DockerException: Error while fetching server API version: ('Connection aborted.', FileNotFoundError(2, 'No such file or directory'))
admin@MAINFRAME-728X486:~/AGiXT$.api_base = "http://localhost:8091/v1"
DISCORD_BOT_TOKEN=...
DEFAULT_MODEL=http://localhost:8091/v1
GIPHY_API_KEY=...
SERPAPI_KEY=...
WEAVIATE_URL=http://localhost:8080
Steps to Reproduce the Bug
Just run it from a clean install in Windows 11 WSL with Ubuntu
Expected Behavior
It should work.
Operating System

[ ] Linux
[X] Microsoft Windows
[ ] Apple MacOS
[ ] Android
[ ] iOS
[ ] Other

Python Version

[ ] Python <= 3.9
[X] Python 3.10
[ ] Python 3.11

Environment Type - Connection

[X] Local - You run AGiXT in your home network
[ ] Remote - You access AGiXT through the internet

Runtime environment

[X] Using docker compose
[X] Using local
[ ] Custom setup (please describe above!)

Acknowledgements

[X] I have searched the existing issues to make sure this bug has not been reported yet.
[X] I am using the latest version of AGiXT.
[X] I have provided enough information for the maintainers to reproduce and diagnose the issue.

Make sure to run your terminal as admin.  The errors you're getting look like docker permission issues.


Bevy 0.13

@kaesaecracker Thanks so much. i am sure many will appreciate your work. I will update the README with your handle. Thanks!


Display Image Upload

Updated the designs for it.
@albinAppsmith To review if the flow is correct.
https://www.figma.com/file/sz08OJt2VrEgxQ8eToFIqG/ADS2.0---Components?type=design&node-id=4759-1290&mode=design&t=uR1DQcnLsYedXQgz-4


Improve Redis instrumentation

The Redis instrumentation, which is a port of the dd-trace version, instruments redis by patching the call and call_pipeline methods. We might be missing some calls by not also patching call_loop and call_pipelined. We should look into adding coverage for the additional methods.
See: https://github.com/open-telemetry/opentelemetry-ruby/pull/176#pullrequestreview-361604975

Is this required for the RC milestone @mwear?

Is this required for the RC milestone @mwear?

It's not. I believe these were suggestions that I captured based on the Shopify version of the Redis instrumentation. If we are not missing anything by not instrumenting the methods discussed above, we can consider closing this.

It's not. I believe these were suggestions that I captured based on the Shopify version of the Redis instrumentation. If we are not missing anything by not instrumenting the methods discussed above, we can consider closing this.

I'm going to keep this open, but remove the milestone.

I'm going to keep this open, but remove the milestone.

I can give this a try 🙋

Thanks @fhwang ! I've assigned it to you.

@mwear Regarding call_loop: This is primarily used for pubsub subscribers. Is it settled that we want to treat these messages as a new span in the same trace of the publisher? And if so, is there guidance in the spec about how to propagate context over Redis messages?

I opened this issue to capture some feedback from @fbogsany based on Shopify's internal instrumentation, so I will defer to  him on specifics. I think making sure that we are spans for all Redis operations would be a good first step. I don't know that there any guidance on context propagation over Redis, but it's an interesting idea. I took a quick look at JS Redis instrumentation, and it doesn't handle it.

Shopify doesn't use Redis pubsub, so I can't offer any insights there. Perhaps we can just instrument call_pipelined for now?

What's the general principle regarding what level of method calls we're hooking into? call_pipelined is actually called by call_pipeline, so if we instrument both we'll be getting a lot of double spans.
I'm not sure either of these methods count as the public interface of this library -- they aren't documented, they aren't directly tested. Should we simply instrument every call to every public method on the main Redis class that results in an immediate call to the redis-server?

It varies. In general, the goal should be to instrument as close to the wire as possible. Many gems either don't provide instrumentation hooks or provide hooks that are inappropriate for tracing. For example, the Redis gem provides a logger hook. but the logs are unstructured (we'd have to parse them to populate spans, and that'd be more brittle than the monkey-patching we do).
call_pipelined is also called from outside the call_pipeline context, which is why I suggested we instrument it.
I don't recall the rationale for the current form of the Redis instrumentation. At Shopify, we instrumented Client#process instead, which is a bottleneck for (almost?) all communication with the Redis server.

Looks like the current instrumentation was inspired by dd-trace-rb. I'm not sure what's the best way to get context on their decision-making.
Naively, I wonder if it would make more sense to convert this instrumentation to instrument calls to Client#process and Client#read instead. From a quick reading of the library, it looks like that would capture all Redis commands.

Naively, I wonder if it would make more sense to convert this instrumentation to instrument calls to Client#process and Client#read instead. From a quick reading of the library, it looks like that would capture all Redis commands.

That sounds like a good thing to try. I'd be very much in favour of that.

For what it's worth, patching Client#process is the means by which Honeycomb instrumented Redis.

Sounds good. One wrinkle I just thought of: How do we want to handle pipelined calls? One span per pipeline request? Or multiple spans, one per Redis command within the single pipeline request?

FWIW, the Honeycomb implementation just joins together the pipelined commands into a single redis.command string: https://github.com/honeycombio/beeline-ruby/blob/4dd9761902bffc7bd7b0210a27fb029a7ac4223c/lib/honeycomb/integrations/redis.rb#L137 Conceptually, I think this makes sense: 1 API request = 1 span, just that the request happens to contain multiple commands & return a bulk reply.

If you did have one span per redis command, you'd probably want to introduce some sort of parent pipeline span that tied them all together. Otherwise, it'd be impossible to distinguish between commands that were fired serially vs in a pipeline when looking at the trace.

Shopify also has a single span for the pipelined commands - very similar to what Honeycomb has. The reason this makes sense is that it represents a single “unit of work” and it isn’t possible to discover the timing of the individual commands in the pipeline.


Which nginx instrumentation is the future?

Hello,
Can you tell me which nginx instrumentation nginx or otel-webserver-module is going to be supported in the future - because I cannot figure it out on my own.
nginx one has features that I like (ability to block incoming span), but otel-webserver-module is featured on OTel Blog and suportes latest nginx releases.
So which is it?
Thank you for your attention.

otel-webserver-module is the one that is actively maintained now.


Pluggable caching system?

Thanks for req! I love it.
The if_modified_since/2 caching is nice, but not all servers implement it correctly.
At times, within LiveBook for instance, I would like to be able to:

cache for 1 day, no matter the result, as long as it is a 200
cache based on some custom logic

I wonder if something could be done to have something pluggable that would let the user add a step, just like if_modified_since/2, but with custom logic.
Maybe it is already doable, I don't know yet! I wonder what your thoughts on that are.

I have read in more details the readme, I believe what is there is already sufficient to let me implement custom steps.
I will re-open if that's not the case, and will share examples of alternate caching maybe!

Yup the existing cache solution is just a regular step, there's nothing special about it. You can build your own. If you run any issues, feel free to comment here or elsewhere and I'll be happy to help. Just fyi, I have very limited availability this month but happy to get to it in October :)

Thanks for the feedback! It was ultimately easy to get at least something (not as nice as if_modified_since/2 at this point, I don't use prepend_actions and such yet). I am sharing it in case it helps others later (but I know how to improve it already, not asking for feedback on this!):
defmodule DiskCache do
  @moduledoc """
  A very quick simple disk-cache, persisting everything to disk
  as long as it responds with HTTP 200.
  TODO: use Req low-level API https://github.com/wojtekmach/req#low-level-api
  or use similar nicer design.
  """
  def disk_cache(request, dir \\ "data") do
    unless File.exists?(dir), do: File.mkdir_p!(dir)
    cache_file = Path.join(dir, build_cache_key(request.uri |> URI.to_string()))

    if File.exists?(cache_file) do
      cache_file |> File.read!() |> :erlang.binary_to_term()
    else
      response = request |> Req.run!()
      File.write!(cache_file, :erlang.term_to_binary(response))
      response
    end
  end

  def build_cache_key(url) do
    Regex.replace(~r/\W/, url, "-")
  end
end

I will maybe share a PR (with better code, this is just a quick implementation) for examples or something later.


C++ paper statuses

As a continuation to #713, it would be useful to support C++ paper statuses.
i.e. document metadata:
<pre class='metadata'>
Title: Foo
Shortname: Bar
Status: ----> THIS <----
Group: WG21
URL: http://wg21.link/baz
Editor: JF Bastien, Google<EMAIL_ADDRESS>Abstract: Hai
Date: 2016-07-13
Markup Shorthands: markdown yes
</pre>

Right now this seems hardcoded in bikeshed across all groups. It may need to move to boilerplate?
Consulting the isocpp docs I think the statuses that make sense are:

Issue
Defect Report
Draft (D numbered paper)
Published (P numbered paper)
Meeting announcements
Minutes
Working Drafts
Editor’s Report
CD
PDTS
DTS
Records of Response

Tagging @jyasskin and @brycelelbach for input.

Cool. So all I need, I guess, is a short name for each (to use in the Status metadata), and what you want to show up in the subheading for each.

I - Issue
DR - Defect Report
D - Draft Proposal
P - Published Proposal
MEET - Meeting Announcements
RESP - Records of Response
MIN - Minutes
ER - Editor's Report
SD - Standing Document
PWI - Preliminary Work Item
NP - New Proposal
NWIP - New Work Item Proposal
WD - Working Draft
CD - Committee Draft
FCD - Final Committee Draft
DIS - Draft International Standard
FDIS - Final Draft International Standard
PRF - Proof of a new International Standard
IS - International Standard
TR - Technical Report
DTR - Draft Technical Report
TS - Technical Specification
DTS - Draft Technical Specification
PAS - Publicly Available Specification
TTA - Technology Trends Assessment
IWA - International Workshop Agreement
COR - Technical Corrigendum
GUIDE - Guidance to Technical Committees
NP-AMD - New Proposal Amendment
AWI-AMD - Approved new Work Item Amendment
WD-AMD - Working Draft Amendment
CD-AMD - Committe Draft Amendment
PD-AMD - Proposed Draft Amendment
FPD-AMD - Final Proposed Draft Amendment
D-AMD - Draft Amendment
FD-AMD - Final Draft Amendment
PRF-AMD - Proof Amendment
AMD - Amendment

Okay, so I need to start categorizing statuses according to groups, so any ISO groups can use all of these without them clashing with other standards body's tatuses.

Done. All the statuses listed above are now in, and limited to (currently) Group: wg21. If future ISO groups start using Bikeshed, it's a few-character fix to enable these statuses for them.
And similarly, all the W3C statuses require the group be registered as a W3C group.  There's a handful of statuses that are usable regardless of group, including FINDING, DREAM, and LS.


[Feature Request] Support base template in config-builder safety-rules

🚀 Feature Request
config-builder safety-rules doesn't support a base template (like config-builder validator -t), which means that only config with an explicit param and handling in the docker run script can be set.
Motivation
Vault namespace isn't exposed in the docker run script. Supporting a base template will allow arbitrary config to be set.

@davidiw Actually, the template doesn't even work for validators anymore:
mgorven@devbig370[tf-vault1]:~/libra-core% cat terraform/templates/validator.config.toml
[validator_network]

[consensus.safety_rules.service]
type = "process"
server_address = "<IP_ADDRESS>:6185"
consensus_type = "SignedTransactions"
mgorven@devbig370[tf-vault1]:~/libra-core% cargo run -p config-builder -- validator -d /opt/libra/data -o /tmp/val -t terraform/templates/validator.config.toml --advertised /ip4/<IP_ADDRESS>/tcp/6180 --bootstrap /ip4/<IP_ADDRESS>/tcp/6180 --listen /ip4/<IP_ADDRESS>/tcp/6180
    Finished dev [unoptimized + debuginfo] target(s) in 0.33s
     Running `target/debug/config-builder validator -d /opt/libra/data -o /tmp/val -t terraform/templates/validator.config.toml --advertised /ip4/<IP_ADDRESS>/tcp/6180 --bootstrap /ip4/<IP_ADDRESS>/tcp/6180 --listen /ip4/<IP_ADDRESS>/tcp/6180`
mgorven@devbig370[tf-vault1]:~/libra-core% grep -A2 rules.service /tmp/val/node.config.toml
[consensus.safety_rules.service]
type = "thread"

Should be resolved in https://github.com/libra/libra/pull/3147


[CI] Fix revive linter agent-security errors

What does this PR do?
This PR fixes revive linter errors in the agent-security team owned code by adding TODO comments to exported functions / types.
Motivation
We used to enforce that exported functions and types are documented. This was done through revive but the check was disabled by default when we switched to golangcli-lint. Now that we tried to re-enable it we got a lot of errors. This PR addresses these errors and inform the relevant teams for a fix.
Additional Notes
Describe how to test/QA your changes
Reviewer's Checklist

[ ] If known, an appropriate milestone has been selected; otherwise the Triage milestone is set.
[ ] Use the major_change label if your change either has a major impact on the code base, is impacting multiple teams or is changing important well-established internals of the Agent. This label will be use during QA to make sure each team pay extra attention to the changed behavior. For any customer facing change use a releasenote.
[ ] A release note has been added or the changelog/no-changelog label has been applied.
[ ] Changed code has automated tests for its functionality.
[ ] Adequate QA/testing plan information is provided if the qa/skip-qa label is not applied.
[ ] At least one team/.. label has been applied, indicating the team(s) that should QA this change.
[ ] If applicable, docs team has been notified or an issue has been opened on the documentation repo.
[ ] If applicable, the need-change/operator and need-change/helm labels have been applied.
[ ] If applicable, the config template has been updated.

Oops sorry about those, thanks !


Events documentation

While navigating the docs to explain something to Ruben related to events I felt a disturbance in the force.
Events are a crucial part of the development of CARTO.js apps but they're not a first class citizen on our docs.
What I missed:

A reference to events in the left table of contents. At least a top entry called Events that points to the right place in the full reference.

Instead of fires, could we say events? Or at list a descriptive text saying something like 'This is the list of events that can be fired by whatever`

A special section in the quickstart guide. Talking about how to set and unset event listeners in a general way. At least, marking that the event handling it's an important step in every CARTO.js app.

Examples in each event in the full reference (this is an loooong task, we can tackle it bit by bit)

'Fires' replaced with 'Events' in reference page. Solved here.

Regarding to 'Events' appearing in the sidebar menu or other related issues to make events a first level item in our hierarchy, I referenced this issue in #1164 due to redesign of reference page and reference blocks in progress.

Event section in Guides to be tackled in #2052


Use of author tags at per-function level...

Back in the day, netCDF programmers didn't use author tags in our functions because we all knew each other and there were few of us. And users rarely contributed code changes.
Now, see how netCDF has grown! It's amazing, and wonderful. In addition to @DennisHeimbigner and @WardF we also have @gdsjaar, @wkliao, @rouault, and other regular contributors.
But I find myself wondering who wrote what. On other projects, after netCDF, we always would label functions with the author. Other programmers who made major modifications would add their names to the author list. As a programmer looking for bugs or thinking of adding a feature, this is often useful information.
May I suggest that all contributors start including the author tag in documentation at the top of the function?

Since I don't hear any objections, I will start using author tags in the code I modify.


program rnftools: argparse does not work

In conda environment for Python 3.4, parsing with argparse does not work for rnftools. This line probably does not work: https://github.com/karel-brinda/rnftools/blob/98f40b37141243a6f4a60a42d85961c771fef494/rnftools/scripts.py#L771

This value is not overwritten for subparsers:
https://github.com/karel-brinda/rnftools/blob/98f40b37141243a6f4a60a42d85961c771fef494/rnftools/scripts.py#L807


Feedback from adopting wallet-selector

Hello,
I have been working on integrating the wallet-selector to multisafe dApp and I would like to share my experience/struggles with the community and hoping that it will save some time for other devs who will be introducing wallet-selector to their dApp.
In general, wallet-selector is a great way to interact with NEAR blockchain and I do believe that NEAR community should really consider integrating wallet-selector soon. (Earlier the better) I was able to migrate the most of the transaction related code, utilising the benefit of unified signAndSendTransaction call.
There are two main issues during the migration that I would like to share with the community. (This will be applicable to devs who already owns dApp and wanting to migrate wallet-selector to their dApp)
Issue 1. Error on Class Action is missing in schema: actions.actions
I encountered this error when I was working on migrating existing code to be replaced with signAndSendTransaction from wallet-selector. After some research, I found that someone already had this issue. Further investigation showed that ui.multisafe repo contained it's own version of near-api-js as 0.42.0 and it did affect on use of signAndSendTransaction from wallet-selector.
Eventually I resolved this issue by upgrading near-api-js from ui.multisafe to 0.44.2. (My guess is that it has been fixed from near-api-js on https://github.com/near/near-api-js/commit/28c8941d2cc182b97728492029d6d719461183ca which is released at 0.43.0)
Acceptance criteria
To help the migration better for devs in the future, would be ideal to setup a Peer Dependencies on wallet-selector to near-api-js with greater/equal to 0.44.2.
Issue 2. Error on Device is already open
I encounter this issue when I was working on integrating ledger wallet from wallet-selector to ui.multisafe. Initially I did not touch any existing ledger related code on ui.multisafe and was planning to do a ledger wallet specific code migration in a different PR later. But when I  tried to select ledger-wallet from wallet-selector, app breaks with above error message.
The issue was that ui.multisafe is using @ledgerhq/hw-transport-webhid to create ledger instance which was conflicting with ledger instance from wallet-selector. I resolved the issue by do a full migration on ledger related codebase from ui.multisafe upfront and no longer using @ledgerhq/hw-transport-webhid instance.
Acceptance criteria
If there will be a migration guidance doc to help other devs to use wallet-selector and migrate their existing code, worth noting it down there so that this error can happen due to having two ledger instance.
Hope this helps other devs in the future.

Hey @hcho112,
Thanks for your detailed feedback! We worked on addressing the mentioned issues:
Issue 1: #353
Issue 2: #360
Feel free to post regarding anything else that we can work on improving. I will close this issue now and thank you again for your time and feedback.


chore: Upgrade windows container to ltsc2022

Fixes #TODO
Motivation

Modifications

Verification

You can comment out most of it and only runs a docker build on Windows. You can run modify it to run it in your fork too

This PR remains in draft for now, but I have something working
@terrytangyuan if you wish to test:
docker pull quay.io/pipekitdev/workflow-controller:dev-windows-linux-amd64
docker pull quay.io/pipekitdev/argoexec:dev-windows-linux-amd64

If it's working, we can merge it. Let me know when ready.

Err. It's not. But... ok?


Can I distribute different project task to different cluster?

I like use django q very much and it's useful for me.Now I have two project in my django, so I want distribute project A to cluster A and project B to cluster B, how can I do that? Thanks!

Use django-q2. You can do that there with alternative clusters.


Create placeholders automatically

Based on #3

Codecov Report

Merging #7 (ec0f60f) into master (6faec75) will decrease coverage by 8.60%.
The diff coverage is 88.88%.

@@             Coverage Diff             @@
##            master       #7      +/-   ##
===========================================
- Coverage   100.00%   91.39%   -8.61%
===========================================
  Files            1        1
  Lines           38       93      +55
===========================================
+ Hits            38       85      +47
- Misses           0        8       +8

Impacted Files
Coverage Δ

tfpyth/__init__.py
91.39% <88.88%> (-8.61%)
:arrow_down:

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 6faec75...ec0f60f. Read the comment docs.


message_row: Add ellipsis to edited notices below avatar.

This PR modestly improves i18n on edited/moved notices (both in Compact mode and at 16/140) while alternative solutions, including icons, are discussed on CZO.
CZO discussion

Screenshots and screen captures:

Before
After

Self-review checklist

[x] Self-reviewed the changes for clarity and maintainability
(variable names, code reuse, readability, etc.).

Communicate decisions, questions, and potential concerns.

[x] Explains differences from previous plans (e.g., issue description).
[x] Highlights technical choices and bugs encountered.
[x] Calls out remaining decisions and concerns.
[x] Automated tests verify logic where appropriate.

Individual commits are ready for review (see commit discipline).

[x] Each commit is a coherent idea.
[x] Commit message(s) explain reasoning and motivation for changes.

Completed manual review and testing of the following:

[x] Visual appearance of the changes.
[x] Responsiveness and internationalization.
[x] Strings and tooltips.
[x] End-to-end functionality of buttons, interactions and flows.
[x] Corner cases, error conditions, and easily imagined bugs.

The screenshots look good to me! @timabbott let me know if I should test.

Merged, thanks @karlstolley!


Bumping version of update-winget action

Applying fix to prevent PRs into winget-pkgs from default branch of forks. See https://github.com/mjcheetham/update-winget/pull/107 for more details.

I'm going to merge this, skipping builds. The builds are not affected by this change, and I'd rather not make @ldennington force-push just to wait for builds.


Appstudio update mvp-test-component

Pipelines as Code configuration proposal

Pipelines as Code CI/mvp-test-component-on-pull-request has failed.

StatusDurationName

✅ Succeeded
27 seconds
init

✅ Succeeded
42 seconds
clone-repository

✅ Succeeded
4 minutes
build-container

✅ Succeeded
19 seconds
inspect-image

❌ Failed
27 seconds
deprecated-base-image-check

✅ Succeeded
26 seconds
clair-scan

🏃 Running
---
clamav-scan

🏃 Running
---
sbom-json-check

✅ Succeeded
9 seconds
label-check

✅ Succeeded
9 seconds
optional-label-check

Failure reasontask deprecated-base-image-check has the status "TaskRunImagePullFailed":
The step "query-pyxis" in TaskRun "mvp077f14be7afe975dd18ce0497e42421c-deprecated-base-image-check" failed to pull the image "". The pod errored with the message: "Back-off pulling image "registry.access.redhat.com/ubi8/ubi-minimal:8.7-1107@sha256:987ae81ce046652ee4a2c3df54dad5e82faa1b078dab5d09f7cfaae11784ed30"."


Fix sqlite returning

Issue
Client sqlite3 does not return results. It only returns last inserted id as number array. It always return last inserted
Cause
when method is insert, sqlite3 client sends query with 'run' call method. The call method does not allow to return any value.
Fix
When method is insert and returning exists, call method is set to 'all' instead of 'run'

Coverage increased (+0.02%) to 92.265% when pulling 284f797a22093d473560e646546910b0a191ba1b on Gokaysim:fix-sqlite-returning into ad62d9072f672eedeba7e0f52b6076a960dd1799 on knex:master.

@Gokaysim Could you please check why CLI tests are failing now?


std-bit-slice implementation

This PR addresses the implementation of the proposed bit-slicing operation per https://github.com/calyxir/calyx/issues/497 .

Okay, there are failures in the interpreter and the compiler. @anthonyabeo can you take a shot at fixing the compiler errors? With runt, you can run a specific test using:
runt -i <test path> -d

If the output looks correct, you can save the updated file using the -s flag. You can read more in the runt documentation. The failure in the interpreter comes from the missing implementation of the new primitive. By default, the interpreter tries to run all of the tests that the compiler runs. You can disable this by adding a .skip file in the location corresponding to the interpreter's expected output location.

Zulip message about how to implement a new primitive in Cider: https://calyx.zulipchat.com/#narrow/stream/423600-development/topic/please-review/near/420297504

@EclecticGriffin thanks for the assist. I was able to resolve the interpreter's issue.
@rachitnigam noted.
My main issue appears to be creating the local environment so I can get the tests to pass. On Mac, even the core tests are failing. I tried using Ubuntu 22.04 and cannot run fud (see the screenshot)

You need to install the calyx-py module: https://docs.calyxir.org/builder/calyx-py.html

@rachitnigam @EclecticGriffin I have been able to install most of the dependencies. see screenshot

However, some of the tests are still failing and I am not sure how to go about debugging them. See the screenshot below for the output of runt -i tests/frontend/dahlia/memory.fuse -d

@rachitnigam I managed to resolve the failing tests. Not sure why but I still get failing tests locally when I merged main in this branch.

Ah, I can really help debug those without the outputs but this PR seems to be passing all tests! There is one comment about updating the test but after that we can merge!

Ah, I can really help debug those without the outputs but this PR seems to be passing all tests! There is one comment about updating the test but after that we can merge!

sure. Will do