Quit when where is no active buffer

It would be great if there is no need to quit the NERD_tree* buffers to quit Vim.
Maybe this can be put into the NERDTree as an option?
I have created a small function to get this feature. Just put this code into your .vimrc:
function! NERDTreeQuit()
  redir => buffersoutput
  silent buffers
  redir END
"                     1BufNo  2Mods.     3File           4LineNo
  let pattern = '^\s*\(\d\+\)\(.....\) "\(.*\)"\s\+line \(\d\+\)$'
  let windowfound = 0

  for bline in split(buffersoutput, "\n")
    let m = matchlist(bline, pattern)

    if (len(m) > 0)
      if (m[2] =~ '..a..')
        let windowfound = 1
      endif
    endif
  endfor

  if (!windowfound)
    quitall
  endif
endfunction
autocmd WinEnter * call NERDTreeQuit()

Greetings
Michael

It's perfect thanks you :)

thanks,it works!

O joy! scrooloose's one liner works!

For anyone coming here from Stack Overflow, the one liner above no longer works. The README now says to use this:
autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif

michaelkebe's is also not working - It also closes vim when I try to switch to the nerdtree window with Ctrl-w p

@justonia  thanks !! it is wonderful .   I am the guy come from stackoverflow.
By the way , I just want to ask why this old code no work ? cause I upgrade the vim ?
My current vim  version is 7.4 ; os is MAC OSX
//old code   no working
autocmd bufenter * if (winnr("$") == 1 && exists('b:NERDTreeType') &&b:NERDTreeType == 'primary') | q | endif

Any how. Thanks you very much!

@justonia thank you!

Thank you! Worked great!

Checking on NERDTreeType no longer works after an update. Now only @justonia 's answer works.

I tried @justonia 's answer,  and find  it normally work if default open with tree view.
If default open without tree view, and type :NERDTreeCWD or :NERDTreeToggle or ctrl+n, then still need :q twice.
Any idea?

Hi.
It seems the script in github page no longer work.
I have tried for times but it doesn't work for me when I want to quit vim with nerdtree there.
Exactly this script:
autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif
My vim version is 8.0 and I have installed NERDTree from Fedora repo.
Any way, How can I solve this problem guys?

I'm afraid I can't replicate your problem.  Running the above snippet does exactly what it claims to do in my Vim installation.
What other customizations are you using?  In what script are you running this snippet?

Actually I didn't try the above scripts and I only used that script I said and I don't think my other snippet can effect on that.
Any way here is my .vimrc file:
https://beepaste.io/view/WgY0cz  (Note on line 37 to 47 that include NERDTree options)
Now how can I solve it?

Sorry guys. I tried several times again with other scripts and finally it seems my problem solved with this script:
`autocmd WinEnter * call s:CloseIfOnlyNerdTreeLeft()
" Close all open buffers on entering a window if the only
" buffer that's left is the NERDTree buffer
function! s:CloseIfOnlyNerdTreeLeft()
if exists("t:NERDTreeBufName")
if bufwinnr(t:NERDTreeBufName) != -1
if winnr("$") == 1
q
endif
endif
endif
endfunction
But thanks anyway. ;)

I am also having an issue with the following script:
autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif
Running Vim 8, ZSH, and iterm on OSX. :q will freeze the window. If I instead :w and then :qall, vim closes everything as expected. It only freezes when I have opened vim with a specific file.

@jcconnell Suspect that you might have some config that opens buffers in the background (hidden). Maybe posting the whole vimrc file will help to diagnose it

@texasbruce, thank you! Here is my vimrc:
https://github.com/jcconnell/config/blob/master/.vimrc

Still can't figure this out. Any ideas?

@jcconnell Try adding these in the front:
set nocompatible              " be iMproved, required
filetype off                  " required

and settings for NERDtree:
autocmd vimenter * NERDTree | wincmd l
autocmd bufenter * if (!exists("t:NERDTreeBufName") ) | silent NERDTreeMirror | wincmd l | endif
autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endi
f
map <C-n> :NERDTreeToggle<CR>
"let NERDTreeMapOpenInTab='\r'
let NERDTreeShowHidden=1

@texasbruce thank you!
I tried these settings but I'm still experiencing the same problem. I was able to make a little progress but removing the ! from the following line:
autocmd bufenter * if (!exists("t:NERDTreeBufName") ) | silent NERDTreeMirror | wincmd l | endif
The currently open file buffer closes, but the NERDTree buffer remains open and the whole pane freezes.

@jcconnell Have you tried to disable other plugins and see if this works?

Yes, I've tried disabling all plugins one by one and I'm still having the same problem.

@justonia your answer is work for me. but i use deoplete in neovim, now when i quit vim with a nerdtree opened, deoplete will launch 4 python progress and take 100% cpu.

@alexsunxl thank you so much! your solution works on neovim.

Variant with autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif doesn't work with Arch Linux 64-bit, VIM 8.1. However, older solution autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTreeType") && b:NERDTreeType == "primary") | q | endif works fine.
Any ideas?

@dvdesolve It looks like you have a very old version of NERDTree installed. The b:NERDTreeType variable isn't used anymore. Can you find out what version you're using? Here are some ways to find out.

In NERDTree, press the ? key. It should display the version number at the top of the buffer.
In the NERDTree source folder, issue these commands. This will show whether you're getting NERDTree from an official source or if it's out of date.git rev-parse HEAD
git remote -v

If the last step doesn't work, it may not be a git repository, and may have been installed a different way, a zip file perhaps, from https://www.vim.org/scripts/script.php?script_id=1658

Method 1 gives 4.2.0. However, Arch Linux package is vim-nerdtree 5.0.0

In vim, type :set rtp? to see where NERDTree is installed. You'll have to search through the string to find the NERDTree path portion. Go to that folder and see if step 2 above works. I suspect it won't, and that an ancient NERDTree is bundled with ArchLinux.

Update to latest NERDTree solved the problem. Thank you!

And so... after all of the back & forth, I'm confused. What is it exactly I need in my .vimrc file on a Linux machine running vim ver 8.2?

@seamusdemora I believe that the thing you are looking for has been addressed in this section of FAQ.
If you need any more help with your case, feel free to create a new issue for it.

@rzvxa : Thanks - I missed the FAQ when I looked earlier.  Very handy collection!

the autocmd condition in all above scripts better be changed from BufEnter to SafeState, otherwise it won't work on newer versions of vim with mutiple tabs.
See this thread for the discussion: https://groups.google.com/g/vim_dev/c/Cw8McBH6DDM

@SleepyToDeath Thanks for bringing it up, I have to admit it is a really good addition; Sadly it isn't still supported in the neovim and it will also break the backward compatibility. It is possible to bind the command to a condition so we use the SafeState if it exists otherwise fallback to the BufEnter but I'm not sure if it is really necessary.
In the NERDTree itself, there are only 2 occurrences of BufEnter, Both of which are in the initial setup of the plugin. One of these 2 is used for hijacking netrw, which I personally am not a fan of since I use both NERDTree and netrw. So it all boils down to only one autocmd listening to the BufEnter event which prevents race conditions that would break the plugin.
As for the FAQ section in the README, There are just there to show some useful tricks for configuring the plugin. While people may use them as it is, It shouldn't be considered as a part of the plugin and just some configuration examples. But it would certainly be nice if we added more detailed answers with more information about both modern Vim features and also examples written in Lua for Neovim users.
Feel free to contribute to any of these 2 areas. I personally think only adding examples with SafeState to FAQ is enough but I wouldn't object if you also change the plugin initialization behavior to get rid of BufEnter in environments where SafeState exists.

@rzvxa

@seamusdemora I believe that the thing you are looking for has been addressed in this section of FAQ.
If you need any more help with your case, feel free to create a new issue for it.

Sorry to be the pest, but the FAQ doesn't mention where (i.e. which file) to put this.

@seamusdemora No worries mate, Yes these are some common configurations and macros for NERDTree, You can copy-paste them into your vimrc to use them. Use them to write your own config the way it suits your needs. You may not need most of them or don't like the way some of them work, So only use the ones that help your case.

hello, i tried to use the Q&A method Or the plugin
but i got this error when nerdtree is the last buffer in a tab
autocommand if winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() | quit | endif

Error detected while processing BufEnter Autocommands for "*":
E1312: Not allowed to change the window layout in this autocmd
Executing BufEnter Autocommands for "*"

could somebody help pls?
vim version 9.1.150

Hey @zhitongLIU, check the #1411 out. We have to update our FAQ section to reflect Vim9 specifications (in short, you cannot use the quit command in an auto command anymore).

Hey @zhitongLIU, check the #1411 out. We have to update our FAQ section to reflect Vim9 specifications (in short, you cannot use the quit command in an auto command anymore).

yes work like a charm, thank you for quick responds!


ng generate universal fails on a brand new installation

🐞 Bug report

- [ ] new
- [ ] build
- [ ] serve
- [ ] test
- [ ] e2e
- [ x ] generate
- [ ] add
- [ ] update
- [ ] lint
- [ ] xi18n
- [ ] run
- [ ] config
- [ ] help
- [ ] version
- [ ] doc

Is this a regression?

 Yes, the previous version in which this bug was not present was: **on my machine 7.3.2**
Description

ng generate universal

is failing on a brand new cli installation
🔬 Minimal Reproduction
ng new amazing
cd amazing
ng generate universal

🔥 Exception or Error

Schematic input does not validate against the Schema: {}
Errors:

  Data path "" should have required property 'clientProject'.

🌍 Your Environment

Angular CLI: 7.3.6
Node: 10.9.0
OS: win32 x64
Angular: 7.2.10
... animations, common, compiler, compiler-cli, core, forms
... language-service, platform-browser, platform-browser-dynamic
... router

Package                           Version
-----------------------------------------------------------
@angular-devkit/architect         0.13.6
@angular-devkit/build-angular     0.13.6
@angular-devkit/build-optimizer   0.13.6
@angular-devkit/build-webpack     0.13.6
@angular-devkit/core              7.3.6
@angular-devkit/schematics        7.3.6
@angular/cli                      7.3.6
@ngtools/webpack                  7.3.6
@schematics/angular               7.3.6
@schematics/update                0.13.6
rxjs                              6.3.3
typescript                        3.2.4
webpack                           4.29.0

Anything else relevant?

Hello, we reviewed this issue and determined that it doesn't fall into the bug report or feature request category. This issue tracker is not suitable for support requests, please repost your issue on StackOverflow using tag angular-cli.
If you are wondering why we don't resolve support issues via the issue tracker, please check out this explanation.

For whom will have the same problem, that's how to solve it:
ng new amazing
cd amazing
ng generate universal --client-project=amazing

Thanks Alan, see you around (we work really close) ;)


Feature Request: Support Extras / Special Features

What TMM version are you using?
<IP_ADDRESS>
release, pre-release, nightly, or directly from GitHub/branch?
Release
What is the actual behaviour?
tMM does not scrape contents of "Extras" sub-directory.
What is the expected behaviour?
It would be nice if it did. ;)
Steps to reproduce:

first
second
...
N/A: Feature request.

Additional
Have you attached the Logfile from the day it happened?
Your Operating system? (win/mac/linux? version?)
N/A
I have been working on getting Kodi's VideoExtras addon working on the new Krypton beta version's Estuary skin and in my research, randomly stumbled upon the site http://dvdspecialfeatures.net/.
This reminded me that I have been meaning to raise this issue with you folks for a while and never quite got around to it.
I'm not sure if the site mentioned above would be of any use for scraping extras, but that being said (and I don't want to waste your time), this would be a killer feature.
This site might be a one-off and of no practical use in this context, but I have in the past noticed some special feature or extras type stuff listed in TMDB in the past; most notably some of "The Matrix Collection" documentaries, which were successfully scraped.
Please can you look into this, so maybe the ability to search and scrape the contents of an "Extras" subdirectory can be added to tMM.
Thanks,
Rich.

Extras should work as designed;
Just put every video file into extra/extras folder (or follow the dedicated plex folder naming)
do NOT create other folders there.
Since we're talking about video files, i'm quite sure, such extras aren't public available... so we cannot scrape them....?

after reading again - you want to scrape information for extras?
This is not supported; and there is place to store information (for Kodi)
And we cannot map "just an extras name.avi" with an online extra information.....

Sorry, I just checked my inbox an saw that you'd replied to this query.
While you are correct that this is not supported in Kodi directly, neither are the extras. The VideoExtras addon is required to access and view these video files.
NFO files for extras are supported within the VideoExtras addon and use the same naming convention and structure as Kodi does for the main movie. These files currently have to be manually created and written for each of the extras contained within the Extras folder, as detailed in the wiki entry for the addon: http://kodi.wiki/view/Add-on:VideoExtras#NFO_Files
While, at the moment, there is not a dedicated database containing information about extras for DVDs and Blurays out there, I have seen a few sites popping up recently on the web and TMDB does have some of these in it's database. I discovered this by mistake, because I had accidentally placed some extras for "The Matrix Ultimate Collection" in the wrong place and when I "searched and scraped" the collection with tMM, one of these extras (a documentary) was listed in the search results dialog and allowed me to download all of the relevant metadata etc. for this documentary and imported it into tMM.
This is when I thought about the possibility of adding a "Search and Scrape Movie Extras" feature into tMM.
It might end up being a laborious process to scrape maybe hundreds of movie extras using tMM and most people would probably be fine with keeping their extras listed by filename. However, if people out there (like me) would like to be able to list these by their proper name and in the right order, with artwork etc., having the ability to use tMM to help automate this process would be a real time-saver.
Manually creating these metadata files would be a total nightmare and is just th problem tMM was created to solve.
I hope this helps to clarify my original query and thank you for taking the time to read this.
Rich

ah ok - didn't know that there are already NFO files supported.
Was not the case last time i checked :)
But i'm sorry, this is still out-of-scope, so you have to stick with filename only...


Add issue templates

:dizzy: Changelog
:star: Currently, this repository lacks a template to submit a feature request/bug report, which makes it difficult for the contributors to describe the issue(s) effectively. This PR adds issue templates for bug reports/feature requests

Thank you


[vcpkg] Replace APPEND to PREPEND on vcpkg.cmake

Change APPEND to PREPEND to avoid finding the system library first.
Fixes #13457.

@Nemirtingas Can you please test this PR?
Thanks.

@strega-nil Should I also need to modify line 293 to list(PREPEND CMAKE_PREFIX_PATH "/") ?

@Nemirtingas Can you please test this PR?
Thanks.

Hi, I will test it asap, thanks.

@strega-nil @JackBoosY
I disagree with this change.
Reason:
a) It wasn't disclosed in #13457 why system libraries are found. CMAKE_LIBRARY_PATH, CMAKE_PREFIX_PATH are normally empty according to the cmake docs and I highly suspect CMAKE_FIND_ROOT_PATH to be also empty. As such the root cause for the issue has not yet been discovered.
b) PREPEND was only added in newer CMake versions.
c) if it would have been a problem an issue would have bubbled up much earlier
d) It changes the default behavior.
 Due to d) it becomes virtually impossible to overwrite vcpkg by setting CMAKE_PREFIX_PATH CMAKE_LIBRARY_PATH in a user toolchain or before the first project() call

@strega-nil @JackBoosY
I disagree with this change.
Reason:
a) It wasn't disclosed in #13457 why system libraries are found. CMAKE_LIBRARY_PATH, CMAKE_PREFIX_PATH are normally empty according to the cmake docs and I highly suspect CMAKE_FIND_ROOT_PATH to be also empty. As such the root cause for the issue has not yet been discovered.
b) PREPEND was only added in newer CMake versions.
c) if it would have been a problem an issue would have bubbled up much earlier
d) It changes the default behavior.
 Due to d) it becomes virtually impossible to overwrite vcpkg by setting CMAKE_PREFIX_PATH CMAKE_LIBRARY_PATH in a user toolchain or before the first project() call

Hi, I use https://github.com/tpoechtrager/osxcross/blob/master/tools/toolchain.cmake, could this be the cause ?

Yes the toolchain is loaded before vcpkg so it affects everything. I strongly assume that:
# where is the target environment
set(CMAKE_FIND_ROOT_PATH
  "${OSXCROSS_SDK}"
  "${OSXCROSS_TARGET_DIR}/macports/pkgs/opt/local")

is the reason since:

The CMake variable CMAKE_FIND_ROOT_PATH specifies one or more directories to be prepended to all other search directories. This effectively “re-roots” the entire search under given locations. Paths which are descendants of the CMAKE_STAGING_PREFIX are excluded from this re-rooting, because that variable is always a path on the host system. By default the CMAKE_FIND_ROOT_PATH is empty.

I also don't know how the PKGCONFIG environment will interact with VCPKG.

Closing as @Neumann-A makes very good points.


[bugfix] control override vaule by section

Codecov Report

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

@@           Coverage Diff           @@
##           master    #5070   +/-   ##
=======================================
  Coverage   77.53%   77.53%
=======================================
  Files          44       44
  Lines        8712     8712
=======================================
  Hits         6755     6755
  Misses       1957     1957

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 1aaa73b...8e263b4. Read the comment docs.


[WIP] Workshops Redesign

@jesse-martinez @danielramirez0 This is the extremely borked branch that I rebased/merged and broke pretty badly. I needed it to test some workshops but sounds like you two worked out a way to push to a different branch instead. I'm going to close this for now.


Feature: Minimal feature to reduce size

One of the stipulations of publishing a package on CRAN is that the tarball must be 5 mb or less. It would be quite nice if there was a minimal feature of extendr that allows the minimal set of features with the minimal set of dependencies.
As it stands I'm unable to tell what is actually included in when no features are specified https://github.com/extendr/extendr/blob/master/extendr-api/Cargo.toml. In my case, and I suspect the vast majority of use cases, I only need conversion to and from R types. In my current case (arcpbf), I do not need anything but those types.

As it stands I'm unable to tell what is actually included in when no features are specified

By default, no optional feature is included. So, that's minimal in terms of feature selection.
Among your dependencies, libR-sys might be a bit too huge and can be improved.
$ du -sh vendor/*
301K    vendor/anyhow
371K    vendor/bytes
85K     vendor/either
939K    vendor/extendr-api
93K     vendor/extendr-macros
774K    vendor/itertools
4.2M    vendor/libR-sys
199K    vendor/once_cell
148K    vendor/paste
239K    vendor/proc-macro2
148K    vendor/prost
125K    vendor/prost-derive
177K    vendor/quote
2.0M    vendor/syn
340K    vendor/unicode-ident

Right, so an xtask to generate bindings could be a way forward, because then libR sys would be minimal...

I'm afraid it won't. In my understanding, xtask is useful for generating bindings outside of the compilation process, so it doesn't reduce the number of bindings shipped with libR-sys. I think preference behind libR-sys is being maximum, not minimum.

One of the stipulations of publishing a package on CRAN is that the tarball must be 5 mb or less.

I am sure CRAN understands that this is difficult to meet when vending Rust source code.
prqlr's last few submissions have been 12MB, but most of that capacity has been submitted with the explanation that it is vending Rust crates, and no interaction with CRAN has occurred. I have not had any other interaction with CRAN.
https://cran.r-project.org/src/contrib/Archive/prqlr/


Highlight Matching Tag is not working

VSCode Version: Version 1.30.2 (1.30.2)
OS Version: Mojave 10.14.2 (18C54)

Steps to Reproduce:
Recording of issue: https://im.ezgif.com/tmp/ezgif-1-e0c2f9875681.gif

I downloaded the extension, refreshed VS code, restarted my computer, etc, and nothing has worked.
As seen in the gif above, no matter where I click, nothing gets highlighted.

Does this issue occur when all extensions are disabled?: No

@kkabinuevo can you please provide more information. The link to the image / gif is not working.

Hi @dbaeumer here's a youtube video link:
https://youtu.be/2td1aGC0fJk
Not sure what happened to the gif

If you're having issues with the Highlight Matching Tag extension then they should be posted to that extension's repo.
But I think this is just a matter of misunderstanding what the extension does. The code in your video contains no tags, so it's not going to highlight any. Try with an HTML file and you'll see what it is supposed to do.

@kkabinuevo I will close the issue since IMO there is no issue with VS Code itself. Please ping and provide steps on how to reproduce if you disagree.


Could not print Config Description for value xxx

~/src/PyGrowatt/scripts $ python growatt_wifi.py
2021-03-20 09:26:07,155 ERROR    Growatt:execute(499) Could not print Config Description for value 0x01
2021-03-20 09:26:08,257 ERROR    Growatt:execute(499) Could not print Config Description for value 0x02
2021-03-20 09:26:09,359 ERROR    Growatt:execute(499) Could not print Config Description for value 0x03
2021-03-20 09:26:10,458 INFO     Growatt:execute(497) Set Update Interval (0x04): 5
2021-03-20 09:26:11,564 INFO     Growatt:execute(497) Set Modbus Range low (0x05): 1
2021-03-20 09:26:12,658 INFO     Growatt:execute(497) Set Modbus Range high (0x06): 32
2021-03-20 09:26:13,758 INFO     Growatt:execute(497) Set UNKNOWN (0x07): X
2021-03-20 09:26:14,858 INFO     Growatt:execute(497) Set Device Serial Number (0x08): #########
2021-03-20 09:26:15,961 INFO     Growatt:execute(497) Set Hardware Version (0x09): XXXX
2021-03-20 09:26:17,055 INFO     Growatt:execute(497) Set UNKNOWN (0x0a): 0
2021-03-20 09:26:18,156 INFO     Growatt:execute(497) Set FTP credentials (0x0b): ##<IP_ADDRESS>/app/xml/#8081#
2021-03-20 09:26:19,258 INFO     Growatt:execute(497) Set DNS (0x0c): XXXXXXXXXXXXXXX
2021-03-20 09:26:20,358 INFO     Growatt:execute(497) Set UNKNOWN (0x0d): 16
2021-03-20 09:26:21,460 INFO     Growatt:execute(497) Set Local IP (0x0e): ########
2021-03-20 09:26:22,559 INFO     Growatt:execute(497) Set Local Port (0x0f): 80
2021-03-20 09:26:23,666 INFO     Growatt:execute(497) Set Mac Address (0x10): ########
2021-03-20 09:26:24,768 INFO     Growatt:execute(497) Set Server IP (0x11): #######
2021-03-20 09:26:24,774 ERROR    Growatt:execute(519) Could not find key
2021-03-20 09:26:25,865 INFO     Growatt:execute(497) Set Server Port (0x12): 5279
2021-03-20 09:26:26,968 INFO     Growatt:execute(497) Set Server (0x13):
2021-03-20 09:26:28,065 INFO     Growatt:execute(497) Set Device Type (0x14): XXXXXXXXXXXXXXXXXXXX
2021-03-20 09:26:29,165 INFO     Growatt:execute(497) Set Software Version (0x15): <IP_ADDRESS>
2021-03-20 09:26:30,267 INFO     Growatt:execute(497) Set Hardware Version (0x16): <IP_ADDRESS>
2021-03-20 09:26:31,367 ERROR    Growatt:execute(499) Could not print Config Description for value 0x17
2021-03-20 09:26:32,468 ERROR    Growatt:execute(499) Could not print Config Description for value 0x18
2021-03-20 09:26:33,570 INFO     Growatt:execute(497) Set Netmask (0x19): <IP_ADDRESS>
2021-03-20 09:26:34,667 ERROR    Growatt:execute(499) Could not print Config Description for value 0x1a
2021-03-20 09:26:35,766 ERROR    Growatt:execute(499) Could not print Config Description for value 0x1b
2021-03-20 09:26:36,867 ERROR    Growatt:execute(499) Could not print Config Description for value 0x1c
2021-03-20 09:26:37,964 ERROR    Growatt:execute(499) Could not print Config Description for value 0x1d
2021-03-20 09:26:39,065 INFO     Growatt:execute(497) Set Timezone (0x1e): XXXXXXXXXX
2021-03-20 09:26:40,174 INFO     Growatt:execute(497) Set Date (0x1f): 2021-03-20 15:55:01
2021-03-20 09:40:08,076 ERROR    Growatt:execute(499) Could not print Config Description for value 0x4c
2021-03-20 09:40:11,667 ERROR    sync:handle(212) Socket exception occurred Traceback (most recent call last):
  File "/home/mario/.local/lib/python2.7/site-packages/pymodbus/server/sync.py", line 202, in handle
    single=single)
  File "/home/mario/.local/lib/python2.7/site-packages/pymodbus/framer/socket_framer.py", line 153, in processIncomingPacket
    self._process(callback)
  File "/home/mario/.local/lib/python2.7/site-packages/PyGrowatt/growatt_framer.py", line 70, in _process
    callback(result)  # defer or push to a thread?
  File "/home/mario/.local/lib/python2.7/site-packages/pymodbus/server/sync.py", line 84, in execute
    response.transaction_id = request.transaction_id
AttributeError: 'NoneType' object has no attribute 'transaction_id'

Info: I replaced some of the confidentials with ##########
Some of the config keys are unknown (0x01, 0x02, 0x03, ... 0x4c). Can you add the missing ones?
Are these unknown keys the reason, that I can not receive PV data like Eac_today, Ppv ...

Growatt:execute(519) Could not find key
This was caused from missing [Growatt] ServerIP= in config.ini
These are my values of the UNKNOWN keys:
key=0x01  value=0
key=0x02  value=6.0
key=0x03  value=000
key=0x17  value=X
key=0x18  value=X
key=0x1a  value=#.#.#.#  -> seems to be the gateway ip
key=0x1b  value=1
key=0x1c  value=0
key=0x1d  value=X
key=0x4c  value=-86 -> seems to be the WiFi signal strength in dBm

Hello! Thanks for using the software and more importantly for providing the feedback!
Those keys were not mapped because they are not documented in the Growatt Protocol documents that I was able to find circulating on the internet, nor was I able to make sense of them in my limited personal setup. Thank you for providing your key/value pairs, they'll help narrow down the meaning of the "Query".
I see my gateway/router IP for 0x1a also, thanks for pointing this out! It also follows the netmask which is 0x19, so that would make sense. I'm not sure how it is configured/set, looking back through my recordings I often see it with what seems to be a default value of "<IP_ADDRESS>", but this may have been prior to me setting the inverter settings defined in the config file (Growatt.py:507-517).
How did you determine 0x4c was likely WiFi signal strength? It correlates with what I'm seeing (values from -74 to -77) but I haven't considered/tested this before. I could use an app on my phone standing in the location of my inverter to compare signal strength but it's night now so I cannot check until morning.
The values you see for 0x01-0x03, 0x17, 0x18, and 0x1b-0x1d are the same as I see; I can't infer anything of value from them :(
I see you've opened a Feature Request for MQTT support, does this mean you don't have a PVOutput account configured?

I have now looked a little deeper and think that the completeness of the config message is not my problem. I haven't received a single data message (0x0104) yet and I don't yet know the cause. First I want to see a simple EacToday parameter value in my console.

You're right, it looks like the 2021-03-20 09:26:24,774 ERROR    Growatt:execute(519) Could not find key is because you don't have a ServerIP set in your config.ini but it won't stop you receiving the data.
Without modifying the script it will only print EacToday after it is successfully uploaded to PVOutput. The quickest way you could test is replacing the pv_status_upload function (lines 40-86) with:
def pv_status_upload(datastore, interval):
    log.info("Eac_today: {}Wh)".format(datastore.getValues(4, inputRegisters["Eac_today"], 1)[0] * 100))

    # Keep repeating
    timer = threading.Timer(interval, pv_status_upload, args=(datastore, interval))
    timer.start()

    return

This should print Eac_today every 5 mins (as set in your Wifi-X 2021-03-20 09:26:10,458 INFO     Growatt:execute(497) Set Update Interval (0x04): 5). If the values are all 0, it means you're not receiving data.
There is also a scripts/Growatt.lua file, which is a Wireshark dissector. You can copy this into your Wireshark plugins directory and it will allow easier debugging of the packets between the Wifi-X and your computer. You can use a filter of growatt.fc == 0x04 or growatt.fc == Energy to show only EnergyRequest and EnergyResponse PDUs. You should see the inverter send the data, then your server respond with an "ACK".

Hi @knowthelist, the bug causing the inverter to not send Energy data was fixed and merged to master in #4 along with clarifying the console prints of unknown Config Descriptions values and adding MQTT support.


💡[FEATURE] Check PIO/SM availability on the initialization

I've got a project where I'm using 3 SM's on PIO0
Also using 3 DMA channels
I've tried setting the config such that all 3 of the USB PIO SMs are running on PIO1 - Also specified a different DMA channel.
Any suggestions on what might need to change to make this work?


Section on Connecting to Swam from External Clients

File: docker-for-aws/index.md, CC @johndmulhausen
After following the instructions here to the best of my ability, I cannot connect to my services in the swarm from external clients.

For some reason it is not possible to connect to worker nodes from external clients, even after configuring the 'Node Security Group' the same as the 'Swarm wide access' security group.

When you us docker stack deploy . . . it seems to deploy services randomly across manager and worker nodes.

The ELB is configured to route to all nodes in the cluster, but the worker nodes cannot be configured to accept inbound connections for some reason.

It is not clear how, or if it is even possible, to define a permanent public address to connect to services in the swarm, when docker stack just randomly moves things around.

@friism who would be able to help with this?

@FrenchBen

After following the instructions here to the best of my ability, I cannot connect to my services in the swarm from external clients.

Please provide a docker-compose.yml file that reproduces the problem (or docker service create command if you prefer).
When you've deployed a service, it's available on the default dns target (you can see this in the cfn outputs): https://docs.docker.com/docker-for-aws/deploy/#run-apps

For some reason it is not possible to connect to worker nodes from external clients, even after configuring the 'Node Security Group' the same as the 'Swarm wide access' security group.

Why do you want to do that? We recommend connecting to deployed services using the load balancer that Docker for AWS configures and auto-updates for you.

The ELB is configured to route to all nodes in the cluster, but the worker nodes cannot be configured to accept inbound connections for some reason.

They'll accept connections from the ELB - do you have evidence to the contrary? (other than not being able to connect to them from the internet at large, which is by design).

It is not clear how, or if it is even possible, to define a permanent public address to connect to services in the swarm, when docker stack just randomly moves things around.

It's the ELB backing the default DNS target.

Will respond more when I understand your response.
'cfn outputs' does not mean anything to me, nor it is mentioned in https://docs.docker.com/docker-for-aws/deploy

@kolotyluk We've detailed here how to connect to worker nodes:
https://docs.docker.com/docker-for-aws/deploy/#worker-nodes
Docker stack deploy deploys services that correspond to your YML file declaration - For more information on how services are deployed, please see:
https://docs.docker.com/engine/swarm/services/
As you noticed, the ELB has been defined to target all nodes in the cluster, which means that you can always use the ELB as your constant endpoint to access the services you've deployed to your swarm.

Here is where I am now.

I can ping the ELB and get a response.

I cannot telnet to my Kafka brokers via the ELB. I get back Connection refused

I can telnet to my Kafka brokers via the AWS instance public name/address. This indicates the brokers running in the swarm are reachable, as I can see in the logs the incoming telnet connections. I have them running on manager nodes for now as dealing with ELB issues is just a distraction I don't need at the moment.

I cannot connect to my brokers via the Kafka Admin Client via the public name/address not sure why.

I am using docker stack . . . with a yml file to bring up my services. Unfortunately the Kafka Brokers keep restarting with task: non-zero exit (137). There is nothing in the Kafka Broker logs to suggest there is anything wrong with them. I am wondering if Docker is restarting them for some reason (some articles I found on the internet suggest this may be the case).

https://docs.docker.com/engine/swarm/services is a very painful way to manage services, which is why I am trying to use docker stack but some people have mentioned this is still experimental, so I may have to resort to docker service . . .

https://docs.docker.com/docker-for-aws/deploy/#worker-nodes is a non-issue at the moment because I can configure docker stack . . . to deploy on manager nodes for testing.

All in all I chose to try using Docker Swarm CloudFormation to try to get my Kafka service running on AWS, but it has been over a week of intense frustration. I have Kafka running fine in our developer environment using docker-compose, but the transition to AWS is astonishingly more difficult. It is nice to have CloudFormation create the AWS Stack, but some of the documentation on how to use it could be better.

Basically what is most frustrating of all is the lack of good information on troubleshooting. Your documentation is not alone in this, as diagnostics is generally ignored by most organizations. Similarly, people try to offer good quick-start documentation, but it is generally limited to hello-world and of limited use.

Closing this ticket due to its age, and the impending refactor. If you think this is in error, feel free to reopen. Thanks!


Try bindTo instead of reflection

The following could be used to write private / protected properties without reflection. Could be faster.
https://3v4l.org/GqaLf
<?php

final class Guard
{
    private $x = 'test';
}

$guard = new Guard();

$thief = function ($name)
{
    return $this->$name;
};

$hydrator = function ($name, $value) {
    $this->$name = $value;
};

echo $thief->bindTo($guard, Guard::class)('x') . "\n";

$hydrator->bindTo($guard, Guard::class)('x', 'bla');

echo $thief->bindTo($guard, Guard::class)('x') . "\n";

See https://ocramius.github.io/blog/accessing-private-php-class-members-without-reflection/

Should be benchmarked with current PHP versions.


Add log print in ci

Codecov Report

:exclamation: No coverage uploaded for pull request base (dev@fa87045). Click here to learn what that means.
The diff coverage is n/a.

@@         Coverage Diff         @@
##             dev    #7   +/-   ##
===================================
  Coverage       ?    0%
===================================
  Files          ?    22
  Lines          ?   318
  Branches       ?    13
===================================
  Hits           ?     0
  Misses         ?   318
  Partials       ?     0

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 fa87045...c2a852b. Read the comment docs.


Feature Request: Anaglyph 3D

Hi,
I have no idea how much work this is, but VR 3D is already implemented, how a bout Anaglyph 3D?
Wikipedia
This would be nice for a presentation in front of a small group.
cu

I like it, I am not sure how it would work for volume rendering though. I don't think it has a high priority for me, but I welcome a good PR!

I have seen the stereo mode is just a feature of three.js.
I have found this:
Maybe that's a start.


Feature/dry run

What type of PR is this? (check all applicable)

[ ] Refactor
[ ] Feature
[ ] Bug Fix
[ ] New Query Runner (Data Source)
[ ] New Alert Destination
[ ] Other

Description
Related Tickets & Documents
Mobile & Desktop Screenshots/Recordings (if there are UI changes)

 Redash: Add option to predict data scanned in a query

 Redash: Add validation of query syntax

 Redash: Add validation of query syntax


Update office-365-encryption-risks-and-protections.md

Modified from 128 to 256 as updated in the document -https://docs.microsoft.com/en-us/microsoft-365/compliance/office-365-bitlocker-and-distributed-key-manager-for-encryption?view=o365-worldwide
Thanks
Sri

@JohanFreelancer9 Please copy review

Issue#https://github.com/MicrosoftDocs/microsoft-365-docs/issues/3162

@KCCross Please merge this PR. Thanks.

Hi! Please also update the "FIPS 140-2 Validated" column for EXO in the table for MultiTenant - since all servers will be using 256 bit key, then I understand that  the annotation "Yes, for servers that use AES 256-bit**" is no longer needed and the column for EXO should just say "Yes" like it does for SPO and S4BO. And this would mean that the footnote "**Most servers in the Exchange Online multi-tenant environment have been deployed with AES 256-bit encryption for BitLocker. Servers using AES 128-bit are being phased out." can also be removed.


Moved hardware info to environment (and other changes)

Did the following

moved hardware info from task to environment
ensured defaults for code, file collection, environment, snapshot, task were logical
ensured logical duplicate detection for code, file collection, environment, snapshot
added tests to test the duplicate detection and defaults

Pull Request Test Coverage Report for Build 53

115 of 127 (90.55%) changed or added relevant lines in 10 files are covered.
5 unchanged lines in 2 files lost coverage.
Overall coverage increased (+1.1%) to 80.282%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

datmo/controller/code/code.py
7
8
87.5%

datmo/controller/task.py
8
9
88.89%

datmo/controller/file/file_collection.py
2
3
66.67%

datmo/util/json_store.py
0
2
0.0%

datmo/controller/snapshot.py
48
51
94.12%

datmo/controller/environment/environment.py
31
35
88.57%

Files with Coverage Reduction
New Missed Lines
%

datmo/util/json_store.py
2
93.22%

datmo/controller/snapshot.py
3
93.81%

Totals

Change from base Build 49:
1.1%

Covered Lines:
1649

Relevant Lines:
2054

💛  - Coveralls


[Service Bus] Remove ClientEntityContext

The ClientEntityContext In Track 1

was the context for given Queue/Topic/Subscription client.
tracked 1 sender, 1 batching receiver, 1 streaming receiver and a list of session receivers as this was the limitation in Track 1. For example, you could have only 1 sender on a QueueClient
shared the $management link between the ClientEntityContext for clients pointing to the same entity

In Track 2, we removed the intermediate Queue/Topic/Subscription client.
We now can create as many senders and receivers possible.


Feat: Subscribe to Newsletter

Describe the feature
On filling name and valid email to the input fields in the "Subscribe to our Newsletter" section. A email should be received by the user.
Add ScreenShots

Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC'24 contributor
[X] I want to work on this issue

@haseebzaki-07  , work on the issue and create a pr.

@abhi03ruchi sure


Actor interface to expose wasmbus-rpc protocol version number

For future-compatibility, actors should expose a wasmbus-rpc version number. In the future, if we ever change invocation apis or the type of message serialization, we can bump the version number. The host would check the version number before doing rpc with the actor, and use the appropriate compatibility shim if necessary. Not trying to be prescriptive of how host implements this - just describing the concept.
I'm going to assign this to Kevin to pick the symbol name, then he can reassign this to me to implement exposing the version from the actor code generation.

The host runtime also publishes this version number in the ActorStarted event, along with the actor public key.

For further detail, all actors pre-0.5 are considered to be on rpc version 0 while 0.5+ is rpc version 1.


STORM-2057 Support JOIN statement in Storm SQL

Note for merger

This is on top of STORM-2067 which is not applicable for 1.x-branch. So in order to make porting back easier, STORM-2067 should be handled first and this pull request should be rebased to updated master.

This pull request accomplishes supporting JOIN statement in Storm SQL for Trident mode.
INNER, LEFT OUTER, RIGHT OUTER, FULL OUTER JOIN are supported.
Since this feature is based on Trident join, some limitations follow:

Only equi-join is supported.
Joining will be occurred for each batch, not across batches.

http://storm.apache.org/releases/1.0.2/Trident-API-Overview.html
Please refer Merges & Joins section

Trident join provides only one value for joining fields (two)

For inner join, that would be OK
For outer joins, one of values should be null, which might be not OK

applied dirty workaround: if whole values of non-joining fields are null, value of joining field is also null
will try to handle it properly (TODO)

TODO

[x] Update documentation (with limitation)
[x] Try to fork Trident join feature to fit to SQL join column output

Fixed classification issue for outer join.
It still needs to apply JoinResultFromTridentToSQLFunction to rearrange and project to get rid of old fields.
If SeparatedJoiningValuesJoinerMultiReducer would emit tuple with preserved fields order we can get rid of JoinResultFromTridentToSQLFunction and additional project. (Name might need to be changed.)
I'll try to work of it.

I just pushed final version of JoinerMultiReducer for Storm SQL which preserves fields order for each stream, which will be directly matched to Calcite output fields.
I'll remove WIP once I finish updating document.

Just addressed documentation. Ready for the review.

Rebased only STORM_2057 related commits into one.

I don't see any style violations here that we haven't seen before (and accepted).

@harshach
Style violations(?) are originally from JoinerMultiReducer, and PreservingFieldsOrderJoinerMultiReducer just copies the code from there. I like your style guide, indeed.
@ptgoetz
I agree that we need style guide and/or code convention for Java, since we're moving to Java codebase. I'd also love to see automatic formatting, like mvn java-formatter:format.
https://github.com/xetorthio/jedis/blob/master/hbase-formatter.xml
https://github.com/xetorthio/jedis/blob/master/Makefile#L301

@ptgoetz we should have a style guide or at least we should've consistency. my comments are because I've seen multiple combinations where some code as space and others don't.

@arunmahadevan @harshach
I just addressed your review comments. Please take a look again.
Adding Javadoc for Trident is not easy task since there's no method which has javadoc on Trident. We might need to add javadoc for all of them, but I feel this is out of scope.

+1

Thanks @arunmahadevan for reviewing. Since I've also addressed style review comments I'll just go on merging this.


check EIP712 chain ID

@pilagod Good point. I think it depends on our policy of forked chain. If we will operate on the forked chain, then updating domain separator is making sense. Currently I think we don't and the main reason is avoid signature being replayed in order to protect users. Therefore I think the immutable is more suitable since it's more gas efficient for mainnet users.


tinc service: host names from /etc/hosts don't work when chroot is used

The nixos tinc service defines chroot = true as a default, but according to mailing list reply from the tinc author, host names from /etc/hosts (which especially nixops relies on) don't work by default in chroot because tinc can't see /etc/hosts.
The solution is to place a copy of /etc/hosts in the chroot dir when chroot = true is used.

CC @wkennington @ericsagnes @fadenb @joachifm @tg-x as they committed to that service in the past and might be intrested.

https://github.com/triton/triton/commit/da08fa64b3900a084a12744a94e3a552260d6bc9 if you create a patch similar to this it will work.

Any news on this issue?

still important to me

still very important for me


Is there a way to downgrade auto-editor?

Hi!
I make very long instructional videos and the new frame-based range is too much work for me. I don't have a way to know the actual frames.
Is there a way to downgrade auto-editor to 16?
Thanks in advance.
Iuri

Yes! Use pip's == operator.
pip3 install auto-editor==21.16.1


Add Categories hierarchy

It should be possible to create a hierarchy of categories, with at least 2 levels, but potentially N levels.

This would be a feature for Umbraco itself, articulate only uses Umbraco's own functionality.


Minor README edit

Update the notification methods in the usage summary to match the content of the document.

Very true, many thanks @winding-lines!


Fixed DataGridRow with selected color not obvious in the Light theme

before

after

Just to confirm, this is the same color as ListBox right?

the same color


Persistent Sneak Mode Feature Request

I notice that when I'm navigating inside of onivim that the sneak mode is extremely useful and I was wondering if we could have a persistent sneak mode on par to that of a normal mode so I don't have to press control+g every time.

you can rebind it something simpler, like s


install the agent on the Worker Node

Hi I have Windows ACS Cluster. For master node, i followed the bash command.
But to install agent on worker node, i need to access the node remotely. Is it possible?
Can you share steps or link?
Thanks.

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

ID: 7783cfe9-0508-9a73-3923-597cbc523cda
Version Independent ID: e2dba78f-0f1a-20d1-54d8-f30084328bb0
Content: Container Monitoring solution in Azure Log Analytics
Content Source: articles/log-analytics/log-analytics-containers.md
Service: log-analytics
GitHub Login: @MGoedtel
Microsoft Alias: magoedte

@keikhara - Can you help answer this question? Thanks.

@junpark12 this article makes references to using RDP to Windows nodes using an SSH tunnel:
https://medium.com/cooking-with-azure/windows-containers-in-kubernetes-with-acs-engine-in-azure-615cf2531dac
@MGoedtel, @keikhara, is this something that should be documented?  I know ACS is being replaced with AKS.
@MGoedtel i'm assigning this issue to you as I cannot seem to assign it to @keikhara, let me know if you need it assigned somewhere else.

@junpark12 - I will take this offline with K.Harada and determine how we address this in the docs being Container Health delivers a large percentage of this versus the monitoring solution for containers until complete parity.  In the meantime, I'll file this in our TFS database and track it accordingly.  #please-close


[Multiplayer] Many-player considerations

This issue is deliberately locked down.

[x] How to run more than 2 copies of the game without massive slowdowns for all instances or BSODs.
[x] How to distinguish between logs coming from client 1, 2, 3 etc. on the same machine.
[ ] How to access the inventory of offline clients.
[x] How to distinguish inventories of client 1, 2, 3 etc.
[x] Show client user names on the UI in some fashion.
[ ] Client icons next to the user names.
[x] Allow client 1, 2, 3 etc. color customization on the avatar.
[ ] How to configure multiple clients on the same machine.
[x] Client names above the avatar.
[ ] Kick and/or block clients.
[ ] Shredder use restrictions.
[ ] Deconstruct restrictions.

Multiplayer mod is now discontinued.


ZAP instructions need clarification

Step by step user instructions should be provided to instruct how to identify a delivered email as malicious/phishing/etc.
Does the Outlook Add-In Report Phishing tool deploy the ZAP removal of delivered email across the organization when they identify an email as malicious?

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

ID: 4fb415a2-fc7c-5b9a-96de-f01be631bf07
Version Independent ID: c5d4ab93-4f59-a60f-5d42-1a6a52a37f4c
Content: Zero-hour auto purge (ZAP) - Office 365
Content Source: microsoft-365/security/office-365-security/zero-hour-auto-purge.md
Service: o365-seccomp
GitHub Login: @chrisda
Microsoft Alias: chrisda

@MrsKay007, I'm not sure I understand the request. You don't need to identify a message as malicious in order for ZAP to work. How to recognize phishing/malicious messages is important, but I'm not sure it belongs in this topic.
To answer your second question, you could say that the Report Message add-in (or any method of reporting malicious messages/files) can influence ZAP. For example, messages that contain a malicious payload are delivered to some recipients in your organization. One of the recipients uses the Report Message add-in to report the message to Microsoft. Through their normal investigation Microsoft determines that the message was malicious, and they update the datacenter spam/phishing/malware filters to recognize the message/payload. All of this could take several hours to several days. If users still have copies of the message sitting in their mailbox, then ZAP will take action on them (move to Junk Email folder or Quarantine, based on the ZAP configuration and whether its spam vs. phishing vs. malware), not just in your organization, but in all other organizations in the service.
Does this help?

@chrisda  Thank you very much for sharing this explanation. @MrsKay007 Hope this comment is helpful for you. If you see a documentation update is required, please feel free to open an issue for the same. We proceed here to close it. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.


[ISSUE-238] Expose volume and partition operations duration

Purpose
Issue #238

Add interface Statistic, which represents histogram metrics:

Method Collect returns prometheus.Collector to register metric.
Method EvaluateDuration counts duration of given method.

Create VolumeMetrics and PartitionMetrics, which implement Statistic
Add metrics in VolumeOperationsImpl and PartitionOperationsImpl, so they evaluate duration of methods

PR checklist

[x] Add link to the issue
[x] Choose PR label
[x] New unit tests added
[x] Modified code has meaningful comments
[ ] All TODOs are linked with the issues
[ ] All comments are resolved

Testing
...
partition_operations_duration_bucket{method="ReleasePartition",le="0.5"} 0
partition_operations_duration_bucket{method="ReleasePartition",le="0.6"} 0
partition_operations_duration_bucket{method="ReleasePartition",le="0.72"} 3
partition_operations_duration_bucket{method="ReleasePartition",le="0.864"} 3
partition_operations_duration_bucket{method="ReleasePartition",le="1.0368"} 3
partition_operations_duration_bucket{method="ReleasePartition",le="1.24416"} 3
partition_operations_duration_bucket{method="ReleasePartition",le="1.4929919999999999"} 3
partition_operations_duration_bucket{method="ReleasePartition",le="1.7915903999999998"} 3
partition_operations_duration_bucket{method="ReleasePartition",le="2.1499084799999997"} 3
partition_operations_duration_bucket{method="ReleasePartition",le="2.5798901759999997"} 3
partition_operations_duration_bucket{method="ReleasePartition",le="3.0958682111999996"} 3
partition_operations_duration_bucket{method="ReleasePartition",le="3.7150418534399994"} 3
partition_operations_duration_bucket{method="ReleasePartition",le="4.458050224127999"} 3
partition_operations_duration_bucket{method="ReleasePartition",le="5.349660268953598"} 3
partition_operations_duration_bucket{method="ReleasePartition",le="6.419592322744317"} 3
partition_operations_duration_bucket{method="ReleasePartition",le="7.7035107872931805"} 3
partition_operations_duration_bucket{method="ReleasePartition",le="9.244212944751816"} 3
partition_operations_duration_bucket{method="ReleasePartition",le="11.093055533702179"} 3
partition_operations_duration_bucket{method="ReleasePartition",le="13.311666640442615"} 3
partition_operations_duration_bucket{method="ReleasePartition",le="15.973999968531137"} 3
partition_operations_duration_bucket{method="ReleasePartition",le="+Inf"} 3
partition_operations_duration_sum{method="ReleasePartition"} 1.944236606
partition_operations_duration_count{method="ReleasePartition"} 3
...

...
volume_operations_duration_bucket{method="DeleteVolume",le="0.005"} 0
volume_operations_duration_bucket{method="DeleteVolume",le="0.0075"} 3
volume_operations_duration_bucket{method="DeleteVolume",le="0.01125"} 3
volume_operations_duration_bucket{method="DeleteVolume",le="0.016875"} 3
volume_operations_duration_bucket{method="DeleteVolume",le="0.0253125"} 3
volume_operations_duration_bucket{method="DeleteVolume",le="0.03796875"} 3
volume_operations_duration_bucket{method="DeleteVolume",le="0.05695312500000001"} 3
volume_operations_duration_bucket{method="DeleteVolume",le="0.08542968750000002"} 3
volume_operations_duration_bucket{method="DeleteVolume",le="0.12814453125000003"} 3
volume_operations_duration_bucket{method="DeleteVolume",le="0.19221679687500004"} 3
volume_operations_duration_bucket{method="DeleteVolume",le="0.28832519531250006"} 3
volume_operations_duration_bucket{method="DeleteVolume",le="0.43248779296875006"} 3
volume_operations_duration_bucket{method="DeleteVolume",le="0.6487316894531251"} 3
volume_operations_duration_bucket{method="DeleteVolume",le="0.9730975341796877"} 3
volume_operations_duration_bucket{method="DeleteVolume",le="1.4596463012695315"} 3
volume_operations_duration_bucket{method="DeleteVolume",le="2.1894694519042974"} 3
volume_operations_duration_bucket{method="DeleteVolume",le="3.284204177856446"} 3
volume_operations_duration_bucket{method="DeleteVolume",le="4.926306266784669"} 3
volume_operations_duration_bucket{method="DeleteVolume",le="7.389459400177004"} 3
volume_operations_duration_bucket{method="DeleteVolume",le="11.084189100265506"} 3
volume_operations_duration_bucket{method="DeleteVolume",le="16.62628365039826"} 3
volume_operations_duration_bucket{method="DeleteVolume",le="24.93942547559739"} 3
volume_operations_duration_bucket{method="DeleteVolume",le="37.40913821339608"} 3
volume_operations_duration_bucket{method="DeleteVolume",le="56.11370732009412"} 3
volume_operations_duration_bucket{method="DeleteVolume",le="84.17056098014118"} 3
volume_operations_duration_bucket{method="DeleteVolume",le="+Inf"} 3
volume_operations_duration_sum{method="DeleteVolume"} 0.019778449
volume_operations_duration_count{method="DeleteVolume"} 3
...

Please add the example of metrics you've implemented on the HTTP endpoint.

Please add the example of metrics you've implemented on the HTTP endpoint.

One more thing I want to discuss. Maybe we should use static definition for Buckets instead of ExponentialBuckets? Something like: []float64{.005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5, 10, 15, 30, 45, 90, 180} This approach will generate metrics which are easier to read. @painhardcore Will we have any problem in Grafana with such histogram?

One more thing I want to discuss. Maybe we should use static definition for Buckets instead of ExponentialBuckets? Something like: []float64{.005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5, 10, 15, 30, 45, 90, 180} This approach will generate metrics which are easier to read. @painhardcore Will we have any problem in Grafana with such histogram?

One more thing I want to discuss. Maybe we should use static definition for Buckets instead of ExponentialBuckets? Something like: []float64{.005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5, 10, 15, 30, 45, 90, 180} This approach will generate metrics which are easier to read. @painhardcore Will we have any problem in Grafana with such histogram?

In Grafana we show only a certain percentile or number of requests. But storing many buckets can become a problem.
Static buckets are good, but we need to know the boundaries we care about i.e. do we really care about  .01 to .025 range? Or we can simplify it like {.005, .01, .05, .1, .25 ...}`

One more thing I want to discuss. Maybe we should use static definition for Buckets instead of ExponentialBuckets? Something like: []float64{.005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5, 10, 15, 30, 45, 90, 180} This approach will generate metrics which are easier to read. @painhardcore Will we have any problem in Grafana with such histogram?

In Grafana we show only a certain percentile or number of requests. But storing many buckets can become a problem.
Static buckets are good, but we need to know the boundaries we care about i.e. do we really care about  .01 to .025 range? Or we can simplify it like {.005, .01, .05, .1, .25 ...}`


cursor-pointer is missing on UButton with an @click event

Environment

Operating System: Darwin
Node Version:     v20.18.0
Nuxt Version:     3.14.1592
CLI Version:      3.16.0
Nitro Version:    2.10.4
Package Manager<EMAIL_ADDRESS>Builder:          -
User Config:      default
Runtime Modules<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>Build Modules:    -

Is this bug related to Nuxt or Vue?
Nuxt
Version
v3.0.0.alpha10
Reproduction
https://ui3.nuxt.dev/components/button#loading (example with loading-auto)
Description
When using a UIButton component with an @click event, the cursor does not change to cursor-pointer, which may confuse users about the button's clickability.
Additional context
No response
Logs

Duplicate #2928, #2332.


Citizen registration

A citizen is registered by a judge (and thus have a reputation) only once he has endorsed someone.
Whereas it should be the other way around => as soon as someone endorsed him.

Even worse: the endorsements collected before the citizen first endorse someone are not taken into account even so they are displayed in the app


Plugin buttons are inconsistent

When developing a site from scratch with multiple plugins (zoom, search, locate, forward/backward, bookmark, own stuff) it's a pain to edit all plugin css for a consistent look + feel.
It would be also good to have some bigger buttons for mobile devices.
What about recommending to all leaflet plugin authors some "awesome" button standard??

There are generic CSS styles for all buttons in Leaflet. It's the responsibility of plugin authors to follow them or use something different.

Is there any possibility to override with leaflet standards?


Correct FILEFLAGS and related mask descriptions

FILEFLAGSMASK must represent all valid bits, not FILEFLAGS as the docs suggest today. I tried to reduce the wordiness of the descriptions as well. They seemed to be repeating the same general information multiple times.

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


Allow disabling /var/lib/docker/containers mountPath

Details
When using logsCollection.enabled: true on a GKE Autopilot cluster I get the following error.
one or more objects failed to apply, reason: error when patching "/dev/shm/2609233200": admission webhook "warden-validating.common-webhooks.networking.gke.io" denied the request: GKE Warden rejected the request because it violates one or more constraints. Violations details: {"[denied by autogke-no-write-mode-hostpath]":["hostPath volume varlibdockercontainers used in container opentelemetry-collector uses path /var/lib/docker/containers which is not allowed in Autopilot. Allowed path prefixes for hostPath volumes are: [/var/log/]."]} Requested by user: 'system:serviceaccount:argocd:argocd-application-controller', groups: 'system:serviceaccounts,system:serviceaccounts:argocd,system:authenticated'.. Retrying attempt #2 at 9:39AM.

Request
Allow to disable the mounting of the mountPath /var/lib/docker/containers

@reakaleek the best option for you is to not use the preset and to configure the filelog receiver and the corresponding kubernetes settings yourself to meet your needs. The preset is a best attempt for most situations, but cannot cover all scenarios.


Fix callback not fired

Fixes an issue with callback not being fired if there are not enough post in the feed to reach the limit.
Also fixes an error if pinterest response is empty

Found an issue where the loaded_post_count wasn't getting incremented in case the feed.render() call failed, thus failing the equality check between it and posts_to_load_count when attempting to call fireCallback. Example: if one of the posts fetched was a duplicate.
Fixed it by adding the following (using twitter as an example)
// js/jquery.socialfeed.js line 264

var post = new SocialFeedPost('twitter', Feed.twitter.utility.unifyPostData(element));
var render_successful = post.render();
// If we do not render the post because it was a duplicate or something, reduce the
// completion counter so that the `loaded_post_count` and `posts_to_load_count` resolve to equal

if(!render_successful)
  posts_to_load_count--

there was already a fix that works perfectly, for example for twitter https://github.com/pavelk2/social-feed/pull/173/commits/1fe5903edff00946684fb210d5ac1afd6540aa90:
                    getPosts: function(json) {
                        if (json) {
							// fix callback render
							if(json.length<options.twitter.limit) posts_to_load_count -= options.twitter.limit - json.length;
                            $.each(json, function() {
                                var element = this;
                                var post = new SocialFeedPost('twitter', Feed.twitter.utility.unifyPostData(element));
                                post.render();
                            });
                        }
                    },


Sorted version spec

Fixes #78.
This naive sorted makes the '>' prior to '<', and '!'.

Thanks. 👍


pg (node-postgres) option missing in drizzle postgres database option

based on this docs in drizzle they have pg(node-postgres) and postgres.js.
the pg(node-postgres) is missing from the CLI options.

Yeah, they've got tons of options, but we also want to avoid overwhelming the user. Is there a reason those ones are needed?

the docs used these two on the getting started.
also a section on the docs states this:

postgres.js uses prepared statements by default, which you may need to opt out of. This could be a potential issue in AWS environments, among others, so please keep that in mind.


Empty api.crt file causes panic in websocket-proxy

If you follow the steps for deploying HA rancher here:
http://docs.rancher.com/rancher/installing-rancher/installing-server/multi-nodes/
And get to step 8:
Bring up the websocket-proxy:

download the Public Key to verify host tokens:
curl -X GET -O http(s)://<rancher>/v1/scripts/api.crt
Bring up websocket-proxy running on the host. (Do not use localhost)
docker run -d -p <port>:<port> -v $(pwd)/api.crt:/api.crt rancher/server websocket-proxy -jwt-public-key-file=/api.crt -listen-address=<IP_ADDRESS>:<port>

but for some reason the api.crt download doesn't go right and you end up with an empty file, websocket-proxy does not gracefully error out and tell you what the problem is. It just panics and throws a stacktrace that only a golang dev can read.
Fix is to check that file emptiness. Although, we also talked about having websocket-proxy dynamically download that file instead of forcing the user to do so.

Grand scheme of things, this is a pretty minor bug.
Identified in the first half of this forum issue:
http://forums.rancher.com/t/host-reconnecting-after-v38-1/533/2?u=cjellick

Closing due to inactivity and HA has been changed since 1.2.x.


Scale geometric error with tileset

Fixes #5330
Fixes #7398
Clean up from https://github.com/AnalyticalGraphicsInc/cesium/pull/7411
@lilleyse please review

Thanks for the pull request @hpinkos!

:heavy_check_mark: Signed CLA found.

Reviewers, don't forget to make sure that:

[ ] Cesium Viewer works.
[ ] Works in 2D/CV.
[ ] Works (or fails gracefully) in IE11.

Looks good! Thanks @hpinkos


Add response callbacks to IEntityMessenger API

@ljacomet @AbfrmBlr @chrisdennis - Please review if you find useful or not.

@AbfrmBlr Could you hack on this some to see if it makes sense?


Add package gurl

"url": "https:///"

"web": "https:///"

This won't do. We need a link to your code repository.

Code repository - https://github.com/MaxUNof/gurl

please, read this https://github.com/nim-lang/nimble#creating-packages

You need to add that to packages.json.
Btw, your package doesn't include a .nimble file, which is required, and there is no README.md which is not "officially required" but I'm not merging any packages without it (where you explain what your package is, what it does, and how to use it).

@SolitudeSF has given you the link with the instructions how to create a nimble package. I'm closing this, but feel free to open another PR when you meet the requirements.


REAL link is stale?

The issue:
Don't have screenshots that would document this, will try to reproduce.
The steps:

Split list of days into n days.
Make a new folder and copy the REAL binary into said folder.
Run the REAL binary using custom command line arguments

The error: link is stale? I can try to reproduce the error while running association for Feb/Mar

Closed, cannot reproduce


Deprecate LogicalPlan::head_output_expr

Which issue does this PR close?
Part of  https://github.com/apache/arrow-datafusion/issues/8913
Rationale for this change
LogicalPlan::head_output_expr is unused, untested and redundant now that we have https://github.com/apache/arrow-datafusion/issues/8913
What changes are included in this PR?

Deprecate LogicalPlan::head_output_expr
Rewrite it to use the tree node API (by way of illustration to anyone else who might still use it)

Are these changes tested?

Are there any user-facing changes?

I think clippy found a few users of the deprecated API. Might be worth to at least migrate the DF-internal users right away.

I didn't realize the function was actually used. I'll look into simply using the TreeNode API instead, rather than deprecating it


feat: add woodpecker-ci/woodpecker

woodpecker-ci/woodpecker: Command line tool for Woodpecker CI
$ aqua g -i woodpecker-ci/woodpecker

How to confirm if this package works well
Reviewers aren't necessarily familiar with this package, so please describe how to confirm if this package works well.
Please confirm if this package works well yourself as much as possible.
Command and output
$ woodpecker-cli
NAME:
   woodpecker-cli - command line utility

USAGE:
   woodpecker-cli [global options] command [command options] [arguments...]

VERSION:
   0.15.5

COMMANDS:
   build      manage builds
   log        manage logs
   deploy     deploy code
   exec       execute a local build
   info       show information about the current user
   registry   manage registries
   secret     manage secrets
   repo       manage repositories
   user       manage users
   lint       lint a pipeline configuration file
   log-level  get the logging level of the server, or set it with [level]
   help, h    Shows a list of commands or help for one command

GLOBAL OPTIONS:
   --token value, -t value   server auth token [$WOODPECKER_TOKEN]
   --server value, -s value  server address [$WOODPECKER_SERVER]
   --log-level value         set logging level (default: "warn") [$WOODPECKER_LOG_LEVEL]
   --help, -h                show help (default: false)
   --version, -v             print the version (default: false)

Thank you for your contribution!

The repository woodpecker-ci/woodpecker has three assets.

woodpecker-cli
woodpecker-server
woodpecker-agent

So I'd like to change the package name to woodpecker-ci/woodpecker/woodpecker-cli.

Released. https://github.com/aquaproj/aqua-registry/releases/tag/v3.86.0


bugfix

Thanks!  Would you mind writing a small test case for it?

I'm not sure this fix requires new test case. There was a wrong if statement. And next statement:
kwargs['include_lengths'] = True would be executed anyway. It would be safer to set values inside if statements, and by doing this,  already present testCase would cover this issue.

pushed new commit with safe assignment.


query: Most recent values are not summed correctly for multiple receivers

Thanos, Prometheus and Golang version used: 0.30.1, golang: go1.19.4 (version 0.29 also affected)
Object Storage Provider: GCS bucket
What happened:
We are using 150+ Prometheuses running on Kubernetes clusters and sending data via Remote Write endpoint to Thanos. We are running 5 instances of Receiver. For some data series, the most recent values (around last 2 hours) are not calculated properly - they are too low and fluctuating. These wrong values  are only for data queried from receiver replicas endpoints. The same data provided by store gateway looks more consistent.
See the image below - data before 15:00 comes from store gateway, values after 15:00 are based on receivers endpoints.

What you expected to happen: Values returned by 5 receivers are the same as returned by store gateway. I don't expect node count to fluctuate - this is an error in calculation (summing) I suppose.
Anything else we need to know:
This is our stores configuration:

There is one more store gateway for another bucket with data older than 7 months, not shown on the screenshot.

@mfilocha
I'd like to know when you collected 150+ Prometheuses metrics via thanos-rceivers. What's limit resources setup? Would you please kindly to share me for reference?. Also - --receive.replication-factor counts.

@JayChanggithub - replication factor is default (1). All 5 replicas of receiver use around 115 GB of RAM in total.
And we don't send all default Kubernetes metrics, it's a heavily tuned subset.

We also adopted receiver of thanos as well and around 150 kubernetes cluster probably. As same your landscape. However i has been adjust the replication factor 1 to 3. I found the each pod of receiver consumed of memory higher than replication factor 1. I'am not sure what's limit of resources is enough. Just wanna to refer your setting as well. Thank you.

@mfilocha do you have a hashrings file configured for your receivers?

@fpetkovski - No, we use the following configuration for the receiver:
- --objstore.config=$(OBJSTORE_CONFIG)
- --tsdb.retention=6h
- --receive.default-tenant-id=cluster
- --receive.local-endpoint="$(NAME).thanos-receive.$(NAMESPACE).svc.cluster.local:10901"
- --label=receive_replica="$(NAME)"

and for the querier:
- --http-address=<IP_ADDRESS>:9090
- --query.replica-label=receive_replica
- --store=dnssrv+_grpc._tcp.thanos-store
- --store=dnssrv+_grpc._tcp.thanos-receive
- --store=dnssrv+_grpc._tcp.thanos-rule
- --query.auto-downsampling
- --query.timeout=15m

@fpetkovski Any hints? Version 0.32.3 behaves the same.


Refactor the testDedup test case to improve the test experience

Description & Motivation
The test case  testIsTaskCurrent  is testing the supervisor.isTaskCurrent() with 4 different scenarios (taskFromStorage, taskFromStorageMismatchedDataSchema,taskFromStorageMismatchedTuningConfig,taskFromStorageMismatchedPartitionsWithTaskGroup) in one single test case. In my humble opinion, it could be beneficial to separate the four scenarios into four individual test cases. Each test case will focus on one scenario.
The original test case is 156 lines, and after the refactoring, each test case will be around 30 lines.
For example, when testing the supervisor.isTaskCurrent() with taskFromStorage, the new case will only contain the supervisor and the taskFromStorage related variable/mock setup, and will have only one assert statement. Here is how the refactored test case for taskFromStorage scenario looks like:
DateTime minMessageTime = DateTimes.nowUtc();
DateTime maxMessageTime = DateTimes.nowUtc().plus(10000);
KinesisSupervisor supervisor = getSupervisor(...);
KinesisIndexTask taskFromStorage = createKinesisIndexTask("id1", ...) // omitted some parameters to save the space

EasyMock.expect(taskStorage.getTask("id1"))
            .andReturn(Optional.of(taskFromStorage))
            .once();
replay();
Assert.assertTrue(supervisor.isTaskCurrent(42, "id1"));
verify();

Please see the detailed description of my proposed change below.
Proposed changes
 testIsTaskCurrent  case is aiming to test the isTaskCurrent function with Easymock. And the four scenarios are quite independent of each other, I suggest to :

Extract the arrangements shared across multiple scenarios into a setup function for the test case:

The arrangement from line 3886 to line 3911 can be extracted as a function named as isCurrentSupervisorSetup().

Extract the 4 test scenarios with their specific arrangements into 4 separate unit tests:

Extract line 3887 to line 3888 and taskFromStorage value creation into the testIsTaskCurrentTaskFromStorage unit test case with the mock setup(line 4021-4023) and isTaskCurrent assertion functions(line 4036) for the first testing scenario.
Extract line 3887 to line 3888, modifiedDataSchema value creation, and taskFromStorageMismatchedDataSchema value creation into the testIsTaskCurrentTaskFromStorageMismatchedDataSchema unit test case with the mock setup(line 4024-4026) and isTaskCurrent assertion functions(line 4037) for the second testing scenario.
Extract line 3887 to line 3888, modifiedTuningConfig value creation, and taskFromStorageMismatchedTuningConfig value creation into the testIsTaskCurrentTaskFromStorageMismatchedTuningConfig unit test case with the mock setup(line 4027-4029) and isTaskCurrent assertion functions(line 4038) for the third testing scenario.
Extract line 3887 to line 3888 and taskFromStorageMismatchedPartitionsWithTaskGroup value creation into the testIsTaskCurrentTaskFromStorageMismatchedPartitionsWithTaskGroup unit test case with the mock setup(line 4030-4032) and isTaskCurrent assertion functions(line 4038) for the fourth testing scenario.

Use the isCurrentSupervisorSetup() in the 4 test cases for common setup.
Replace the EasyMock.replayAll() and EasyMock.verifyAll() functions in the original case with EasyMock.replay() and EasyMock.verify(), and put them into each of 4 test ceases.

After this refactoring, all the test scenarios will belong to one unit test case and can be evaluated in one cycle of testing.
Hope this proposal can be helpful, and if possible, I would be more than happy to try the refactoring. (If not, comments are still appreciated.)

@Codegass - changes sound good to me. It will be great if you can create a PR.


Add: Slash command that tells the time

Add an application command (or slash command) that tells the user the current time. The slash command takes no parameters, and the reply should only be seen by the user, and not be shown in the channel's chat.
Refer here for an example of how to implement slash commands.

i would like to work on this one.

Thank you for your interest! I've assigned you


Make test.sh executable + rudimentary .travis.yml to run it

To take advantage of it, just login to travis-ci.org, and enable testing for your repository.  I did for my clone and you can see the result here:
https://travis-ci.org/yarikoptic/singularity/builds/143229601

I have not played with Travis before. I just had someone else integrate one of my other projects with CircleCI. I haven't done the research yet but I would guess they are both similar systems? Do you have the ability to push back products from Travis into a repo like nightly builds or binary objects or containers?
Thanks!

Yes, they are largely similar. Yes, you can setup various push backs etc, but this or is just to automate running the test script you have, which would then be executed for every pr so you could get some assurance that nothing gets broken
Enabling travis is easy, but let me know if you need further directions
On July 8, 2016 7:49:13 AM EDT, "Gregory M. Kurtzer"<EMAIL_ADDRESS>wrote:

I have not played with Travis before. I just had someone else integrate
one of my other projects with CircleCI. I haven't done the research yet
but I would guess they are both similar systems? Do you have the
ability to push back products from Travis into a repo like nightly
builds or binary objects or containers?
Thanks!

You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub:
https://github.com/gmkurtzer/singularity/pull/122#issuecomment-231340555

Excellent, thank you!


bug 1949306: remove deprecateapirequests API that was never shipped

This is tidying up after ourselves.  It will break client-go until we rebump, so we'll have to force past that.

/lgtm

/override ci/prow/verify-client-go


Various fixes on Atom

New plugin reshaping to remove duplication and extends existing plugin
Switch to stable atom release
Add plugs and set it explicitely to devmode
Reshape needed deps and build-deps
Add README.md

This change is

Comments from Reviewable

Reviewed 4 of 4 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable


Docs: Update docs on inheritance for time intervals

This commit updates the docs on inheritance for group_wait, group_interval and repeat_interval.

Thank you for your contribution!


Fix for using with touchable components.

Swipe action does not work correctly with touchable components.
<Modal swipeDirection={'down'}>
  <TouchableOpacity>
    <View>....</View>
  </TouchableOpacity>
</Modal>

Merged, thanks @ifsnow


feat: pass e2e unleash experiments as a header to Metaphysics

The type of this PR is: Feat
Description
This PR is a proof-of-concept and one of a few moving parts for the "Share split-test assignments with back-ends, for safer data/API roll-outs" technical plan.
The idea is that Force and Eigen detect e2e experiments (by "e2e_" prefix in their name) and sends such experiments in "X-Variants" header to Metaphysics.
For demo and testing purposes, I've created two Unleash experiments, they are enabled for dev/staging:

One
Two

You can test it in action in the review app.

Interesting, I do not see "X-Variants" header until I log in

Logged out, I saw a partial X-Variants header being attached to Metaphysics requests associated with the initial page-load:
X-Variants: {"e2e_test_2_nikita":{"flagEnabled":true,"variant":{"name":"disabled","enabled":false}}}

But I didn't see the header added to later requests when I navigated around (client-side). After logging in, I seemed to see the full list on all requests:
X-Variants: {"e2e_test_nikita":{"flagEnabled":true,"variant":{"name":"disabled","enabled":false}},"e2e_test_2_nikita":{"flagEnabled":true,"variant":{"name":"disabled","enabled":false}}}

Sweet!


recipe for target 'govet' failed

hi all
can somebody help us? we install the described versions, but became this issue on create it.
Running GOVET
go vet: can't execute /bin/shadow -flags: fork/exec /bin/shadow: no such file or directory
Makefile:62: recipe for target 'govet' failed

or can somebody send me the linux dist plugin file? on release it is included an .exe file
thank you for helping

I found my issue, I have create now a symlink and it works
ln -s /root/go/bin/shadow /bin/shadow


Revert "Refactor UFW config to use Hiera data"

This reverts commit e630081b9a857ef54686dec41d45eb50045fa03a.
The version of the ufw module that we're using in the Puppetfile doesn't support creation of resources using hieradata.

See also: https://github.com/alphagov/govuk_mirror-puppet/pull/90

Looks fine for now. Merging.


Fix settings.php

Please note that the settings with given config do not work.
Slim expects a settings array. Not an array of 'settings' inside an array.

Slim 3.x does expect a key called settings: See: https://github.com/slimphp/Slim/blob/3.x/Slim/App.php#L245

My bad. I was initiating app like this:
new \Slim\App(['settings' => $config]);

No problem :)


Distance to bem

Reference issue
Re: Issue #10629
What does this implement/fix?
Added function mne.bem.distance_to_bem(), which accepts an array of positions (head coords), a bem (ConductorModel), and optionally transform (Transform or 4x4array), and computes the nearest distance from each input position to the innermost surface of the conductor model.
Additional information
Test coverage is only for simple inputs of spherical conductormodels with no transform. Perhaps someone could suggest a robust way to make test for BEM surfaces and transforms (looking at mne.surface._compute_nearest tests for example).

@mjcourte I pushed a commit here to give you hints on the tests. Let me know if you need help.
🙏

@mjcourte all green ! can you just add an entry in the file latest.inc to document the new function ? 🙏

Thx @mjcourte 🙏


JSON SCHEMA generation needs to consider rdfs:subPropertyOf

Currently the JSON SCHEMA rendering ignores rdfs:subPropertyOf declarations (ie. does not bind constraints of the super-property of a triple <sub-property, rdfs:subPropertyOf, super-property> to the sub-property).

implemented subproperty rendering


WhatIf seems not to resolve inner "nested" deployments correctly

Describe the bug
WhatIf does not resolve inner "nested" deployments
Example template we are using:
{
    "$schema": "https://schema.management.azure.com/schemas/2018-05-01/subscriptionDeploymentTemplate.json#",
    "contentVersion": "<IP_ADDRESS>",
    "parameters": {
        "topLevelManagementGroupPrefix": {
            "type": "string",
            "metadata": {
                "description": "Provide suffix for the management group structure."
            }
        },
        "sku": {
            "type": "string",
            "allowedValues": [
                "PerGB2018",
                "CapacityReservation"
            ],
            "defaultValue": "PerGB2018",
            "metadata": {
                "description": "Pricing tier: PerGB2018 or CapacityReservation."
            }
        },
        "retentionInDays": {
            "type": "int",
            "defaultValue": 90,
            "metadata": {
                "description": "Number of days to retain data."
            }
        },
        "resourcePermissions": {
            "type": "bool",
            "metadata": {
                "description": "true to use resource or workspace permissions. false to require workspace permissions."
            },
            "defaultValue": true
        }

    },
    "variables": {
        "rgName": "[concat(parameters('topLevelManagementGroupPrefix'), '-management')]",
        "workspaceName": "[concat(parameters('topLevelManagementGroupPrefix'), '-log-', replace(toLower(deployment().location), ' ', ''))]",
        "resourceDeploymentName": "[take(concat(deployment().name, '-loganalytics'), 64)]"
    },
    "resources": [
        {
            "type": "Microsoft.Resources/resourceGroups",
            "apiVersion": "2020-06-01",
            "name": "[variables('rgName')]",
            "location": "[deployment().location]",
            "properties": {}
        },
        {
            "type": "Microsoft.Resources/deployments",
            "apiVersion": "2020-06-01",
            "name": "[variables('resourceDeploymentName')]",
            "resourceGroup": "[variables('rgName')]",
            "dependsOn": [
                "[resourceId('Microsoft.Resources/resourceGroups/', variables('rgName'))]"
            ],
            "properties": {
                "mode": "Incremental",
                "template": {
                    "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
                    "contentVersion": "<IP_ADDRESS>",
                    "parameters": {},
                    "variables": {},
                    "resources": [
                        {
                            "type": "Microsoft.OperationalInsights/workspaces",
                            "name": "[concat(variables('workspaceName'), '-', uniqueString(resourceGroup().id))]",
                            "apiVersion": "2020-08-01",
                            "location": "[deployment().location]",
                            "properties": {
                                "sku": {
                                    "name": "[parameters('sku')]"
                                },
                                "retentionInDays": "[parameters('retentionInDays')]",
                                "features": {
                                    "searchVersion": 1,
                                    "legacy": 0,
                                    "enableLogAccessUsingOnlyResourcePermissions": "[parameters('resourcePermissions')]"
                                }
                            }
                        }
                    ],
                    "outputs": {}
                }
            }
        }
    ],
    "outputs": {}
}

The result is What-If shows RG only, but not the log-analytics (we tried with different -ResultFormat options):
PS> Get-AzSubscriptionDeploymentWhatIfResult -Location 'West Europe' -TemplateFile .\loganalytics.json
cmdlet Get-AzDeploymentWhatIfResult at command pipeline position 1
Supply values for the following parameters:
(Type !? for Help.)
topLevelManagementGroupPrefix: acme
Getting the latest status of all resources...
Note: As What-If is currently in preview, the result may contain false positive predictions (noise).
You can help us improve the accuracy of the result by opening an issue here: https://aka.ms/WhatIfIssues.

Resource and property changes are indicated with this symbol:
  Create

The deployment will update the following scope:

Scope: /subscriptions/***

  + resourceGroups/acme-management

      apiVersion: "2020-06-01"
      id:         "/subscriptions/***/resourceGroups/acme-management"
      location:   "West Europe"
      name:       "acme-management"
      type:       "Microsoft.Resources/resourceGroups"

Resource changes: 1 to create.

To Reproduce
Steps to reproduce the behavior:

Use ARM template above and execute like shown in the result above

Expected behavior
To show also the creation of the log analytics workspace, maybe also the deployment
Screenshots
not required.
Client [e.g. PowerShell, CLI, API)
PowerShell with Az 4.7 used by Azure DevOps Pipelines with "windows-latest" image

Having a closer look, the issue seems to depend on the fact, that the inner deployment is failing cause of resourceGroup() function beeing not available in a subscription scope deployment.
Neither Test-SubscriptionDeployment nor the Test-AzTemplate have reported this issue :(

Thanks for following up - agree that this is something that should be caught by the Test-* cmdlets

In related here, I have a nested template to switch an interface from dynamic to static after creation (this really should be an ARM API parameter e.g. CreateWithStatic). The -whatif doesn't show the new configuration, though this may be more of an issue in terms of the fact that re-running the template subsequently will flip it to dynamic and then back to static due to the nested template order.

yeah deploying the same resource twice is a weird scenario. What-if works by resolving the resourceIds that are being targeted. The fact that the resourceId shows up twice and throws off the diff I'm sure.
This is more of an api design issue unfortunately. As you note, createWithStatic would be a good solution to this problem.


Vulnerabilities from jQuery 2.2.4

Including jQuery 2.2.4 inroduces a potential for XSS vulnerabilities, should be upgraded to minimum of 3.0.0.
I'm happy to upgrade and ensure no jQuery related functionality is broken in the process, but wanted to ensure this project was still being maintained / used first.

@hkdobrev Certainly, I'll start digging in later this evening. I'm not familiar off the top of the head with what API changes were made in jQuery to warrant the major version upgrade from 2.X to 3.X, but it's possible the upgrade will be entirely painless.

I meant to include the link to the Snky report in my opening comment, that's what initially tipped me off to the problem.
https://snyk.io/test/npm/jquery/2.2.4


add --gpus=1 for GPU remote desktop jobs

fix an issue that GPU is not available in remote desktop slurm jobs on viz3d and largeviz3d

does this option set the number of GPU or enable GPU ?

does this option set the number of GPU or enable GPU ?

Without --gpus the job will not be able to use any GPU (nvidia-smi will return nothing).
--gpus=1 will make a single gpu visible to the job, it will allow sharing of a multi-gpu node
Alternative is to add a field to the GUI to enter number of GPUs for the remote desktop

ok, is there a default value to use all GPUs ? small viz instance will have a single GPU but large one will have several.

ok, is there a default value to use all GPUs ? small viz instance will have a single GPU but large one will have several. What will happen if I try to start 4 jobs on the largeviz3d when --gpus=1 is enabled ?

There isn't a value to use all, not that I could find anyway. if we want to give user ability to use more than one GPU per job, a field with gpu count is the easiest way to implement.
When up to 4 jobs started on largeviz3d, each should get one gpu.


Add options page

With this the users can access a more permanent view rather than just via popup that can close automatically.

How does this look?

This looks good, but please check this.
https://www.screencast.com/t/Wwklsbnq
I'm on Windows 10 64bit

Also I'm having issue in the popup too. the window is expanding after taking disable/enable action. I did not notice this before and already published it.
https://www.screencast.com/t/ZwyxMlX5xyyI

hah, nice. I didn't have that issue because my scrollbars are hidden.
I was using width: 100vw to force the page to be at least as big as the popup, which caused a loop.

Ah, might need to twist the options page style a bit.

The issue is that I can't differentiate between the popup and the options, so what you see in 		9e74a60 is a hackish way to try to match the window size. Perhaps that 200ms should be increased.

Oh, OK, I will see what I can do


environment

Hi,
It's a great job.  Could you please provide the running environmental details?

It looks like the link of pre-trained model  has expired

Hi,
Thank you for your interest in our work. I have updated the pretrained models link and uploaded an environment.yml file. Let me know if these work okay for you.
Best,
Mika

Hi,
Thank you for your interest in our work. I have updated the pretrained models link and uploaded an environment.yml file. Let me know if these work okay for you.
Best,
Mika

thanks, I'll try to run the code.

Traceback (most recent call last):
File "train_region_images.py", line 1107, in
cd_loss, _ = chamfer_distance(output_pc, x_repeat, batch_reduction=None)
File "/home/zj/anaconda3/envs/pytorch3d/lib/python3.8/site-packages/pytorch3d/loss/chamfer.py", line 148, in chamfer_distance
x_nn = knn_points(x, y, lengths1=x_lengths, lengths2=y_lengths, K=1)
File "/home/zj/anaconda3/envs/pytorch3d/lib/python3.8/site-packages/pytorch3d/ops/knn.py", line 159, in knn_points
p1_dists, p1_idx = _knn_points.apply(p1, p2, lengths1, lengths2, K, version)
File "/home/zj/anaconda3/envs/pytorch3d/lib/python3.8/site-packages/pytorch3d/ops/knn.py", line 52, in forward
idx, dists = _C.knn_points_idx(p1, p2, lengths1, lengths2, K, version)
RuntimeError: Not compiled with GPU support.
I use the environment you provided. But I meet this problem. It seems that some tool's version is not suited.  Could you please give me some advice? Thanks again.

It looks like the installation of pytorch3d is not GPU supported. It might have been installed just for CPU computation.
Please have a look at this for a fix: https://github.com/facebookresearch/pytorch3d/blob/master/INSTALL.md
It says there that if you install with pip the default build is CPU only.

It looks like the installation of pytorch3d is not GPU supported. It might have been installed just for CPU computation.
Please have a look at this for a fix: https://github.com/facebookresearch/pytorch3d/blob/master/INSTALL.md
It says there that if you install with pip the default build is CPU only.

okay, it works, thanks !!!


Food fixed

Cleaned up punctuation and grammar in food.yml.  Also added a few things.

Looks good! Thank you. I'll continue to review and merge the other pull request throughout the day.

Crap.  I thought I updated my fork of the repo before I started work.  I can rebase tonight after work, when I get back to my home system.

I manually rebased and merged these changes (fc34da57adfabf04d4e5c14c004709ebd03923c1).


publishing source maps and declaration maps

Would it be possible to publish them to easy debugging and development experience to downstream projects?

Actually the d.ts files are published. I have no problems publishing the source maps. Only downside is that it makes the npm modules larger.

I don't think publish source code and source map is a good idea, developer could use npm link or yarn link for debuging.

and installing them slower since more files need to be unpacked. So thinking about it again we might invest into an option to install them separately only (e.g. publish a -dev package)

Actually I do agree with @chemzqm.


rgh-feature-descriptions is broken

Please ensure:

[X] The bug is caused by Refined GitHub. It doesn't happen if I disable the extension.

Description
Again! It seems Github removed both .hx_commit-tease and include-fragment.commit-loader. The closest other one I could find is #blob_contributors_box.
Screenshot

Console errors
❌ rgh-feature-descriptions 21.9.18 → TypeError: undefined has no properties
    init rgh-feature-descriptions.tsx:98
index.tsx:57:9

Example URL
https://github.com/sindresorhus/refined-github/blob/main/source/features/batch-mark-files-as-viewed.tsx
Browser(s) used
Firefox

The closest other one I could find is #blob_contributors_box.

I think we should just use .Box-header.Details as I suggested in https://github.com/sindresorhus/refined-github/pull/4732#discussion_r697866325. We had lots of issues like this which depends on too specific selector that is easy to break.

Actually this is not broken on all pages: https://github.com/sindresorhus/refined-github/blob/main/source/features/useful-not-found-page.tsx

Hmmm... I don't see it:

It's like the last time, the page is different for us then.


TLS group handling revision.

Further revision of the group id handling code. This tidies up a number of areas in the group handling mainly in t1_lib.c and removes some code duplication.
Extended tests hopefully added this time ;-)

Addressed comments, please reconfirm +1.

reconfirming.  thanks

Thanks, pushed.


fix non-deterministic behavior in TorchTrainStep

This PR makes the TorchTrainStep deterministic.
Changes proposed in this pull request:

Moves the set_seed_all call to the beginning of the _train function to run before model initialization.

Before submitting

[x] I've read and followed all steps in the Making a pull request
section of the CONTRIBUTING docs.
[x] I've updated or added any relevant docstrings following the syntax described in the
Writing docstrings section of the CONTRIBUTING docs.
[ ] If this PR fixes a bug, I've added a test that will fail without my fix.
[x] If this PR adds a new feature, I've added tests that sufficiently cover my new functionality.

After submitting

[ ] All GitHub Actions jobs for my pull request have passed.

Thanks Leon!

No worries! Just FYI: I won't be able to merge PR because of restrictions.