Error with buff on Windows11

Hello,
I would like to test your plugin (thanks for your work), I am on windows11, nvim 10 (nightly branch).
I get this error when launching FzxFiles command.
I am on windows11, nvim 10 (nightly branch).

Hi, @DArt503 , checking.

Hi @DArt503 , can you give me:

nvim --version
enter nvim and type: :checkhealth

@linrongbin16 Here it is:
nvim --version:
NVIM v0.10.0-dev-741+g996dd36c7 Build type: RelWithDebInfo LuaJIT 2.1.0-beta3 Run "nvim -V1 -v" for more info
Checkhealth:
==============================================================================
floaterm: health#floaterm#check
common ~

WARNING health#report_start is deprecated, use vim.health.start instead. :help |deprecated|
This feature will be removed in Nvim version 0.11
Platform: win
WARNING health#report_info is deprecated, use vim.health.info instead. :help |deprecated|
This feature will be removed in Nvim version 0.11
Nvim: NVIM v0.10.0-dev-741+g996dd36c7
Plugin: bcaeabf

terminal ~

OK Terminal emulator is available
WARNING health#report_ok is deprecated, use vim.health.ok instead. :help |deprecated|
This feature will be removed in Nvim version 0.11

floating ~

OK Floating window is available

==============================================================================
lazy: require("lazy.health").check()
lazy.nvim ~

OK Git installed
OK no existing packages found by other package managers
OK packer_compiled.lua not found

==============================================================================
mason: require("mason.health").check()
mason.nvim ~

OK mason.nvim version v1.6.2
OK PATH: prepend
OK Providers:
mason.providers.registry-api
mason.providers.client
OK neovim version >= 0.7.0

mason.nvim [Registries] ~
mason.nvim [Core utils] ~

OK unzip: UnZip 6.00 of 20 April 2009, by Info-ZIP.  Maintained by C. Spieler.  Send
OK wget: GNU Wget 1.21.4 built on mingw32.
OK curl: curl 8.0.1 (Windows) libcurl/8.0.1 Schannel WinIDN
OK gzip: gzip 1.12
OK tar: bsdtar 3.5.2 - libarchive 3.5.2 zlib/1.2.5.f-ipp bz2lib/1.0.6
OK pwsh: 7.3.6 Microsoft Windows 10.0.22621 Win32NT
OK 7z: 7-Zip 9.10 beta  Copyright (c) 1999-2009 Igor Pavlov  2009-12-22

mason.nvim [Languages] ~

WARNING Go: not available

ADVICE:

spawn: go failed with exit code - and signal -. go is not executable

WARNING Composer: not available

ADVICE:

spawn: composer.bat failed with exit code - and signal -. composer.bat is not executable

WARNING PHP: not available

ADVICE:

spawn: php failed with exit code - and signal -. php is not executable

WARNING cargo: not available

ADVICE:

spawn: cargo failed with exit code - and signal -. cargo is not executable

OK node: v19.6.0
WARNING javac: not available

ADVICE:

spawn: javac failed with exit code - and signal -. javac is not executable

OK Ruby: ruby 3.0.3p157 (2021-11-24 revision 3fb7d2cadc) [x64-mingw32]
WARNING julia: not available

ADVICE:

spawn: julia failed with exit code - and signal -. julia is not executable

WARNING luarocks: unsupported version luarocks 2.0.2

ADVICE:

Luarocks version must be >= 3.0.0.

OK python: Python 3.11.0
OK java: openjdk version "19.0.2" 2023-01-17
OK RubyGem: 3.2.32
OK pip: `pip 23.0.1 from C:\Python311\Lib\site-packages\pip (python 3.11)

`

OK python venv: Ok
OK npm: 9.4.0

mason.nvim [GitHub] ~

OK GitHub API rate limit. Used: 0. Remaining: 5000. Limit: 5000. Reset: 17/08/2023 11:52:32.

==============================================================================
nvim: require("nvim.health").check()
Configuration ~

OK no issues found

Runtime ~

OK $VIMRUNTIME: C:\Program Files\Neovim\share\nvim\runtime

Performance ~

OK Build type: RelWithDebInfo

Remote Plugins ~

OK Up to date

terminal ~

key_backspace (kbs) terminfo entry: key_backspace=^H
key_dc (kdch1) terminfo entry: key_dc=\E[3~
$COLORTERM="truecolor"

==============================================================================
nvim-treesitter: require("nvim-treesitter.health").check()
Installation ~

WARNING tree-sitter executable not found (parser generator, only needed for :TSInstallFromGrammar, not required for :TSInstall)
OK node found v19.6.0 (only needed for :TSInstallFromGrammar)
OK git executable found.
OK gcc executable found. Selected from { vim.NIL, "cc", "gcc", "clang", "cl", "zig" }
Version: gcc.exe (x86_64-posix-seh-rev2, Built by MinGW-W64 project) 12.2.0
OK Neovim was compiled with tree-sitter runtime ABI version 14 (required >=13). Parsers must be compatible with runtime ABI.

OS Info:
{
machine = "x86_64",
release = "10.0.22621",
sysname = "Windows_NT",
version = "Windows 11 Pro"
} ~
Parser/Features         H L F I J

bash                ✓ ✓ ✓ . ✓
c                   ✓ ✓ ✓ ✓ ✓
cpp                 ✓ ✓ ✓ ✓ ✓
lua                 ✓ ✓ ✓ ✓ ✓
markdown            ✓ . ✓ ✓ ✓
markdown_inline     ✓ . . . ✓
python              ✓ ✓ ✓ ✓ ✓
qmljs               ✓ . ✓ . .

Legend: H[ighlight], L[ocals], F[olds], I[ndents], In[j]ections
+) multiple parsers found, only one will be used
x) errors found in the query, try to run :TSUpdate {lang} ~
==============================================================================
provider: require("provider.health").check()
Clipboard (optional) ~

OK Clipboard tool found: win32yank

Python 3 provider (optional) ~

g:python3_host_prog is not set.  Searching for python in the environment.
Executable: C:\Python311\python.EXE
Python version: 3.11.0
pynvim version: 0.4.3
OK Latest pynvim is installed.

Python virtualenv ~

OK no $VIRTUAL_ENV

Ruby provider (optional) ~

Ruby: ruby 3.0.3p157 (2021-11-24 revision 3fb7d2cadc) [x64-mingw32]
WARNING neovim-ruby-host not found.

ADVICE:

Run gem install neovim to ensure the neovim RubyGem is installed.
Run gem environment to ensure the gem bin directory is in $PATH.
If you are using rvm/rbenv/chruby, try "rehashing".
See :help |g:ruby_host_prog| for non-standard gem installations.
You may disable this provider (and warning) by adding let g:loaded_ruby_provider = 0 to your init.vim

Node.js provider (optional) ~

Node.js: v19.6.0
WARNING Missing "neovim" npm (or yarn, pnpm) package.

ADVICE:

Run in shell: npm install -g neovim
Run in shell (if you use yarn): yarn global add neovim
Run in shell (if you use pnpm): pnpm install -g neovim
You may disable this provider (and warning) by adding let g:loaded_node_provider = 0 to your init.vim

Perl provider (optional) ~

WARNING "Neovim::Ext" cpan module is not installed

ADVICE:

See :help |provider-perl| for more information.
You may disable this provider (and warning) by adding let g:loaded_perl_provider = 0 to your init.vim

==============================================================================
telescope: require("telescope.health").check()
Checking for required plugins ~

OK plenary installed.
OK nvim-treesitter installed.

Checking external dependencies ~

OK rg: found ripgrep 13.0.0 (rev af6b6c543b)
OK fd: found fd 8.7.0

===== Installed extensions ===== ~
Telescope Extension: lazygit ~

No healthcheck provided

Telescope Extension: live_grep_args ~

No healthcheck provided

Telescope Extension: refactoring ~

No healthcheck provided

Telescope Extension: ui-select ~

No healthcheck provided

==============================================================================
vim.lsp: require("vim.lsp.health").check()

LSP log level : WARN
Log path: C:\Users\DArt\AppData\Local\nvim-data\lsp.log
WARNING Log size: 336650 KB

vim.lsp: Active Clients ~

No active clients

==============================================================================
vim.treesitter: require("vim.treesitter.health").check()

Nvim runtime ABI version: 14
OK Parser: bash       ABI: 14, path: C:\Users\DArt\AppData\Local\nvim-data\lazy\nvim-treesitter\parser\bash.so
OK Parser: c          ABI: 14, path: C:\Users\DArt\AppData\Local\nvim-data\lazy\nvim-treesitter\parser\c.so
OK Parser: cpp        ABI: 14, path: C:\Users\DArt\AppData\Local\nvim-data\lazy\nvim-treesitter\parser\cpp.so
OK Parser: lua        ABI: 14, path: C:\Users\DArt\AppData\Local\nvim-data\lazy\nvim-treesitter\parser\lua.so
OK Parser: markdown   ABI: 14, path: C:\Users\DArt\AppData\Local\nvim-data\lazy\nvim-treesitter\parser\markdown.so
OK Parser: markdown_inline ABI: 14, path: C:\Users\DArt\AppData\Local\nvim-data\lazy\nvim-treesitter\parser\markdown_inline.so
OK Parser: python     ABI: 14, path: C:\Users\DArt\AppData\Local\nvim-data\lazy\nvim-treesitter\parser\python.so
OK Parser: qmljs      ABI: 14, path: C:\Users\DArt\AppData\Local\nvim-data\lazy\nvim-treesitter\parser\qmljs.so
OK Parser: bash       ABI: 14, path: C:\Program Files\Neovim\lib\nvim\parser\bash.dll
OK Parser: c          ABI: 14, path: C:\Program Files\Neovim\lib\nvim\parser\c.dll
OK Parser: lua        ABI: 14, path: C:\Program Files\Neovim\lib\nvim\parser\lua.dll
OK Parser: markdown   ABI: 14, path: C:\Program Files\Neovim\lib\nvim\parser\markdown.dll
OK Parser: markdown_inline ABI: 14, path: C:\Program Files\Neovim\lib\nvim\parser\markdown_inline.dll
OK Parser: python     ABI: 14, path: C:\Program Files\Neovim\lib\nvim\parser\python.dll
OK Parser: query      ABI: 14, path: C:\Program Files\Neovim\lib\nvim\parser\query.dll
OK Parser: vim        ABI: 14, path: C:\Program Files\Neovim\lib\nvim\parser\vim.dll
OK Parser: vimdoc     ABI: 14, path: C:\Program Files\Neovim\lib\nvim\parser\vimdoc.dll

I checked spell option doc: https://neovim.io/doc/user/options.html#'spell'
It looks spell becomes window-local option, I had thought it's a buffer-local option.
I'm using Neovim v0.9.1, and everything is going fine.

@DArt503 ,
Can you try install this plugin with branch linrongbin16/try-fix ? and see if it work.

OK, it looks like the Neovim API vim.api.nvim_set_option_value cannot accept either buf or win on 0.10-dev.

@linrongbin16  With NVim 0.9.1, I get this one:

(so same than the one with your test branch)

@DArt503 ,
I also update the fix branch, removed the nospell, you can also try and see if it solved the issue.

@linrongbin16 On NVim 0.9.1 with your last commit, it seems to open the window correctly but instantly close itself with that:

Could it be a trouble with another plugin installed ?

emmmm, can you try this init.lua:
vim.o.number = true
vim.o.autoread = true
vim.o.autowrite = true
vim.o.swapfile = false
vim.o.confirm = true
vim.o.termguicolors = true

local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
    vim.fn.system({
        "git",
        "clone",
        "--filter=blob:none",
        "https://github.com/folke/lazy.nvim.git",
        "--branch=stable", -- latest stable release
        lazypath,
    })
end
vim.opt.rtp:prepend(lazypath)

local opts = {
    defaults = { lazy = false },
}

require("lazy").setup({
    "folke/tokyonight.nvim",
    "nvim-tree/nvim-web-devicons",
    {
        "junegunn/fzf",
        build = ":call fzf#install()",
    },
    {
        "linrongbin16/fzfx.nvim",
        dev = true,
        dir = "~/github/linrongbin16/fzfx.nvim",
        opts = {},
        dependencies = {
            "folke/tokyonight.nvim",
            "nvim-tree/nvim-web-devicons",
            "junegunn/fzf",
        },
    },
}, opts)

require("lazy").sync({ wait = true, show = false })

vim.cmd([[
colorscheme tokyonight
]])

@DArt503 , that's an assertion log, it usually indicates some error, I could move that log from ERROR to DEBUG so it will disappear.

@linrongbin16 works correctly with your init.lua, so certainly something in my config, I will try to find what is it :)

I depressed the error log, now it will be only an info message from console, should not disturbing you.

Hi @DArt503 , do you have any other issues?

Hi @linrongbin16, thx for your time :)
With NVim 0.10, I have still the error with spell (with a clean config with your init.lua above and fzfx at master) (same with my dev config).
With NVim 0.9.1, (same clean config), no error, it works correctly.
With NVim 0.9.1 and my dev config, windows open and still close.
So, I think there is an issue with 0.10.0 and something wrong with my dev setup. I will try to move plugin per plugin on the clean config+NVim 0.9.1 to find which one is causing the issue. :)

The error in 0.9.1:

@linrongbin16  Found !
That was this part used to have powershell as shell instead cmd:
if (vim.fn.has("win32") == 1) or (vim.fn.has("win64") == 1) then 	vim.opt.shell = "powershell.exe" 	vim.opt.shellxquote = "" 	vim.opt.shellcmdflag = "-NoLogo -NoProfile -ExecutionPolicy RemoteSigned -Command " 	vim.opt.shellquote = "" 	vim.opt.shellpipe = "| Out-File -Encoding UTF8 %s" 	vim.opt.shellredir = "| Out-File -Encoding UTF8 %s" end

Still same trouble with Neovim 0.10.0 but it works with 0.9.1

Oh thanks @DArt503 , that's helping a lot!
I will try to check these options and make them compatible.

The 'v:null` action key should be another warning message, I could depress it.

@linrongbin16 ok!
It working correctly without the powershell trick, I still have an error while selecting a file:

Once acknowledge, file is opening as attended.

I will fix this by save user's shell options before launching the fzf command, and restore these options after launching.
And force fzf command always running on cmd.exe.

Hi @DArt503 , I fixed in https://github.com/linrongbin16/fzfx.nvim/pull/82, would you please pull again and try?

@linrongbin16 Works great ! Thx you! 👍
My last trouble is this one :

@linrongbin16 ok!
It working correctly without the powershell trick, I still have an error while selecting a file:
Once acknowledge, file is opening as attended.

Would you please:

Remove below two log files in :stdpath('data') directory (usually C:\Users\YourName\AppData\Local\nivm-data) if there's any:

fzfx.log
fzfx_shell_helpers.log.

Pull the latest main branch, and set this plugin config to { debug = { enable = true, file_log = true} }.
Start neovim and run :FzfxFiles, select 1 file and press enter, if it fails, press esc to quit the plugin.
Upload the generated two log files in :stdpath('data') directory:

fzfx.log
fzfx_shell_helpers.log

Hi @DArt503, I think I may missed one thing, what key do you press and generate this error? is that enter or ctrl-t, ctrl-v, ctrl-x?

I had depressed the error message in https://github.com/linrongbin16/fzfx.nvim/pull/94, would you please pull latest main and try again?

Hi @DArt503, I think I may missed one thing, what key do you press and generate this error? is that enter or ctrl-t, ctrl-v, ctrl-x?

I used 'enter' :)

I had depressed the error message in #94, would you please pull latest main and try again?

Works perfectly now ! thx

When using neovim 0.10 nightly I also run into this problem on Linux, the plugin works perfectly in the 0.9 version.
Error executing Lua callback: ...aw3i/.local/share/nvim/lazy/fzfx.nvim/lua/fzfx/popup.lua:154: 'buf' cannot be passed for window-local option 'spell'
stack traceback:
        [C]: in function 'set_buf_option'
        ...aw3i/.local/share/nvim/lazy/fzfx.nvim/lua/fzfx/popup.lua:154: in function 'new'
        ...aw3i/.local/share/nvim/lazy/fzfx.nvim/lua/fzfx/popup.lua:273: in function 'new'
        ...aw3i/.local/share/nvim/lazy/fzfx.nvim/lua/fzfx/files.lua:119: in function <...aw3i/.local/share/nvim/lazy/fzfx.nvim/lua/fzfx/files.lua:27>
Error executing Lua callback: ...aw3i/.local/share/nvim/lazy/fzfx.nvim/lua/fzfx/popup.lua:154: 'buf' cannot be passed for window-local option 'spell'
stack traceback:
        [C]: in function 'set_buf_option'
        ...aw3i/.local/share/nvim/lazy/fzfx.nvim/lua/fzfx/popup.lua:154: in function 'new'
        ...aw3i/.local/share/nvim/lazy/fzfx.nvim/lua/fzfx/popup.lua:273: in function 'new'
        ...aw3i/.local/share/nvim/lazy/fzfx.nvim/lua/fzfx/files.lua:119: in function <...aw3i/.local/share/nvim/lazy/fzfx.nvim/lua/fzfx/files.lua:27>

Neovim Version:
NVIM v0.10.0-dev-7c4d317

 Check Health Output
Checking plugin dependencies ~
- OK nvim-web-devicons installed.

Checking VCS tools ~
- The plugin requires at least one of the supported VCS tools to be valid.
- OK Git found.
- OK Git is up-to-date. (2.41.0)
- WARNING Configured `hg_cmd` is not executable: 'hg'

==============================================================================
hydra: require("hydra.health").check()

- WARNING vim.health.report_start() is deprecated, use vim.health.start() instead. :help |deprecated|
  This feature will be removed in Nvim version 0.11

Hydra: Checking settings ~
- WARNING vim.health.report_ok() is deprecated, use vim.health.ok() instead. :help |deprecated|
  This feature will be removed in Nvim version 0.11
- OK             `timeoutlen` (value: 1000) is set to a good value.

==============================================================================
lazy: require("lazy.health").check()

lazy.nvim ~
- OK Git installed
- OK no existing packages found by other package managers
- OK packer_compiled.lua not found

==============================================================================
lspsaga: require("lspsaga.health").check()

Lspsaga.nvim report ~
- OK `tree-sitter` found
- OK tree-sitter `markdown` parser found
- OK tree-sitter `markdown_inline` parser found

==============================================================================
mason: require("mason.health").check()

mason.nvim ~
- OK mason.nvim version v1.7.0
- OK PATH: prepend
- OK Providers:
    mason.providers.registry-api
    mason.providers.client
- OK neovim version >= 0.7.0

mason.nvim [Registries] ~
- OK Registry `github.com/mason-org/mason-registry version: 2023-08-29-proper-lemon` is installed.

mason.nvim [Core utils] ~
- OK unzip: `UnZip 6.00 of 20 April 2009, by Info-ZIP.  Maintained by C. Spieler.  Send`
- OK wget: `GNU Wget 1.21.2 built on linux-gnu.`
- OK curl: `curl 7.81.0 (x86_64-pc-linux-gnu) libcurl/7.81.0 OpenSSL/3.0.2 zlib/1.2.11 brotli/1.0.9 zstd/1.4.8 libidn2/2.3.2 libpsl/0.21.0 (+libidn2/2.3.2) libssh/0.9.6/openssl/zlib nghttp2/1.43.0 librtmp/2.3 OpenLDAP/2.5.16`
- OK gzip: `gzip 1.10`
- OK tar: `tar (GNU tar) 1.34`
- OK bash: `GNU bash, version 5.1.16(1)-release (x86_64-pc-linux-gnu)`
- OK sh: `Ok`

mason.nvim [Languages] ~
- OK Go: `go version go1.20.7 linux/amd64`
- OK Ruby: `ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [x86_64-linux-gnu]`
- OK PHP: `PHP 8.1.22 (cli) (built: Aug 14 2023 05:32:33) (NTS)`
- OK cargo: `cargo 1.65.0-nightly (4ed54cecc 2022-08-27)`
- OK luarocks: `/nix/store/a2rxnmqvazc6hgdws01hvnyrwrgf94a3-luarocks-3.9.1/bin/.luarocks-wrapped 3.9.1`
- OK node: `v14.21.3`
- OK java: `openjdk version "17.0.8" 2023-07-18`
- WARNING julia: not available
  - ADVICE:
    - spawn: julia failed with exit code - and signal -. julia is not executable
- OK python: `Python 3.10.12`
- OK Composer: `Composer version 2.5.5 2023-03-21 11:50:05`
- OK javac: `javac 17.0.8`
- OK RubyGem: `3.3.5`
- OK npm: `6.14.18`
- OK pip: `pip 22.0.2 from /usr/lib/python3/dist-packages/pip (python 3.10)`
- OK python venv: `Ok`

mason.nvim [GitHub] ~
- OK GitHub API rate limit. Used: 0. Remaining: 60. Limit: 60. Reset: Tue 29 Aug 2023 01:29:19 PM EEST.
  Install and authenticate via gh-cli to increase rate limit.

==============================================================================
nvim: require("nvim.health").check()

Configuration ~
- OK no issues found

Runtime ~
- OK $VIMRUNTIME: /nix/store/gix16fyw4xx7wyl6j8710yiyjwi2c3dg-neovim-unwrapped-7c4d317/share/nvim/runtime

Performance ~
- OK Build type: Release

Remote Plugins ~
- OK Up to date

terminal ~
- key_backspace (kbs) terminfo entry: `key_backspace=\177`
- key_dc (kdch1) terminfo entry: `key_dc=\E[3~`
- $COLORTERM="truecolor"

==============================================================================
nvim-treesitter: require("nvim-treesitter.health").check()

Installation ~
- OK `tree-sitter` found 0.20.0 (e85a279cf29da1b08648e27214dda20a841e57c8) (parser generator, only needed for :TSInstallFromGrammar)
- OK `node` found v14.21.3 (only needed for :TSInstallFromGrammar)
- OK `git` executable found.
- OK `cc` executable found. Selected from { vim.NIL, "cc", "gcc", "clang", "cl", "zig" }
  Version: cc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0
- OK Neovim was compiled with tree-sitter runtime ABI version 14 (required >=13). Parsers must be compatible with runtime ABI.

OS Info:
{
  machine = "x86_64",
  release = "5.19.0-50-generic",
  sysname = "Linux",
  version = "#50-Ubuntu SMP PREEMPT_DYNAMIC Mon Jul 10 18:24:29 UTC 2023"
} ~

Parser/Features         H L F I J
  - c                   ✓ ✓ ✓ ✓ ✓
  - css                 ✓ . ✓ ✓ ✓
  - elixir              ✓ ✓ ✓ ✓ ✓
  - go                  ✓ ✓ ✓ ✓ ✓
  - graphql             ✓ . . ✓ ✓
  - html                ✓ ✓ ✓ ✓ ✓
  - javascript          ✓ ✓ ✓ ✓ ✓
  - jsdoc               ✓ . . . .
  - json                ✓ ✓ ✓ ✓ .
  - lua                 ✓ ✓ ✓ ✓ ✓
  - markdown            ✓ . ✓ ✓ ✓
  - markdown_inline     ✓ . . . ✓
  - php                 ✓ ✓ ✓ ✓ ✓
  - python              ✓ ✓ ✓ ✓ ✓
  - query               ✓ ✓ ✓ ✓ ✓
  - regex               ✓ . . . .
  - rust                ✓ ✓ ✓ ✓ ✓
  - typescript          ✓ ✓ ✓ ✓ ✓
  - vim                 ✓ ✓ ✓ . ✓
  - vimdoc              ✓ . . . ✓

  Legend: H[ighlight], L[ocals], F[olds], I[ndents], In[j]ections
         +) multiple parsers found, only one will be used

==============================================================================
provider: require("provider.health").check()

Clipboard (optional) ~
- OK Clipboard tool found: xsel

Python 3 provider (optional) ~
- Disabled (loaded_python3_provider=0).

Ruby provider (optional) ~
- Disabled (loaded_ruby_provider=0).

Node.js provider (optional) ~
- Disabled (loaded_node_provider=0).

Perl provider (optional) ~
- Disabled (loaded_perl_provider=0).

==============================================================================
vim.lsp: require("vim.lsp.health").check()

- LSP log level : WARN
- Log path: /home/aw3i/.local/state/nvim/lsp.log
- Log size: 4551 KB

vim.lsp: Active Clients ~
- No active clients

Hi @AW3i, I start a discussion in upstream:
https://github.com/neovim/neovim/discussions/24928

In the source code, I use a new api after nvim-0.7, so maybe we can try to use the deprecated api (if it works).
I will test it today.

Hi @AW3i & @DArt503 , I submit PR #114 to fix the set spell=false on wrong buffer number issue. Would you please pull latest main branch and try again?

It is ok on my side with NVim 0.9.1 with last modification (no errors) @linrongbin16 !

@linrongbin16 the spell error is gone in v0.10 but I'm getting a similar error with number now
Error executing Lua callback: ...aw3i/.local/share/nvim/lazy/fzfx.nvim/lua/fzfx/popup.lua:156: 'buf' cannot be passed for window-local option 'number'
stack traceback:
        [C]: in function 'set_buf_option'
        ...aw3i/.local/share/nvim/lazy/fzfx.nvim/lua/fzfx/popup.lua:156: in function 'new'
        ...aw3i/.local/share/nvim/lazy/fzfx.nvim/lua/fzfx/popup.lua:274: in function 'new'
        ...aw3i/.local/share/nvim/lazy/fzfx.nvim/lua/fzfx/files.lua:119: in function <...aw3i/.local/share/nvim/lazy/fzfx.nvim/lua/fzfx/files.lua:27>

@AW3i  turns out the set number=false is also related to window.
Fixed in #116 , please pull and try.

It works now, thank you!

finally close this issue!


Fixes issue #1551 - Allow for SSL and non-SSL endpoint

Fixes #1551
This is a very naive way to enable both HTTP and HTTPS as our HTTP API currently only handles a single endpoint

Our first order of business is passing the Servlet TCK so naive in this case is fine. Once we are passing the Servlet TCK then we can look into making it more user friendly


Has IgnoreUnknown feature?

It's great project.
I saw @JsonIgnore but ignoreUnkown. Do you have ignoreUnknown plan?

And what would ignoreUnknown do exactly? What new functionality are you
looking for?

In Jackson, @JsonIgnoreProperties(ignoreUnknown = true) avoid throws exception if against unknown json property.
I think LoganSquare has no this issue.


struct as mapping key

Awesome! It works when deriving the Drop trait. Could you create a file with tests for the CI, as it's done in other examples?
Also, for the markdown file with explanations, you can structure it this way:

Introduction (present a use case that validates this requirement - can you think of one in a context where it makes sense to hash fields together and use it as a key?)
Motivation (why are we doing this? e.g. we can't use structs as mapping keys)
Solution (serialize fields, hash them together, and use it as key)
Example

This would be the perfect recipe for an easy-to-understand and meaningful example!


New customers can (we add) be deleted  while existing customers cannot

I noticed that when I add a customer, I can delete that customer. However, it seems that existing customers cannot be deleted from the database. For example, I've found that the customer Xavier Smith cannot be deleted using the code as it stands today. Nevertheless, great tutorial.
When debugging I noticed that GUID for Xavier within SQLite is:
{ d44c441c - ecda - 4eae - 8869 - b2b7147c7246}
and the GUID c# is looking for is:
{d44c441c-ecda-4eae-8869-b2b7147c7246}

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

ID: a4973ee6-8a33-75d3-f942-129628377fdb
Version Independent ID: 0c933c8f-6dbb-cb14-fce3-9ca724b18d82
Content: Create a customer database application - UWP applications
Content Source: windows-apps-src/enterprise/customer-database-tutorial.md
Product: uwp
Technology: app-types
GitHub Login: @mcleanbyron
Microsoft Alias: mcleans

Thanks for your feedback on the sample, and I'm glad you got some value out of the tutorial. I am following up to confirm whether it is by design that the existing customers cannot be deleted from the provided database, and I will revise the article as necessary. In the meantime, I am closing this issue because there does not seem to be a doc bug with the article itself at this time. If you have further feedback, please feel free to reopen this issue with more details.


[Bug] Diagnostic Mode Should Offer 'System Rebuild' When Encounering "Docker Error"

Currently it does not, just offers "View Logs"

needs some back up information


fixed bad movement and added xr origin

may not be in gorilla tag style but it lets you go fast so I think it would be more fun then the current slow feeling movement

This is never getting merged


NTPv4 Client - Sample

Initial test.
Based: https://gist.github.com/kassane/9f3b8d8fcd5a1a0adfca6c159d61dc92 (my old test w/ C++ asio)
cc: @MasterQ32

Ready to merge?

Yes


docs/variants/protectli_vp66xx/hardware-matrix.md: Update hardware info

Link is broken for the ISO, but it is not related to this PR. Merging.


fix

Fix #74 ( & #77 ??)
Use resumable upload if the file is larger than 256MB

@h98aaron you should link this PR to dev branch. It's a good practice. For further details refer this.


[material-ui][Checkbox] Asterisk placement aligned correctly

Potential fix for #39626

[x] I have followed (at least) the PR section of the contributing guide.

@axelbostrom I suggest just overriding the display property on the Stack instead to lessen the impact of the change (e.g. someone could be targeting classes on that Stack for styling)
diff --git a/packages/mui-material/src/FormControlLabel/FormControlLabel.js b/packages/mui-material/src/FormControlLabel/FormControlLabel.js
index fa0d4cf32c..be38944c23 100644
--- a/packages/mui-material/src/FormControlLabel/FormControlLabel.js
+++ b/packages/mui-material/src/FormControlLabel/FormControlLabel.js
@@ -166,7 +166,7 @@ const FormControlLabel = React.forwardRef(function FormControlLabel(inProps, ref
     >
       {React.cloneElement(control, controlProps)}
       {required ? (
-        <Stack direction="row" alignItems="center">
+        <Stack direction="row" alignItems="center" sx={{ display: 'block' }}>
           {label}
           <AsteriskComponent ownerState={ownerState} aria-hidden className={classes.asterisk}>
              {'*'}

Because using span inside span is not good

I don't think there is anything inherently wrong with spans inside spans 🤔

@mj12albert Right, but I feel like using stack for the asterisk is very uncessesary, since there is no need for horizontal or vertical aligntment for the asterisk. So yeah either a div or span inside span. I don't think there is an issue with a span inside a span either, but not sure.

I don't think there is anything inherently wrong with spans inside spans 🤔

Yes, you are right there is nothing wrong with doing it. It's just less semantic.
The span element is a generic inline container for phrasing content, which does not inherently represent anything. It should be used only when no other semantic element is appropriate.

I feel like using stack for the asterisk is very uncessesary

You are right that is is unnecessary, but to remove it entirely now is a bigger change (that I'd like to avoid) than updating a style

Just a quick note: Stack was introduced in #37831 to address the asterisk placement issue with different label positions in #37281. Removing it might affect #37281.

@ZeeshanTamboli ok I will look into this this weekend or on monday.
Anyway, what is the best solution using span stack or div?

what is the best solution using span stack or div

Let's keep using the Stack and try to fix the issue by adjusting the styles alone to avoid breaking changes

This change ensures that the asterisk correctly appears at the end of the label text within the FormControlLabel component, even when the label spans multiple lines, but uses nested spans but keeps the stack component.

BTW I've added a sandbox to the description and checked out @ZeeshanTamboli's comment:

The changes did not break different labelPlacements

Thanks for the help! Not the most code I have written but a great learning experience :)


pkg: u-boot: update RPi4 precompiled dtb

After update u-booot to 2021.04 we have a broken XEN on rpi4. This update fix this bug.
dtb from 5.10.7 kernel with this patch - https://github.com/lf-edge/eve/blob/master/pkg/kernel/patches-5.10.x/0003-arch-arm-dts-rpi4-rename-usb-pci-child-node-and-remo.patch

Signed-off-by: Aleksandrov Dmitriy<EMAIL_ADDRESS>

I am not sure I'm following @Insei -- where did you take that DTB binary? If it is from /boot/dtb/.../ -- then it is what's already has to be picked by GRUB.

I am not sure I'm following @Insei -- where did you take that DTB binary? If it is from /boot/dtb/.../ -- then it is what's already has to be picked by GRUB.

Yes, from there, but differences in kernel-dtb and u-boot-dtb caused XEN to break on Rpi4.
Even by setting dtb by grub, we are still interacting with what u-boot initialized. (Configuration Tables and EFI Memory Reservation)
Also, do not forget about https://github.com/U-Boot-EFI/EFI_DT_FIXUP_PROTOCOL

Sure, I'm not against merging this @Insei -- but can you please dig deep and find out what EXACTLY is breaking. We need to have this ability to have different DTBs between u-boot and Xen and/or Kernel phases.

Yes, I'll dig deeper, and maybe I can do something sensible, but for now we will make it work like this.


MB-16065: Fix searchable_full_name function to reference public.f_unaccent

Jira ticket
Summary
Use schema qualified f_unaccent to fix errors in deployed environments. See jira ticket for log examples
Verification Steps for the Author
These are to be checked by the author.

[ ] Tested in the Experimental environment (for changes to containers, app startup, or connection to data stores)
[ ] Have the Jira acceptance criteria been met for this change?

Verification Steps for Reviewers
These are to be checked by a reviewer.
Setup to Run the Code

Instructions for starting storybook
Instructions for starting the MilMove application
Instructions for running tests

How to test
Log into the experimental environment and look at the logs in /aws/rds/instance/app-loadtest/postgresql
Database
Any new migrations/schema changes:

[ ] Follows our guidelines for Zero-Downtime Deploys.
[ ] Have been communicated to #g-database.

Messages

:book:
:link: MB-16065

  Generated by :no_entry_sign: dangerJS against 832815566e758b75fb022e86d6bb64cf9566e3cd

I'm guessing we just need to fix the usage in searchable_full_name we create and not any of our app query code that also references f_unaccent directly.

From the logs, I don't think so, but I could be wrong. This change seems necessary and if it's not sufficient, we can make additional PR(s)


Add close directions to Popup as Screen Reader only dialog

Bug Report
Description
When a user activates a popup, it's unclear about what has been opened when using a screen reader, and how to interact with the widget. Perhaps we should include instructions on how to close the popup when they are in one when using a Screen Reader?

Ran into this while using VoiceOver on iOS.


Fix failing tests on Windows

Let me know  if instrumenting tape is a bad idea. I'm new to TAP. Adding custom assertion function is very common in frameworks like mocha and chai.
Fixes #52.

This conflict with master; @Evgenus, are you interested in rebasing it?

All tests are now passing on windows, per #113.


Add ppc64le support to dora-metrics

This PR will add ppc64le support to the dora-metrics.

@flacatus @albarbaro can you please review this PR ?


setMonthYear doesn't seem to do anything

When I try to use the setMonthYear nothing happens.
I have setup it like this:
<VueDatePicker v-model="dateRange" ref="daydatepicker" @update-month-year="handleMonthYear" range
format="dd.MM" locale="fi"
disable-month-year-select :month-change-on-scroll="false" :enable-time-picker="false"
@update:model-value="dayChanged" />
and code that executes when I press button:
monthChanged() {
const month = 6;
const year = 2024;
this.$refs.daydatepicker.setMonthYear({ month, year });
},
Expected behavior
month should change. But it doesn't. It's only displaying the current month (February). And the event update-month-year do not trigger.
What I'm doing wrong? it doesn't give any error. If I console log the ref it is there and I can see that there is setMonthYear method.
Desktop & mobile (please complete the following information):

Chrome Version 121.0.6167.161 (Official Build) (64-bit)
"@vuepic/vue-datepicker": "8.1.0",

The method works, however, if you are not in the inline mode, it will not work in your case, because when you open the menu, it will auto-correct the month. The way to bypass this is to provide onOutsideClick from the config prop and either do nothing, or check if the target el is a button and ignore the action

The method works, however, if you are not in the inline mode, it will not work in your case, because when you open the menu, it will auto-correct the month. The way to bypass this is to provide onOutsideClick from the config prop and either do nothing, or check if the target el is a button and ignore the action

TypeError: _ctx.onOutsideClick is not a function
Did you mean onClickOutside ? Even with onClickOutside I didn't get it to work. Could you provide example code how it should be setup ? I'm not using ts or composition.
Thanks.

https://vue3datepicker.com/props/general-configuration/#config

Problem still occurs when you don't have the calendar open when you change the month, even with the empty function.

change month by outside button or event or what ever
click the input to open the calendar
calendar will change the month to current month even though I changed it on step 2 and I have the config prop (:config="{onClickOutside: () => {}}")

I tried to change the month on vue-datepickers @open event but it is emitted before the component changes the month. So If I change the month in open event it will be overrun by the component and set again to the current month.
Am I missing something or is it really this hard to programmatically set desired month?


Find a more fitting icon for start and end of loop

Find a more fitting icon for start and end of the loop, which are currently labeled with A and B. This does not seem to be understood very good, so icons which fit the usecase better might improve this.
Suggestion is something like |-> for start and <-| as end, but material.io does not seem to have those.

Added a clock icon with a plus from material.io, which is at least a little bit more understanding


Unified completion generation into a single function

Did that this independently of your last commit :P
Also added yet another small snippet improvement, starting to work on imports now.

This looks amazing!


Implement opening files with context manager or raw?

@d-w-moore I'm not sure whether it is recommended to implement file opening as a context manager or just as a raw operation and relying on users to handle closing the files again properly?

References to open irods files (ie data objects) have  been a sticky subject.  If the associated session object goes out of scope before the open "file", you'll have problems because the connection to irods is now closed, so  flushing, closing, etc. won't work.
I think the answer is for a session object to persist as long as the fs object.  Users of fs-irods can do something of the form:
with fs.open_fs("irods://...") as abstract_file:
  # do stuff with abstract_file

The ownership (and object lifetime management) hierarchy will be:
abstract_file

session
open data descriptor

or something similar, and we'll write our del, enter and exit methods appropriately.
This way, we'll allow people to use the abstract_file  object either as context manager or as mundane Python objects that follow the normal rules of object lifetimes.  (ie expiring at the end of their scope, or at interpreter exit).


[main] Upgrade to latest dependencies

Bump after control-protocol cut -nak3
/cc knative-sandbox/networking-wg-leads
/assign knative-sandbox/networking-wg-leads
Produced by: knative-sandbox/knobots/actions/update-deps

/lgtm
/approve


Vac Banned

Used for 3-4 hours randoInjector, added junk to all cpp & used winlicense aswell

I use this without junkcode and wityh rando injector. I´ve never been banned.
Tip: VMProtect the injector and the dll.

I don’t use junkcodes or VMProtect and I have never been VAC banned with this.


Level buddy integration / compatibility?

First of all, really cool project!
It would be cool if this could integrate or at least ensure compatibility with the Level Buddy Blender addon, see:
https://matt-lucas.itch.io/level-buddy
or for a modified version:
https://github.com/jpcy/bfg_forge

@poVoq Are you running into any issues with using either of these addons alongside BlenderPanda? BlenderPanda should be able to play nicely with them (assuming blendergltf can export the scenes). What kind of integration are you interested in?

I honestly have not tried it. I am just thinking it would be nice to have a smooth export experience and have Panda3D compatible entity pre-sets for stuff like spawn-points etc that are commonly used in games.

These report is rather broad and not easily actionable, so I'm going to close it. If you run into specific issues with using level buddy with BlenderPanda, or have specific feature requests, please open new issues.


[SPARK-36996][SQL] fixing "SQL column nullable setting not retained as part of spark.read" issue

What changes were proposed in this pull request?

Changes included in this PR:

alwaysNullable value as "False" in getQueryOutputSchema function of JDBCRDD.scala so all column Nullable value will be fetched from SQL metadata.
pass "nullable" value as true  if column typeName is "TIMESTAMP" ; this changes is included in order to satisfy issue reported in SPARK-19726.

Why are the changes needed?

We require this changes in order to fetch exact Nullable value from SQL metadata otherwise all columns be treated as NULLABLE.
Does this PR introduce any user-facing change?

No
How was this patch tested?

Tested in Internal Cluster
Used available Test Cases

And for Timestamp scenario
SQL:
create table timestamp_test(id int(11), time_stamp timestamp not null default current_timestamp);
SPARK:
scala> val df = spark.read.format("jdbc").option("database","Test_DB").option("user", "root").option("password", "").option("driver", "com.mysql.cj.jdbc.Driver").option("url", "jdbc:mysql://localhost:3306/Test_DB").option("dbtable", "timestamp_test").load()
df: org.apache.spark.sql.DataFrame = [id: int, time_stamp: timestamp]
scala> df.printSchema()
root
|-- id: integer (nullable = true)
|-- time_stamp: timestamp (nullable = true)

Can one of the admins verify this patch?

@wzhfy


Output adjacency_graphs as UTF-8

Updated build_keyboard_adjacency_graphs.py to python 3

Thanks for the PR. Seems like lowe want's to handle that differently in dropbox/zxcvbn/issues/190.
I leave it open for the moment, but think I will wait for the upstream solution.


config for Azure OpenAI

Objective
Handle Azure OpenAI configs
Motivation
shai list all files
? Select a command:
❯ ls
  Generate new suggestions
  Dismiss

Result latency

4 seconds for Azure hosted OpenAI
8 seconds for OpenAI

Example Azure OpenAI config
{
  "OPENAI_API_TYPE":"azure",
  "OPENAI_API_KEY": "PUT-YOUR-SECRET-KEY-HERE",
  "OPENAI_API_VERSION": "2023-05-15",
  "OPENAI_MODEL": "gpt-3.5-turbo",
  "SHAI_SUGGESTION_COUNT": "3",
  "AZURE_DEPLOYMENT_NAME": "test-whychain",
  "AZURE_API_BASE": "https://whychaintest.openai.azure.com/"
}

Twitter handle: @boris_dev

This looks good! Although I think we can also use the n param https://api.python.langchain.com/en/latest/chat_models/langchain.chat_models.azure_openai.AzureChatOpenAI.html
Could you make that change?

This looks good! Although I think we can also use the n param https://api.python.langchain.com/en/latest/chat_models/langchain.chat_models.azure_openai.AzureChatOpenAI.html
Could you make that change?

Done!

Fantastic!


Responsive width

Hi,
Is it possible to make the <ReactPlayer> width responsive?
For example to inherit the width of the div or td in which is placed?
Thanks

You should be able to pass 100% to the width and height props and it will fill it's container. If you want responsive width and aspect ratio, do something like this:
$player-ratio: 1280 / 720;

.playerWrapper {
  position: relative;
  padding-top: 100% / $player-ratio;
}

.player {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

<div className='wrapper'>
  <ReactPlayer
    className='player'
    playing
    url={...}
    width='100%'
    height='100%'
  />
</div>

Also see example jsFiddle.

Thanks!

This would be very helpful to include in the README.

This does not work for vertical videos. Is there a solution where the padding-top is not static and it is calculated from the video dimension?

@vicentel89  Same issue here !

It depends what type of video you are playing.
If you are playing a raw video file, just set width='100%' height='auto' and the video element will fill the container and retain aspect ratio (the same way an img does). Example: https://jsfiddle.net/f5kxarjq/
If you are playing something that uses an iframe (youtube, facebook etc), they have no knowledge of the aspect ratio of the video, so a dynamic aspect ratio is not possible.
If you know the aspect ratio of your vertical video, this trick still works – just reverse the numbers. So the padding-top line would become:
padding-top: 177.78% /* Player ratio: 100 / (720 / 1280) */`

What if I wanted to make it responsive within a flexbox container with two columns? Is that possible with the above solution?

If you know the aspect ratio, the padding-top trick should work in any container.

everything you guys are saying is absolutely right but dont forget to  add this line of code " ! important "
..wrapper {
position: relative !important;
padding-top: 56.25% / !important* Player ratio: 100 / (1280 / 720) */
}
.player {
position: absolute !important;
top: 0 !important;
left: 0 !important;
width: 100% !important;
height: 100% !important;
}

Thank you for all the help everyone. Mine case was I wanted specific height and inside that I wanted video player to be full width.


Feature for distributed plotting/farming

A feature that can plotting on a dedicated or multiple device and auto transfer to the farmer would be very nice.

Yes, very cool idea.  The official Docker image handles this by setting environment variables to enter harvester-only mode.  I'll see if I can do something for plotting only.  Then the Machinaris WebUI will only show the relevant functions running on that node.  Great suggestion!

So, in the last two weeks, with the improvements to the different modes supported by Machinaris, its become clear that some distributed communications support amongst Machinaris nodes would be useful.
Ideally, the Machinaris fullnode would present a single monitoring pane showing all the Machinaris nodes in the overall farm.  Each "worker" node would connect back to the fullnode to report status and receive control.
Feel free to add ideas here on how best we can accomplish this distributed architecture.  Thanks all!

So the quick and dirty way would be to have just iframes in the mainnode to control the webui from the subnode trough the mainnode...
because of all provide a webui...
the desirable way would be to have a database running on the mainode and let every subnode report into the database...
the subnode also have to watch into the database, to control them through the mainode...
... puh ... first shot ... let's discuss

So, in the last two weeks, with the improvements to the different modes supported by Machinaris, its become clear that some distributed communications support amongst Machinaris nodes would be useful.
Ideally, the Machinaris fullnode would present a single monitoring pane showing all the Machinaris nodes in the overall farm. Each "worker" node would connect back to the fullnode to report status and receive control.
Feel free to add ideas here on how best we can accomplish this distributed architecture. Thanks all!

RESTful API or Websocket.
Auto-discovery and manual node addition.

Hi all! Using a single Machinaris controller instance (WebUI) to manage multiple Machinaris workers on your LAN is now available in the test version.  Please give it a try and provide your feedback here!

Closing as v0.4.0 has been released.  Thanks for the contribution!


Unable to start avatar

Hello Team,
I am referring https://github.com/Azure/gen-cv/tree/main/avatar/interactive link to create talking avatar. I entered Key, zone everything in-place. API is running fine.
Error message
[2024-07-19T10:38:16.188Z] Unable to start avatar. Result ID: 33D085E9753B4F1D83F3009652A4B098
main.js:137 Unable to contact server. StatusCode: 1006,
                    wss://westus2.tts.speech.microsoft.com/cognitiveservices/websocket/v1?enableTalkingAvatar=true Reason:  undefined

startAvatarAsync2 :{"privResultId":"33D085E9753B4F1D83F3009652A4B098","privReason":1,"privErrorDetails":"Unable to contact server. StatusCode: 1006,\n                    wss://westus2.tts.speech.microsoft.com/cognitiveservices/websocket/v1?enableTalkingAvatar=true Reason:  undefined","privProperties":{"privKeys":["CancellationErrorCode"],"privValues":["ConnectionFailure"]}}

Hi @devendra80 , can you give a bit more details on the overall setup? Are you running the solution locally, or on Azure? Did you copy the latest secrets template from the readme?


fix: add missing include

more fixes may be needed

FYI: This fixed my local ubuntu build. Ready for merge?

Sounds good to me, LGTM :P


Allow other projects to use object mapper configuration in order to read vaunt files

solution to be discussed, maybe module with some class that will read vaunt files

And tests may be updated - they will use exposed objectmapper instead of hidden by private


Future Work

Generators

Static VTables
Make vtables available as addresses without needing an instance of the object first. Also provide vtable size via attribute argument. Would be integrated with the virtual function generator and generate a properly-sized vtable struct.
Inheritance
[Inherits] attribute that generates struct members from the parent into the child so all fields and methods show as available without having to do AtkTextNode->AtkResNode for example. This generator would need info from all other generators so first combine all generators into a single generator (relatively easy) beforehand.

IDA

Reformat data.yml
There are some constructs we don't really support well. Might switch off yaml to something "simpler" since we don't need yaml features.
CExporter
Will likely rewrite this using Roslyn syntax analysis rather than reflection. In addition to exporting types, export method signatures.
Rewrite import script
Import types and use method signatures to set function argument types appropriately. Also want to pull in some other forms of smart renaming (rename EXD getters via the root, maybe rename unknown agents and addons automatically with their IDs and uld names, more ideas here???)

Other
Anything I'm forgetting. Feel like we've talked about other stuff before.
I feel like some way to indicate which structs have been 'validated' after a patch (anything that didnt change size is probably safe, and anything that changed size and has had its offsets verified) would be nice. There's no doubt numerous "broken" (outdated) offsets and having some way of tracking that would be useful.

CExporter
Will likely rewrite this using Roslyn syntax analysis rather than reflection. In addition to exporting types, export method signatures.

This recently received quite the rework and is better at pulling all the data now instead of just struct types. This also included a rewrite of the import method since the file type and layout changed from using c++ headers to a YAML layout

Rewrite import script
Import types and use method signatures to set function argument types appropriately. Also want to pull in some other forms of smart renaming (rename EXD getters via the root, maybe rename unknown agents and addons automatically with their IDs and uld names, more ideas here???)

IDA now has the fullrun script that runs the data.yml import then exdgetters then structimporter so the only extra addition would possibly be unknown agents and addons

Closing this as it would be better to keep the one points that are in here that hasn't been touched into a separate issue.
That being: Reformat data.yml


Add support for mark (highlight) inline tag when converting from HTML.

Summary
Support for mark (highlight) HTML inline tag style when converting from HTML.

Would it be a better idea to allow for users to pass in a custom inlineTags object which gets merged with the current inlineTags object to convertFromHTMLtoContentBlocks so that we could override or customise this for our particular needs?


Inconsistent compile-time errors for const keys that override == with Object's ==.

Example:
class A {
  bool operator ==(Object o);

  const A();
  int get hashCode => 42;
}

main() {
  const map = const {A() : 43};
}

Experimental flags: constant-update-2018
This emits an error in dart2js and DDK but not in the VM or DDC.
The issue here is that, though A overrides '==', it overrides '==' with Object's '=='. The spec says that merely overriding '==' (even with Object's '==') is enough to make this a compile-time error, so it seems CFE is correct here. But we've been letting this case slide until now. This pattern occurs somewhat frequently (e.g., third_party/dart/protobuf/lib/src/protobuf/protobuf_enum.dart).

Interesting bug @Markzipan!
@leafp @lrhn - I'm honestly not sure what is the intended behavior here.
Adding milestone 2.3 in case we need to take some action, in particular:

If this is not allowed - we probably need to message a breaking change
If we want to allow it - we need to ask the CFE team to remove the compile-time error (please reassign the area in that case)

The spec is careful to talk about having an implementation different than that of Object.==, not overriding.
This is just a bug in the CFE that should have been fixed by d75a49a44f3140c6bddc60afa774c335b581d397.

@kmillikin wrote:

The spec is careful to talk about having an implementation different
than that of Object.==, not overriding

Right, I made that very explicit.

Latest front end (after d75a49a44f3140c6bddc60afa774c335b581d397) doesn't produce an error.
@Markzipan can you verify that d75a49a44f3140c6bddc60afa774c335b581d397 works for you?

@askeksa-google Yes, the newest update works! I suppose we should update that in g3 roll.


Remove deprecated instrument from event container

Removed the inst container from the event.
Added subarray attributes / arguments where appropriate.
The only thing failing currently is the muon code that get's removed in #1261, so as soon as that is merged, everything here should be passing.

Thanks for doing this Max! I'll approve as soon as tests pass

Ok, this should be passing now.


Language Reference rewrite for v0.12 release

Rewrite the language reference based on a lightweight code generation process
that leverages the language grammar for tremor written in LALRPOP rather than
using a hand maintained EBNF file and online railroad diagram generators.
The generator has been submitted to LALRPOP as a draft PR here: https://github.com/lalrpop/lalrpop/pull/658

This is resolved in the v12 refresh


Mattermost connection error

Hey.
Encountered a problem with connection to Mattermost server (same VM as Mattermail).
I can connect to mail account, I can see new letters, but Mattermail cannot post in Mattermost channel because of untrusted certificate.
Is there a method to override this?

have you tried adding
"TLSAcceptAllCerts": true

to your config.json

{
"Directory": "./data/",
   "Profiles":[
           {
                   "Name":     "*****",
                   "Channels": ["#*****"],

                   "Email":{
                           "ImapServer": "******:993",
                           "Username":   "******@******",
                           "Password":   "******",
                           "StartTLS":   true,
                           "TLSAcceptAllCerts": true
                   },

                   "Mattermost":{
                           "Server":   "http://******",
                           "Team":     "******",
                           "User":     "******",
                           "Password": "******",
                           "UseAPIv3": false,
                           "TLSAcceptAllCerts": true
                   },

                   "RedirectBySubject": false
           }
   ]

}
On пн, лют 5, 2018 at 4:40 PM, Carsten Seeger
<EMAIL_ADDRESS>wrote:

have you tried adding
"TLSAcceptAllCerts": true
to your config.json
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Still same.
DEBG TechSupport     21:10:17 MailProviderImap.CheckNewMessage:
PostMail uid: 5534
DEBG TechSupport     21:10:17 Login user:@* team:it-section
url:http://****:
DEBG TechSupport     21:10:18 CMVEaA OK UID FETCH completed
DEBG TechSupport     21:10:47 Mattermost Api V4 version:
EROR TechSupport     21:10:47 MailProviderImap.CheckNewMessage: Error
handler
EROR TechSupport     21:10:47 MatterMail.InitMatterMail Error on check
new messsage: execute MailHandler: login on Mattermost to post mail
message: login on mattermost V4: http:///api/v4/users/login:
model.client.connecting.app_error, Post
http:///api/v4/users/login: dial tcp : i/o timeout
DEBG TechSupport     21:10:47 check new message: execute MailHandler:
login on Mattermost to post mail message: login on mattermost V4:
http:///api/v4/users/login: model.client.connecting.app_error,
Post http://****/api/v4/users/login:
dial tcp *****: i/o timeout
INFO TechSupport     21:10:47 Try again in 30s
On ср, лют 7, 2018 at 2:32 PM, Rodrigo<EMAIL_ADDRESS>wrote:

Please test with the last commit using "TLSAcceptAllCerts": false,
was fixed an issue with StartTLS
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

The problem seems to be when Mattermail tries to login to the Mattermost.
login on Mattermost to post mail message:
login on mattermost V4:
http://*****/api/v4/users/login:
model.client.connecting.app_error, Post http://******/api/v4/users/login:
dial tcp *********:
i/o timeout

The login connection reaches timeout, check the Mattermost configuration in config.json and check your network configuration

Yup. I know, I've checked logs.
I think the trouble is because unsigned SSL-cert in Mattermost.
We can ignore unsigned certificate on mail server, but can't ignore
unsigned cert on Mattermost. Can you add an option like
"TLSAcceptAllCerts" for connection between Mattermail and Mattermost?
On чт, лют 8, 2018 at 1:21 PM, Rodrigo<EMAIL_ADDRESS>wrote:

The problem seems to be when Mattermail tries to login to the
Mattermost.
login on Mattermost to post mail message:
login on mattermost V4:
http:///api/v4/users/login:
model.client.connecting.app_error, Post
http://*/api/v4/users/login:
dial tcp *********:
i/o timeout
The login connection reaches timeout, check the Mattermost
configuration in config.json and check your network configuration
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

I don't know if it's correct but in you log I can see http: instead of https:

could be a my fault, but nope. It doesn't connect with nor without the
"s".
On чт, лют 8, 2018 at 1:42 PM, Rodrigo<EMAIL_ADDRESS>wrote:

I don't know if it's correct but in you log I can see http: instead
of https:
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Great, I'll to do some tests to see if it's possible to make the Mattermost client to accept all the certificates.


how to use?

Hello, I dont have an ML background, but would like to try this out.
How do I get the x and y gaze prediction output, given a face image, width and height of screen and maybe some camera details (distance of camera to screen, and camera size maybe)?
An example python implementation would be great, thanks a lot :D
Cheers!
P.S. Can this be used to for different screen size? like instead of an iPhone screen, a 24 inch monitor is used?

Hi @mranosa, I am not sure if I really understand your 1st question. If you are asking for a conceptual explanation on why this model will work, I would recommend you to read their paper.
As for the 2nd question, yes, you can use this model for a different screen size. But you will need to train the model on the corresponding dataset.


Please add hungaryan http://ztracker.cc

Hello,please add this provider, i can't do it.

@tibikepc i tried to add it, but i failed to make succesful login via burst. my parsing rules should work, but how to make login works - i do not know, maybe @elgatito can give some advice. maybe we need to get and send PHPSESSID= in cookies somehow.
anyway, you can try to change my code and make login work somehow.
add to providers.json:
    "ztracker": {
        "anime_keywords": "{title:original} s{season:2}e{episode:2}",
        "anime_keywords_fallback": "{title:original} s{season:2}",
        "anime_query": "",
        "base_url": "http://ztracker.cc/browse_old.php?keywords=QUERYEXTRA&search_type=t_name&cat=0",
        "color": "FFFFFFFF",
        "enabled": true,
        "general_extra": "",
        "general_keywords": "{title:original}",
        "general_query": "",
        "language": null,
        "languages": "hu",
        "login_failed": "",
        "login_object": "{'username': USERNAME, 'password': PASSWORD}",
        "login_path": "/takelogin.php",
		"login_headers": "{'Origin': 'http://ztracker.cc', 'Referer': 'http://ztracker.cc/login.php'}",
        "movie_extra": "",
        "movie_keywords": "{title:original} {year}",
        "movie_query": "",
        "name": "Ztracker.cc",
        "parser": {
            "infohash": "",
            "name": "item(tag='a', order=2)",
            "peers": "item(tag='td', order=8)",
            "row": "find_once('table', order=1).find_all('tr', start=2)",
            "seeds": "item(tag='td', order=7)",
            "size": "item(tag='td', order=11)",
            "torrent": "'http://ztracker.cc/download.php?id=%s' % item(tag='a', attribute='href', order=2, divider=('=', 1))"
        },
        "predefined": false,
        "private": true,
        "season_extra": "",
        "season_extra2": "",
        "season_keywords": "{title:original} season {season:2}",
        "season_keywords2": "{title:original} s{season:2}",
        "season_query": "",
        "separator": ".",
        "show_query": "",
        "subpage": false,
        "tv_extra": "",
        "tv_extra2": "",
        "tv_keywords": "{title:original} s{season:2}e{episode:2}",
        "tv_keywords_fallback": "{title:original} s{season:2}"
    }

(depending on where in file you add this - add appropriate ,)
and to to settings.xml add:
    <setting label="[B]Ztracker[/B]   [COLOR gray][$ADDON[script.elementum.burst 32118]][/COLOR]" id="use_ztracker" type="bool" default="false" />
      <setting id="ztracker_username" label="32015" type="text" default="" subsetting="true" visible="eq(-1,true)" />
      <setting id="ztracker_password" label="32016" type="text" default="" option="hidden" subsetting="true" visible="eq(-2,true)" />
      <setting id="ztracker_alias" label="32077" type="text" default="" subsetting="true" visible="eq(-3,true)" />
      <setting id="ztracker_contains" type="enum" label="32080" subsetting="true" lvalues="32081|32082|32083" visible="eq(-4,true)" />

Okey,thank you, @elgatito please help me!

@antonsoroko @tibikepc
I've added support for having login_prerequest that would make a first HTTP request before making login request.
For ztracker.cc it would be like this:
    "ztracker": {
        "anime_keywords": "{title:original} s{season:2}e{episode:2}",
        "anime_keywords_fallback": "{title:original} s{season:2}",
        "anime_query": "",
        "base_url": "http://ztracker.cc/browse_old.php?keywords=QUERYEXTRA&search_type=t_name&cat=0",
        "color": "FFFFFFFF",
        "enabled": true,
        "general_extra": "",
        "general_keywords": "{title:original}",
        "general_query": "",
        "language": null,
        "languages": "hu",
        "login_prerequest": "http://ztracker.cc/login.php",
        "login_failed": "Felhasználónév",
        "login_object": "{'username': USERNAME, 'password': PASSWORD}",
        "login_path": "/takelogin.php",
        "login_headers": "{'Origin': 'http://ztracker.cc', 'Referer': 'http://ztracker.cc/login.php'}",
        "movie_extra": "",
        "movie_keywords": "{title:original} {year}",
        "movie_query": "",
        "name": "Ztracker.cc",
        "parser": {
            "infohash": "",
            "name": "item(tag='a', order=2)",
            "peers": "item(tag='td', order=8)",
            "row": "find_once('table', order=1).find_all('tr', start=2)",
            "seeds": "item(tag='td', order=7)",
            "size": "item(tag='td', order=11)",
            "torrent": "'http://ztracker.cc/download.php?id=%s' % item(tag='a', attribute='href', order=2, divider=('=', 1))"
        },
        "predefined": false,
        "private": true,
        "season_extra": "",
        "season_extra2": "",
        "season_keywords": "{title:original} season {season:2}",
        "season_keywords2": "{title:original} s{season:2}",
        "season_query": "",
        "separator": ".",
        "show_query": "",
        "subpage": false,
        "tv_extra": "",
        "tv_extra2": "",
        "tv_keywords": "{title:original} s{season:2}e{episode:2}",
        "tv_keywords_fallback": "{title:original} s{season:2}"
    }

Authentication now works, but I was not fixing parsing part, so anyone can now do that.

@tibikepc i made it work. you can test it: open https://github.com/antonsoroko/script.elementum.burst/tree/add-ztracker and click Code-> "download zip" and then install it in kodi - easiest way.
or manually make changes from #371 and https://github.com/elgatito/script.elementum.burst/commit/591c79364895db3178c15a8ba1960b34c05a424b - hard way.
after you test it - you can improve search queries by yourself if you want - just create PR with your changes.


CBZ, CBR, CB7, EPUB, MOBI preview support

Description of the new feature / enhancement
Enable preview support in Windows Explorer (cover for icon and content preview in  detail same PDF)
Scenario when this would be used?
In browse in Windows Explorer ...
Supporting information
Nothing

I'd reach out to the apps that render those.  Most of those are comic book formats. I don't see PowerToys itself doing the rendering surfaces for those as this is outside our core goals


dsl: Patch issue #1578 (Check legality of symbolic derivatives)

Fix #1578

Mumble mumble...
In fact, here's another idea: what if we just ran the "stay within halo" check at indexify() time? that is, here: https://github.com/devitocodes/devito/blob/master/devito/types/basic.py#L992
essentially when the mathematical object u(t, x, y) gets transformed into a lower level object u[t, x, y]. This way we would also intercept misues of the indexed notation: https://github.com/devitocodes/devito/wiki/FAQ#what-is-the-indexed-notation
thoughts?

I think I like the second one better indexify yes. It would cat indexify/subs/...... cases where an out of halo index may have been introduced out side of FD as well. I don't think testing it in derivative is the way to go indeed.

is this patch really going to catch for example a situation like u.dx.dx.dx.dx... ? and, if so, can we add it to the test case

It doesn't! I wasn't aware of that. MFE updated!

I'm not sure looking at deriv_order and space_order is enough. For example, what if we use left or right derivatives (eg u.dxl.dxl.dxl...), which tend to create unbalanced stencils?

You're right, space_order is not enough, we need to check _size_nodomain sizes for each dimension side.
I was trying to check indices on indexify, and things worked well in common cases. The problem is when we have functions whose indices have been replaced (e.g. f.subs(x, ...)). It can be a new dimension, sub-dimension, symbol, constant, etc. Some of them we just don't know what values they will get, right? In such cases, should we just ignore them? And when I know its limits, e.g. subdimension offsets, should I take this into account (N < subdim_offsets + halos + paddings)?

@Leitevmd you're right

Some of them we just don't know what values they will get, right

So, I think there are two relevant use cases, and we should focus on them only:

Dimension
SubDimension

Other types of Dimensions may be used, but they're not so relevant for the sort of checks we are envisaging here.
I would also observe that:

SubDimension is just a special Dimension. With a SubDimension I think we should only consider the worst case scenario, i.e. when the offset (what we call "thickness", and what I think you called subdim_offsets?) are 0, that is when the SubDimension coincides (at runtime) with the whole Dimension.

Further:

I don't think we should take padding into account, because that's not a value useful to the compiler. You could have an Operator op which gets run with different Functions, ie op(u=u1, ...) op(u=u2, ...) op(u=u3, ...) ... then u1, u2, u3 must have the same halo as u (the runtime otherwise will raise an exception), but the padding can be anything. Padding is just a performance feature.

And more specifically, I think, all we need to check is the right halo, ie we need to ensure that an offset in an access is always smaller then the right halo. For example, in u[t, x+2], we need to check that 2 is smaller than u's right halo, otherwise when x will reach x_M (that is the upper limit of the generated iteration space) the access will definitely go out-of-bounds.
So... this made me realise that we could more easily implement this check within the compiler directly, since there's already a piece of code that checks for OOB accesses, but that was mainly conceived for the SteppingDimensions (in essence, I need to know for various reasons what the max offset is in t, t-1, t+1, t+2...). The check occurs here: https://github.com/devitocodes/devito/blob/master/devito/ir/support/utils.py#L60 , and the return value of this function is used here: https://github.com/devitocodes/devito/blob/master/devito/ir/equations/equation.py#L140. And so I think a possible (much simpler) solution for this feature consists of checking that all of the Dimensions in oobs are is_NonlinearDerived (ie, SteppingDimension or ModuloDimension or ConditionalDimension), while if there's at least one "true" Dimension (Dimension or SubDimension) then we error out?

@FabioLuporini, I think I need some help on this issue. Please check if I’m going in the right direction here. Note that, to avoid several errors, the proposed oob check has the following behavior:

Arrays ignored
Subdimensions with thickness != 0 ignored
Only space dimensions considered

Even with these considerations, there are some errors still occurring, due to the use of Indexeds with out of bound indices on these tests.

@Leitevmd
first of all, thanks for the update!
Now, your questions:

Arrays ignored

yes

Subdimensions with thickness != 0 ignored

I'm going to quote an excerpt from my previous comment:

SubDimension is just a special Dimension. With a SubDimension I think we should only consider the worst case scenario, i.e. when the offset (what we call "thickness", and what I think you called subdim_offsets?) are 0, that is when the SubDimension coincides (at runtime) with the whole Dimension.

do u see what I mean here? I think SubDimensions should be handled

Only space dimensions considered

OK, this is a good question. Which makes me wonder the following. When we have an OOB, what is the content of the oobs dictionary here ? Shouldn't it have entries != 0 along the (space) dimension which would trigger an OOB?
I don't know why this isn't happening anymore, but now that I think about it, I had designed the equation lowering such that if there were an OOB along one of the dimensions, then the iteration space would have shrunk accordingly (through the non-zero extremes in oobs)
Do you see what I mean here?
While, what we're trying to do with this PR -- and I'm happy with it -- is more like: scratch this shrinking thing non sense (which btw doesn't seem to be working anymore?) and let's raise an exception if your halo isn't enough. But -- as your question points out -- only do that if it's a SpaceDimension (or, similarly, don't do that if it's a TimeDimension)

due to the use of Indexeds with out of bound indices on these tests.

this is OK for now I think, though I'm not sure yet why we're not catching the Indexeds in the current implementation?

ah, yeah @Leitevmd , you are checking the SubDimension parent, so it seems OK?

Please check the current patch and tests.
Summary

Dimensions with OOB indices are handled by shrinking the iteration space. No segfaults then.

This doesn’t cover SubDimensions

The only problem of segfault I've seen so far is when using SubDimensions with OOB indices.
We have two ways to solve it:

Raising an exception for SubDimensions with OOB index
a) Only for thickness == 0 (CURRENT PATCH)
b) For all (only if indices exceed thickness)
Increase thickness based on stencil indices

TL;DR

I had designed the equation lowering such that if there were an OOB along one of the dimensions, then the iteration space would have shrunk accordingly (through the non-zero extremes in oobs)

By the way, Isn’t this shrinking mechanism too restrictive? It doesn't consider the halo. For example if we have a function f with space_order=1 we can access f[x-1]+f[x+1] without shrinking x_m and X_M, but if I access f[x-1]+f[x+2], instead of decreasing x_M by 1, it’s decreased by 3 (I doesn't consider halo shift of 2).

I don't know why this isn't happening anymore

It's happening! I couldn’t reproduce segfaults with the example u.biharmonic(1/m) from #1578, nor with those dt.dt.dt.dt, since the iteration space is shrunk to prevent OOB accesses. The only way I could reproduce a segfault was with SubDimensions OOB indices (see why below).

I'm not sure yet why we're not catching the Indexeds in the current implementation?

Yes, we were catching them. We were raising exceptions for these indexed OOB indices. That’s why many tests with Indexeds were failing in my patch. I think these tests have OOB indices relying on the fact that they are handled by shrinking the iteration space.

When we have an OOB, what is the content of the oobs dictionary here ?

oobs is a set containing time and space dimensions with oob indices detected from expression stencils. Here is an example: For a function f with space_order=1, accessing f[t,x+2,y+1] give us a set oobs={t, time, x} because x+2 is out of bound. By the way, why is t always included in oobs?

you are checking the SubDimension parent, so it seems OK?

That’s what the original detect_oobs does. It just checks the parent dimension. If we use a SubDimension as index, the stencil indices will be checked against its parent dimension halo (f._size_nodomain[p].left + f._size_halo[p].right). I think this is OK (although too restrictive since it doesn’t consider thickness when checking OOB indices). I think the problem actually is that, if a SubDimension has an OOB index, only the parent dimension will be included in oobs. That doesn’t help us to handle the OOB when using SubDimensions. They are just ignored, thus incurring in segfaults.

SubDimension is just a special Dimension. With a SubDimension I think we should only consider the worst case scenario, i.e. when the offset (what we call "thickness", and what I think you called subdim_offsets?) are 0, that is when the SubDimension coincides (at runtime) with the whole Dimension.

I think SubDimensions should be handled

By these quotes I understand you proposed that SubDimensions should have the stencil indices checked only if thickness is equal to 0. We would just ignore OOB when SubDimension thickness is not 0. This would still not prevent OOB segfaults with SubDimensions that have thickness != 0.

aaaahhhhh I see, so the issue is with SubDimensions only...  and this is in line with what I have seen recently in other codes making use of SubDimensions. That makes sense.
OK, first of all, one orthogonal thing that I just spotted:
f._size_nodomain[p].left

I think this should rather be the _size_halo[p].left . The _size_nodomain also takes the padding into account, but that's a runtime argument (ie, the padding of the Functions used to construct an Operator doesn't (shouldn't) really matter, because a runtime Function (when u do op.apply(f=f1, ...) could have a different padding , thus there could be a mismatch and faulty indices might be generated. Do u see what I mean?

I understand you proposed that SubDimensions should have the stencil indices checked only if thickness is equal to 0

not quite. I propose to check that as if the thickness were equal to 0 (that's the "worst case scenario" -- the SubDimension would span the same exact iteration space as its parent).

I think the problem actually is that, if a SubDimension has an OOB index, only the parent dimension will be included in oobs. That doesn’t help us to handle the OOB when using SubDimensions. They are just ignored, thus incurring in segfaults.

is this where we currently (master) fail?

only the parent dimension will be included in oobs.

would it help to add to found the whole hierarchy of dimensions, ie here we rather do found.udpate(p._defines) ?
EDIT: never mind, we already do it here
so I'm not entirely sure why is the SubDimension check failing in master yet?
And finally, one thought... for which I'll need both yours and @mloubout 's feedback: I now start thinking that it might just be better to raise an exception in case of OOB rather than "silently"shrinking the iteration space. So we detect the OOB along the non-stepping dimensions, and if there's at least one we raise exception with a suitable message. What do you guys think? So this is clearly orthogonal wrt my non-understanding of why SubDimension OOBs aren't currently detected ☝

I now start thinking that it might just be better to raise an exception in case of OOB rather than "silently"shrinking the iteration space.

If we're going to raise exceptions for OOB accesses instead of shrinking iteration limits, we’ll need to change several tests, as they rely on this behavior. What if we keep shrinking the iteration space, but warning the user about it? Or if we give an option to the user for this feature?

so I'm not entirely sure why is the SubDimension check failing in master yet?

Master fails if we use something like that Eq(so0[t+1,xi,y], so0[t,xi-2,y] + so0[t,xi+2,y] ), when [xi-2] exceeds the so0 function halo (0 in this example) plus xi subdimension thickness. That's because we don’t take any action if a SubDimention is used in index here, like we do for Dimensions here.
If we want to make something similar to SubDimensions as we do for Dimension today, we could increase ltkn, rtkn based on interval.lower and interval.upper here.

I propose to check that as if the thickness were equal to 0

Now I get it! Not “only if”, but “as if”. The problem with this is we’re going to be too restrictive and some tests which rely on thickness would fail: test_bcs, test_flow_detection_interior and test_subdimmiddle_parallel see here.

If we're going to raise exceptions for OOB accesses instead of shrinking iteration limits, we’ll need to change several tests, as they rely on this behavior. What if we keep shrinking the iteration space, but warning the user about it? Or if we give an option to the user for this feature?

How many tests would we have to change? Perhaps one or two of these are tests that are actually testing this behaviour... so we could either drop them or change them st they check for the exception to be raised?
Shrinking the iteration space feels like hiding a way a bug in the user code. I think raising a warning is a good start, but not 100% sure it's the best way to go (instead of raising an exception). Any thoughts @mloubout ?

Now I get it! Not “only if”, but “as if”. The problem with this is we’re going to be too restrictive and some tests which rely on thickness would fail: test_bcs, test_flow_detection_interior and test_subdimmiddle_parallel

Ah! yes I see now... and I also remember why those tests have space order 0 (basically to get halo==0, which is something you can get away with, thus saving on memory, if you are using SubDimensions/SubDomains and not using MPI). Good spot.

If we want to make something similar to SubDimensions as we do for Dimension today, we could increase ltkn, rtkn based on interval.lower and interval.upper here.

We can't unfortunately, as that could lead to all sort of bugs. For instance, the thickness is often used to define the size of the domain boundary, thus altering its size would lead to applying boundary conditions over a different region than originally planned.
So, proposal for the detection of a potential OOB: for a SubDimension -- could we rather run the same check we run for Dimension, but rather than checking only against the halo, we check against halo+thickness (ie, thus treating the thickness as a compile-time constant, the very same way we do for the halo)?
Note that in this PR we're talking about two different things:

fixing the detection of OOB for SubDimensions
how to use the OOB information -- shrinking iteration space vs warning vs raising an exception

@Leitevmd

So, proposal for the detection of a potential OOB: for a SubDimension -- could we rather run the same check we run for Dimension, but rather than checking only against the halo, we check against halo+thickness (ie, thus treating the thickness as a compile-time constant, the very same way we do for the halo)?

I guess this won't work, and in any case I don't like it, because we can't formally consider the thickness a compile time parameter.
Maybe you're right, we could rather run this checks at runtime, ie upon op.apply(...). So, when we pass the dspace here to check for the in-boundedness of the array accesses, could we improve SubDimension._arg_check to run these checks? The dspace should (can u confirm this?) contain enough information about "how large" the stencil is, ie how much we might go OOB, plus we know the runtime value of the thickness... is that what you had in mind?

@Fabio please check this again. Now I'm checking thickness in order to put the subdimension into oobs. I noticed thickness is used to express the outside offset in middle subdimensions, but it refers to the inside width in left/right subdimensions. Because of that, on the former, the right limit for OOB is just halo + thickness, while on the latter I’m using halo + (shape - thickness) here. By this I’m assuming a function with shape (2,20,20) and a left x SubDimention with thickness 4 could have a stencil which accesses [t,x+16,y] and that won't cause any illegal memory access. I think that makes sense, and you?

Maybe you're right, we could rather run this checks at runtime, ie upon op.apply(...). So, when we pass the dspace here to check for the in-boundedness of the array accesses, could we improve SubDimension._arg_check to run these checks? The dspace should (can u confirm this?) contain enough information about "how large" the stencil is, ie how much we might go OOB, plus we know the runtime value of the thickness... is that what you had in mind?

I think detect_oobs is the right place to check this since we have all the info we need to catch the OOB. Even if we want to take action in arg_check, we need to detect OOB first in onder fill to dspace with the full interval of the stencil here.

Note that in this PR we're talking about two different things:

fixing the detection of OOB for SubDimensions
how to use the OOB information -- shrinking iteration space vs warning vs raising an exception

At this point, we are cathing OOBs for SubDimensions into oobs and then raising an exception if any. We are still shrinking iteration space for OOB with Dimensions. I’m going to check all tests we need to fix in order to change that to raising exceptions.


Hidden version files in installation

.NET Core installations - runtime and sdk - include hidden version files.
$ find /usr/lib64/dotnet/ -iname '.*'
/usr/lib64/dotnet/shared/Microsoft.NETCore.App/2.0.6/.version
/usr/lib64/dotnet/sdk/2.1.101/.version

Is there a good reason they have to be hidden files? What if we just renamed them to version instead of .version? Hidden files are often a surprise to users and some software can flag them as suspicious.

This is an issue in core-setup, aspnet and core-sdk.

This is a source-build "cleanliness/readiness" issue for maintainers.

[Triage] This is not a source-build specific issue.  @omajid - would you please open repo specific issues for this and close this issue?

I filed issues in the product repos:

SDK: https://github.com/dotnet/sdk/issues/28598
ASP.NET Core: https://github.com/dotnet/aspnetcore/issues/44559
Runtime: https://github.com/dotnet/runtime/issues/77061


Option in type() to suppress logging of typed strings

I would like to be able to disable output to STDOUT when typing passwords to login prompts etc.

Can you use Debug.off() and Debug.on() to temporarily switch off the logging output?
https://lackey.readthedocs.io/en/latest/lackey.html#lackey.DebugMaster.off

Can you use Debug.off() and Debug.on() to temporarily switch off the logging output?
https://lackey.readthedocs.io/en/latest/lackey.html#lackey.DebugMaster.off

I have tried it but I don't get the expected behaviour:
import lackey

def test_type():
    print(lackey.Debug.__dict__)
    np = lackey.App("Notepad")
    np.focus()
    lackey.type(np.window(), "my secret")

lackey.Debug.off()
test_type()
lackey.Debug.on(1)
test_type()

Outputs:
{'_debug_level': 0}
[action] Clicked at (Location object at (1440,523))
[action] Typing 'my secret' with modifiers 'None'
{'_debug_level': 1}
[action] Clicked at (Location object at (1440,523))
[action] Typing 'my secret' with modifiers 'None'

Sorry, it's been a little while since I've looked at this.
Try disabling it with lackey.Settings.ActionLogs = False.

Turning action logs off works. Thanks!


install to vs community mac

Hello MS VS,
I don't it see anywhere
pls how can I install this in "ms vs mac" ?

yeah how can I install this on mac? Node.js support is advertised all over the Visual Studio page, but not for mac?

Hi folks,
unfortunately right now Visual Studio for Mac does not support NodeJS Tools. If you'd like to see this supported in the future I recommend you open a new idea/suggestion over at: https://developercommunity.visualstudio.com/content/idea/post.html?space=41

thx for answer @KirillOsenkov good to know that still nothing
also I thought it would be enough point that issue here - I don't

Hello,
where is this functionality? It is really important.


Crate could use a simple usage example

A simple example showing basic usage, maybe like an echo server + client pair, would certainly help beginners learn how to use this crate properly, especially since the API isn't super obvious.
I've attempted to do this, but I must be doing something wrong, as I get "broken pipe" errors pretty much everywhere.

Hi! Sorry for late response.

A simple example showing basic usage.

Here is the simple ping-pong app:
extern crate named_pipe as np;

use np::{PipeClient, PipeOptions};
use std::thread;
use std::io::{Read, Write};

fn main() {
    let num_pings = 100;
    let pipe_name = r"\\.\pipe\ping_pong";

    // Server will receive pings and respond with pongs in main thread.
    let connecting_server = PipeOptions::new(pipe_name).single().unwrap();

    thread::spawn(move || {
        // Client will send pings and receive pongs all in another thread.
        let mut client = PipeClient::connect(pipe_name).unwrap();
	for _ in 0..num_pings {
	    let mut buf = [0; 4];
	    client.write(b"ping").unwrap();
	    let count = client.read(&mut buf[..]).unwrap();
	    match count {
	    	0 => panic!("Server should not disconnect"),
		4 => assert_eq!(&buf, b"pong"),
		_ => unreachable!(),
	    }
	}
    });

    // Wait for client
    let mut server = connecting_server.wait().unwrap();
    let mut pings = 0;
    loop {
        let mut buf = [0; 4];
	let count = server.read(&mut buf[..]).unwrap();
	match count {
	    0 => break,
	    4 => {
	        assert_eq!(&buf, b"ping");
		pings += 1;
	    },
	    _ => unreachable!(),
	}
	server.write(b"pong").unwrap();
    }

    assert_eq!(pings, num_pings);

    println!("Yay!");
}

I've attempted to do this, but I must be doing something wrong, as I get "broken pipe" errors pretty much everywhere.

Unfortunately there was an error with proper handling of ERROR_BROKEN_PIPE for read operations (fixed in a671854 and published in v0.2.4).


Brawlstats - Returning empty map

Overview
The method getBrawlers returns an empty map.
Re-production
Execute
await client.getBrawlers();
Minimal code for bug re-production
await client.getBrawlers();

Expected output
A map with all brawlers
Actual output
BrawlersMap(0) [Map] {}

Environment
Node v17.8.0
brawlstats ^2.0.0
Checklist

[X] I have searched the open issues for duplicates.
[X] I have shown the entire traceback, if possible.
[X] I have provided a sufficient amount of code to re-produce the bug or mine, if none.

Additional information
No response

Can you show how you initialized your client?

I was using BRAWLSTARS_TOKEN, but reinstalled the package by deleting node_modules and the problem seems to be fixed. Thanks.

The only thing that happens now is that it logs me undefined when calling the method, but it works correctly.

you sure? i dont know where that undefined is coming from but the data is returned right?

you sure? i dont know where that undefined is coming from but the data is returned right?

yeah, the data returned after reinstall is right, only that undefined, in the code of the package i see an console.log in the Brawlers.js file, but isn't in the github code, maybe i need to update the package?

Yeah, the console log is from here
https://github.com/SpecteraLabs/npm-packages/blob/main/packages/brawlstats/CHANGELOG.md
Check the change log of 2.1.0 but you can't risk to install that version because typings were not exported so better update to 2.1.1

Yeah, the console log is from here
https://github.com/SpecteraLabs/npm-packages/commit/62cfe7306f211f62aaebe42e41ac64b385568734
Check the change log of 2.1.0 but you can't risk to install that version because typings were not exported on 2.1.0 so better update to 2.1.1

Okay, ty 👍

hey @tnfAngel we recently released v3, the changelog wasn't clear so just incase you wanted a migration guide:
https://brawlstatsjs.netlify.app/docs/Guide/migrating-from-v2

hey @tnfAngel we recently released v3, the changelog wasn't clear so just incase you wanted a migration guide:
https://brawlstatsjs.netlify.app/docs/Guide/migrating-from-v2

Awesome! Thanks, i will take a look


[Upstream] Investigate why "yarn" exec commands only list out command name

When using the following code:
const c = require('child_process');
a = c.spawn('yarn', ['ts-node', 'test.js'], {shell: true});
a.stdout.on('data', data => console.log(data.toString()));
a.stderr.on('data', data => console.log(data.toString()))

It only outputs the following:
> yarn run v1.22.17

$ C:\Users\crutchcorn\git\TestingLibrary\cli-testing-library\node_modules\.bin\ts-node

And then immediately proceeds to kill the process. While this isn't an issue with CLI Testing Library, it does impact our users and should be investigated

Update: I think this is actually #10 masquerading in another form. If I re-test this, I get the output when stderr logs out and get the expected:
> yarn run v1.22.17

$ C:\Users\crutchcorn\git\TestingLibrary\nx\node_modules\.bin\ts-node test.ts

Error: Cannot find module 'C:\Users\crutchcorn\git\TestingLibrary\nx\test.ts'
    at Function.Module._resolveFilename (node:internal/modules/cjs/loader:933:15)
    at Function.Module._load (node:internal/modules/cjs/loader:778:27)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
    at main (C:\Users\crutchcorn\git\TestingLibrary\nx\node_modules\ts-node\src\bin.ts:198:14)
    at Object.<anonymous> (C:\Users\crutchcorn\git\TestingLibrary\nx\node_modules\ts-node\src\bin.ts:288:3)
    at Module._compile (node:internal/modules/cjs/loader:1101:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1153:10)
    at Module.load (node:internal/modules/cjs/loader:981:32)
    at Function.Module._load (node:internal/modules/cjs/loader:822:12)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)

error Command failed with exit code 1.

info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.


Suggestion: Add Mac OS X version check to AppCleaner

As you may know, AppCleaner has 3 official releases, 1.2.2, 2.3 and 3.3 (up to now).
Ver 1 supports 10.4 to 10.5
Ver 2 supports 10.6 to 10.10
Ver 3 supports 10.10 and so on
Therefore, if you can add OS check to this app to specify which version brew should install, it would be wonderful, since they are not backward compatible.

Example Cask, if you want to try it out yourself!
https://github.com/caskroom/homebrew-cask/blob/master/Casks/graphviz.rb
Feel free to take a crack at a PR. We're here to help if you have questions!
CONTRIBUTING

https://github.com/caskroom/homebrew-cask/pull/21906.


Add command to allow other extensions to open SARIF files

There are external extensions that produce SARIF files and currently the only way to view the SARIF results is to open the SARIF file in the editor.
An example would be an extension that performs it's own static analysis during a "build".
The concept here would be to allow an extension to direct the SARIF extension to parse and open the SARIF results in the viewer.
The arguments to the command would include:

Specifying multiple URIs to SARIF files
Disabling the schema upgrade prompt (the files would upgraded automatically)
Allowing the caller to configure whether the SARIF document is opened in an editor
An option to not open the SARIF viewer if there are no results in the parsed SARIF file.

This issue will remain open until we decide if we want to publish an NPM\Node package for the API


The Broccoli Plugin: [Funnel] failed with:

hi i've just install your addon using npm and i got a error :    at Watcher_addWatchDir [as addWatchDir] (/private/tmp/CompanyOnFront/node_modules/ember-cli-broccoli-sane-watcher/index.js:142:11)
at /private/tmp/CompanyOnFront/node_modules/broccoli-builder/lib/builder.js:132:35
at tryCatch (/private/tmp/CompanyOnFront/node_modules/rsvp/dist/rsvp.js:539:12)
at invokeCallback (/private/tmp/CompanyOnFront/node_modules/rsvp/dist/rsvp.js:554:13)
at /private/tmp/CompanyOnFront/node_modules/rsvp/dist/rsvp.js:629:16
at flush (/private/tmp/CompanyOnFront/node_modules/rsvp/dist/rsvp.js:2414:5)
at _combinedTickCallback (internal/process/next_tick.js:95:7)
at process._tickCallback (internal/process/next_tick.js:161:9)
The broccoli plugin was instantiated at:
at Funnel.Plugin (/private/tmp/CompanyOnFront/node_modules/broccoli-plugin/index.js:7:31)
at new Funnel (/private/tmp/CompanyOnFront/node_modules/broccoli-funnel/index.js:58:10)
at Class.treeFor (/private/tmp/CompanyOnFront/node_modules/ember-pdfjs/index.js:15:17)
at Class.superWrapper [as treeFor] (/private/tmp/CompanyOnFront/node_modules/core-object/lib/assign-properties.js:34:20)
at project.addons.map.addon (/private/tmp/CompanyOnFront/node_modules/ember-cli/lib/broccoli/ember-app.js:547:22)
at Array.map (native)
at EmberApp.addonTreesFor (/private/tmp/CompanyOnFront/node_modules/ember-cli/lib/broccoli/ember-app.js:545:32)
at EmberApp._processedVendorTree (/private/tmp/CompanyOnFront/node_modules/ember-cli/lib/broccoli/ember-app.js:969:24)
at EmberApp._processedExternalTree (/private/tmp/CompanyOnFront/node_modules/ember-cli/lib/broccoli/ember-app.js:997:25)
at EmberApp.appAndDependencies (/private/tmp/CompanyOnFront/node_modules/ember-cli/lib/broccoli/ember-app.js:1109:25)

I'm using:
ember-cli: 2.13.2
node: 8.1.1
os: darwin x64


Chaining of .body() calls results in false positives with hamcrest's hasXPath() and not()

From<EMAIL_ADDRESS>on January 23, 2013 20:54:22
What steps will reproduce the problem? Have your restful server returning xml, how about at /xml
This works:
given().spec(getRequest).expect()
.body(hasXPath("//someNode[@attr='yes']"))
.body(hasXPath("//someOther[@attr='no']"))
.when().get("/xml");
This does not work, because the not-wrapped call will pass even if it shouldn't:
given().spec(getRequest).expect()
.body(hasXPath("//someNode[@attr='yes']"))
.body(not(hasXPath("//someOther[@attr='no']")))
.when().get("/xml"); What is the expected output? What do you see instead? Specifically, the not(hasXPath()) call will return true, even if the xpath IS contained in the xml.  This may occur without chaining.  An even more clear example is to put .body(hasXPath(testString)).body(not(hasXPath(testString))) and that will pass, despite the obvious failure due to the contradiction. What version of the product are you using? On what operating system? 1.6.2 on Windows and Linux Please provide any additional information below. Stepping into this with the debugger every step of the way changed the results versus just running it.  That could get chained calls to body(hasXPath()) to return false, even when they were true.  See attached image - that should have passed but failed only when debugged everystepoftheway (it was frustratingly slow).
Attachment: mismatch.PNG
Original issue: http://code.google.com/p/rest-assured/issues/detail?id=215

From<EMAIL_ADDRESS>on January 27, 2013 11:36:09
Do you get the same result with the latest version?

From<EMAIL_ADDRESS>on January 28, 2013 12:10:42
Yes, I tried upgrading to 1.7.2 today and have the same problem, where:
    given()
        .spec(getRequest())
    .expect()
        .statusCode(200)
        .body(hasXPath(AN_XPATH))
        .body(not(hasXPath(AN_XPATH)))
        .body(not(hasXPath(ANOTHER_XPATH)))
    .when()
        .get("get");

passes.

From<EMAIL_ADDRESS>on January 28, 2013 23:14:37
Alright thanks for trying it out. Could you give an example of the XML you're trying to test?

From<EMAIL_ADDRESS>on January 29, 2013 18:00:36
Names have been changed to protect the innocent.. and the guilty.. But very normal XML, as below.  Basically testing that "delete" operations of inner nodes works, and at the time it didn't, but the tests said that it did.  That's how I discovered this.
<?xml version="1.0" encoding="UTF-8"?>
<user user-id="24985">
<date-created>2008-11-17T08:00:00Z
<date-modified>2012-09-27T02:29:43.883Z
<userFavorite application-id="1" favorite-id="28" userData="someData" sequence-number="1">
<date-created>2011-01-20T19:59:47.887Z
<date-modified>2012-09-25T23:52:21.167Z
</userFavorite>
</user>
Oh, junit version 4.10 is what's being used, FWIW, so very modern.

From<EMAIL_ADDRESS>on January 29, 2013 23:08:32
Thanks!

From<EMAIL_ADDRESS>on November 20, 2013 06:27:34
I've now fixed this in master.
Status: Accepted

From<EMAIL_ADDRESS>on January 22, 2014 02:01:09
Status: Fixed


Is service available on x day?

Once we have GTFS data, it might be nice to have a function that tells you if a service is available on a particular day. Currently, you will have to check calendar to see if it is normally open, and then check calendar_dates to make sure there isn't an exception.
See:

https://developers.google.com/transit/gtfs/reference/calendar-file
https://developers.google.com/transit/gtfs/reference/calendar_dates-file

I'm assuming you mean w/ the argument station


[backport] Support dltensor with strides of NULL

Backport of #2097

[automatic post] Jenkins, test this please.

Jenkins CI test (for commit b18d0010aea6612e0d81bf82a9b1224d8599d7d2, target branch v5) succeeded!

LGTM!


Update phpdevtools to v4, phpcsfixer to v3

Questions
Answers

Description?
Update to newer version

Type?
improvement

BC breaks?
no

Deprecations?
no

Fixed ticket?
No issue at all

Sponsor company
Your company or customer's name goes here (if applicable).

How to test?
Automatic checks pass, no more php-cs-fixer v2 deprecated warning.

@matks The only dependency is update is php-dev-tools from v3 to v4. It leads to its dependencies update as shown in the screenshot below

To simplify review and keep the changes as tiny as possible, I remove composer.lock and package-lock.json from changes in an alternative PR /pull/217 (these two lock files will be rebuilt by GH workflow :)

@matks The only one dependency is updated is php-dev-tools from v3 to v4. It leads to its dependencies update as shown in the screenshot below  To simplify review and keep the changes as tiny as possible, I remove composer.lock and package-lock.json from changes in an alternative PR /pull/217 (these two lock files will be rebuilt by GH workflow :)

Thanks! I'm going to review https://github.com/PrestaShop/blockwishlist/pull/217