Ubuntu 22.04 - C++ header file not found using Vim with YouCompleteMe

Hi,
I have one PC (Ubunto 22.04) and one laptop (Ubuntu 22.04). Both have YouCompleteMe installed. The above issue only happens to the PC.  I don' face this issue with the laptop. The error i am getting example 'vector file not found [pp_file_not_found]' in the VIM when editing a C++ program. I have been using YouCompleteMe on both PC and laptop without issue for more than 1 year but just found out today it's no longer working on my PC. I have attached both logs from the PC and laptop. I did a comparison between them and it looks pretty much similar aside from the clang version.
Note for both PC & laptop:

Editor: Vim v8.
OS: Ubuntu 22.04
Both PC & laptop never had clangd installed
Both PC & laptop never had clang installed

(yapkm01-/tmp):-$ clangd (PC & laptop)
Command 'clangd' not found, but can be installed with:
sudo snap install clangd  # version 6.0.0+git2102885, or
sudo apt  install clangd  # version 1:14.0-55~exp2
See 'snap info clangd' for additional versions.
(yapkm01-/tmp):-$

clang (PC & laptop)

(yapkm01-/tmp):-$ clang
Command 'clang' not found, but can be installed with:
sudo apt install clang

vim 9_38.cc

#include <vector>
#include <iostream>
using namespace std;

 int main(){
    vector<string> v;
    for (string buffer; cin >> buffer;) {
         v.push_back(buffer);
        cout << v.capacity() << endl;
    }
      return 0;
}

PC Logs (Problematc one):
-rw------- 1 yapkm01 yapkm01     81 Nov 26 23:16 ycm_oo6s2_v4.log
-rw------- 1 yapkm01 yapkm01     34 Nov 26 23:16 ycmd_43113_stdout_a7spn9fo.log
-rw-rw-r-- 1 yapkm01 yapkm01 223808 Nov 26 23:16 preamble-524f48.pch
-rw------- 1 yapkm01 yapkm01   1417 Nov 26 23:16 clangd_stderr4vdaydqk.log
-rw------- 1 yapkm01 yapkm01   3469 Nov 26 23:18 ycmd_43113_stderr_bt1_lqds.log
(yapkm01-/tmp):-$ cat ycm_oo6s2_v4.log
2022-11-26 23:16:34,709 - ERROR - <urlopen error [Errno 111] Connection refused>
(yapkm01-/tmp):-$ cat ycmd_43113_stdout_a7spn9fo.log
serving on http://localhost:43113
(yapkm01-/tmp):-$ cat clangd_stderr4vdaydqk.log
I[23:16:34.866] clangd version 15.0.1 (https://github.com/ycm-core/llvm 708056a3d8259ce1d9fc0f15676d13b53cc23835)
I[23:16:34.866] Features: linux
I[23:16:34.866] PID: 11031
I[23:16:34.866] Working directory: /home/yapkm01/Software.Development/C++Primer/chapter9
I[23:16:34.866] argv[0]: /home/yapkm01/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clangd/output/bin/clangd
I[23:16:34.866] argv[1]: -header-insertion-decorators=0
I[23:16:34.866] argv[2]: -resource-dir=/home/yapkm01/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clang/lib/clang/15.0.1
I[23:16:34.866] argv[3]: -limit-results=500
I[23:16:34.866] Starting LSP over stdin/stdout
I[23:16:34.867] <-- initialize(1)
I[23:16:34.868] --> reply:initialize(1) 0 ms
I[23:16:34.869] <-- initialized
I[23:16:34.869] <-- workspace/didChangeConfiguration
I[23:16:34.869] <-- textDocument/didOpen
I[23:16:34.870] Failed to find compilation database for /home/yapkm01/Software.Development/C++Primer/chapter9/9_38.cc
I[23:16:34.870] ASTWorker building file /home/yapkm01/Software.Development/C++Primer/chapter9/9_38.cc version 1 with command clangd fallback
[/home/yapkm01/Software.Development/C++Primer/chapter9]
/usr/bin/clang -resource-dir=/home/yapkm01/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clang/lib/clang/15.0.1 -- /home/yapkm01/Software.Development/C++Primer/chapter9/9_38.cc
I[23:16:34.881] --> textDocument/publishDiagnostics
(yapkm01-/tmp):-$ cat ycmd_43113_stderr_bt1_lqds.log
2022-11-26 23:16:34,711 - INFO - Completion config: 50, detailing 0 candiates
2022-11-26 23:16:34,711 - INFO - Completion config: 50, detailing 0 candiates
2022-11-26 23:16:34,711 - INFO - Completion config: 50, detailing 0 candiates
2022-11-26 23:16:34,711 - INFO - Completion config: 50, detailing 0 candiates
<IP_ADDRESS> - - [26/Nov/2022 23:16:34] "GET /ready HTTP/1.1" 200 4
2022-11-26 23:16:34,818 - INFO - Adding buffer identifiers for file: /home/yapkm01/Software.Development/C++Primer/chapter9/9_38.cc
2022-11-26 23:16:34,857 - INFO - Clangd executable found at /home/yapkm01/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clangd/output/bin and up to date
2022-11-26 23:16:34,858 - INFO - Using Clangd from /home/yapkm01/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clangd/output/bin/clangd
2022-11-26 23:16:34,858 - INFO - Computed Clangd command: ['/home/yapkm01/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clangd/output/bin/clangd', '-header-insertion-decorators=0', '-resource-dir=/home/yapkm01/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clang/lib/clang/15.0.1', '-limit-results=500']
2022-11-26 23:16:34,858 - INFO - Completion config: 50, detailing 0 candiates
2022-11-26 23:16:34,858 - INFO - Returning cached Clangd command: ['/home/yapkm01/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clangd/output/bin/clangd', '-header-insertion-decorators=0', '-resource-dir=/home/yapkm01/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clang/lib/clang/15.0.1', '-limit-results=500']
2022-11-26 23:16:34,859 - INFO - Starting Clangd: ['/home/yapkm01/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clangd/output/bin/clangd', '-header-insertion-decorators=0', '-resource-dir=/home/yapkm01/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clang/lib/clang/15.0.1', '-limit-results=500']
<IP_ADDRESS> - - [26/Nov/2022 23:16:34] "GET /signature_help_available?subserver=cpp HTTP/1.1" 200 23
<IP_ADDRESS> - - [26/Nov/2022 23:16:34] "POST /event_notification HTTP/1.1" 200 2
2022-11-26 23:16:34,861 - INFO - Clangd started with PID 11031
<IP_ADDRESS> - - [26/Nov/2022 23:16:34] "POST /event_notification HTTP/1.1" 200 2
2022-11-26 23:16:34,868 - INFO - cfamily: Language server does not require resolve request
2022-11-26 23:16:34,868 - INFO - cfamily: Language server requires sync type of Incremental
2022-11-26 23:16:34,868 - INFO - cfamily: Using characters for signature triggers: (,),{,},<,>,,
<IP_ADDRESS> - - [26/Nov/2022 23:16:34] "POST /receive_messages HTTP/1.1" 200 5063
<IP_ADDRESS> - - [26/Nov/2022 23:16:34] "POST /semantic_completion_available HTTP/1.1" 200 4
<IP_ADDRESS> - - [26/Nov/2022 23:16:41] "POST /debug_info HTTP/1.1" 200 881
<IP_ADDRESS> - - [26/Nov/2022 23:16:45] "POST /receive_messages HTTP/1.1" 200 4
<IP_ADDRESS> - - [26/Nov/2022 23:16:55] "POST /receive_messages HTTP/1.1" 200 4
<IP_ADDRESS> - - [26/Nov/2022 23:17:05] "POST /receive_messages HTTP/1.1" 200 4
<IP_ADDRESS> - - [26/Nov/2022 23:17:15] "POST /receive_messages HTTP/1.1" 200 4
<IP_ADDRESS> - - [26/Nov/2022 23:17:25] "POST /receive_messages HTTP/1.1" 200 4
<IP_ADDRESS> - - [26/Nov/2022 23:17:35] "POST /receive_messages HTTP/1.1" 200 4
<IP_ADDRESS> - - [26/Nov/2022 23:17:45] "POST /receive_messages HTTP/1.1" 200 4
<IP_ADDRESS> - - [26/Nov/2022 23:17:55] "POST /receive_messages HTTP/1.1" 200 4
<IP_ADDRESS> - - [26/Nov/2022 23:18:05] "POST /receive_messages HTTP/1.1" 200 4
<IP_ADDRESS> - - [26/Nov/2022 23:18:15] "POST /receive_messages HTTP/1.1" 200 4
<IP_ADDRESS> - - [26/Nov/2022 23:18:25] "POST /receive_messages HTTP/1.1" 200 4
<IP_ADDRESS> - - [26/Nov/2022 23:18:35] "POST /receive_messages HTTP/1.1" 200 4
<IP_ADDRESS> - - [26/Nov/2022 23:18:45] "POST /receive_messages HTTP/1.1" 200 4
<IP_ADDRESS> - - [26/Nov/2022 23:18:55] "POST /receive_messages HTTP/1.1" 200 4
LAPTOP logs (No issue one):
-rw------- 1 yapkm01 yapkm01      81 Nov 26 23:52 ycm_9vgtaolj.log
-rw------- 1 yapkm01 yapkm01      34 Nov 26 23:52 ycmd_54349_stdout_cuzmw0lr.log
-rw-rw-r-- 1 yapkm01 yapkm01 2855480 Nov 26 23:52 preamble-162cf9.pch
-rw------- 1 yapkm01 yapkm01    1416 Nov 26 23:52 clangd_stderre3ce17de.log
-rw------- 1 yapkm01 yapkm01   10838 Nov 27 00:10 ycmd_54349_stderr_phvl244j.log
(yapkm01-/tmp):-$ cat ycm_9vgtaolj.log
2022-11-26 23:52:30,682 - ERROR - <urlopen error [Errno 111] Connection refused>
(yapkm01-/tmp):-$ cat ycmd_54349_stdout_cuzmw0lr.log
serving on http://localhost:54349
(yapkm01-/tmp):-$ cat clangd_stderre3ce17de.log
I[23:52:30.849] clangd version 13.0.0 (https://github.com/ycm-core/llvm 02d1fa3185f1beeebb182b8911bfe09d3429707f)
I[23:52:30.849] Features: linux
I[23:52:30.849] PID: 6143
I[23:52:30.849] Working directory: /home/yapkm01/Software.Development/C++Primer/chapter9
I[23:52:30.849] argv[0]: /home/yapkm01/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clangd/output/bin/clangd
I[23:52:30.849] argv[1]: -header-insertion-decorators=0
I[23:52:30.849] argv[2]: -resource-dir=/home/yapkm01/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clang/lib/clang/13.0.0
I[23:52:30.849] argv[3]: -limit-results=500
I[23:52:30.849] Starting LSP over stdin/stdout
I[23:52:30.849] <-- initialize(1)
I[23:52:30.850] --> reply:initialize(1) 0 ms
I[23:52:30.851] <-- initialized
I[23:52:30.851] <-- workspace/didChangeConfiguration
I[23:52:30.852] <-- textDocument/didOpen
I[23:52:30.853] Failed to find compilation database for /home/yapkm01/Software.Development/C++Primer/chapter9/9_38.cc
I[23:52:30.853] ASTWorker building file /home/yapkm01/Software.Development/C++Primer/chapter9/9_38.cc version 1 with command clangd fallback
[/home/yapkm01/Software.Development/C++Primer/chapter9]
/usr/bin/clang -resource-dir=/home/yapkm01/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clang/lib/clang/13.0.0 -- /home/yapkm01/Software.Development/C++Primer/chapter9/9_38.cc
I[23:52:31.607] --> textDocument/publishDiagnostics
(yapkm01-/tmp):-$ cat ycmd_54349_stderr_phvl244j.log
2022-11-26 23:52:30,771 - INFO - Completion config: 50, detailing 0 candiates
2022-11-26 23:52:30,771 - INFO - Completion config: 50, detailing 0 candiates
2022-11-26 23:52:30,771 - INFO - Completion config: 50, detailing 0 candiates
2022-11-26 23:52:30,772 - INFO - Completion config: 50, detailing 0 candiates
<IP_ADDRESS> - - [26/Nov/2022 23:52:30] "GET /ready HTTP/1.1" 200 4
2022-11-26 23:52:30,796 - INFO - Adding buffer identifiers for file: /home/yapkm01/Software.Development/C++Primer/chapter9/9_38.cc
2022-11-26 23:52:30,838 - INFO - Clangd executable found at /home/yapkm01/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clangd/output/bin and up to date
2022-11-26 23:52:30,838 - INFO - Using Clangd from /home/yapkm01/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clangd/output/bin/clangd
2022-11-26 23:52:30,838 - INFO - Computed Clangd command: ['/home/yapkm01/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clangd/output/bin/clangd', '-header-insertion-decorators=0', '-resource-dir=/home/yapkm01/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clang/lib/clang/13.0.0', '-limit-results=500']
2022-11-26 23:52:30,838 - INFO - Completion config: 50, detailing 0 candiates
2022-11-26 23:52:30,839 - INFO - Returning cached Clangd command: ['/home/yapkm01/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clangd/output/bin/clangd', '-header-insertion-decorators=0', '-resource-dir=/home/yapkm01/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clang/lib/clang/13.0.0', '-limit-results=500']
<IP_ADDRESS> - - [26/Nov/2022 23:52:30] "GET /signature_help_available?subserver=cpp HTTP/1.1" 200 23
<IP_ADDRESS> - - [26/Nov/2022 23:52:30] "POST /event_notification HTTP/1.1" 200 2
2022-11-26 23:52:30,840 - INFO - Starting Clangd: ['/home/yapkm01/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clangd/output/bin/clangd', '-header-insertion-decorators=0', '-resource-dir=/home/yapkm01/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clang/lib/clang/13.0.0', '-limit-results=500']
2022-11-26 23:52:30,843 - INFO - Clangd started with PID 6143
<IP_ADDRESS> - - [26/Nov/2022 23:52:30] "POST /event_notification HTTP/1.1" 200 2
2022-11-26 23:52:30,850 - INFO - cfamily: Language server does not require resolve request
2022-11-26 23:52:30,851 - INFO - cfamily: Language server requires sync type of Incremental
2022-11-26 23:52:30,851 - INFO - cfamily: Using characters for signature triggers: (,,
<IP_ADDRESS> - - [26/Nov/2022 23:52:30] "POST /semantic_completion_available HTTP/1.1" 200 4
<IP_ADDRESS> - - [26/Nov/2022 23:52:31] "POST /receive_messages HTTP/1.1" 200 95
<IP_ADDRESS> - - [26/Nov/2022 23:52:36] "POST /debug_info HTTP/1.1" 200 880
<IP_ADDRESS> - - [26/Nov/2022 23:52:41] "POST /receive_messages HTTP/1.1" 200 4
<IP_ADDRESS> - - [26/Nov/2022 23:52:51] "POST /receive_messages HTTP/1.1" 200 4
<IP_ADDRESS> - - [26/Nov/2022 23:53:01] "POST /receive_messages HTTP/1.1" 200 4
<IP_ADDRESS> - - [26/Nov/2022 23:53:11] "POST /receive_messages HTTP/1.1" 200 4
<IP_ADDRESS> - - [26/Nov/2022 23:53:21] "POST /receive_messages HTTP/1.1" 200 4
<IP_ADDRESS> - - [26/Nov/2022 23:53:32] "POST /receive_messages HTTP/1.1" 200 4
<IP_ADDRESS> - - [26/Nov/2022 23:53:42] "POST /receive_messages HTTP/1.1" 200 4
<IP_ADDRESS> - - [26/Nov/2022 23:53:52] "POST /receive_messages HTTP/1.1" 200 4
<IP_ADDRESS> - - [26/Nov/2022 23:54:02] "POST /receive_messages HTTP/1.1" 200 4
<IP_ADDRESS> - - [26/Nov/2022 23:54:12] "POST /receive_messages HTTP/1.1" 200 4
<IP_ADDRESS> - - [26/Nov/2022 23:54:22] "POST /receive_messages HTTP/1.1" 200 4
<IP_ADDRESS> - - [26/Nov/2022 23:54:32] "POST /receive_messages HTTP/1.1" 200 4

It looks like clangd is not able to find the standard library headers of your compiler.
What compiler are you using to build you code? Where is the compiler executable located on the fileystem?
Using --query-driver as described at https://clangd.llvm.org/troubleshooting#cant-find-standard-library-headers-map-stdioh-etc usually works as a workaround in situations like this, but note that in clangd 15 it requires your project having a compile_commands.json (this is improved in clangd 16).

If you're able to configure YouCompleteMe to pass --log=verbose as a command-line argument to clangd, then sharing the clangd_stderr log taken with that flag might shed more light on the situation.

Please see my revise information. I am using g++ (/usr/bin/g++). Initially one on PC was using clangd 13 but because it didn't work i downloaded the latest YouCompleteMe which uses clangd 15.

Can you share the output of /usr/bin/g++ -v -x c++ -E /dev/null please?

Btw. https://github.com/clangd/vscode-clangd/issues/417 is similar, I think something related to the location of the standard library include paths changed in Ubuntu 22.04.

Can you share the output of /usr/bin/g++ -v -x c++ -E /dev/null please?

Here it is.
(yapkm01-/tmp):-$ /usr/bin/g++ -v -x c++ -E /dev/null
Using built-in specs.
 search starts here:
#include <...> search starts here:
/usr/include/c++/11
/usr/include/x86_64-linux-gnu/c++/11
/usr/include/c++/11/backward
/usr/lib/gcc/x86_64-linux-gnu/11/include
/usr/local/include
/usr/include/x86_64-linux-gnu
/usr/include
End of search list.
0 "/dev/null"
0 ""
0 ""
1 "/usr/include/stdc-predef.h" 1 3 4
0 "" 2
1 "/dev/null"
COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-E' '-shared-libgcc' '-mtune=generic' '-march=x86-64'

If you're able to configure YouCompleteMe to pass --log=verbose as a command-line argument to clangd, then sharing the clangd_stderr log taken with that flag might shed more light on the situation.

I am not sure how/where/what to change here.

Btw. clangd/vscode-clangd#417 is similar, I think something related to the location of the standard library include paths changed in Ubuntu 22.04.

Here's my issue. Both PC & laptop is on Ubuntu 22.04. Not sure 100% but I noticed that this issue happens on my PC after i use VIM and did a colorscheme change. I didn't do that on my laptop and so far the YouCompleteMe is working.

Can you share the output of /usr/bin/g++ -v -x c++ -E /dev/null please?

Here it is.

Thanks. The listed include paths seem pretty standard, it's strange that clangd cannot find them.
Next diagnostic step would be to get verbose logs.

If you're able to configure YouCompleteMe to pass --log=verbose as a command-line argument to clangd, then sharing the clangd_stderr log taken with that flag might shed more light on the situation.

I am not sure how/where/what to change here.

I don't use YCM but some googling around took me to here which shows an example of setting ycm_clangd_args. Do that with --log=verbose as the argument.

Can you share the output of /usr/bin/g++ -v -x c++ -E /dev/null please?

Here it is.

Thanks. The listed include paths seem pretty standard, it's strange that clangd cannot find them.
Next diagnostic step would be to get verbose logs.

If you're able to configure YouCompleteMe to pass --log=verbose as a command-line argument to clangd, then sharing the clangd_stderr log taken with that flag might shed more light on the situation.

I am not sure how/where/what to change here.

I don't use YCM but some googling around took me to here which shows an example of setting ycm_clangd_args. Do that with --log=verbose as the argument.

OK. I'll try tomorrow. Appreciate.

Hi!
I can confirm I am having the same issue on the latest uptodate Ubuntu 22.04. I found out about this problem via YCM too.
My /usr/bin/g++ -v -x c++ -E /dev/null output is:
Using built-in specs.
 search starts here:
#include <...> search starts here:
 /usr/include/c++/11
 /usr/include/x86_64-linux-gnu/c++/11
 /usr/include/c++/11/backward
 /usr/lib/gcc/x86_64-linux-gnu/11/include
 /usr/local/include
 /usr/include/x86_64-linux-gnu
 /usr/include
End of search list.
# 0 "/dev/null"
# 0 "<built-in>"
# 0 "<command-line>"
# 1 "/usr/include/stdc-predef.h" 1 3 4
# 0 "<command-line>" 2
# 1 "/dev/null"
COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-E' '-shared-libgcc' '-mtune=generic' '-march=x86-64'

YcmDebugInfo is:
Printing YouCompleteMe debug information...
-- Resolve completions: Up front
-- Client logfile: /tmp/ycm_g9r9jbae.log
-- Server Python interpreter: /usr/bin/python3
-- Server Python version: 3.10.6
-- Server has Clang support compiled in: True
-- Clang version: clang version 15.0.1 (https://github.com/ycm-core/llvm 708056a3d8259ce1d9fc0f15676d13b53cc23835)
-- No extra configuration file found
-- C-family completer debug information:
--   Clangd running
--   Clangd process ID: 5505
--   Clangd executable: ['/home/georgerapeanu/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clangd/output/bin/clangd', '-header-insertion-decorators=0', '-resource-dir=/home/georgerapeanu/.vim/b
undle/YouCompleteMe/third_party/ycmd/third_party/clang/lib/clang/15.0.1', '-limit-results=500']
--   Clangd logfiles:
--     /tmp/clangd_stderrenvqo00d.log
--   Clangd Server State: Initialized
--   Clangd Project Directory: /home/georgerapeanu/Desktop/petrozavodsk_summer_2019/day8
--   Clangd Settings: {}
--   Clangd Compilation Command: False
-- Server running at: http://<IP_ADDRESS>:40395
-- Server process ID: 5486
-- Server logfiles:
--   /tmp/ycmd_40395_stdout_l418atm7.log
--   /tmp/ycmd_40395_stderr_txk76es8.log
-- Semantic highlighting supported: True
-- Virtual text supported: False
-- Popup windows supported: True

I manually extracted the following command via YcmDebugInfo:
'/home/georgerapeanu/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clangd/output/bin/clangd', '-header-insertion-decorators=0', '-resource-dir=/home/georgerapeanu/.vim/b
undle/YouCompleteMe/third_party/ycmd/third_party/clang/lib/clang/15.0.1', '-limit-results=500'

Executing it with --log=verbose gives
/home/georgerapeanu/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clangd/output/bin/clangd -header-insertion-decorators=0 -resource-dir=/home/georgerapeanu/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clang/lib/clang/15.0.1 -limit-results=500 --check=test.cpp --log=verbose
I[10:15:34.764] clangd version 15.0.1 (https://github.com/ycm-core/llvm 708056a3d8259ce1d9fc0f15676d13b53cc23835)
I[10:15:34.765] Features: linux
I[10:15:34.765] PID: 5555
I[10:15:34.765] Working directory: /home/georgerapeanu/Desktop/petrozavodsk_summer_2019/day8
I[10:15:34.765] argv[0]: /home/georgerapeanu/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clangd/output/bin/clangd
I[10:15:34.765] argv[1]: -header-insertion-decorators=0
I[10:15:34.765] argv[2]: -resource-dir=/home/georgerapeanu/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clang/lib/clang/15.0.1
I[10:15:34.765] argv[3]: -limit-results=500
I[10:15:34.766] argv[4]: --check=test.cpp
I[10:15:34.766] argv[5]: --log=verbose
V[10:15:34.766] User config file is /home/georgerapeanu/.config/clangd/config.yaml
I[10:15:34.766] Entering check mode (no LSP server)
I[10:15:34.766] Testing on source file /home/georgerapeanu/Desktop/petrozavodsk_summer_2019/day8/test.cpp
I[10:15:34.767] Loading compilation database...
I[10:15:34.768] Failed to find compilation database for /home/georgerapeanu/Desktop/petrozavodsk_summer_2019/day8/test.cpp
I[10:15:34.769] Generic fallback command is: /usr/lib/llvm-14/bin/clang -resource-dir=/home/georgerapeanu/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clang/lib/clang/15.0.1 -- /home/georgerapeanu/Desktop/petrozavodsk_summer_2019/day8/test.cpp
I[10:15:34.770] Parsing command...
I[10:15:34.774] internal (cc1) args are: -cc1 -triple x86_64-unknown-linux-gnu -fsyntax-only -disable-free -clear-ast-before-backend -disable-llvm-verifier -discard-value-names -main-file-name test.cpp -mrelocation-model pic -pic-level 2 -pic-is-pie -mframe-pointer=all -fmath-errno -ffp-contract=on -fno-rounding-math -mconstructor-aliases -funwind-tables=2 -target-cpu x86-64 -tune-cpu generic -mllvm -treat-scalable-fixed-error-as-warning -debugger-tuning=gdb -fcoverage-compilation-dir=/home/georgerapeanu/Desktop/petrozavodsk_summer_2019/day8 -resource-dir /home/georgerapeanu/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clang/lib/clang/15.0.1 -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/12/../../../../include/c++ -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/12/../../../../include/c++/x86_64-linux-gnu -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/12/../../../../include/c++/backward -internal-isystem /home/georgerapeanu/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clang/lib/clang/15.0.1/include -internal-isystem /usr/local/include -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/12/../../../../x86_64-linux-gnu/include -internal-externc-isystem /usr/include/x86_64-linux-gnu -internal-externc-isystem /include -internal-externc-isystem /usr/include -fdeprecated-macro -fdebug-compilation-dir=/home/georgerapeanu/Desktop/petrozavodsk_summer_2019/day8 -ferror-limit 19 -fgnuc-version=4.2.1 -fcxx-exceptions -fexceptions -no-round-trip-args -faddrsig -D__GCC_HAVE_DWARF2_CFI_ASM=1 -x c++ /home/georgerapeanu/Desktop/petrozavodsk_summer_2019/day8/test.cpp
I[10:15:34.774] Building preamble...
I[10:15:34.796] Indexing headers...
V[10:15:34.796] indexed preamble AST for /home/georgerapeanu/Desktop/petrozavodsk_summer_2019/day8/test.cpp version null:
  symbol slab: 0 symbols, 120 bytes
  ref slab: 0 symbols, 0 refs, 128 bytes
  relations slab: 0 relations, 24 bytes
V[10:15:34.797] Built preamble of size 223792 for file /home/georgerapeanu/Desktop/petrozavodsk_summer_2019/day8/test.cpp version null in 0.02 seconds
E[10:15:34.797] [pp_file_not_found] Line 1: 'iostream' file not found
I[10:15:34.797] Building AST...
E[10:15:34.811] [undeclared_var_use] Line 6: use of undeclared identifier 'cout'
I[10:15:34.811] Indexing AST...
V[10:15:34.812] indexed file AST for /home/georgerapeanu/Desktop/petrozavodsk_summer_2019/day8/test.cpp version null:
  symbol slab: 1 symbols, 4448 bytes
  ref slab: 1 symbols, 1 refs, 4248 bytes
  relations slab: 0 relations, 24 bytes
V[10:15:34.812] Build dynamic index for main-file symbols with estimated memory usage of 11520 bytes
I[10:15:34.812] Building inlay hints
I[10:15:34.812] Testing features at each token (may be slow in large files)
V[10:15:34.812]   0:0 #
V[10:15:34.812]     definition: 0
V[10:15:34.813]     hover: false
V[10:15:34.813]     documentHighlight: 0
V[10:15:34.813]   0:1 include
V[10:15:34.813] No heuristic index definition for include
V[10:15:34.813]     definition: 0
V[10:15:34.813]     hover: false
V[10:15:34.813]     documentHighlight: 0
V[10:15:34.814]   0:9 <
V[10:15:34.814]     definition: 0
V[10:15:34.814]     hover: false
V[10:15:34.814]     documentHighlight: 0
V[10:15:34.814]   0:10 iostream
V[10:15:34.814] No heuristic index definition for iostream
V[10:15:34.814]     definition: 0
V[10:15:34.814]     hover: false
V[10:15:34.815]     documentHighlight: 0
V[10:15:34.815]   0:18 >
V[10:15:34.815] No heuristic index definition for iostream
V[10:15:34.815]     definition: 0
V[10:15:34.815]     hover: false
V[10:15:34.815]     documentHighlight: 0
V[10:15:34.815]   2:0 using
V[10:15:34.815]     tweak: RemoveUsingNamespace
V[10:15:34.816]     definition: 0
V[10:15:34.817]     hover: true
V[10:15:34.817]     documentHighlight: 0
V[10:15:34.817]   2:6 namespace
V[10:15:34.817]     tweak: RemoveUsingNamespace
V[10:15:34.817]     definition: 0
V[10:15:34.819]     hover: true
V[10:15:34.819]     documentHighlight: 0
V[10:15:34.819]   2:16 std
V[10:15:34.819]     tweak: RemoveUsingNamespace
V[10:15:34.819]     definition: 0
V[10:15:34.821]     hover: true
V[10:15:34.821]     documentHighlight: 0
V[10:15:34.821]   2:19 ;
V[10:15:34.821]     definition: 0
V[10:15:34.822]     hover: true
V[10:15:34.822]     documentHighlight: 0
V[10:15:34.822]   4:0 int
V[10:15:34.823]     definition: 0
V[10:15:34.823]     hover: false
V[10:15:34.823]     documentHighlight: 0
V[10:15:34.823]   4:4 main
V[10:15:34.823]     definition: 1
V[10:15:34.825]     hover: true
V[10:15:34.825]     documentHighlight: 1
V[10:15:34.825]   4:8 (
V[10:15:34.825]     definition: 1
V[10:15:34.825]     hover: false
V[10:15:34.825]     documentHighlight: 1
V[10:15:34.825]   4:9 )
V[10:15:34.826]     definition: 0
V[10:15:34.826]     hover: false
V[10:15:34.826]     documentHighlight: 0
V[10:15:34.826]   4:11 {
V[10:15:34.826]     definition: 0
V[10:15:34.826]     hover: false
V[10:15:34.826]     documentHighlight: 0
V[10:15:34.826]   5:2 cout
V[10:15:34.826]     definition: 0
V[10:15:34.827]     hover: false
V[10:15:34.827]     documentHighlight: 0
V[10:15:34.827]   5:7 <<
V[10:15:34.827]     definition: 0
V[10:15:34.827]     hover: false
V[10:15:34.827]     documentHighlight: 0
V[10:15:34.827]   5:10 "ok"
V[10:15:34.827]     definition: 0
V[10:15:34.827]     hover: false
V[10:15:34.827]     documentHighlight: 0
V[10:15:34.827]   5:14 ;
V[10:15:34.828]     definition: 0
V[10:15:34.828]     hover: false
V[10:15:34.828]     documentHighlight: 0
V[10:15:34.828]   6:2 return
V[10:15:34.828]     definition: 0
V[10:15:34.828]     hover: false
V[10:15:34.828]     documentHighlight: 1
V[10:15:34.828]   6:9 0
V[10:15:34.828]     tweak: ExtractVariable
V[10:15:34.829]     definition: 0
V[10:15:34.829]     hover: false
V[10:15:34.829]     documentHighlight: 0
V[10:15:34.829]   6:10 ;
V[10:15:34.829]     definition: 0
V[10:15:34.829]     hover: false
V[10:15:34.829]     documentHighlight: 0
V[10:15:34.829]   7:0 }
V[10:15:34.829]     definition: 0
V[10:15:34.829]     hover: false
V[10:15:34.829]     documentHighlight: 0
I[10:15:34.830] All checks completed, 2 errors

The test.cpp file is a simple c++ script:
#include <iostream>

using namespace std;

int main() {
  cout << "ok";
  return 0;
}

Can you explain more on the include paths generated by  the clangd fallback flags no longer work on 22.04?
I presume you're referring to your logs below.
I[10:15:34.768] Failed to find compilation database for /home/georgerapeanu/Desktop/petrozavodsk_summer_2019/day8/test.cpp
I[10:15:34.769] Generic fallback command is: /usr/lib/llvm-14/bin/clang -resource-dir=/home/georgerapeanu/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clang/lib/clang/15.0.1 -- /home/georgerapeanu/Desktop/petrozavodsk_summer_2019/day8/test.cpp
I[10:15:34.770] Parsing command...

i am not familiar with parsing compilers etc. So from the above is because you don't have /usr/lib/llvm-14/bin/clang installed? I need to know what needs to be done.
In my case it would be below.
I[23:16:34.870] ASTWorker building file /home/yapkm01/Software.Development/C++Primer/chapter9/9_38.cc version 1 with command clangd fallback
[/home/yapkm01/Software.Development/C++Primer/chapter9]
/usr/bin/clang -resource-dir=/home/yapkm01/.vim/bundle/YouCompleteMe/third_party/ycmd/third_party/clang/lib/clang/15.0.1 -- /home/yapkm01/Software.Development/C++Primer/chapter9/9_38.cc

It would mean /usr/bin/clang is missing which it is on my PC since i never installed it. However clang was never installed on my laptop as well but it's working.
Can you elaborate more?

I can't really explain anything because I too have the problem and do not know what is happening. I just added to the issue data from my laptop in order for the smarter guys to be able to understand better what is happening.

Can you share the output of /usr/bin/g++ -v -x c++ -E /dev/null please?

Here it is.

Thanks. The listed include paths seem pretty standard, it's strange that clangd cannot find them.
Next diagnostic step would be to get verbose logs.

If you're able to configure YouCompleteMe to pass --log=verbose as a command-line argument to clangd, then sharing the clangd_stderr log taken with that flag might shed more light on the situation.

I am not sure how/where/what to change here.

I don't use YCM but some googling around took me to here which shows an example of setting ycm_clangd_args. Do that with --log=verbose as the argument.

Hi @HighCommander4  It seems @georgerapeanu  has the logs which you need. Can you let us know what needs to be done to fix the issue? Appreciate much.

I can't really explain anything because I too have the problem and do not know what is happening. I just added to the issue data from my laptop in order for the smarter guys to be able to understand better what is happening.

Thanks much! Think your logs would really help them.

I have to run now, will take a more detailed look later, but based on a quick look at the logs + another recent issue I've seen, installing g++-12 may be an effective workaround.

I understand .. But again here's the puzzling part. My laptop running on Ubuntu 22.04 as well. It has the same g++ version as my PC which is 11. Guess what? It's working. No issue. I am working on it right now. No error saying e.g. "vector file not found [pp_file_not_found]". I know it doesn't make sense to you but it all started after on Vim i change the color scheme.  My laptop running on Ubuntu 22.04 has no issue.

file:///home/yapkm01/Pictures/Screenshots/Screenshot%20from%202022-11-27%2010-18-44.png
file:///home/yapkm01/Pictures/Screenshots/Screenshot%20from%202022-11-27%2010-19-06.png
file:///home/yapkm01/Pictures/Screenshots/Screenshot%20from%202022-11-27%2010-19-27.png

I was able to trivially repro this using the 'ubuntu 22.04' VM from my vagrant VMs : https://github.com/puremourning/VMs

cd ubutu-22.04-LTS
vagrant up (if any errors, just vagrant provision)
vagrant ssh
vim test.cc
#include <iostream>

expect no error
actual file not found.
Workaround. Use the following compile_flags.txt:
vagrant@vagrant:~/YouCompleteMe$ cat compile_flags.txt
 -x
 c++
-std=c++17
-isystem
/usr/include/c++/11
-isystem
/usr/include/aarch64-linux-gnu/c++/11
-isystem
/usr/include/c++/11/backward
-isystem
/usr/lib/gcc/aarch64-linux-gnu/11/include
-isystem
/usr/local/include
-isystem
/usr/include/aarch64-linux-gnu
-isystem
/usr/include

Thanks for the tip @puremourning . Below what i did.
a. Find where the include locations are.
(root-/):-$ find . -name vector -print
find: ‘./run/user/1000/doc’: Permission denied
find: ‘./run/user/1000/gvfs’: Permission denied
./usr/include/c++/10/vector
./usr/include/c++/10/experimental/vector
./usr/include/c++/10/debug/vector
./usr/include/c++/11/vector
./usr/include/c++/11/experimental/vector
./usr/include/c++/11/debug/vector
./usr/include/c++/9/profile/vector
./usr/include/c++/9/vector
./usr/include/c++/9/experimental/vector
./usr/include/c++/9/debug/vector
./usr/include/boost/fusion/container/vector
./usr/include/boost/mpl/vector
i choose to use ./usr/include/c++/11 location
b. Modify .ycm_extra_conf.py
# THIS IS IMPORTANT! Without a "-std=<something>" flag, clang won't know which
# language to use when compiling headers. So it will guess. Badly. So C++
# headers will be compiled as C headers. You don't want that so ALWAYS specify
# a "-std=<something>".
# For a C project, you would set this to something like 'c99' instead of
# 'c++11'.
'-std=c++11',

# ...and the same thing goes for the magic -x option which specifies the
# language that the files to be compiled are written in. This is mostly
# relevant for c++ headers.
# For a C project, you would set this to 'c' instead of 'c++'.
'-x', 'c',

'-I', '.',

'-I', './src/',

'-I', './include/',

'-I', './ClangCompleter',

'-isystem', '../llvm/include',

'-isystem', '../llvm/tools/clang/include',

'-isystem', './tests/gmock/gtest',

'-isystem', './tests/gmock/gtest/include',

'-isystem', './tests/gmock',

'-isystem', './tests/gmock/include',

'-isystem', '/usr/include',

'-isystem', '/usr/local/include',

'-isystem', '/usr/include/c++/11',

c. Recompiled
(yapkm01-/home/yapkm01/.vim/bundle/YouCompleteMe):-$ ./install.py --clangd-completer
Generating ycmd build configuration...OK
Compiling ycmd target: ycm_core...OK
Setting up Clangd completer...OK
d. Same error

There should be no need whatsoever to recompile ycmd. I have repeatedly said that this is nothing to do with YCM or ycmd.
If you do what I said (use a compile_flags.txt in the directory of your project), it will resolve the issue. Stop fidding with YCM/ycmd - it's completely irrelevant.

ok. Below are all the compile_flags.txt. They are all under tests directory. Which one i should be changing?
(yapkm01-/home/yapkm01/.vim/bundle/YouCompleteMe):-$ find . -name compile_flags.txt -print
./third_party/ycmd/ycmd/tests/clangd/testdata/compile_flags.txt
./third_party/ycmd/ycmd/tests/clangd/testdata/cuda/compile_flags.txt
./third_party/ycmd/ycmd/tests/clangd/testdata/driver_mode_cl/flag/compile_flags.txt
./third_party/ycmd/ycmd/tests/clangd/testdata/driver_mode_cl/executable/compile_flags.txt
./third_party/ycmd/ycmd/tests/clangd/testdata/test-include/compile_flags.txt
./third_party/ycmd/ycmd/tests/clangd/testdata/objc/compile_flags.txt

None of them. Put the compile_flags.txt in the root of your project.
Please carefully read the clangd and YCM documentation. You do NOT need to change ANY files in the ycmd directory or the YCM directory..
I will not provide any further support on this issue as I consider it resolved (multiple times over).

based on a quick look at the logs + another recent issue I've seen, installing g++-12 may be an effective workaround.

Two users who reported a similar issue (in #1391 and https://github.com/clangd/vscode-clangd/issues/417) have reported that this workaround works.

My best guess as to how this problem arises on affected machines:

The affected machine has gcc-12 installed but not g++-12.
Since gcc-12 is installed, some paths related to gcc-12, for example /usr/lib/gcc/x86_64-linux-gnu/12, exist.
This fools the clang driver's heuristics for locating the standard library headers into thinking it will find gcc 12 standard library headers.
However, since g++-12 is not installed, the C++ standard library headers are not present.

Machines running Ubuntu 22.04 which are not affected probably either have g++-12 installed, or do not have gcc-12 installed.

With that in mind, a more complete set of workarounds:

Option 1 Install g++-12.

This is the simplest solution. It does mean that clangd will use the gcc 12 standard library headers; this may be slightly sub-optimal in cases where your project is not actually built with gcc 12 (for example, code completion may offer standard library facilities present in version 12 but not in the version you're building with).

Option 2 Uninstall gcc-12.

(But you may not be able to do this if another package you need depends on it.)

Option 3 Use --query-driver to instruct clangd to extract the built-in include paths of the compiler you're building with, rather than using heuristics to find them. Note that this requires that your project has a compile_commands.json, and that the argument to --query-driver match the argv[0] of the commands in the compile_commands.json.
Option 4 Provide the built-in include paths of your compiler to clangd manually, using a clangd config file or (for projects that don't use compile_commands.json) using compile_flags.txt. (This is the workaround @puremourning described.)

I think a proper fix would involve fixing the clang driver's heuristics for locating standard library paths, to handle this situation correctly. However, the code in question is not in clangd, it's upstream in libclangDriver, and I don't have the bandwidth to investigate it further at this time.

Thanks, Nathan. I’ll double check my VM to confirm about gcc installed/g++ not installed and report back.

Same issue here, opened some C++ code in neovim and it says  is missing

I've narrowed down this problem to installation of libasan8 which is the dependency of gcc-12. I'm using Pop!_os and it's desktop has hard dependency on gcc-12, but on my home server with ubuntu as a container I'm free to remove it and clang is happy again.

More generally, today I find that the clang++ compilers (version 14 and 15) on Ubuntu 22.04 LTS cannot find <iostream>...

More generally, today I find that the clang++ compilers (version 14 and 15) on Ubuntu 22.04 LTS cannot find ...

Please consider filing that upstream at https://github.com/llvm/llvm-project/issues

I have solved the problem on my computer, after some more investigations.
For some reasons gcc-12 is installed on my system (I do not think I did it), and clang is trying to use it for C++ header files (it searches directories like /usr/bin/../lib/gcc/x86_64-linux-gnu/12/../../../../include/c++). The problem is that only gcc-12 is installed, but not g++-12.
After installing g++-12, all problems are gone.
I wish it would solve your problems too.

I have to run now, will take a more detailed look later, but based on a quick look at the logs + another recent issue I've seen, installing g++-12 may be an effective workaround.

I'll vouch for this solution.

@simlei can you show a complete set of clangd logs?
Also, are you having an issue resolving standard library includes like <iostream>, or your project's own includes? In the latter case, I would suggest posting a logs in a separate issue, as this issue is about resolving standard library includes on Ubunu 22.04 specifically.

I have solved the problem on my computer, after some more investigations.
For some reasons gcc-12 is installed on my system (I do not think I did it), and clang is trying to use it for C++ header files (it searches directories like /usr/bin/../lib/gcc/x86_64-linux-gnu/12/../../../../include/c++). The problem is that only gcc-12 is installed, but not g++-12.
After installing g++-12, all problems are gone.
I have realized now it was actually one of the recommended options in this discussion. Sorry for not reading carefully. I think part of the confusion was that this issue is open. Maybe your should mark it closed to indicate there is already a solution.

This worked for me too.
I just installed by running at Ubuntu 22.04
sudo apt update
sudo apt install g++-12

I'm sorry but it's simply too late now, of my own laziness to follow up timely.
However, without explicit configuration, and by putting compile_commands.json at the expected location, it works for me.

I have too computers, one is Ubuntu 22.04.2 LTS, and it works well, another is Ubuntu 22.04.3 LTS, it has the same issue...

I have too computers, one is Ubuntu 22.04.2 LTS, it works well, but another is Ubuntu 22.04.3 LTS, it has the same issue...

Have you tried the described workarounds?
My guess is the two machines differ by one of them having g++-12 installed and the other not.

I have too computers, one is Ubuntu 22.04.2 LTS, it works well, but another is Ubuntu 22.04.3 LTS, it has the same issue...

Have you tried the described workarounds?
My guess is the two machines differ by one of them having g++-12 installed and the other not.

Both computers(Ubuntu 22.04.2) worked well a few months ago, neither computer has g++12  installed, when I upgrade one of them from 22.04.2 to  22.04.3, the issue arised. Now I have to install g++12 to circumvent the issue.

Both computers(Ubuntu 22.04.2) worked well a few months ago, neither computer has g++12 installed, when I upgrade one of them from 22.04.2 to 22.04.3, the issue arised.

The issue arises more specifically when gcc-12 is installed but g++-12 is not. So an explanation could be that the upgrade involved installing gcc-12`.

Now I have to install g++12 to circumvent the issue.

The comment I linked to describes a number of alternative workarounds.
In my experience, the approach that produces the most accurate results is using --query-driver to make sure clangd is using the exact same library headers as your build compiler.

On the Ubuntu 22.04.3, when I switch the compiler from gcc to clang, and use libc++ instead of libstdc++, the issue persists. After I use the workarounds, everything looks like well, but when I jump to the iostream file,  I found that  it's the path to libstdc++ and not libc++. I tested both the clang15.07 and clang16.06，the issue is same.
Same as before，everything works fine on the Ubuntu22.04.02 without workaround, and the jump path is also right，I think this issue may be introduced by the new version of Ubuntu.

@UnionType
As far as I know, using libc++ always requires the command-line option -stdlib=libc++. Did you specify that in the configuration?

@UnionType
As far as I know, using libc++ always requires the command-line option -stdlib=libc++. Did you specify that in the configuration?

Of course I did, on the Ubuntu 22.04.2, it can jump to the right path of libc++.

Sorry for misunderstanding.
You are right, the youcompleteme in Ubuntu 22.04 has ceased to work for C++ header files. For me, it does not work at all—it failed to find iostream, whether given -stdlib=libc++ or not.
I ended up installing the latest YouCompleteMe from scratch. Everything is back to normal.

based on a quick look at the logs + another recent issue I've seen, installing g++-12 may be an effective workaround.

Two users who reported a similar issue (in #1391 and clangd/vscode-clangd#417) have reported that this workaround works.
My best guess as to how this problem arises on affected machines:

The affected machine has gcc-12 installed but not g++-12.
Since gcc-12 is installed, some paths related to gcc-12, for example /usr/lib/gcc/x86_64-linux-gnu/12, exist.
This fools the clang driver's heuristics for locating the standard library headers into thinking it will find gcc 12 standard library headers.
However, since g++-12 is not installed, the C++ standard library headers are not present.

Machines running Ubuntu 22.04 which are not affected probably either have g++-12 installed, or do not have gcc-12 installed.
With that in mind, a more complete set of workarounds:

Option 1 Install g++-12.

This is the simplest solution. It does mean that clangd will use the gcc 12 standard library headers; this may be slightly sub-optimal in cases where your project is not actually built with gcc 12 (for example, code completion may offer standard library facilities present in version 12 but not in the version you're building with).

Option 2 Uninstall gcc-12.

(But you may not be able to do this if another package you need depends on it.)

Option 3 Use --query-driver to instruct clangd to extract the built-in include paths of the compiler you're building with, rather than using heuristics to find them. Note that this requires that your project has a compile_commands.json, and that the argument to --query-driver match the argv[0] of the commands in the compile_commands.json.

Option 4 Provide the built-in include paths of your compiler to clangd manually, using a clangd config file or (for projects that don't use compile_commands.json) using compile_flags.txt. (This is the workaround @puremourning described.)

I think a proper fix would involve fixing the clang driver's heuristics for locating standard library paths, to handle this situation correctly. However, the code in question is not in clangd, it's upstream in libclangDriver, and I don't have the bandwidth to investigate it further at this time.

@HighCommander4, I am experiencing this issue too, and in my case, only the Option 1 brought the desired effect.

@HighCommander4, I am experiencing this issue too, and in my case, only the Option 1 brought the desired effect.

Does it suit your needs?
If you have a need to use gcc 11 headers, I'm sure Option 3 can be made to work, it's just a bit more finnicky to get right.

try: sudo apt remove libgcc-12-dev


Double-byte characters are garbled and unreadable on the preview screen

Description
If you use shift-jis as character code in the text and you select the text file in the Files, the characters will be garbled and you won't be able to read them in the preview screen.  If you use UTF-8 as character code in the text file, you will  have no garbled characters and can read them normally in the preview screen. I will be grateful if you could fix it.
Thank you.
Steps To Reproduce

Write something in the text file using Shift-jis as character code and save it.
Open Files and you select the text file and see the preview screen on the right side.
You will see the characters are garbled and you can not read them properly.

Windows 11 Pro 23H2
OS 　22635.3420
Windows Feature Experience Pack 1000.22700.1003.0
Requirements
The expected behaviour will be that you can see the characters in the text file on the preview screen of "Files" even when you use Shift-jis as character code.
Fix the issue when you see garbles characters on the preview screen of "Files" if you use Shift-jis as character code. (or if you use non-2bytes character code such as Shift-jis in you will see the issue.  If you use 2bytes character codes such as utf-8, you will not see the issue on the preview screen.)
Files Version
<IP_ADDRESS>
Windows Version
10.0.22635.3420
Log File
2024-04-05 04:06:02.5373|Information|SIDELOAD: Checking for updates...
2024-04-05 04:06:03.4368|Information|SIDELOAD: Current Package Name: Files
2024-04-05 04:06:03.4371|Information|SIDELOAD: Remote Package Name: Files
2024-04-05 04:06:03.4373|Information|SIDELOAD: Current Version: <IP_ADDRESS>
2024-04-05 04:06:03.4375|Information|SIDELOAD: Remote Version: <IP_ADDRESS>
2024-04-05 04:06:03.4376|Information|SIDELOAD: Update found.
2024-04-05 04:06:03.4377|Information|SIDELOAD: Starting background download.
2024-04-05 04:06:05.2729|Information|Download time taken: 00:00:01
2024-04-05 04:08:19.7192|Information|SIDELOAD: Checking for updates...
2024-04-05 04:08:19.7699|Information|The app is being activated. Activation type: LaunchActivatedEventArgs
2024-04-05 04:08:20.5055|Information|SIDELOAD: Current Package Name: Files
2024-04-05 04:08:20.5058|Information|SIDELOAD: Remote Package Name: Files
2024-04-05 04:08:20.5060|Information|SIDELOAD: Current Version: <IP_ADDRESS>
2024-04-05 04:08:20.5061|Information|SIDELOAD: Remote Version: <IP_ADDRESS>
2024-04-05 04:08:20.5062|Information|SIDELOAD: Update found.
2024-04-05 04:08:20.5064|Information|SIDELOAD: Starting background download.
2024-04-05 04:08:22.7121|Information|Download time taken: 00:00:02

Thanks for the feedback.
We'd appreciate if you upload a log file rather than pasting content of log file.
Can you send a screenshot where you have the problem?

Thanks!

It's a bit unrelated but you seems to have been notified of the needs of reinstalling Files.
We have updated our degital certificate since the last one expired in March. Please install from our website as you did: https://files.community/download
Thank you for using Files!

Related to #13866

I'll check with the other contributors to see if supporting additional encodings is in scope for this project.


prometheus: Reduce scrape period to 1 second

Current period of 15 seconds will average out variations in
utilization which happen with period shorter than 15 seconds. Using
shorter interval will give us more information about system's
behavior. 1s should be still large enough to not put significant load
on the system.
Fixes #93.

Thanks @tgrabiec
The default is 15s, and other projects are using 5s or 10s for Cassandra monitoring[1]
I'm afraid 1s will collect too much info and fill the disk quickly, or will be too often for larger clusters.
@avikivity @amnonh  Thoughts?
We want the default to fit users needs.
[1] https://github.com/outbrain/Cassibility/blob/master/prometheus.yml

15s is too coarse grained for spotting many anomalies. I've been asking users which report performance issues to reduce scrape period to 1s. Having that as a default would save us the trouble of explaining this, we would get higher accuracy telemetry by default.
There's clearly a trade-off here. You can run out of disk space with 15s scrape period as well. It will let you could cover longer time range, but with lower precision.

OK, if it's more useful for us to find issue with, let's use 1s as default.


Rename and move constants/discord.ts to utils/constants.ts

Related: #191
Once this is merged, a majorVersion var will be exported from constants.ts, which will be updated on every major release.

This probably needs to be redirected to the next branch. This is technically a breaking change for any users that were getting endpoints directly from the old file.

The master branch is not the stable branch, but development branch.
On each release, the master branch should be merged into stable branch.


Days of receipt

Before you submit a new bug report, please check that

[X] I have read frequently asked questions and limitations

Write your question here
I have a configuration problem. I don't know how to add individual pickup days. In a given year, these are: 2022-01-26,2022-02-23,2022-03-09,2022-03-23,2022-04-06,2022-04-20,2022-05-04..........
Before the update, there was an option in annual to add more dates

It's been removed in 4.4 and replaced by a more genric blueprint. More info in the release notes and the readme


Various a11y fixes

I'm not able to make the website 100% accessible on scores, due to contrast issues that would take CSS/design changes that I'm not as comfortable doing, but I've added a lot of aria stuff + tested the changes with a screenreader.

a357d7a0e2cb212b65912049e3451d54e98d5d69 add the lang attribute to the root html so that screen readers pronounce things correctly
1f0ebe452ac7a6816a54260fb37d44db3c91cab2, 9fb9419d19b1c7d19c1136332e659e04f9ecde9d and 1f2ad43cec65805c9ac0d50e7d74affa41bea2b7 add aria roles to elements so that screenreaders break up the site correctly.
7c2946b4165fc2994f2af2b0c41e695b7172f5af add an aria label to the home icon so that is more obvious what the link does without knowledge of what the image looks like.
83ea0be048ac64857e6b99fabe15ea6a0b7ade9b add off-screen labelling for the search/login box for the benefit of screenreaders.

I'd advise keeping an eye on the output of running a tool like a11y periodically. It can give you a great start on designing web applications and web sites in an accessible way. :+1:

Brilliant, thanks @lewiscowper

:ship: http://firstpr.me/


Implement folder deletion

This PR implements folder deletion in a similar fashion to document deletion. The big difference being that folder deletion has to deal with child elements where document deletion does not. To address this additional functionality, this PR adds an extra hookset method implemented as "pre delete" functionality. Also, a test for recursive deletion is included.

Coverage increased (+0.2%) to 87.414% when pulling da7ee0fe7c212bfe9e3274a0e1d61ad661c435af on ethankent:master into bd73c657908bcb2182a87a76c9b58a27182b6b8e on pinax:master.

For the record, this PR addresses issue: https://github.com/pinax/pinax-documents/issues/13

@ethankent Fantastic!


move R2HttpMetadata clone impl to r2-bucket.c++

Small cleanup that was suggested in another PR.
Was already approved pre-big move in bitbucket by @jasnell in PR 4366

I have read the CLA Document and I hereby sign the CLA

I've also added the email used for this commit to my github account.


HTTP::Client.new("https://example.com").port == 80

Is this expected, feels rather odd and strange to a rubyist? Tested with current latest docker image:
crystal -v
Crystal 0.23.1 [e2a1389] (2017-07-13) LLVM 3.8.1

More complete demo:
require "uri"
require "http/client"
sample_url="https://example.com"
HTTP::Client.new(sample_url).port == 80
HTTP::Client.new(URI.parse(sample_url)).port == 443
HTTP::Client.get(sample_url) # => works
HTTP::Client.new(sample_url).get("/") # => error

No address found for https://example.com/:80 over TCP (Socket::Error)
0x486f67: *CallStack::unwind:Array(Pointer(Void)) at ??
0x486efa: *CallStack#initialize:Array(Pointer(Void)) at ??
0x486eca: *CallStack::new:CallStack at ??
0x483456: *raise<Socket::Error>:NoReturn at ??
0x53a4c9: *TCPSocket#initialize<String, Int32, (Float64 | Nil), (Float64 | Nil)>:Nil at ??
0x539ea4: *TCPSocket::new<String, Int32, (Float64 | Nil), (Float64 | Nil)>:TCPSocket at ??
0x532c39: *HTTP::Client#socket:(OpenSSL::SSL::Socket+ | TCPSocket+) at ??
0x532a4d: *HTTP::Client#exec_internal_single<HTTP::Request>:(HTTP::Client::Response | Nil) at ??
0x52fd6c: *HTTP::Client#exec_internal<HTTP::Request>:HTTP::Client::Response at ??
0x52fc52: *HTTP::Client#exec<HTTP::Request>:HTTP::Client::Response at ??
0x52f996: *HTTP::Client#exec<String, String, Nil, Nil>:HTTP::Client::Response at ??
0x533057: *HTTP::Client#get<String>:HTTP::Client::Response at ??
0x482bce: *__icr_exec__:HTTP::Client::Response at ??
0x470323: ??? at ??
0x47fdd9: main at ??
0x7f3b85504830: __libc_start_main at ??
0x46fa29: _start at ??
0x0: ??? at ??

Hi :smile:
If you use HTTP::Client.new(url_without_protocol) it works
require "uri"
require "http/client"
protocol = "https://"
url="example.com"
sample_url = protocol + url
HTTP::Client.new(sample_url).port == 80
HTTP::Client.new(URI.parse(sample_url)).port == 443
HTTP::Client.get(sample_url) # => works
HTTP::Client.new(url).get("/") # => works

Ok I see now how it's implemented. So the string variant does not expect nor can it handle a url, but plain host, no scheme, no path, query, port, nothing and it's the tls flag which dictates default port/protocol used. It feels kinda hairy and unintuitive to me, but I suppose it's as expected.
So I either do
require "uri"
require "http/client"
host = "example.com"
uri = "https://example.com"
HTTP::Client.new(URI.parse(uri)).get("/") #or
HTTP::Client.new(host, tls: true).get("/")


add student's upcoming sessions

http://localhost:8000/api/v1/session/student/upcoming
Getting all the sessions that students have confirmed to join from all of the cohorts

Looks good! Since now we can fetch upcoming sessions for mentors and students, I'm going to update the name of the methods and routes that are related to the mentors in a future PR, to make it consistent with the names you used here.


Error in VS2015 XAML designer when selecting the player in the XAML

At MainWindow.xaml of .net 4.5 test project in VS2015, when clicking on <wpf:VlcPlayer x:Name="Player"/> in the XAML editor, I get in the designer area:
NullReferenceException: Object reference not set to an instance of an object.
StackTrace
at xZune.Vlc.Wpf.VlcPlayer.get_AudioOutputChannel()
InnerException: None

I then have to close and reopen the XAML file (if I select other item in the XAML source it doesn't get fixed by itself, stays at the error state)

Ummm, in DesignTime VlcMediaPlayer is null...
if we want to fix it, we have to change all properties...

Thanks for cleaning my code...

You're welcome

Quick workaround is to add null checks to such properties, will see to it
However, I can make it work in the designer too. The idea is that the default constructor would call the initialization method with default params and get vlc library path from assembly attribute or with more priority from a property set at the component in the designer. Saw you already have such infrastructure.
If someone wants custom init when using the player programmatically they'd call a parametric constructor that would call the init params for them. Could even have some constructor with a boolean param to not do init at all
Existing code will pay some penalty for the extra init if they were constructing player and then initing
If the problem is that you need some native surface or something to pass to vlc, could use wpf event that the component is added to a peer to do there what's needed if it has been marked internally as autoinitializing.
Speaking of autoinitializing could even have such a property to turn this behaviour on/off
Will think of it when I look again at the code

if there has no dll in default path. it will throw exception... if we don't init it when default path has no dll... VlcMediaPlayer is null...

Yep, it could catch that and ignore it silently at the default constructor.

and code could check anyway for (VlcMediaPlayer != null). I'll see into adding such checks for starters so that it fails more gracefully in the designer

added the VlcMediaPlayer checks for null so it doesn't throw the error in the designer anymore.
Of course this is more of a workarround, since with a parameterless constructor that calls initialization routine it could also work inside the designer I believe (although I'm not sure what executable path it gets for "current process" when running in the designer - there is some code one can add to behave differently when running in the designer btw, think I have it somewhere under ClipFlair Studio's code [at http://clipflair.codeplex.com] if you search for designer). If I have time I'll look into it again


Issue with custom keyInfoProvider

Hello,
I am using xml-crypto to validate signature. If I have the public key as local file, it works fine with default settings (as shown in example). But when I have to read it from a S3 bucket, I use a custom KeyInfo implementation and it failed:
var sig = new SignedXml();
sig.keyInfoProvider = new S3KeyInfo(key);
sig.loadSignature(signature[0]);
var validated = sig.checkSignature(payload);

function S3KeyInfo(key) {
	this.key= key;
  this.getKeyInfo = function(key, prefix) {
	prefix = prefix || ''
	prefix = prefix ? prefix + ':' : prefix
    return "<" + prefix + "X509Data></" + prefix + "X509Data>"
  }
  this.getKey = function(keyInfo) {
  	var s3 = new AWS.S3();
  	s3.getObject({Bucket: 'my-bucket', Key: this.key},
	  function (error, data) {
	    if (error != null) {
	      console.log("Failed to retrieve an object: " + error);
	    } else {
	      console.log("Loaded " + data.ContentLength + " bytes");
	      return data;
	    }
	  }
	);
  }

When I run this in my lambda, I get error:

Error: key info provider could not resolve key info
at SignedXml.checkSignature (/var/task/node_modules/xml-crypto/lib/signed-xml.js:260:31)

Please help me how to call the SignedXml by reading public cert from S3 (or string content) instead of local

hmm, key info providers are expected to be synchronous (a limitation), this means that you can't fetch your key from S3 in the getKey method (because s3.getObject is asynchronous), to solve your issue try to read/fetch your key before creating your key info provider.
i'm closing this because is not an issue, but feel free to continue the conversation.


Add JSON/YAML serialization to URI

URI can be trivially serialized to a string in both JSON and YAML, so this adds the necessary conversion methods.
Note that this does not make require "json"/require "yaml" mandatory when using require "uri". The methods just won't work unless JSON/YAML are also required.

I think these should live in "uri/json" and "uri/yaml" respectively.
It doesn't break now, but nothing prevents us in the future from type-checking the arguments even before you call the methods (a bit more reliable) and then it will break.

Can we delay this until it becomes necessary if ever?
I know we do the same thing for other types, but it just feels like an unneccesary burdon on usability if you have to require these simple converter methods explicitly.

I am with Ary. I think we must keep it consistent with the rest of the lib. We can discuss later a refactor here and there.


There's still a glitch bug in the inventory scrolling routine.

When going to the last item (a lamp), it bounces up and down (I think one row).

Fixed thanks to new inventory system.


Unable to get API and backend version: X-Version not available

Good morning,
Recently installed Paperless-ngx 2.8.6 which is now up and running. Downloaded Swift Paperless 1.1.1 this morning and set up Paperless behind IIS Reverse Proxy on Windows Server 2022 21H2 through Docker. Browser Web Version working with no issues on http:// or https://. I have also downloaded PaperParrot & Less Paper and they both seem to be communicating with my Paperless Server.
Swift-Paperless logs into my Paperless instance ok with Super User access but any time I try and do something, it says:
"An Unexpected Error occurred". "The operation couldn't be completed. (swift_paperless.(unknown context at $100fa9190).RequestError error 0.) .
Reading through the logs there seems to be a "Unable to get API and backend version: X-Version not available" error which occurs at each App startup.
I've attached the logs from Swift-Paperless below along with Docker Configuration. There are no corresponding Log Entries from Paperless-ngx when the error occurs on the iOS App. Please let me know if there's any further information you need. Thanks for your efforts on the app by the way too.
Docker Version.txt
docker-compose.env.txt
docker-compose.yml.txt
Swift-Paperless http log.txt
Swift-Paperless https log.txt
.

Hey! Would you mind trying this on the TestFlight beta, and sending logs from there?
The version problem is unexpected, this is usually some issue with the networking in the app, the decoding error could be related or could be something else.

Hey Paul,
Seems to be the same situation with TestFlight. Works on LAN but not WAN.
I did some digging through Firefox and eventually found I didn't have the WebSocket package installed in IIS as my Radarr was working but coming up with ws:// and wss:// errors. Since installing the WebSockets, Radarr is connecting fine through the proxy but still errors on Paperless.

[signalR] Information: WebSocket connected to wss://xxx.xxx.org/radarr/signalr/messages?access_token

Firefox can’t establish a connection to the server at wss://xxx.xxx.org/paperless/ws/status/.

However, I still get the same error from using Firefox on the PC running Docker so there may be an underlying issue with either my Docker install or Paperless itself:

Firefox can’t establish a connection to the server at ws://localhost:8050/paperless/ws/status/.

Swift-Paperless Test Flight.txt
(First attempted login was WAN and next login was LAN)
Firefox Console LAN.txt
Firefox Console WAN.txt

Ok, managed to test this now, and I think I might have a fix. Can you update your TestFlight install to build 78, and try again?

Hi Paul,
Working 100% through domain and proxy with sub path. Thank you.
logs.txt


Randomly display charities data on cards in Recommendation

Create random function where 9 charities data displayed randomly on card


Content Carousel: prev/next arrow fonts not loading in uPortal

I found the prev/next arrows to be there in the favorites carousel but they're extremely hard to find.  Had to add more than six favorites and then if I just hit it right, the arrows work.  Obviously something could be tweaked to make them easier to see?

Issue is specific to browsers with Shadow DOM enabled (Chrome and Firefox with a flag enabled).
The font does not get passed through to the Shadow DOM correctly, we may need to update the selector that applies the font.

I think that I had the problem and solved it by adding the font in components too

@jgribonvald would you be interested in opening a PR with that patch?

@ChristianMurphy I will try to watch on :wink:
But I think this should be like this fix I've done

The only way that I've found is to add
<link href="https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.8.1/slick-theme.css" rel="stylesheet">

in html before the content-carousel tag.

I've found that font problems are same than listed here on chrome and firefox nigthly

An other solution to avoid to add the slick font into the dom is to move icon font to Font-Awesome which is already into uPortal, and in this case into ContentCarousel.scss add these lines:
$slick-font-path: "~slick-carousel/slick/fonts/";
$slick-loader-path: "~slick-carousel/slick/";
$slick-font-family:FontAwesome;
$slick-prev-character: "\f053";
$slick-next-character: "\f054";
@import '~slick-carousel/slick/slick.scss';
@import '~slick-carousel/slick/slick-theme.scss';

So after reflexion, if you want to use the slick theme, would be to integrate into dist package the slick-theme.css. Like that it will be possible to import it before the we js into the portlet content. What do you think ? For me it's the good compromise.
After is there someone who know how to do that on a pre-build target ?

Like that it will be possible to import it before the we js into the portlet content

Not easily,
Vue CLI wraps keeps all <style> tags it sees inside the shadow dom.
We'd need to do some DOM hacking to add the stylesheet in the header.
For now I'm documenting your suggestion https://github.com/uPortal-contrib/uPortal-web-components/issues/85#issuecomment-432197000 in the README.

An other solution to avoid to add the slick font into the dom is to move icon font to Font-Awesome which is already into uPortal, and in this case into ContentCarousel.scss add these lines:
$slick-font-path: "~slick-carousel/slick/fonts/";
$slick-loader-path: "~slick-carousel/slick/";
$slick-font-family:FontAwesome;
$slick-prev-character: "\f053";
$slick-next-character: "\f054";
@import '~slick-carousel/slick/slick.scss';
@import '~slick-carousel/slick/slick-theme.scss';

I tried this, and a couple variants of this, and didn't quite get it to work.

I mean that the package (into dist directory) should have a copy of the slick-theme.css file. Somes do a hack to insert it into the DOM, but in my mind there is lesser cost doing like I suggest as when we publish a content we can add the css file at the same time than the wc js

I mean that the package (into dist directory) should have a copy of the slick-theme.css file.

:thinking: that could work
What do you see as the advantage of using that over unpgk/cloudflare cdn or adding slick carousel as a webjar to resource server?

A task that make a copy from the dependency is best as it follow directly the same version than used and it avoids to forget to change the css version into links. But that's my point of vue

After is there someone who know how to do that on a pre-build target ?

Yep, that would be a simple copy script.

But that's my point of vue

I see what you did there, nice pun :grin:

A task that make a copy from the dependency is best as it follow directly the same version than used and it avoids to forget to change the css version into links.

Okay, that works too.
I'll close the current PR and open another with this approach.

@jgribonvald https://github.com/uPortal-contrib/uPortal-web-components/pull/147 has been opened with the copy theme approach.


Does take classes in consideration or just depends on selectors of tag types?

This library uses CSS parser and selectors implementation from Mozilla Servo, so they are browser-grade tools. Consequently, it supports any CSS 3 selector which includes classes, element names and everything else available in the CSS 3 spec.
If something specific is not working for you, I suggest sharing it here, or in a new issue.


Derive multisig ownership history based on past transactions and latest discovery output

Resolves L2B-3124
What's changed
Ownership history is derived from internal multi-sig transactions.
I reorganized a few things, but nothing breaking was introduced.
Notes
We could fire getDecodedProperties only once, now we do that in 2 * amount of txs manner. We ain't need optimizations for now

Up 'n Down

Ignoring discarded txs:


java.lang.NullPointerException: Cannot invoke "oshi.software.os.OSProcess.getKernelTime()" because "p" is null

Version info
Client used: wavelink v1.0.0
Output of java -version:
java version "18" 2022-03-22
Java(TM) SE Runtime Environment (build 18+36-2087)
Java HotSpot(TM) 64-Bit Server VM (build 18+36-2087, mixed mode, sharing)

lavalink logs
2023-05-07 17:44:15.785  INFO 37784 --- [           main] lavalink.server.Launcher                 : Starting Launcher using Java 18 on DESKTOP-5Q68MLP with PID 37784 (D:\FatherBot\FatherBot v.2\Lavalink.jar started by Dmitriy in D:\FatherBot\FatherBot v.2)
2023-05-07 17:44:15.790  INFO 37784 --- [           main] lavalink.server.Launcher                 : No active profile set, falling back to 1 default profile: "default"
2023-05-07 17:44:16.667  INFO 37784 --- [           main] lavalink.server.Launcher                 : Started Launcher in 1.417 seconds (JVM running for 1.931)
2023-05-07 17:44:16.669  INFO 37784 --- [           main] lavalink.server.Launcher                 : You can safely ignore the big red warning about illegal reflection. See https://github.com/freyacodes/Lavalink/issues/295
2023-05-07 17:44:16.721  INFO 37784 --- [           main] lavalink.server.Launcher                 :

←[32m       .  ←[31m _                  _ _       _    ←[32m__ _ _
←[32m      /\\ ←[31m| | __ ___   ____ _| (_)_ __ | | __←[32m\ \ \ \
←[32m     ( ( )←[31m| |/ _` \ \ / / _` | | | '_ \| |/ /←[32m \ \ \ \
←[32m      \\/ ←[31m| | (_| |\ V / (_| | | | | | |   < ←[32m  ) ) ) )
←[32m       '  ←[31m|_|\__,_| \_/ \__,_|_|_|_| |_|_|\_\←[32m / / / /
←[0m    =========================================←[32m/_/_/_/←[0m

        Version:        3.7.5
        Build time:     06.03.2023 12:02:05 UTC
        Branch          HEAD
        Commit:         c00286d
        Commit time:    06.03.2023 11:59:46 UTC
        JVM:            18
        Lavaplayer      1.4.0-original

2023-05-07 17:44:16.728  INFO 37784 --- [           main] lavalink.server.Launcher                 : No active profile set, falling back to 1 default profile: "default"
2023-05-07 17:44:17.583  WARN 37784 --- [           main] io.undertow.websockets.jsr               : UT026010: Buffer pool was not set on WebSocketDeploymentInfo, the default pool will be used
2023-05-07 17:44:17.604  INFO 37784 --- [           main] io.undertow.servlet                      : Initializing Spring embedded WebApplicationContext
2023-05-07 17:44:17.604  INFO 37784 --- [           main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 872 ms
2023-05-07 17:44:17.683  WARN 37784 --- [           main] l.server.config.SentryConfiguration      : Turning off sentry
2023-05-07 17:44:17.872  INFO 37784 --- [           main] c.s.d.l.tools.GarbageCollectionMonitor   : GC monitoring enabled, reporting results every 2 minutes.
2023-05-07 17:44:19.049  INFO 37784 --- [           main] lavalink.server.config.KoeConfiguration  : OS: WINDOWS, Arch: X86_64
2023-05-07 17:44:19.062  INFO 37784 --- [           main] lavalink.server.config.KoeConfiguration  : Enabling JDA-NAS
2023-05-07 17:44:19.069  INFO 37784 --- [           main] c.s.l.c.natives.NativeLibraryLoader      : Native library udpqueue: loading with filter null
2023-05-07 17:44:19.094  INFO 37784 --- [           main] c.s.l.c.natives.NativeLibraryLoader      : Native library udpqueue: successfully loaded.
2023-05-07 17:44:19.400  INFO 37784 --- [           main] io.undertow                              : starting server: Undertow - 2.2.16.Final
2023-05-07 17:44:19.410  INFO 37784 --- [           main] org.xnio                                 : XNIO version 3.8.6.Final
2023-05-07 17:44:19.430  INFO 37784 --- [           main] org.xnio.nio                             : XNIO NIO Implementation Version 3.8.6.Final
2023-05-07 17:44:19.507  INFO 37784 --- [           main] org.jboss.threads                        : JBoss Threads version 3.1.0.Final
2023-05-07 17:44:19.550  INFO 37784 --- [           main] o.s.b.w.e.undertow.UndertowWebServer     : Undertow started on port(s) 2333 (http)
2023-05-07 17:44:19.555  INFO 37784 --- [           main] lavalink.server.Launcher                 : Started Launcher in 2.881 seconds (JVM running for 4.819)
2023-05-07 17:44:19.557  INFO 37784 --- [           main] lavalink.server.Launcher                 : Lavalink is ready to accept connections.
2023-05-07 17:44:35.240  INFO 37784 --- [  XNIO-1 task-1] io.undertow.servlet                      : Initializing Spring DispatcherServlet 'dispatcherServlet'
2023-05-07 17:44:35.240  INFO 37784 --- [  XNIO-1 task-1] o.s.web.servlet.DispatcherServlet        : Initializing Servlet 'dispatcherServlet'
2023-05-07 17:44:35.243  INFO 37784 --- [  XNIO-1 task-1] o.s.web.servlet.DispatcherServlet        : Completed initialization in 2 ms
2023-05-07 17:44:35.258  INFO 37784 --- [  XNIO-1 task-1] l.server.io.HandshakeInterceptorImpl     : Incoming connection from /<IP_ADDRESS>:45910
2023-05-07 17:44:35.492  INFO 37784 --- [  XNIO-1 task-1] lavalink.server.io.SocketServer          : Connection successfully established
2023-05-07 17:44:35.493  WARN 37784 --- [  XNIO-1 task-1] lavalink.server.io.SocketServer          : Library developers: Please specify a 'Client-Name' header. User agent: Python/3.8 aiohttp/3.8.1
2023-05-07 17:44:35.753  WARN 37784 --- [pool-2-thread-1] o.u.p.windows.PerfCounterWildcardQuery   : Disabling further attempts to query Processor Information.
2023-05-07 17:44:36.325 ERROR 37784 --- [pool-2-thread-1] o.d.w.registry.HkeyPerformanceDataUtil   : Unable to parse English counter names in registry Perflib 009.
2023-05-07 17:44:36.330  WARN 37784 --- [pool-2-thread-1] o.u.p.windows.PerfCounterWildcardQuery   : Disabling further attempts to query Process.
2023-05-07 17:44:36.339  WARN 37784 --- [pool-2-thread-1] o.util.platform.windows.WmiQueryHandler  : COM exception: Invalid Query: SELECT NAME,PRIORITY,CREATIONDATE,PROCESSID,PARENTPROCESSID,READTRANSFERCOUNT,WRITETRANSFERCOUNT,PRIVATEPAGECOUNT,PAGEFAULTSPERSEC FROM Win32_Process WHERE NOT Name LIKE"%_Total"
2023-05-07 17:44:36.404 ERROR 37784 --- [pool-2-thread-1] lavalink.server.io.StatsCollector        : Exception while sending stats

java.lang.NullPointerException: Cannot invoke "oshi.software.os.OSProcess.getKernelTime()" because "p" is null
        at lavalink.server.io.StatsCollector.getProcessRecentCpuUsage(StatsCollector.kt:58) ~[classes!/:na]
        at lavalink.server.io.StatsCollector.retrieveStats(StatsCollector.kt:106) ~[classes!/:na]
        at lavalink.server.io.StatsCollector.createTask$lambda$0(StatsCollector.kt:69) ~[classes!/:na]
        at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) ~[na:na]
        at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305) ~[na:na]
        at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305) ~[na:na]
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[na:na]
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[na:na]
        at java.base/java.lang.Thread.run(Thread.java:833) ~[na:na]

duplicate of https://github.com/freyacodes/Lavalink/issues/858


WASM: Table grow(0) with initial: 0

OS#13149792
Do not call RecyclerNew with length 0 in case we call WebAssemblyTable.grow with initial length of 0.
This crashes in clang, but is fine on msvc since we don't actually access whatever the Recycler returns

This change is

@dotnet-bot test Ubuntu static_ubuntu_linux_release


ESM Modules: ssrTransform blindly overwrites all functions named as an import instead of checking for a locally scoped function with the same name

Describe the bug
See: https://github.com/sveltejs/kit/issues/1947
ssrTransform replaces all subscribe references defined within writable with __vite_ssr_import_0__.subscribe instead of using the subscribe function defined within writable.
Due to ssrTransform https://github.com/vitejs/vite/blob/main/packages/vite/src/node/ssr/ssrTransform.ts#L189,
writable in store/index.mjs is transpiled to become:
function writable(value, start = __vite_ssr_import_0__.noop) {
    let stop;
    const subscribers = [];
    function set(new_value) {
        if (__vite_ssr_import_0__.safe_not_equal(value, new_value)) {
            value = new_value;
            if (stop) { // store is ready
                const run_queue = !subscriber_queue.length;
                for (let i = 0; i < subscribers.length; i += 1) {
                    const s = subscribers[i];
                    s[1]();
                    subscriber_queue.push(s, value);
                }
                if (run_queue) {
                    for (let i = 0; i < subscriber_queue.length; i += 2) {
                        subscriber_queue[i][0](subscriber_queue[i + 1]);
                    }
                    subscriber_queue.length = 0;
                }
            }
        }
    }
    function update(fn) {
        set(fn(value));
    }
    function subscribe(run, invalidate = __vite_ssr_import_0__.noop) {
        const subscriber = [run, invalidate];
        subscribers.push(subscriber);
        if (subscribers.length === 1) {
            stop = start(set) || __vite_ssr_import_0__.noop;
        }
        run(value);
        return () => {
            const index = subscribers.indexOf(subscriber);
            if (index !== -1) {
                subscribers.splice(index, 1);
            }
            if (subscribers.length === 0) {
                stop();
                stop = null;
            }
        };
    }
    return { set, update, subscribe: __vite_ssr_import_0__.subscribe };
}

Reproduction
https://github.com/btakita/sveltekit-repro-subscribe-issue
svelte.config.js is forced to be an esm module by using a top-level await: https://github.com/btakita/sveltekit-repro-subscribe-issue/blob/main/svelte.config.js#L4
svelte/store writable is transpiled where subscribe is replaced by vite_ssr_import_0.subscribe https://github.com/btakita/sveltekit-repro-subscribe-issue/blob/main/src/hooks/index.ts
System Info
System:
    OS: Linux 5.12 Arch Linux
    CPU: (16) x64 AMD Ryzen 7 5800X 8-Core Processor
    Memory: 33.55 GB / 62.78 GB
    Container: Yes
    Shell: 5.8 - /usr/bin/zsh
  Binaries:
    Node: 16.5.0 - ~/.config/nvm/versions/node/v16.5.0/bin/node
    Yarn: 1.22.10 - /usr/bin/yarn
    npm: 7.19.1 - ~/.config/nvm/versions/node/v16.5.0/bin/npm
  Browsers:
    Brave Browser: <IP_ADDRESS>
    Chromium: 91.0.4472.164

Used Package Manager
npm
Logs
No response
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Make sure this is a Vite issue and not a framework-specific issue. For example, if it's a Vue SFC related bug, it should likely be reported to https://github.com/vuejs/vue-next instead.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.

Here's the code in question: https://github.com/sveltejs/svelte/blob/ff6ce725bfdabba908690f4bae0b06a3f26da881/src/runtime/store/index.ts#L91
That gets compiled to store/index.mjs in the Svelte package:
import { noop, safe_not_equal, subscribe, run_all, is_function } from '../internal/index.mjs';

...

/**
 * Create a `Writable` store that allows both updating and reading by subscription.
 * @param {*=}value initial value
 * @param {StartStopNotifier=}start start and stop notifications for subscriptions
 */
function writable(value, start = noop) {
    let stop;
    const subscribers = [];
    function set(new_value) {
        if (safe_not_equal(value, new_value)) {
            value = new_value;
            if (stop) { // store is ready
                const run_queue = !subscriber_queue.length;
                for (let i = 0; i < subscribers.length; i += 1) {
                    const s = subscribers[i];
                    s[1]();
                    subscriber_queue.push(s, value);
                }
                if (run_queue) {
                    for (let i = 0; i < subscriber_queue.length; i += 2) {
                        subscriber_queue[i][0](subscriber_queue[i + 1]);
                    }
                    subscriber_queue.length = 0;
                }
            }
        }
    }
    function update(fn) {
        set(fn(value));
    }
    function subscribe(run, invalidate = noop) {
        const subscriber = [run, invalidate];
        subscribers.push(subscriber);
        if (subscribers.length === 1) {
            stop = start(set) || noop;
        }
        run(value);
        return () => {
            const index = subscribers.indexOf(subscriber);
            if (index !== -1) {
                subscribers.splice(index, 1);
            }
            if (subscribers.length === 0) {
                stop();
                stop = null;
            }
        };
    }
    return { set, update, subscribe };
}

There are two functions named subscribe in this code and it appears ssrTransform doesn't realize that and replaces them both


KYLIN-4229 String index out of range -1

Can one of the admins verify this patch?

Codecov Report

Merging #914 into master will increase coverage by <.01%.
The diff coverage is 0%.

@@             Coverage Diff              @@
##             master     #914      +/-   ##
============================================
+ Coverage     25.43%   25.44%   +<.01%
+ Complexity     6111     6110       -1
============================================
  Files          1412     1412
  Lines         85027    85027
  Branches      11921    11921
============================================
+ Hits          21630    21632       +2
+ Misses        61307    61305       -2
  Partials       2090     2090

Impacted Files
Coverage Δ
Complexity Δ

...ain/java/org/apache/kylin/job/JoinedFormatter.java
58% <0%> (ø)
11 <0> (ø)
:arrow_down:

...he/kylin/dict/lookup/cache/RocksDBLookupTable.java
72.97% <0%> (-5.41%)
6% <0%> (-1%)

...rg/apache/kylin/cube/inmemcubing/MemDiskStore.java
69.6% <0%> (+0.3%)
7% <0%> (ø)
:arrow_down:

.../apache/kylin/cube/cuboid/TreeCuboidScheduler.java
66.15% <0%> (+2.3%)
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 9a00c8c...8c591fd. Read the comment docs.

Pull Request Test Coverage Report for Build 5172

0 of 1 (0.0%)  changed or added relevant line in 1 file are covered.
5 unchanged lines in 2 files lost coverage.
Overall coverage increased (+0.002%) to 27.903%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

core-job/src/main/java/org/apache/kylin/job/JoinedFormatter.java
0
1
0.0%

Files with Coverage Reduction
New Missed Lines
%

core-dictionary/src/main/java/org/apache/kylin/dict/lookup/cache/RocksDBLookupTable.java
1
81.08%

core-cube/src/main/java/org/apache/kylin/cube/inmemcubing/MemDiskStore.java
4
78.12%

Totals

Change from base Build 5170:
0.002%

Covered Lines:
23725

Relevant Lines:
85027

💛  - Coveralls


Adding --no-interaction flag to doctrine migration

Resolves https://github.com/Islandora-CLAW/CLAW/issues/973
Adds --no-interaction to the Gemini migration, which fixes Ansible 2.7.1 hanging on the SQL migration because the user is being prompted for a 'y'.

@Islandora-Devops/committers, @Natkeeran in particular:
Ran into this when testing https://github.com/Islandora-Devops/ansible-role-crayfish/pull/12
Can we get this in first?

Thanks @seth-shaw-unlv !


chore(deps): upgrade dependencies

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-2.x" workflow

⚪ Backport skipped
The pull request was not backported as there were no branches to backport to. If this is a mistake, please apply the desired version labels or run the backport tool manually.
Manual backport
To create the backport manually run:
backport --pr 339

Questions ?
Please refer to the Backport tool documentation


refactor(services/supabase): migrate to test planner

Hi @Xuanwo , Should the testWriteFileWithNonAsciiName test be removed? This test was added separately due to #3195 and it is not synchronized with the rust behavior test.

Should the testWriteFileWithNonAsciiName test be removed?

Yes, I think we should remove this test first until we know how to play with non ascii on different services.


MRG: Fix RtEpochs to support saving

Fixes the epochs invariants discussed in #5191 for RtEpochs.
I'm not completely happy with the _get_data() method since it relies on the "online iteration and blocking" over epochs rather than just returning the data received so far (which I would prefer, but didn't implement for compability).  I had to move the check for the timeout since otherwise iteration is typically only possible once (depending on the isi_max).
The inherited implementation of _get_item was broken (but is called by save).

I agree that RtEpochs.save(...) should save immediately without waiting for more epochs

I removed the blocking from RtEpochs.get_data() (and hence RtEpochs.save()). I hope the additional note in the docstring as well as a "whatsnew"-entry are reasonable.
When adding a test that the new drop_log and selection fields work as expected, I fixed a minor bug in RtEpochs._process_raw_buffer that occurred when buffer size is smaller than epoch size: The update of _first_samp was missing in case the buffer was not yet at maximum ( https://github.com/mne-tools/mne-python/pull/5193/files#diff-e385d76eea56e4905e874f408888e84eL388 ), causing incorrect checks whether an event can be processed. There probably wasn't a real-life impact if RtEpochs were started early enough before the first event.

@larsoner on my machine, pytest mne/realtime/tests/* takes 6.9s, compared to 6.8s on master.

Excellent

Regarding the tmpdir fixture of pytest: One could omit the deletion of the created file since pytest keeps only the last three directories [0]: Less verbose code, but a little space requirement on developer machines (but probably negligible compared to the testing data; and CI environments are ephemeral anyway).
[0]: https://docs.pytest.org/en/latest/tmpdir.html#the-default-base-temporary-directory

Anything else that should be tested?

Sorry for coming late to the scene. Can you check if the examples here: https://github.com/mne-tools/mne-python/tree/master/examples/realtime work, specially the ones without the plot_ prefix

Regarding the Realtime examples:
(1) plot_compute_rt_decoder.py produces different results due to a different number of events. This is due to the fix in updating self._first_samp from 7f6b540. To be sure this is a bugfix and not a regression, I added a stripped-down version of the example as a test, including assertions that the detected events and decoding results are identical to the ones from the "offline" Epochs version. The test requires sample data and takes 3s on my machine.
The added test fails on the current master (with and without the fixes in MockRtClient to also send a single partial buffer with the rest of the data) Errors (due to results being different from the offline Epochs's events) start from the third buffer's content onwards:
E       AssertionError:
E       Arrays are not equal
E
E       (shapes (48, 3), (52, 3) mismatch)
E        x: array([[  636,     0,     3],
E              [  742,     0,     1],
E              [ 1056,     0,     3],...
E        y: array([[  636,     0,     3],
E              [  742,     0,     1],
E              [ 1056,     0,     3],...

(2) The fieldtrip examples require the patched neuromag2ft which is not available anymore from hut.fi. @jasmainak if it should be tested, could you make it available somewhere else?
(3) The StimServer examples failed due to a mismatch of picks: FilterEstimator picks MEG/EEG channels based on the supplied info, whereas the example additionally picked channels on the MockClient's get_data() calls (I changed the latter). The rt_feedback_client example currently requires psychopy (which depends on a vast amount of dependies including wxPython which does not compile in a virtualenv when installed through pip) → wouldn't it make sense to replace that with a simple print('left stimulus') etc. and have an example that runs out-of-the-box!?

+1 for removing psychopy dependency

Alright, all the examples run on my machine (and psychopy is gone).
I also added a test that the FieldTripClient returns all of the epochs as well as the "correct" data (actually the array values were not all close even for larger atol and rtol parameters, so right now I only check that a large fraction (98%) of values of the data array is close - not nice, but I suppose better than not testing anything). The test takes a while (21s), so I marked it as slow. It is only executed if the neuromag2ft binary is available, anyway.

The test takes a while (21s), so I marked it as slow. It is only executed if the neuromag2ft binary is available, anyway.

Can we make this faster by changing the ISI, epoch length, and/or raw duration (e.g., via .crop) so it is more like 5 sec (without compromising the test quality)?

Can we make this faster by changing the ISI, epoch length, and/or raw duration (e.g., via .crop) so it is more like 5 sec (without compromising the test quality)?

There should be an option in neuromag2ft called --speed to make the simulation faster. Does that help?

Can we make this faster by changing the ISI, epoch length, and/or raw duration (e.g., via .crop) so it is more like 5 sec (without compromising the test quality)?

There should be an option in neuromag2ft called --speed to make the simulation faster. Does that help?

The test takes ~5s now (shorter raw duration and higher playback speed)

Travis can be slower compared to a desktop.
The test fails half of times on Travis despite higher timeouts; and always on the second test (the old one that is unchanged). My guess is that the previous neuromag2ft is still running and occupies the port (I tested locally that it doesn't fail if the port is taken).
I changed the code to using variable ports and checking them first - I'll trigger Travis a few times to see if the error persists.

The test passed four times on Travis (builds 16376, 16378, 16384, 16387), so using dynamic ports fixed the issue.

This is great! I have one last nitpick though.
When I run the example ftclient_rt_average.py and try to do epochs.plot() or epochs.save('abc.fif') it does not work. It works fine for the other example though. I suppose the aim of this PR was to support saving the RtEpochs, right?

Thanks for the scrutiny! :) I should have added tests for saving also for the other clients.
So it seems to be caused by calling RtEpochs.copy() while a FieldTripClient is attached, which fails on trying to pickle a Thread - so the implementation details of the client is the problem here.

add a __deepcopy__ on RtEpochs that does not copy the _client. → should work but violates the semantics of deepcopy (also the object would still not be pickable, but I think that would be fine).
make the client implementation responsible for being pickable/copyable (i.e., ignoring threads and sockets) → would not really solve the problem that we don't want a copy of a FieldTripClient that establishes a second network connection etc.
remove the _client reference from the RtEpochs state. The reference is only needed to get the Info, register callbacks and start the receive thread (while a connection needs to have been started before to get an Info object). Since the user code creates a client anyway, it would be more natural to have an API similar to

client = SomeClientImplementation()
# optionally connect or use as context manager
rt_epochs = RtEpochs(client.get_info(), ...)
client.register_receiver(rt_epochs)
client.start_receive_thread()

→ while this seems to be a more sensible approach, it requires most changes and breaks/hinders backwards compability (?)
What are your thoughts on this? ... maybe I'm also missing the forest for the trees...

I am fine with the current approach, it's simple enough to cover the corner case.

Let me know when I should test again :)

I used the occasion to also add some tests for the other public methods of BaseEpochs (mostly smoke tests).
@jasmainak feel free to have another look

okay LGTM
let's merge @larsoner ?

Thanks @hekolk !


Multiple Sub-Problems

Multiple sub-problems in the decomposition
Changes to the interface:

An index is associated to each sub-problem, accessed by the get_probindex function. Similarly, the Column class now has a field problemidx that corresponds to the index of the sub-problem that generated that column.
As of now, it is the user's responsibility to ensure that no two sub-problems have the same index.
The type of shadow marginal cost (i.e., $\sigma$) in the solve_pricing! function was changed from vector to scalar.
Instead of a single sub-problem, each MasterProblem is linked to an array of sub-problems. The function get_subproblem was replaced by get_subproblems that returns that array of sub-problems. Accordingly, SimpleMasterProblem now has a field num_sp, and sp was changed to subproblems. The constructor is called as follows:

SimpleMasterProblem(b, rmp, subproblems)

Pricing
The various sub-problems are known by the Master, which calls solve_pricing! on each sub-problem individually.

This gives better information to the Master about return statuses (e.g. unbounded or optimal) of each sub-problems.
It will also simplify advanced rules for partial pricing that exploit Master-level information.

Pull Request Test Coverage Report for Build 60

49 of 77 (63.64%)  changed or added relevant lines in 5 files are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage increased (+37.06%) to 54.918%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/subproblem.jl
1
3
33.33%

src/SimpleProblem/simpleSubProblem.jl
16
18
88.89%

src/master_problem.jl
10
15
66.67%

src/SimpleProblem/simpleMasterProblem.jl
21
40
52.5%

Files with Coverage Reduction
New Missed Lines
%

src/problem_status.jl
1
27.78%

Totals

Change from base Build 54:
37.06%

Covered Lines:
67

Relevant Lines:
122

💛  - Coveralls

Codecov Report

Merging #10 into master will increase coverage by 36.33%.
The diff coverage is 63.63%.

@@             Coverage Diff             @@
##           master      #10       +/-   ##
===========================================
+ Coverage   18.58%   54.91%   +36.33%
===========================================
  Files           6        6
  Lines         113      122        +9
===========================================
+ Hits           21       67       +46
+ Misses         92       55       -37

Impacted Files
Coverage Δ

src/column.jl
100% <100%> (ø)
:arrow_up:

src/subproblem.jl
14.28% <33.33%> (-5.72%)
:arrow_down:

src/SimpleProblem/simpleMasterProblem.jl
52.5% <52.5%> (ø)

src/master_problem.jl
60.52% <66.66%> (+60.52%)
:arrow_up:

src/SimpleProblem/simpleSubProblem.jl
88.88% <88.88%> (ø)

src/Linda.jl

src/problem_status.jl
27.77% <0%> (+5.55%)
:arrow_up:

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 cd6bde2...8fcd7da. Read the comment docs.


How do I cite the the perpetual review in my paper?

Great question. I need to add an explicit note of this to the main README.md since this will be a common question; I'll update the title of the issue to reflect that.
Ideally, you would cite a couple of items:
a) Our Annual Reviews paper (the original)
b) The specific version you are using, as posted on eScholarship (permanent URL: https://escholarship.org/uc/item/9p37m6bq ; all versions available there)
c) Give a link to the GitHub repo in your paper
I think the combination of the three would be ideal. Thoughts, @mkgilson , @nhenriksen , @GHeinzelmann ? Once we agree, I'll update the repo to reflect. :)
Thanks.

Sound good to me, let me know if I can help in any way,

Discussed with Gilson, who suggests:

Certainly cite the Ann Rev article.  What if we simplify the citation to updated versions by requesting a second citation to the current escholarship version, and including a link to the github site from the escholarship version? This will avoid the need to provide three citations...

I agree, and there is already a link at eScholarship to GitHub (though I need to fix it so it's a hyperlink).
I'll try and do this today.

I just added this to the main README.md. Thanks.


Plooney81 profile projects backend

Refactor projects backend routes
-note the scoped attributes on the models

Ability to add a team member to a project


Release google-cloud-java v0.119.0

This pull request was generated using releasetool.
11-13-2019 14:20 PST
BigQuery

BigQuery: implement scripting support. (#6706)

Pub/Sub

Make sure that background resources are closed when the subscriber fails. (#6238)

Spanner

Regenerate spanner client (#6731)
Regenerate spanner client (#6714)
Regenerate spanner client (#6390)

Dependencies

Update dependency com.fasterxml.jackson.core:jackson-databind to v2.10.1 (#6718)
Update http-client to 1.33.0, datastore-v1-proto-client to 1.6.3 (#6717)
Update dependency com.google.apis:google-api-services-bigquery to v2-rev20190917-1.30.3 (#6475)

Documentation

Bigquery : Reference libraries-bom in docs (#6698)
docs: reference libraries-bom in docs (#6759)
docs: reference libraries-bom in docs (#6758)
docs: reference libraries-bom in docs (#6756)
docs: reference libraries-bom in docs (#6760)
docs: reference libraries-bom in docs (#6735)
Reference libraries-bom in docs (#6732)
Reference libraries-bom in docs (#6733)
Reference libraries-bom in docs (#6716)
Datastore : Reference libraries-bom in docs (#6715)
Update bom version in doc (#6707)

Release is at https://github.com/googleapis/google-cloud-java/releases/tag/v0.119.0

The release build has started, the log can be viewed here. :sunflower:

:egg: You hatched a release! The release build finished successfully! :purple_heart: