Can't display tabline, extension is not loaded despite being enabled.

environment

vim: Neovim 0.7.0
vim-airline: 0.11
OS: MacOS
Have you reproduced with a minimal vimrc: yes
What is your airline configuration:

let g:airline#extension#tabline#enable=1
" let g:airline#extensions#tabline#buffer_nr_show = 1
" let g:airline#extensions#tabline#show_tab_nr = 1
" let g:airline#extensions#tabline#tab_nr_type = 1 " tab number
" let g:airline#extension#tabline#left_sep=' '
" let g:airline#extension#tabline#left_alt_sep='|'
" let g:airline#extension#tabline#formatter='default'

if you are using terminal:

terminal: iTerm2
$TERM variable: xterm-256color
if you are using Neovim:
does it happen in Vim: yes

actual behavior
Tabline is not showing under any circumstance. When I do :AirlineExtensions, tabline is not loaded.
I wonder whether I should "install it"? But I really don't understand how.
After reading :help airline-extensions, it says that "Most extensions are enabled by default and lazily loaded when the
corresponding plugin (if any) is detected.", even though from the docs it doesn't seem to me that I should instal any additional plugin for the tabline...
expected behavior
Tablines showing at the top of the screen
Here is my complete init.vim, maybe it could contain some plugins that are conflicting with the tabline extension.
" Options
set clipboard=unnamedplus " Enables the clipboard between Vim/Neovim and other applications.
set completeopt=noinsert,menuone,noselect " Modifies the auto-complete menu to behave more like an IDE.
set relativenumber
set cursorline " Highlights the current line in the editor
set hidden " Hide unused buffers
set autoindent " Indent a new line
set inccommand=split " Show replacements in a split screen
set mouse=a " Allow to use the mouse in the editor
set number " Shows the line numbers
set splitbelow splitright " Change the split screen behavior
set title " Show file title
set wildmenu " Show a more advance menu
set cc= " Remove the vertical line for code style (very annoying)
filetype plugin indent on   " Allow auto-indenting depending on file type
syntax on
set spell " enable spell check (may need to download language package)
set ttyfast " Speed up scrolling in Vim
set scrolloff=8
let mapleader = "\<Space>"

"(Supposedly) Smart way to move between panes
map <leader><up> <C-w><up>
map <leader><down> <C-w><down>
map <leader><left> <C-w><left>
map <leader><right> <C-w><right>

call plug#begin(has('nvim') ? stdpath('data') . '/plugged' : '~/.vim/plugged')
Plug 'vim-airline/vim-airline'
Plug 'vim-airline/vim-airline-themes'
Plug 'ryanoasis/vim-devicons'
Plug 'scrooloose/nerdtree'
Plug 'sheerun/vim-polyglot'
Plug 'numToStr/Comment.nvim'
Plug 'jiangmiao/auto-pairs'
Plug 'kyazdani42/nvim-web-devicons',
Plug 'tpope/vim-surround',
Plug 'neoclide/coc.nvim', {'branch': 'release'}
Plug 'tpope/vim-fugitive',
Plug 'psf/black', { 'branch': 'main' }
Plug 'airblade/vim-rooter',
Plug 'junegunn/fzf.vim',
Plug 'junegunn/fzf', { 'do': { -> fzf#install() } },
" Color Schemes
Plug 'EdenEast/nightfox.nvim',
Plug 'joshdick/onedark.vim',
Plug 'morhetz/gruvbox'
Plug 'doums/darcula',
Plug 'gosukiwi/vim-atom-dark',
Plug 'jnurmine/Zenburn',
Plug 'drewtempelmeyer/palenight.vim',
Plug 'mhartington/oceanic-next',
Plug 'arcticicestudio/nord-vim',
Plug 'jacoborus/tender.vim'

call plug#end()

lua require('Comment').setup()

colorscheme gruvbox

" set tabline
" set showtabline=2
" ##### #### #### #### #### AIRLINE #### #### #### #### ####
" let g:airline_extensions = ['branch','tabline']
let g:airline#extension#tabline#enable=1
" let g:airline#extensions#tabline#buffer_nr_show = 1
" let g:airline#extensions#tabline#show_tab_nr = 1
" let g:airline#extensions#tabline#tab_nr_type = 1 " tab number
" let g:airline#extension#tabline#left_sep=' '
" let g:airline#extension#tabline#left_alt_sep='|'
" let g:airline#extension#tabline#formatter='default'
" let g:bargreybars_auto=0
" let g:airline_solorized_bg='dark'
" let g:airline_powerline_fonts=1
" let g:airline_theme='gruvbox'

set hidden

" Some servers have issues with backup files, see #649.
set nobackup
set nowritebackup

" Give more space for displaying messages.
set cmdheight=2

" Having longer updatetime (default is 4000 ms = 4 s) leads to noticeable
" delays and poor user experience.
set updatetime=300

" Don't pass messages to |ins-completion-menu|.
set shortmess+=c

" Always show the signcolumn, otherwise it would shift the text each time
" diagnostics appear/become resolved.
if has("nvim-0.5.0") || has("patch-8.1.1564")
  " Recently vim can merge signcolumn and number column into one
  set signcolumn=number
else
  set signcolumn=yes
endif

" Use tab for trigger completion with characters ahead and navigate.
" NOTE: Use command ':verbose imap <tab>' to make sure tab is not mapped by
" other plugin before putting this into your config.
inoremap <silent><expr> <TAB>
      \ pumvisible() ? "\<C-n>" :
      \ CheckBackspace() ? "\<TAB>" :
      \ coc#refresh()
inoremap <expr><S-TAB> pumvisible() ? "\<C-p>" : "\<C-h>"

function! CheckBackspace() abort
  let col = col('.') - 1
  return !col || getline('.')[col - 1]  =~# '\s'
endfunction

" ##### ##### ##### ##### ##### ##### COC-NVIM #### ###### ##### ### #### #### ####
" Use <c-space> to trigger completion.
if has('nvim')
  inoremap <silent><expr> <c-space> coc#refresh()
else
  inoremap <silent><expr> <c-@> coc#refresh()
endif

" Make <CR> auto-select the first completion item and notify coc.nvim to
" format on enter, <cr> could be remapped by other vim plugin
inoremap <silent><expr> <cr> pumvisible() ? coc#_select_confirm()
                              \: "\<C-g>u\<CR>\<c-r>=coc#on_enter()\<CR>"

" Use `[g` and `]g` to navigate diagnostics
" Use `:CocDiagnostics` to get all diagnostics of current buffer in location list.
nmap <silent> [g <Plug>(coc-diagnostic-prev)
nmap <silent> ]g <Plug>(coc-diagnostic-next)

" GoTo code navigation.
nmap <silent> gd <Plug>(coc-definition)
nmap <silent> gy <Plug>(coc-type-definition)
nmap <silent> gi <Plug>(coc-implementation)
nmap <silent> gr <Plug>(coc-references)

" Use K to show documentation in preview window.
nnoremap <silent> K :call ShowDocumentation()<CR>

function! ShowDocumentation()
  if CocAction('hasProvider', 'hover')
    call CocActionAsync('doHover')
  else
    call feedkeys('K', 'in')
  endif
endfunction

" Highlight the symbol and its references when holding the cursor.
autocmd CursorHold * silent call CocActionAsync('highlight')

" Symbol renaming.
nmap <leader>rn <Plug>(coc-rename)

" Formatting selected code. NOT WORKING!!
xmap <leader>F  :call CocAction('format')<CR>
nmap <leader>F  :call CocAction('format')<CR>

" This sorcery is obscure to me
augroup mygroup
  autocmd!
  " Setup formatexpr specified filetype(s).
  autocmd FileType typescript,json setl formatexpr=CocAction('formatSelected')
  " Update signature help on jump placeholder.
  autocmd User CocJumpPlaceholder call CocActionAsync('showSignatureHelp')
augroup end

" Applying codeAction to the selected region.
" Example: `<leader>aap` for current paragraph
xmap <leader>a  <Plug>(coc-codeaction-selected)
nmap <leader>a  <Plug>(coc-codeaction-selected)

" Remap keys for applying codeAction to the current buffer.
nmap <leader>ac  <Plug>(coc-codeaction)
" Apply AutoFix to problem on the current line.
nmap <leader>qf  <Plug>(coc-fix-current)

" Run the Code Lens action on the current line.
nmap <leader>cl  <Plug>(coc-codelens-action)

" Map function and class text objects
" NOTE: Requires 'textDocument.documentSymbol' support from the language server.
xmap if <Plug>(coc-funcobj-i)
omap if <Plug>(coc-funcobj-i)
xmap af <Plug>(coc-funcobj-a)
omap af <Plug>(coc-funcobj-a)
xmap ic <Plug>(coc-classobj-i)
omap ic <Plug>(coc-classobj-i)
xmap ac <Plug>(coc-classobj-a)
omap ac <Plug>(coc-classobj-a)

" Remap <C-f> and <C-b> for scroll float windows/popups.
if has('nvim-0.4.0') || has('patch-8.2.0750')
  nnoremap <silent><nowait><expr> <C-f> coc#float#has_scroll() ? coc#float#scroll(1) : "\<C-f>"
  nnoremap <silent><nowait><expr> <C-b> coc#float#has_scroll() ? coc#float#scroll(0) : "\<C-b>"
  inoremap <silent><nowait><expr> <C-f> coc#float#has_scroll() ? "\<c-r>=coc#float#scroll(1)\<cr>" : "\<Right>"
  inoremap <silent><nowait><expr> <C-b> coc#float#has_scroll() ? "\<c-r>=coc#float#scroll(0)\<cr>" : "\<Left>"
  vnoremap <silent><nowait><expr> <C-f> coc#float#has_scroll() ? coc#float#scroll(1) : "\<C-f>"
  vnoremap <silent><nowait><expr> <C-b> coc#float#has_scroll() ? coc#float#scroll(0) : "\<C-b>"
endif

" Use CTRL-S for selections ranges.
" Requires 'textDocument/selectionRange' support of language server.
nmap <silent> <C-s> <Plug>(coc-range-select)
xmap <silent> <C-s> <Plug>(coc-range-select)

" Add `:Format` command to format current buffer.
command! -nargs=0 Format :call CocActionAsync('format')

" Add `:Fold` command to fold current buffer.
command! -nargs=? Fold :call     CocAction('fold', <f-args>)

" Add `:OR` command for organize imports of the current buffer.
command! -nargs=0 OR   :call     CocActionAsync('runCommand', 'editor.action.organizeImport')

" Add (Neo)Vim's native statusline support.
" NOTE: Please see `:h coc-status` for integrations with external plugins that
" provide custom statusline: lightline.vim, vim-airline.
set statusline^=%{coc#status()}%{get(b:,'coc_current_function','')}

" Mappings for CoCList
" Show all diagnostics.
nnoremap <silent><nowait> <space>a  :<C-u>CocList diagnostics<cr>
" Manage extensions.
nnoremap <silent><nowait> <space>e  :<C-u>CocList extensions<cr>
" Show commands.
nnoremap <silent><nowait> <space>c  :<C-u>CocList commands<cr>
" Find symbol of current document.
nnoremap <silent><nowait> <space>o  :<C-u>CocList outline<cr>
" Search workspace symbols.
nnoremap <silent><nowait> <space>s  :<C-u>CocList -I symbols<cr>
" Do default action for next item.
nnoremap <silent><nowait> <space>j  :<C-u>CocNext<CR>
" Do default action for previous item.
nnoremap <silent><nowait> <space>k  :<C-u>CocPrev<CR>
" Resume latest coc list.
nnoremap <silent><nowait> <space>p  :<C-u>CocListResume<CR>

" ###### ##### ##### ##### ##### NERDTree ##### ##### ##### ##### #####
let g:NERDTreeWinSize=35
nmap <leader>n :NERDTreeToggle<CR>
let NERDTreeQuitOnOpen=1

"
" ###### ##### ##### ##### ##### ###### FOLD #### ##### ##### ##### #####
set foldmethod=indent
set foldminlines=4
set foldignore=

" ###### ##### ##### ##### ##### ###### FZF #### ##### ##### ##### #####
nmap <leader>f :Files<CR>

" ###### ##### ##### ##### ##### ###### vim-fugitive (GIT) #### ##### ##### ##### #####
" nnoremap <leader>ga :G add -A | :G commit -v -q<CR>
"
" ###### ##### ##### ##### ##### ###### EDIT init.vim BLAZINGLY FAST #### ##### ##### ##### #####
" Reloads vimrc after saving but keep cursor position
if !exists('*ReloadVimrc')
   fun! ReloadVimrc()
       let save_cursor = getcurpos()
       source $MYVIMRC
       call setpos('.', save_cursor)
   endfun
endif
autocmd! BufWritePost $MYVIMRC call ReloadVimrc()

nnoremap <leader>i :e $MYVIMRC<cr>
"
" ###### ##### ##### ##### ##### ###### EDIT init.vim BLAZINGLY FAST #### ##### ##### ##### #####

I tried with a minimum vimrc without even involving Neovim, but the effect is the same. This is the minimal config in vimrc
and you can clearly see that nothing is showing (I realised there was a typo in extension[s] but even after correcting it, nothing is showing)

so you have :let g:airline#extensions#tabline#enabled=1 ?
Yes

How does your directory structure look like?

What does :scriptnames give you?
Among other lines, the following:

 15: ~/.local/share/nvim/plugged/vim-airline/plugin/airline.vim
 16: ~/.local/share/nvim/plugged/vim-airline/autoload/airline/init.vim
 17: ~/.local/share/nvim/plugged/vim-airline/autoload/airline/parts.vim
 18: ~/.local/share/nvim/plugged/vim-airline/autoload/airline/formatter/short_path.vim
 19: ~/.local/share/nvim/plugged/vim-airline/autoload/airline/util.vim
 20: ~/.local/share/nvim/plugged/vim-airline-themes/plugin/airline-themes.vim
 21: ~/.local/share/nvim/plugged/vim-devicons/plugin/webdevicons.vim
 22: ~/.local/share/nvim/plugged/vim-airline/autoload/airline.vim
...
 77: ~/.local/share/nvim/plugged/vim-airline/autoload/airline/extensions.vim
 78: ~/.local/share/nvim/plugged/vim-airline/autoload/airline/extensions/quickfix.vim
 79: ~/.local/share/nvim/plugged/vim-airline/autoload/airline/extensions/netrw.vim
 80: ~/.local/share/nvim/plugged/vim-airline/autoload/airline/extensions/fzf.vim
 81: ~/.local/share/nvim/plugged/vim-airline/autoload/airline/extensions/term.vim
 82: ~/.local/share/nvim/plugged/vim-airline/autoload/airline/section.vim
 83: ~/.local/share/nvim/plugged/vim-airline/autoload/airline/highlighter.vim
 84: ~/.local/share/nvim/plugged/vim-airline/autoload/airline/extensions/hunks.vim
 85: ~/.local/share/nvim/plugged/vim-airline/autoload/airline/extensions/branch.vim
 86: ~/.local/share/nvim/plugged/vim-airline/autoload/airline/extensions/fugitiveline.vim
 87: ~/.local/share/nvim/plugged/vim-airline/autoload/airline/extensions/nvimlsp.vim
 88: ~/.local/share/nvim/plugged/vim-airline/autoload/airline/extensions/coc.vim
 89: ~/.local/share/nvim/plugged/vim-airline/autoload/airline/extensions/whitespace.vim
 90: ~/.local/share/nvim/plugged/vim-airline/autoload/airline/extensions/po.vim
 91: ~/.local/share/nvim/plugged/vim-airline/autoload/airline/extensions/wordcount.vim
 92: ~/.local/share/nvim/plugged/vim-airline/autoload/airline/extensions/keymap.vim
 93: ~/.local/share/nvim/plugged/vim-airline/autoload/airline/extensions/searchcount.vim
 95: ~/.local/share/nvim/plugged/vim-airline/autoload/airline/themes.vim
 96: ~/.local/share/nvim/plugged/vim-airline/autoload/airline/builder.vim
 97: ~/.local/share/nvim/plugged/vim-airline/autoload/airline/extensions/default.vim

No trace of tabline

But if I check in ~/.local/share/nvim/plugged/vim-airline/autoload/airline/extensions/tabline, there is everything:
.
├── autoshow.vim
├── buffers.vim
├── buflist.vim
├── builder.vim
├── ctrlspace.vim
├── formatters
│   ├── default.vim
│   ├── jsformatter.vim
│   ├── short_path.vim
│   ├── tabnr.vim
│   ├── unique_tail.vim
│   └── unique_tail_improved.vim
├── tabs.vim
├── tabws.vim
└── xtabline.vim

hm, any other plugins running? In your vim, what does :let g:airline#extensions#tabline#enabled output?

In your vim, what does :let g:airline#extensions#tabline#enabled output?
g:airline#extensions#tabline#enabled #1
I haven't cloned anything by hand, I am using vim-plug to install the plugins

can you run git status in the checkout workspace (toplevel vim-airline project dir)?
If you mean ~/.local/share/nvim/plugged/vim-airline, then:

╰─❯ git status
On branch master
Your branch is up to date with 'origin/master'.

nothing to commit, working tree clean

Regarding the fgrep command,
❯ fgrep -ilr 'airline#extensions#tabline#enabled' ~/.local/share/nvim/
/Users/enrico/.local/share/nvim//plugged/vim-airline/t/extensions_tabline.vim
/Users/enrico/.local/share/nvim//plugged/vim-airline/README.md
/Users/enrico/.local/share/nvim//plugged/vim-airline/doc/airline.txt
/Users/enrico/.local/share/nvim//plugged/vim-airline/autoload/airline/extensions/tabline.vim
/Users/enrico/.local/share/nvim//plugged/vim-airline/autoload/airline/extensions.vim
/Users/enrico/.local/share/nvim//swap/%Users%enrico%Desktop%HybridDB%params.py.swp
/Users/enrico/.local/share/nvim//swap/%Users%enrico%.config%nvim%init.vim.swo

Well, I think I cannot go more minimalistic than the vimrc I posted earlier, there is literally nothing except for the plugin manager and the vim-airline plugin. And I'm using Vim, not neovim, with a completely clean config dir structure

I am using NEOVIM. I said that I tried using vim with a minimal config to see whether the problem would persist, and it does.
 So what does :verbose set tabline? showtabline? show? Also can you please try the experiment with a minmum vimrc as I have shown above?

I think we are getting there somehow. I think there is some "caching" issue or session files, as you were saying before. Because now after restarting Neovim, for some reason it is showing, but the look is weird. For instance, if I customise the looks in init.vim and source the file, it gets somehow applied. But then when I restart Neovim, it goes back to the previous state: the variables are correctly set in the init.vim file and in the environment, but the changes are not showing on screen.
Let's say I start from this configuration (nothing customised, buffers showing at the top)

If I enable these two options, for instance, and source the file, I can see some changes happening at the top (even though it's ugly and I don't think it should)

But then when I quit and reopen you can see that the options are still active but the tabline is unchanged!

So what does :verbose set tabline? showtabline? show?

tabline=%!airline#extensions#tabline#get()
Last set from ~/.local/share/nvim/plugged/vim-airline/autoload/airline/extensions/tabline.vi
m line 79
showtabline=2
Last set from ~/.local/share/nvim/plugged/vim-airline/autoload/airline/extensions/tabline.vi
m line 164

okay, at least this looks fine. Now whatever you mean with caching, I have no idea. Are you using session files or view files? Perhaps you are storing the options there (which is not recommended) . I have also no idea why setting those variables would be cached after a restart.

I have no idea about caching either, it just feels like something is "cached" or, anyways, the tabline is not drawn according to init.vim but according to some previous state.
I don't know what session/view files are, so I am not using any of this EXPLICITLY. I am just using init.vim as I am not a long time user

not sure. Apparently this depends on some other global variables like: g:airline_left_sep  and g:airline_powerline_fonts being set
https://github.com/vim-airline/vim-airline/blob/83d853adc7f799b893acfc2e0df31bf59dd4c046/autoload/airline/extensions/tabline.vim#L234-L249
You can check what echo airline#extensions#tabline#get() outputs. If this doesn't help, I am afraid you need to manually step through those functions to debug them.

I think I finally managed to fix it, most of the problems actually fixed themselves when quitting and reopening vim since I noticed that sourcing init.vim breaks the looks of the tabline.
I don't know if this behaviour is normal or not, but opening a fresh Neovim instance solves the issue and I can display the tabline correctly!

Please allow me to add that I have experienced similar symptoms.
The tabline was not enabled, but after moving the colorscheme setting after tabline#enabled, the tabline was enabled.
vim.g['airline#extensions#tabline#enabled']=1
vim.cmd[[colorscheme iceberg]]

In case it helps someone else: I had a similar problem. A tab appeared when I enabled tabline but no further tabs appeared when I opened new files. I use the same vim config on my laptop and desktop. The tabline feature worked on the laptop but not desktop.
The problem was caused by the session file created by plugin xolox/vim-session. This saves and restores vim's state.
To fix the issue, I deleted ~/.vim/sessions/default.vim.


[Bug Report] On demand not working for CSS

Element UI version
1.3.7
OS/Browsers version
Windows, latest Chrome
Vue version
2.3.4
Reproduction Link
Its under 'build'
Steps to reproduce
.babelrc
{
  "presets": [
    ["env", { "modules": false }],
    "stage-2"
  ],
  "plugins": [["component", [
    {
      "libraryName": "element-ui",
      "styleLibraryName": "theme-default"
    }
  ]]],
  "comments": false,
  "env": {
    "test": {
      "presets": ["env", "stage-2"],
      "plugins": [ "istanbul" ]
    }
  }
}

What is Expected?
On demand for CSS file too after building. Right now everything is inside
What is actually happening?
I only 2-3 components inside Element. I've edited the babelrc file to load only the components I need. The js file after building looks fine. However, the CSS file contains everything.

I just tested this and it works fine. If you haven't solved this, give us a GitHub repo.


Cannot build cargo-deb

Running cargo install cargo-deb results in:
   Compiling cargo_toml v0.14.0
error[E0658]: use of unstable library feature 'scoped_threads'
   --> /home/james/.cargo/registry/src/github.com-1ecc6299db9ec823/cargo-deb-1.42.0/src/data.rs:128:5
    |
128 |     std::thread::scope(move |s| {
    |     ^^^^^^^^^^^^^^^^^^
    |
    = note: see issue #93203 <https://github.com/rust-lang/rust/issues/93203> for more information

error[E0658]: use of unstable library feature 'scoped_threads'
   --> /home/james/.cargo/registry/src/github.com-1ecc6299db9ec823/cargo-deb-1.42.0/src/data.rs:130:29
    |
130 |         let hash_thread = s.spawn(move || {
    |                             ^^^^^
    |
    = note: see issue #93203 <https://github.com/rust-lang/rust/issues/93203> for more information

error[E0658]: use of unstable library feature 'scoped_threads'
   --> /home/james/.cargo/registry/src/github.com-1ecc6299db9ec823/cargo-deb-1.42.0/src/data.rs:162:24
    |
162 |         Ok(hash_thread.join().unwrap())
    |                        ^^^^
    |
    = note: see issue #93203 <https://github.com/rust-lang/rust/issues/93203> for more information

For more information about this error, try `rustc --explain E0658`.
error: could not compile `cargo-deb` due to 3 previous errors
error: failed to compile `cargo-deb v1.42.0`, intermediate artifacts can be found at `/tmp/cargo-installfbsSw4`

Apologies if I missed something in the README about this issue.

You can try updating Rust, scoped_threads feature was stabilized in 1.63.
Minimum supported Rust version of cargo-deb is also 1.63.

Duh! Sorry, let me give that a go

This is why installation instruction in the readme is not cargo install cargo-deb, but:
rustup update
cargo install cargo-deb


Send Ipv4 Receive IPv6

because  in some countries they do not have ipv6 by themselves and DTLS should have same ip for send and receive, How to implement this for the countries that dose not have ipv6 by default?
can you implement something that dose not give us error when the ip of the Receiver changes like udptlspipe? because in this way we send ipv4 to server and recive ipv6 as a result and the client ip will be IPv6
thank you.

Hello!
I understand in general terms what you want but I don't understand why would you need it?
What exactly doesn't work for you if both sides use IPv4? Does dtlspipe work in your country at all?
What doesn't work if you use udptlspipe instead?

Thank you for your response. Let me clarify the issue I’m facing in my country.
Imagine I have a server with an IP address of <IP_ADDRESS>, and I’m running a VPN protocol on it. After 2-3 days, my country’s filtering system blocks requests sent to this IP. To bypass this, I’ve been using a method similar to udptlspipe, where:
I have two IPv4 addresses (for example, "<IP_ADDRESS>" and "<IP_ADDRESS>") and an IPv6 address.
The client sends data to the server using "<IP_ADDRESS>" and receives data back from either "<IP_ADDRESS>" or the IPv6 address.
This way, if the filtering system blocks "<IP_ADDRESS>" (the IP used for receiving data), my service remains unaffected because the initial data is still being sent to "<IP_ADDRESS>," which the filtering system doesn’t see, so it doesn’t get blocked.
The problem is that udptlspipe allows different IPs for sending and receiving, but it’s slower than dtlspipe. However, dtlspipe doesn’t support using separate IPs for sending and receiving data. I was wondering if it’s possible to implement something similar to udptlspipe in dtlspipe to allow different IPs?
I’ve tried implementing this in Go (i mean add this to dtlspipe), but I haven’t been successful since I’m not very experienced with Go. Is there any way to add this feature?

Okay, now I see. I need to think about it a bit.
To me it looks like a big issue that server is getting identified as VPN in the first place.
Which options for udptlspipe you use to achieve desired behavior? Are we talking about https://github.com/ameshkov/udptlspipe ? I just checked and I don't see such option for separation of upstream and downstream traffic by different server addresses.

Here’s how I set it up on the server side:
I have two IPs on my server, and I designate one as the main IP. When a request is sent to the secondary IP, the server responds with the main IP. you ask "I don't see such option for separation of upstream and downstream traffic by different server addresses." so i do this on server side.
For example, in the scenario I described, I make "<IP_ADDRESS>" the secondary IP, and when the client requests data through it, the server receives the data on "<IP_ADDRESS>," the main IP.
For TLS over WireGuard, I primarily use wstunnel (https://github.com/erebe/wstunnel), but I’ve also checked with udptlspipe and it works as well.
To summarize: if dtlspipe on the server is set up with the same configuration (sending data through one IP and receiving on another), it will rescive the data with one ip and send the data to the client with another IP, However, DTLS doesn’t accept this separation and it will give client error.
If it helps, I can set up a Linux server now with DTLS and two IPv4 addresses, then give you SSH access to test and see what I mean. It would only take about 10 minutes to configure. This way, you can directly check the setup.
Thanks again for your time and consideration on this issue—I really appreciate it!

Could you please contact me on telegram, my nickname is @Snawoot?


Traefik with Docker, multiple ip addresses

Hello,
I did try to ask this question in the community forums but unfortunately got no reply, so I thought maybe I can ask that here and get a reply from the developers:
In the documentation there is a section about listening to a specific IP address such as "entrypoints.specificIPv4.address=<IP_ADDRESS>:8888", but unfortunately, that is not possible within docker because those IP addresses are not available inside the traefik container (obviously).
So, how can I use traefik for multiple IP addresses?
(The only other way how I was able to do that was the following:
...
command:
- "--entrypoints.95http.address=:80"
- "--entrypoints.92http.address=:81"
ports:
- "<IP_ADDRESS>:80:80"
- "<IP_ADDRESS>:80:81"
...
)

Hi! I'm Træfiker :robot: the bot in charge of communication regulation.
Thanks for your interest in Traefik!
We dedicate the issue tracker to bug reports and feature requests only. My advanced AI has spotted that your issue might be a configuration problem or relates to something that doesn't look like a bug.
To confirm this, please join our Community Forum and reach out to us on the Traefik section.
In case I'm wrong (well, that would be embarrassing :sweat_smile:), my developers will re-open the issue and fix me!
In the meantime, you can double check Traefik's documentation.


update dependabot-automerge.yml to work with recent GitHub changes (08-03-2021

Based on recent changes, the current workflow does no allow to be used on public repository anymore (recent change on 8-march by GiHub).
This modification works and is in line with issues mention at the published workflow.
(see related issue and fix https://github.com/ahmadnassri/action-dependabot-auto-merge/issues/60#issuecomment-801338428)
Working and tested implementation can be reviewed at my organization https://github.com/drozmotiX/
(all adapters used this flow now)

Was it your intention to only fix the adapter creator itself and not the generated adapters?

Was it your intention to only fix the adapter creator itself and not the generated adapters?

we should in basic solve this directly in  the creator to avoid issue with new adapters.
Updating all existing one is a good suggestion, however I no sure how o automate this and not all adapters use it.
I raised a topic for our Dev-Meting. to inform all developers.  implementing the change (if they want to)

He meant you did not update the template (and the baselines), but only for the creator repo itself.
Also I don't think these changes make sense (see telegram)

... actually we are in the wrong repo! This is the release script :D


Fix Failure in name='port listening check'

This PR aims to fix a failure I was seeing when deploying my app with the following JSON:
{
  "description": "Checks My App Health",
  "env": {},
  "healthchecks": {
    "web": [
      {
        "attempts": 3,
        "path": "/health",
        "type": "startup"
      },
      {
        "listening": true,
        "name": "port listening check",
        "port": 5000,
        "type": "startup",
        "warn": true
      }
    ]
  },
  "name": "my-app-checker",
  "repository": "xxx",
  "scripts": {
    "dokku": {
      "postdeploy": "touch /app/postdeploy.test",
      "predeploy": "touch /app/predeploy.test"
    }
  }
}

Before
dokku@dokku:/tmp$ sudo /usr/bin/docker-container-healthchecker check 4f6b67ea1581dff4b441aa43dafb51dcc84993dbcfc9b482e7d7f51dc0328cca
-----> Executing 2 healthchecks
       Running healthcheck name='port listening check' attempts=3 port=5000 retries=2 timeout=5 type='listening' wait=5
       Running healthcheck name='eyJhdHRlbXB0cyI6MywicGF0aCI6Ii9oZWFsdGgiLCJwb3J0Ijo1MDAwLCJ0eXBlIjoic3RhcnR1cCJ9' delay=0 path='/health' retries=2 timeout=5 type='path'
       Healthcheck succeeded name='eyJhdHRlbXB0cyI6MywicGF0aCI6Ii9oZWFsdGgiLCJwb3J0Ijo1MDAwLCJ0eXBlIjoic3RhcnR1cCJ9'
 !     Failure in name='port listening check': container listening on expected port (5000) with unexpected IPv6 interface: expected=:: actual=::

After
Running a compiled docker-container-healthchecker from this branch:
dokku@dokku:/tmp$ sudo /home/ash/tmp/docker-container-healthchecker/build/linux/docker-container-healthchecker-amd64 check 4f6b67ea1581dff4b441aa43dafb51dcc84993dbcfc9b482e7d7f51dc0328cca
-----> Executing 2 healthchecks
       Running healthcheck name='eyJhdHRlbXB0cyI6MywicGF0aCI6Ii9oZWFsdGgiLCJwb3J0Ijo1MDAwLCJ0eXBlIjoic3RhcnR1cCJ9' delay=0 path='/health' retries=2 timeout=5 type='path'
       Running healthcheck name='port listening check' attempts=3 port=5000 retries=2 timeout=5 type='listening' wait=5
       Healthcheck succeeded name='eyJhdHRlbXB0cyI6MywicGF0aCI6Ii9oZWFsdGgiLCJwb3J0Ijo1MDAwLCJ0eXBlIjoic3RhcnR1cCJ9'
       Healthcheck succeeded name='port listening check'

cc @josegonzalez

Other than the Makefile changes, the PR looks great!

Would be cool to add the golang tests to CI, I don't think its there.

Would be cool to add the golang tests to CI, I don't think its there.

https://github.com/dokku/docker-container-healthchecker/pull/153 is a WIP PR 🙏


Keep a local list of peers to facilitate bootstrapping upon reboot

@mhluongo said on Discord that "It would be really nice to have some way to save peers between restarts".
Indeed it would, as this would both limit the risk of eclipse attacks as underlined by Matt, as well as prevent issues such as outdated bootstrap peers list in the config file that would require manual update.
One way to do it would be for the node to keep a routing table in the persistence folder and use it as a bootstrap list.

I have identified a possible way to implement this for this. I would like to do this first for the ECDSA client. I know which Go routines I want to change - however I need help setting up a local environment to build everything and test my changes as I am new to this and the documentation hasn't helped for what I want to do.
@mhluongo Would anyone from the team be willing to provide some help, perhaps through a call with screen sharing or something of the sort?

I don't think we could do 1:1 for a bit, considering deadlines for existing work. We're happy to help here or we could maybe do a group dev call to make the time higher leverage

I'm fine with a group dev call. Anything to make it clearer to community devs how to run things locally to test various kinds of changes. I think a few other people would be interested, maybe we could gauge interest on Discord.

cc @Shadowfiend @sthompson22 ideas or pointers on a better local setup?
@jeremyid anything you can share about your issues here would help!

I think I am almost there thanks to help from various community members.
What I'm trying to do involves changes in both keep-core/.../libp2p.go and keep-ecdsa/.../start.go. What I did:

Forked both repos
Added an instruction the replaceof keep-ecdsa's go.mod to point to my own forked repo: github.com/keep-network/keep-core => github.com/jeremyid/keep-core v.1.2.3-rc
Built the ECDSA docker image by running docker build . from keep-ecdsa

I was able to run this image after creating the config.toml and other appropriate files / folders.
The only thing left to do is figuring out how to work with v1.0.0 instead of v1.1.1-rc which is the last release that was available when I forked my repo. I believe this is a noob Git problem though so I can probably figure it out on my own.

On the last point, branching off a tag would be the way to go. I'm not certain you should be off v1.0.0 though- @sthompson22 what are the bootstraps running?

My own ECDSA Ropsten node as well as the bootstrap list I put in the config.toml are running v1.0.0 afaik, althought it is my understanding that new contracts will be communicated soon for use with new clients.
I think I managed to branch off the v1.0.0 tag. Currently working on this local branch with the change I mentioned to the replace statement in the go.mod. I tried to compile with docker build . but got the following error:

Could this be a compatibility problem between the new keep-core v.1.2.3-rc and the old keep-ecdsa v1.0.0?

I have solved this problem. Now proceeding with implementation.


Only use the distribution/context package in registry.go

This solves a issue from #909 where instance.id was not printed in logs,
because this file was using the background context from
golang.org/x/net/context instead of
github.com/docker/distribution/context.
It's cleaner to standardize on one package, so this commit removes the
import of golang.org/x/net/context entirely. The Context interfaces
defined in both packages are the same, so other code using
golang.org/x/net/context can still pass its context to NewRegistry.
Signed-off-by: Aaron Lehmann<EMAIL_ADDRESS>

LGTM
Check out #974, which takes this a little further.


New devices are not being added to Home Assistant

New devices are not being added to Home Assistant and there seems to be no clear way of how to achieve this.
Based on the README I understand that new Devices are not created unless another integration creates it. Why is this? Is this a deliberate decision? Is there some manual workaround that could be used currently to make this work?
Also, if this is a deliberate decision, I'm aware that the device "spam" created in Home Assistant is annoying, but it is the official way that Home Assistant works. In the "System Options" of the integration you can switch off the "Enable newly added entities." flag which does the same as the current behavior.
Any suggestions or ideas?

Hey, @rkkoszewski,
The behaviour currently is the following. The integration creates device_trackers entities automatically, but does not create a HA device for each device_tracker. The entities are in the disabled state unless HA knows the device from another integration. If a HA device exists, device_tracker is added to it in the enabled state.
Do you suggest creating a HA device for each of the connected to the router device? In this case, there will be lots of devices with 1 entity only.
I was thinking about such an idea but in order to give users the possibility to have something like internet switches for each device to control their internet access from HA. Then devices would have 2 entities and it does already worth creating HA devices.
In any case, I am open to discussions and suggestions

Oww, I didn't notice that the entities are still added but without the device (Those entities are disabled by default, and can be enabled, which is the way to enable tracking for those devices). From what I was able to find out that is the "Official" way of how Home Assistant should handle these situations as of 2022 (Source: Home Assistant: Improved handling of device tracker entities
Creating disabled "Devices" does not seem to be the official way to handle this situation. But for the "internet" switches idea, I'd suggest to create the "device + controls" when the tracking entity is enabled.
Closing this issue, as the functionality I mentioned is working as intended.
@Vaskivskyi  Thank you for clarifying all answers.

Hey,
You have reopened this issue. I would need some more info to be able to help you. Did anything change with new devices adding after the last version release?

I'd like to reopen this issue to further discuss if there is no better approach to create "Devices" in Home Assistant. Currently the Home/NoHome tracking is added to an existing "Device" if it exists from another integration, but no new "Devices" are ever created by "ha-asusrouter". All other trackers can be found and enabled from the "Entities" section and be used there to track devices as "Entities".
The issue I came across is during the creation of automations. The handling of "Devices" in Home Assistant is pretty well fleshed out, while the usage of "Entities" seems inconsistent and error prone. You need to manually write the transition values by hand, and worst of all, it does not seem to be possible to use the "Entity" state in "If-Then" statements (Only the Entity attributes, but not the Entity state itself). This works perfectly fine with "Devices" where you can even select the state as dropdown. This seems to me like a bug in the Home Assistant Automation.
So now when you work on creating Automations in Home Assistant, we have "Devices" and other trackers that are "Entities" rather than "Devices" because no other integration has created those "Devices". That seems to be a somewhat inconsistent situation.
I also re-read the official statement that I linked before (Home Assistant: Improved handling of device tracker entities) and noticed that it only mentions that the devices that do not exist from other integrations, should appear as "Disabled" "Entities", but it does not mention what should happen when you "Enable" such an "Entity". So I think that part is free for interpretation, as I was not able to find further documentation on this.
So TLDR:
My suggestion is that if an "Entity" that is "Disabled" and has no "Device" because no other integration has created it, that if this "Entity" gets "Enabled" by the user, it should create a "Device" for that "Entity". That way the "Devices" would be consistent across all tracked devices.
What do you think @Vaskivskyi ? (Or anybody else has a better idea, or sources of how this should officially work?)

I would agree with the TLDR. In general, I don't like entities which are not part of any device or service
Unfortunately, this is something, that should be implemented on the HA core side. But yes, I would prefer to get new devices, instead of just entities.

Oww, I thought that it's the integration that creates the devices. So it's not possible to create "Devices" from an integration? It is created by Home Assistant?

Integration can easily create devices for every device tracked. I am not sure, how to handle the creation of the devices only when device_tracker entities are enabled.
But I'll look into the question. Maybe, it can be done

It's probably a bit too late and I don't know whether you, @rkkoszewski, are still using AsusRouter, but with #762 users will now be able to automatically create devices when they enable device_tracker entities.
Will be released as soon as I finish 1 more feature for the next update

Released in 0.28.0


[1.12.2] Crash at startup with too many materials

This is similar to my other issue with BASE, but I think I may have found the issue.
There is a null point exception in the crash below, and the game does not load up:
https://pastebin.com/39jqRPTf

Nvm i was able to solve this issue by deleting the jsons in the Contenttweaker configs, and the BASE scripts automatically resetted them.

I still want to know what actually caused it. So I can fix it, or at least alert the user


read STYX_LOGGING

depending on https://github.com/spotify/styx/pull/541

LGTM after deploying spotify/styx#541


ENH: fft: GPU support for non-standard basic transforms

Reference issue
Towards gh-19257.
What does this implement/fix?
Following by example from CuPy (https://github.com/cupy/cupy/blob/main/cupyx/scipy/fft/_fft.py), the functions which are not part of the array API standard extension are written in terms of those which are, to enable GPU support.
Additional information
We have a new helper is_complex too. All skip_if_array_api_gpu markers have now been removed from test_basic.py.

CI fail can be resolved by adding some skips for torch - our reliance on array-api-compat has increased now that we are call out to torch for these functions. Unfortunately, array-api-compat has not implemented fft yet, but these skips (along with the rest which are documented in the meta test-skip issue) can be removed once it does so.

@rgommers can we bump the tolerance for the CI failure? In test_dtypes, float32-torch is just missing the 1e-4 rtol, with ~1.04e-4.

Sure, that's fine - I suggest making it 1.2e-4.

Thanks for the PR @lucascolley and for the review @peterbell10. In it went.


Run podified control job with 3 GALERA_REPLICAS

The existing podified control plane job is running with 1 GALERA_REPLICAS. We also have crs for 3 galera replicas.
Let's bump it in Zuul job and expand the test coverage.
Depends-On: https://github.com/openstack-k8s-operators/openstack-operator/pull/392
Depends-On: https://github.com/openstack-k8s-operators/ci-framework/pull/365

https://logserver.rdoproject.org/75/375/02ee1c70bf0fb57bfac0b3a8b37f075a033d188a/github-check/install-yamls-crc-podified-deployment/d7ab46e/ci-framework-data/logs/crc/pods/ shows galera 0,1,2.
I see the change in the install-yamls-crc-podified-deployment zuul inventory vars. So looks like it takes.

recheck

recheck

recheck

recheck

recheck

recheck


[ENH] Link to Python library wrapper arround XCASH ecosystem rest Api's and wallet

Maybe add this link: https://github.com/X-CASH-official/XCASH-Ecosystem-api-wrapper or https://pypi.org/project/xcash/ under the tools somewhere? In future ill work on other libraries (I hope someone else also) so we can provide easy access to developers

I created a section for XPy-API that I need to find. I'll add it as soon as.

Found it, though it needs some work.

Not a rush cause i still need to restructure it a bit

X-PY section added and mostly complete. Closed due to initial issue seeming to be solved.


Supervisor process foundable with :via option

(This PR is stacked with the previous one)
The current implementation of WalEx.Config.Registry
  def set_name(:set_supervisor, module, app_name), do: {:via, module, app_name}

makes the supervisor process can’t be found with GenServer.whereis
as WalEx.Supervisor is not implementing Registry behavior
test:
      assert {:ok, walex_supervisor_pid} = WalExSupervisor.start_link(@base_configs)

      assert walex_supervisor_pid ==
               GenServer.whereis(
                 WalExRegistry.set_name(:set_supervisor, WalExSupervisor, :test_name)
               )

produces the error
** (UndefinedFunctionError) function WalEx.Supervisor.whereis_name/1 is undefined or private
    (walex 3.7.0) WalEx.Supervisor.whereis_name(Sendman)
    (elixir 1.16.0) lib/gen_server.ex:1286: GenServer.whereis/1
    (elixir 1.16.0) lib/gen_server.ex:1059: GenServer.stop/3

So I changed the WalEx.Config.Registry to use
  def set_name(:set_supervisor, module, app_name), do: set_name(module, app_name)

like other modules
also,
    Supervisor.start_link(__MODULE__, configs: supervisor_opts, name: name)

doesn’t properly register the process name (it is using start_link/2)
We can check this with the test case above.
So I changed to use start_link/3
Supervisor.start_link(__MODULE__, supervisor_opts, name: name)

With this change, each Supervisor is starting with the name attached and also foundable with its name

also changed other supervisors

fixing the test failure

there was also a bug setting WalEx.Destinations.Supervisor name
reading :app_name key instead of :name

Very much appreciated @DohanKim

@DohanKim I just created a new release: https://github.com/cpursley/walex/releases/tag/v3.8.0
Also, does this finally resolve: https://github.com/cpursley/walex/issues/38
Or are you still experiencing issues?

I think it would, but as I can't reproduce the problem on dev or test environment, I have deployed the PR on my prod server and watching if it's okay. I can say it's resolved whenever a temporary DB connection problem happens and WalEx recovers the connection successfully.

Okay, feel free to close the issue whenever you feel confident that it's resolved :)


Failed to open device OMNIKEY AG CardMan 3121 on Linux

Hi,
I was trying to use the Smart Card Connector App in Ubuntu 16.04, with a OmniKey CarMand 3021 plugged in. The smart card reader is working with Firefox.
This error show up upon adding permissions to the reader.

Here are the logs:
 [  0.038s] [<background page>.GoogleSmartCard.ConnectorApp.BackgroundMain] [INFO] The Smart Card Connector app (id "khpfeaanjngmcnplbdlpegiifgpfgdco", version <IP_ADDRESS>) background script started
 [  0.059s] [<background page>.GoogleSmartCard.ConnectorApp.BackgroundMain] [INFO] Created a new PC/SC-Lite client handler (id 0) for handling requests from own app
 [  0.065s] [<background page>.GoogleSmartCard.NaclModule<"nacl_module.nmf">] [INFO] Loading NaCl module...
 [  0.102s] [<background page>.GoogleSmartCard.Libusb.ChromeUsbBackend] [INFO] 1 USB device(s) available: [{device: 0x00, manufacturerName: "OMNIKEY AG", productId: 0x00003021, productName: "Smart Card Reader USB", serialNumber: "", vendorId: 0x0000076B, version: 0x00000302}]
 [  0.194s] [<background page>.GoogleSmartCard.PcscLiteServerClientsManagement.ClientHandler<id=0, client=own app>] [INFO] Delaying the received requests until the PC/SC-Lite server gets ready. Currently delayed requests: SCardEstablishContext(<stripped value>, <stripped value>, <stripped value>)
 [  0.562s] [</window.html>.GoogleSmartCard.ConnectorApp.MainWindow] [INFO] The main window is created
 [  0.569s] [</window.html>.GoogleSmartCard.ConnectorApp.MainWindow] [INFO] Displaying 0 card reader(s): []
 [  1.344s] [</window.html>.GoogleSmartCard.ConnectorApp.MainWindow] [INFO] Displaying the warning regarding non-Chrome OS system (the current OS is "linux")
 [  1.347s] [<background page>.GoogleSmartCard.PcscLiteServerClientsManagement.PermissionsChecking.ManagedRegistry] [INFO] Loaded managed storage data with the allowed client App ids: Set{}
 [  1.349s] [<background page>.GoogleSmartCard.PcscLiteServerClientsManagement.PermissionsChecking.UserPromptingChecker] [INFO] Loaded local storage data with the stored user selections: no data
 [  6.280s] [<background page>.GoogleSmartCard.NaclModule<"nacl_module.nmf">] [INFO] Successfully loaded NaCl module
 [  6.299s] [<background page>.GoogleSmartCard.NaclModule<"nacl_module.nmf">.ReaderTracker] [INFO] A new reader "OMNIKEY AG CardMan 3121" (port 2097152, device "usb:076b/3021:libusb-1.0:42:0:0") is being initialized...
 [  6.302s] [</window.html>.GoogleSmartCard.ConnectorApp.MainWindow] [INFO] Displaying 1 card reader(s): [{name: "OMNIKEY AG CardMan 3121", status: "init", error: undefined, isCardPresent: false}]
 [  6.305s] [<background page>.GoogleSmartCard.NaclModule<"nacl_module.nmf">.NaCl] [INFO] [syslog] 00000000 ../../src/src/ifdhandler.c:1953:init_driver() Driver version: 1.4.24
 [  6.306s] [<background page>.GoogleSmartCard.NaclModule<"nacl_module.nmf">.NaCl] [INFO] [syslog] 00000930 ../../src/src/ifdhandler.c:1970:init_driver() LogLevel: 0x0003
 [  6.307s] [<background page>.GoogleSmartCard.NaclModule<"nacl_module.nmf">.NaCl] [INFO] [syslog] 00000100 ../../src/src/ifdhandler.c:1981:init_driver() DriverOptions: 0x0004
 [  6.307s] [<background page>.GoogleSmartCard.NaclModule<"nacl_module.nmf">.NaCl] [INFO] [syslog] 00000300 ../../src/src/ifdhandler.c:110:CreateChannelByNameOrChannel() Lun: 0, device: usb:076b/3021:libusb-1.0:42:0:0
 [  6.308s] [<background page>.GoogleSmartCard.NaclModule<"nacl_module.nmf">.NaCl] [INFO] [syslog] 00000070 ../../src/src/ccid_usb.c:287:OpenUSBByName() Using: /crx/pcsc/drivers/ifd-ccid.bundle/Contents/Info.plist
 [  6.309s] [<background page>.GoogleSmartCard.NaclModule<"nacl_module.nmf">.NaCl] [INFO] [syslog] 00000830 ../../src/src/ccid_usb.c:305:OpenUSBByName() ifdManufacturerString: Ludovic Rousseau<EMAIL_ADDRESS> [  6.310s] [<background page>.GoogleSmartCard.NaclModule<"nacl_module.nmf">.NaCl] [INFO] [syslog] 00000090 ../../src/src/ccid_usb.c:306:OpenUSBByName() ifdProductString: Generic CCID driver
 [  6.312s] [<background page>.GoogleSmartCard.NaclModule<"nacl_module.nmf">.NaCl] [INFO] [syslog] 00000050 ../../src/src/ccid_usb.c:307:OpenUSBByName() Copyright: This driver is protected by terms of the GNU Lesser General Public License version 2.1, or (at your option) any later version.
 [  6.321s] [<background page>.GoogleSmartCard.Libusb.ChromeUsbRequestHandler] [WARNING] API error occurred while calling chrome.usb.openDevice(<stripped value>): Failed to open device.
 [  6.325s] [<background page>.GoogleSmartCard.NaclModule<"nacl_module.nmf">.NaCl] [WARNING] LibusbOverChromeUsb::LibusbOpen request failed: Error: Failed to open device.
 [  6.326s] [<background page>.GoogleSmartCard.NaclModule<"nacl_module.nmf">.NaCl] [WARNING] [syslog] 00022720 ../../src/src/ccid_usb.c:525:OpenUSBByName() Can't libusb_open(42/0): LIBUSB_ERROR_OTHER
 [  6.327s] [<background page>.GoogleSmartCard.NaclModule<"nacl_module.nmf">.NaCl] [INFO] [syslog] 00000360 ../../src/src/ccid_usb.c:189:close_libusb_if_needed() libusb_exit
 [  6.328s] [<background page>.GoogleSmartCard.NaclModule<"nacl_module.nmf">.NaCl] [INFO] [syslog] 00000140 ../../src/src/ccid_usb.c:749:OpenUSBByName() Device not found?
 [  6.329s] [<background page>.GoogleSmartCard.NaclModule<"nacl_module.nmf">.NaCl] [WARNING] [syslog] 00000130 ../../src/src/ifdhandler.c:144:CreateChannelByNameOrChannel() failed
 [  6.330s] [<background page>.GoogleSmartCard.NaclModule<"nacl_module.nmf">.NaCl] [INFO] [syslog] ../../../../../third_party/pcsc-lite/src/src/readerfactory.c:1110:RFInitializeReader() Open Port 0x200000 Failed (usb:076b/3021:libusb-1.0:42:0:0)
 [  6.331s] [<background page>.GoogleSmartCard.NaclModule<"nacl_module.nmf">.NaCl] [INFO] [syslog] ../../../../../third_party/pcsc-lite/src/src/readerfactory.c:375:RFAddReaderOriginal() OMNIKEY AG CardMan 3121 init failed.
 [  6.332s] [<background page>.GoogleSmartCard.NaclModule<"nacl_module.nmf">.ReaderTracker] [WARNING] Failure while initializing the reader "OMNIKEY AG CardMan 3121" (port 2097152, device "usb:076b/3021:libusb-1.0:42:0:0"): error code 0x80100009
 [  6.333s] [</window.html>.GoogleSmartCard.ConnectorApp.MainWindow] [INFO] Displaying 1 card reader(s): [{name: "OMNIKEY AG CardMan 3121", status: "failure", error: "0x80100009", isCardPresent: false}]
 [  6.334s] [<background page>.GoogleSmartCard.PcscLiteServerClientsManagement.ClientHandler<id=0, client=own app>] [INFO] The server is ready, processing the delayed requests...
 [  6.338s] [<background page>.GoogleSmartCard.NaclModule<"nacl_module.nmf">.NaCl] [INFO] [PC/SC-Lite client 0 handler] SCardEstablishContext(dwScope=SCARD_SCOPE_SYSTEM, pvReserved1=null, pvReserved2=null): called...
 [  6.339s] [<background page>.GoogleSmartCard.NaclModule<"nacl_module.nmf">.NaCl] [INFO] [PC/SC-Lite client 0 handler] SCardEstablishContext: returning 0x00000000 ["Command successful."], hContext=0x5851F42D
 [  6.344s] [<background page>.GoogleSmartCard.NaclModule<"nacl_module.nmf">.NaCl] [INFO] [PC/SC-Lite client 0 handler] SCardListReaders(hContext=0x5851F42D, mszGroups=null): called...
 [  6.345s] [<background page>.GoogleSmartCard.NaclModule<"nacl_module.nmf">.NaCl] [INFO] [PC/SC-Lite client 0 handler] SCardListReaders: returning 0x8010002E ["Cannot find a smart card reader."]
 [  6.351s] [<background page>.GoogleSmartCard.NaclModule<"nacl_module.nmf">.NaCl] [INFO] [PC/SC-Lite client 0 handler] SCardGetStatusChange(hContext=0x5851F42D, dwTimeout=0, rgReaderStates=NULL): called...
 [  6.351s] [<background page>.GoogleSmartCard.NaclModule<"nacl_module.nmf">.NaCl] [INFO] [PC/SC-Lite client 0 handler] SCardGetStatusChange: returning 0x00000000 ["Command successful."], rgReaderStates=NULL
 [  6.354s] [<background page>.GoogleSmartCard.NaclModule<"nacl_module.nmf">.NaCl] [INFO] [PC/SC-Lite client 0 handler] SCardGetStatusChange(hContext=0x5851F42D, dwTimeout=60000, rgReaderStates=0xFEB13A80([SCARD_READERSTATE(szReader="\\?PnP?\Notification", pvUserData=NULL, dwCurrentState=SCARD_STATE_UNAWARE)])): called...

Hi Mariano, error 0x80100009 means that the reader is not recognized. So my first guess would be that the particular reader isn't supported unfortunately.
What driver are you using for the reader? If you're not using the open source ccid driver, give it a shot. Here's a thread where someone had a problem because of wrong driver https://ubuntuforums.org/showthread.php?t=1613601

That's a quick response.
I'm using the drivers listed at Omnikey's web page, ifdokccid_linux_x86_64-v<IP_ADDRESS>.
It works fine with Firefox.
Are you recommending to install https://pcsclite.alioth.debian.org/ccid.html?
Should I uninstall Omnikey's drivers?
Some more debugging:
$ sudo pcscd -v

pcsc-lite version 1.8.14.
Copyright (C) 1999-2002 by David Corcoran<EMAIL_ADDRESS>Copyright (C) 2001-2011 by Ludovic Rousseau<EMAIL_ADDRESS>Copyright (C) 2003-2004 by Damien Sauveron<EMAIL_ADDRESS>Report bugs to<EMAIL_ADDRESS>Enabled features: Linux x86_64-pc-linux-gnu serial usb libudev usbdropdir=/usr/lib/pcsc/drivers ipcdir=/var/run/pcscd configdir=/etc/reader.conf.d

$ opensc-tool -l
# Detected readers (pcsc)
Nr.  Card  Features  Name
0    Yes             OMNIKEY CardMan (076B:3021) 3021 00 00

I see I already have libccid installed.
How to make this work?

Hi Mariano,
You would have to stop the system pcscd daemon while using the Connector app. Two processes (pcscd and Chrome) cannot access the same device simultaneously.
Firefox is probably handling this differently, but the Connector app is working this way because it's primarily oriented to Chrome OS.
Hope this helps.

Also note that there are some problems with support of this reader by the Free CCID driver that is used by the Connector app:
https://github.com/LudovicRousseau/PCSC/issues/11

Closing this issue for inactivity. In case you would have more questions, please feel free to submit a new issue.


Provide session management capabilities

Add session management capabilities to QnABot to track previous questions by the user in named sessions and add ability for the users to retrieve the session by selecting a session from their past interactions. So that the customer experience would be similar to other chatbot interfaces like ChatGPT or CoPilot.

@juluriaj Thanks for your suggestion, we will review it and get back to you

@juluriaj - thank you for your suggestion. We have added this to our backlog and will prioritize.


PuTTY clients cannot select host to connect to

It seems that sshmuxd is unable to accept keyboard input when using putty SSH client (w/ Pagaent). Under mac and linux (openssh) this seems to work fine. Odd.

Odd, but not impossibly weird. sshmux does rely a tiny bit on client behaviour, as the SSH protocol itself is extremely universal.
A few more details would be nice:

server selection shows up, but you can't input your selection, right?
does the log say anything?

Argh, this is so close to being perfect, then I run into this bug at the very last moment.
Symptoms exactly as you guessed, @joushou, just no response to keyboard input.
Nothing in the log.

Same happening here on PuTTY,
Server selection shows up, no input being sent to the server ( sniffed using tcpdump )
Nothing in the PuTTY logs either, this is the last packet that I've got on PuTTY log:
Incoming packet #0xb, type 95 / 0x5f (SSH2_MSG_CHANNEL_EXTENDED_DATA)
00000000  00 00 01 00 00 00 00 01 00 00 00 1d 50 6c 65 61  ............Plea
00000010  73 65 20 73 65 6c 65 63 74 20 72 65 6d 6f 74 65  se select remote
00000020  20 73 65 72 76 65 72 3a 20                        server:

I think you need to set Reply on AgentForwarding/PTY-Allocation/Shell-Request for clients like PuTTY and Bitvice...

@ieth0 Is that a client option that you are referring to?

I mean https://godoc.org/golang.org/x/crypto/ssh#Request.Reply
Just add
log.Printf("%s: %s %s\r\n", session.Conn.RemoteAddr(), session.User.Name, req.Type)
inside req in forward.go and you'll see PuTTY/Bitvise will stuck in pty-req/shell because of no Reply from our side.

That's slightly trickier than a simple Reply, though, as those are proxied to the backend server upon conncetion. pty-req/shell reqs have side-effects, and the backend might refuse them.
It might be necessary to downgrade the transparency to get PuTTY to work by accepting pty-reqs... Hmmm. But then again, doesn't the new Win10 stuff let windows users use the real SSH client? :)

Im not big on windows stuffs, also I don't want to change my colleagues OS/tools they use. So I had to make this compatible with PuTTY too.
So far, by adding req.Reply(true, []byte{}) for pty-req || shell, PuTTY works too. I didn't see any problems.
Also Im working on exec req type, for ssh clients like ZoC which using exec on its jumpbox feature!


Missing item on automatically mapped Analytics variables page

Issue in help/edge/solution-specific/analytics/automatically-mapped-vars.md
This page contains an entry for serialization of the scCart event: commerce.productListViews.id, but it does not contain an entry for the scCart view, unserialized, which is how most people will use it. I was able to confirm that commerce.productListViews does actually set that event, however, so it's just a documentation issue.

Thank you. Tracking in https://jira.corp.adobe.com/browse/PLAT-71634

@jklockow Just to clarify, were you trying to provide your own ID value when mapping your analytics data to XDM? Was the problem that it is not clear that commerce.productListViews.id is a system-generated value? Or are there missing paths?

Hi Joshua,
My comment was not actually about the role of commerce.productListViews.id at all, although I did not realize that the id is a system-generated value. My comment was that commerce.productListViews (the even without the id), is not mentioned in the doc. Seems like an oversight since other similar events are listed.
From: Joshua<EMAIL_ADDRESS>Reply-To: "AdobeDocs/experience-platform.en"<EMAIL_ADDRESS>Date: Monday, October 5, 2020 at 10:59 AM
To: "AdobeDocs/experience-platform.en"<EMAIL_ADDRESS>Cc: Jim Klockow<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [AdobeDocs/experience-platform.en] Missing item on automatically mapped Analytics variables page (#41)
@jklockowhttps://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fjklockow&data=02|01|klockow%40adobe.com|41d10031d79d4bd3fde208d8695877fb|fa7b1b5a7b34438794aed2c178decee1|0|0|637375175969954891&sdata=JnIhzGU33tCutnRS6%2BZDJyaC6taohUTTxV4F9k7s3jw%3D&reserved=0 Just to clarify, were you trying to provide your own ID value when mapping your analytics data to XDM? Was the problem that it is not clear that commerce.productListViews.id is a system-generated value? Or are there missing paths?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FAdobeDocs%2Fexperience-platform.en%2Fissues%2F41%23issuecomment-703793012&data=02|01|klockow%40adobe.com|41d10031d79d4bd3fde208d8695877fb|fa7b1b5a7b34438794aed2c178decee1|0|0|637375175969954891&sdata=sgXsJcAmLovmWlfpLCdS9XkdR2RA4R6Pbs0J9%2FRKv34%3D&reserved=0, or unsubscribehttps://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAKUUT6E5SWAXHNPQ72S7XE3SJICRXANCNFSM4R7UNBTA&data=02|01|klockow%40adobe.com|41d10031d79d4bd3fde208d8695877fb|fa7b1b5a7b34438794aed2c178decee1|0|0|637375175969954891&sdata=AH4eXwlTjgf9%2Fk3hmVlBp%2F2ZrI6igW0SV1xeHu%2BlCpU%3D&reserved=0.

Doc has been updated to clarify how the system handles unserialized items and the use of the id field in general: https://docs.adobe.com/content/help/en/experience-platform/edge/data-collection/adobe-analytics/automatically-mapped-vars.html


App Shows Stale Data/Gets Stuck

Describe the bug
A large number of users on the Helium Discord, Reddit, and elsewhere, have been reporting for months various issues where the app seems to get stuck and stops pulling from the API, such as after asserting location or gain/height, initiating a transaction, etc. This affects the app up through version 4.1.0 (the latest version at the time of writing).
One such recent example:

That location assertion went through successfully the previous day, but it continued showing the above message until the user signed out and back in. Other users have shared the same screenshot, with the location having been properly asserted days or weeks earlier, but the app stays stuck there.
Another symptom of this issue is the wallet not showing any recent activity and the wallet balance remaining the same, but recent activity and the correct balance appears on Explorer.
Yet another symptom is attempted transactions failing with errors indicating an incorrect fee.
This state can always be resolved by either signing out and back in, or if that doesn't do it, then clearing the app cache or deleting the app, redownloading it, and signing back in.
To Reproduce
Unclear, but occurs frequently. I'd be happy to request any information that may be useful the next time someone reports such an issue.
Expected behavior
The app should clear out cached data and query the API again when the data's stale - maybe with a manual refresh button or pulldown action if an appropriate time can't be reliably determined programmatically.

i am getting this error on my freedomfi and also on my other devices that i am trying to assert locate. saying that i dont have enough sol funds which is false.

@amarinas Hello, I'm facing the same issue.
Did you find a solution to fix it?

no fix, but I just looked last night and I am getting some mobile tokens even though its the wrong location. I moved from California to Oregon so Im getting a lot of invalid witnesses and exceeded validators

I fixed it by adding 500 000 DC on my wallet

thank you, i also found that for 5g freedomfi you need 1 million DC(converted hnt to dc in app) to assert location for mobile AND 500k to transfer the iot side. So basically you will loose around 15 bucks for 5g. This makes sense since when i got the machine they give you a 10 hnt before all these different tokens


Add a JavaScript Walkthrough

This PR provides a built-in JavaScript walkthrough in Visual Studio Code. I think on some level we believe there's a group of beginners who are likely to stop using Visual Studio Code because they download it and don't know what to do next. Giving a walkthrough provides a clearer path on what those next steps are. So while we originally wanted to do a TypeScript walkthrough, it made more sense to just provide a JavaScript walkthrough, since TypeScript typically involves considering a build step, bundling, and assumes some level of comfort in JavaScript itself.
While we can provide a TypeScript walkthrough in the future, there are ideas in https://github.com/microsoft/vscode/issues/144062 that will likely simplify the walkthrough as well. In other words, I think that making the built-in experience for VS Code better will make the walkthroughs better too.
Huge thanks to @luabud for laying the foundation on the Python side.
Fixes https://github.com/microsoft/TypeScript/issues/48489
Ticks a box off on https://github.com/microsoft/vscode/issues/144062
Here's the current TODOs, with some specific callouts that I'd appreciate some input on.

[ ] Media Assets: I'll need to work with @misolori @daviddossett on these.

[ ] Walkthrough icon
[ ] Media for each step (currently just a TODO page)

[ ] Workflow and Phrasing

[ ] Should we recommend a .mjs file or .js file? Leaning towards .js.
[ ] Should we try to more intentionally tie the HTML file and the loose JS file steps? Seems unclear how we could do this.
[ ] Can we add a step to teach how to debug (leaning towards no)? Can we easily link to debugging docs if not?

[ ] Polish

[ ] How do I stylize the text for each of these prompts? I can't seem to use mono-spaced or keyboard-like text for things like <script> or F5 in the walkthrough steps. (@JacksonKearl)
[ ] Can we either hide or fill in the step for installing Node.js? Is there an easy way to determine whether Node.js is already installed? (@mjbvz)
[ ] Seems like there's a surprising delay for the Create an HTML file button. Is that just because I'm debugging?
[ ] In the last step, if a user tries to run/debug a single JavaScript file in their root directory, the debugger takes forever to start. Can we fix this? (@connor4312)

[ ] Experiments: Let's plumb these through (@devinvalenciano @isidorn @digitarald). Good experiments to start with:

[ ] How do we pitch this? Is it a "get started with JS" or a "get started with HTML and JS" walkthrough?
[ ] Which sample do we give for HTML? Should we do sample with the current HTML file vs. one with a prompt()/alert()?

Cool to see this! Here's some real-time feedback as I step through the walkthrough. I won't nitpick on copy, icons, etc. for now:
Step 1
My first reaction was that the created HTML file was way more "complete" than I would have expected. My assumption is that there wouldn't be any JavaScript written yet, and that I'd do it myself at a later step.

Step 2

"View Your Web Page" seems very reasonable, but "Start Debugging" feels intimidating through a novice lens. How important is the debugging concept at this stage? Could it be something more outcome-focused like "Open in your browser" or "Debug in your browser"?
I don't have Chrome installed, but it was still available as a debugger suggestion @roblourens is there anything we can do to curate that list?
The step wasn't marked as completed once I'd chosen a environment. I think the same was true for step 1, too.

Step 3
Not sure at this point why I need node. Is there an outcome we can use instead? Makes sense to hide this if Node is already installed. Seems reasonable to link to the page, in any case.
Step 4
It took me a second to realize this was sort of a different task altogether. I originally thought I'd be creating a new .js file to further interact with the HTML page. Seems like this about just running a standalone file, unrelated to the first half of the walkthrough.
Reading the step's description again, it seems like that's made somewhat clear at the end. But it still could be easily read as creating a new file to link to in the HTML file via a script tag. And many people won't read the description 😉
Overall thoughts
Now that I've been through it, a couple of high-level thoughts come to mind:

As a user, it seemed like the walkthrough was framed as if I was going to be actually writing some HTML and JS as part of the walkthrough. Instead, it's more about opening/running previously-written code. I think that's fine, but how could we frame the walkthrough to better convey that?
Should the standalone JS section be in it's own walkthrough as a follow up? Perhaps both the JS-in-HTML and standalone JS flows could then be slightly expanded to have users do more—like writing a bit of hello world-style JS vs. having it done for them.

Excited for this!

@daviddossett are you talking about the old "Debugger for Chrome" extension? That is marked as deprecated in the marketplace now, where do you see it?

Or maybe you just saw the "Web app (Chrome)" entry in the debugger list, checking for a chrome install before including that could be a js-debug feature request

Or maybe you just saw the "Web app (Chrome)" entry in the debugger list, checking for a chrome install before including that could be a js-debug feature request

Yeah it was this. I ended up getting an error since I wasn't thinking and just hit enter. I'll file an issue.

@DanielRosenwasser great work, I think this will be a great addition to the getting started page!
+1 for @daviddossett comments. Apart from that, here's some feedback.

I see some minor compile errors

I suggest to use VS Code, and not Visual Studio Code to align with other walkthroughs

Agree with @daviddossett that it would be nice to have more distinct separation between HTML and node flow. Should these be two different walkthroughs
Can we use when context to detect if node is installed, and if yes do not show the step "install nodejs"
I am leaning towards .js, and not complicating the life of beginners with .mjs

I plan to provide more feedback next week, so we do not drown you in feedback on day 1 :)
Also you could demo this in VS Code UX sync. Or let me know if you want me to share this to the broader VS Code team once you would like to get more feedback.
Thanks a lot for working on this!
fyi @connor4312 @weinand for debugging ideas
fyi @luabud for potential ideas from Python walkthrough

My first reaction was that the created HTML file was way more "complete" than I would have expected. My assumption is that there wouldn't be any JavaScript written yet, and that I'd do it myself at a later step.

This is possibly something we can condition with an experiment - but I do think we should have some JS that does something basic like setting text on an HTML element (e.g. output.textContent = "hello world!"; or even alert()).

How important is the debugging concept at this stage? Could it be something more outcome-focused like "Open in your browser" or "Debug in your browser"?

Yeah, I 100% agree - debugging is not what I care about at this point, and all I'm trying to do is make it easy to view the web page. 😅
I went back and forth on this because I wasn't sure how much we should teach and when. We're going to tell people "Hit F5 to run!", but then at some point they'll learn that it's actually debugging - and maybe that's okay?
In that case, should I not have the button focus on the debug output pane?

The step wasn't marked as completed once I'd chosen a environment. I think the same was true for step 1, too.

Weird, I'll double check this.

Not sure at this point why I need node since I was just in the browser.

Huh, I think the intent for this walkthrough was to not surface this as an option in the browser. What kind of environment were you in?

Should the standalone JS section be in it's own walkthrough as a follow up? Perhaps both the JS-in-HTML and standalone JS flows could then be slightly expanded to have users do more—like writing a bit of hello world-style JS vs. having it done for them.

@chrisdias suggested this too. I'm happy to rethink this tutorial as a way to start building web pages in Visual Studio Code. For example:

Start with HTML and view that.
Hit F5 to view it.
Add some CSS in the <head> element to style it
Add a <script> tag after the </body> (uh maybe bad practice but 🤷♂) to add some JS
Extract the CSS and JS into a <link> and <script src="...">

But it might take some time to get that going.

@isidorn

I see some minor compile errors

Weird, those seem to say that an import to vscode is not included. Did you need to re-run yarn or something from your workspace?

I am leaning towards .js, and not complicating the life of beginners with .mjs

👍🏻


Add support for logging leave/join events

The Plone Tune-Up group (#plone-tuneup on freenode) would like to use pmxbot to log leaves and joins for their event tracking.
Consider adding support for logging these events in addition to messages.

Bitbucket: https://bitbucket.org/yougov/pmxbot/issue/22
Originally reported by: Jason R. Coombs
Originally created at: 2012-09-26T18:15:38.469

This would definitely be great to have. Seems like it is something you would want to provide in general, too.

Original comment by: Alex Clark

pmxbot 1103.3.1 now supports logging joins for logged channels. Additional work will be needed to support logging leaves. Also, there's no support in the web UI yet.

Original comment by: Jason R. Coombs

I believe this is fixed, so I'm closing it.

Original comment by: Jason R. Coombs

Added support for leave logging in b694ee47ac80.

Original comment by: Jason R. Coombs


Lock down to an organization

By default this plugin allows ANYONE on Github to log into the build server. It would be nice if it could lock it down based on organization membership. I am a little confused about how or if the user name regex can be used for this purpose.

Looks like https://github.com/gocd-contrib/gocd-oauth-login/pull/14 overrode the functionality of usernameRegex for the github plugin to instead mean the org you should be part of in order to log in. I think the plugin author had future plans to rearchitect the plugin, and in so doing clean up the naming, but I am unsure if that happened. That's why the naming is confusing :)

That would explain why I couldn't get the username regex to work at all... I threw my org name in there and it seems to have worked!
I'm going to leave this issue open as a reminder to update the UI strings and docs etc. so this will make sense to new users.
Thanks for your comment!

Another random note... this functionality doesn't work unless you specify a username and oauth token.
Create a "personal access token" with the "org:read" privilege in github (use this as the oauth token)

I'm not the author, but I think I might have permissions to accept PRs. If you want to improve the README and submit a PR for it, I'll accept it.
Also, the UI string is here. Just saying. :)

Also, this seems to be related to https://github.com/gocd-contrib/gocd-oauth-login/issues/36#issuecomment-221334897.

I think I got the fix eventually. In setting window of Google OAuth Login, give the value of<EMAIL_ADDRESS>to Username Regular Expression, instead of Username.
allowOnlyKnownUsersToLogin="true" only works for users who have already signed up.

There is a new 2.0 release that addresses all the issues highlighted here.
Please be sure re-configure the plugins again, after you install them.


problem regarding where to take input.

kindly explain where to provide input image/video. Also provide the detail of how to get output. It will helpful for us as we are unable to proceed.
Thank you

Hello, @kumarshubh707!
There's our guide about how to load image & video on the Wiki page.
https://github.com/naver/egjs-view360/wiki/PanoViewer-3.0-User-Guide
Please contact me if you still need help :)

I am still not getting where to give input image in code and how & where
should I expect output.
On Tue, Feb 11, 2020, 12:26 Mingyu Kim<EMAIL_ADDRESS>wrote:

Hello, @kumarshubh707 https://github.com/kumarshubh707!
There's our guide about how to load image & video on the Wiki page.
https://github.com/naver/egjs-view360/wiki/PanoViewer-3.0-User-Guide
Please contact me if you still need help :)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/naver/egjs-view360/issues/303?email_source=notifications&email_token=ALYTHRO4JSRJUCL4URWDM6LRCJD3BA5CNFSM4KS3GLMKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOELLMIBA#issuecomment-584500228,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALYTHRMKL6NJJETOBLFBSYLRCJD3BANCNFSM4KS3GLMA
.

You can see the demos here: https://naver.github.io/egjs-view360/panoviewer.html
Each demos include source code of it, so you can take any of those for starter template I guess.


Getting errors from .../lib/no-module.js and .../lib/dojo-require.js

I was very excited to find this loader!  I've been working in a dojo app for a while now and we've always been boxed into relying on the build tool that ships with dojo.
Trying to get this working on a basic level right now, but I keep getting the following errors:

ERROR in ./~/dojo-webpack-loader/lib/no-module.js
Module build failed: TypeError: Cannot read property '0' of undefined
at resolveCoreModuleDependency (/Users/n0199601/dev/workspaces/responsive01/ESalesClient/node_modules/dojo-webpack-loader/index.js:71:39)
at Object.DojoWebpackLoader (/Users/n0199601/dev/workspaces/responsive01/ESalesClient/node_modules/dojo-webpack-loader/index.js:230:48)
@ ./src/esales/main.js 5:0-82:2
ERROR in ./~/dojo-webpack-loader/lib/dojo-require.js
Module build failed: TypeError: Cannot read property '0' of undefined
at resolveCoreModuleDependency (/Users/n0199601/dev/workspaces/responsive01/ESalesClient/node_modules/dojo-webpack-loader/index.js:71:39)
at Object.DojoWebpackLoader (/Users/n0199601/dev/workspaces/responsive01/ESalesClient/node_modules/dojo-webpack-loader/index.js:230:48)
@ ./~/dojo/_base/kernel.js 1:0-309:2

I've been tinkering with things for a while now but am at a bit of a loss.  I can see that the no-module.js and dojo-require.js files are included within the loader under the lib directory.  However, I'm not exactly sure how they are tied into the process or why the build would be failing because of them in this way.  Any insight you could provide would be most appreciated!

I have fixed typo in resolveCoreModuleDependency function
But this function is called if module's resourcePath starts with dojoWebpackLoader.dojoCorePath directory. Can you check this option in your webpack config? It should be set to folder of dojo package

Thank you.  I pulled the latest version and it looks like the typo you fixed must've resolved the issue I was hitting.  I am no longer receiving that error.  I just double checked my dojoWebpackLoader.dojoCorePath value in my config and it looks like it's set properly.


refactor: committed tx may not have been executed

Problem
Refactor CommittedTransaction struct to allow representing transactions that were not executed but still committed
Summary of Changes

Flatten out execution_details field in CommittedTransaction to remove the notion that those fields came from an execution
Remove TransactionCommitResultExtensions::transaction_result method since it is easy to misuse given that it flattens processing and execution errors
Add new serializable TransactionCommitDetails struct for the bank_hash_details module that mirrors CommittedTransaction so that CommittedTransaction itself doesn't need to be serializable

Fixes #

The code looks good to me, but can you enlighten me re: the higher level context?
Is this setting the stage for async execution? Charging fees for transactions we don't execute? Something else?

The code looks good to me, but can you enlighten me re: the higher level context?
Is this setting the stage for async execution? Charging fees for transactions we don't execute? Something else?

Yup, charging fees that we didn't execute. You can see how the code will be used here: https://github.com/anza-xyz/agave/pull/2425/files#diff-ed47b4a0198313377e091bb3957bbbc63d937805426d1b2b6de39d0a50d32a0cR3901


Cannot install via snap

Trying to install microk8s on ubuntu 20.04 leaves me with the following:
oipo@oipo-X570-AORUS-ELITE:/home/oipo-unencrypted/Programming$ sudo snap install microk8s --classic
error: cannot perform the following tasks:
- Run configure hook of "microk8s" snap if present (run hook "configure":
-----
++ '[' '!' -f /var/snap/microk8s/1710/certs/front-proxy-client.crt ']'
+++ /snap/microk8s/1710/usr/bin/openssl x509 -noout -issuer
++ '[' 'issuer= /CN=front-proxy-ca' == 'issuer=CN = <IP_ADDRESS>' ']'
++ echo 0
+ '[' 0 == 1 ']'
+ '[' -e /var/snap/microk8s/1710/args/containerd-template.toml ']'
+ grep -e 'stream_server_address = ""' /var/snap/microk8s/1710/args/containerd-template.toml
+ grep -e '\-\-allow-privileged' /var/snap/microk8s/1710/args/kubelet
+ '[' -f /root/snap/microk8s/common/istio-auth.lock ']'
+ '[' -f /root/snap/microk8s/common/istio-auth.lock ']'
+ need_api_restart=false
+ '[' -f /var/snap/microk8s/1710/credentials/kubelet.config ']'
+ '[' -f /var/snap/microk8s/1710/credentials/proxy.config ']'
+ '[' -f /var/snap/microk8s/1710/credentials/scheduler.config ']'
+ '[' -f /var/snap/microk8s/1710/credentials/controller.config ']'
+ for dir in "${SNAP_DATA}/credentials/ ${SNAP_DATA}/certs/ ${SNAP_DATA}/args/ ${SNAP_DATA}/var/lock"
+ chmod -R ug+rwX /var/snap/microk8s/1710/credentials/ /var/snap/microk8s/1710/certs/ /var/snap/microk8s/1710/args/ /var/snap/microk8s/1710/var/lock
+ chmod -R o-rwX /var/snap/microk8s/1710/credentials/ /var/snap/microk8s/1710/certs/ /var/snap/microk8s/1710/args/ /var/snap/microk8s/1710/var/lock
+ getent group microk8s
+ getent group microk8s
+ chgrp microk8s -R /var/snap/microk8s/1710/credentials/ /var/snap/microk8s/1710/certs/ /var/snap/microk8s/1710/args/ /var/snap/microk8s/1710/var/lock/ /var/snap/microk8s/1710/var/kubernetes/backend/
+ '[' -e /var/snap/microk8s/1710/opt/cni/bin/flanneld ']'
+ '[' -f /var/snap/microk8s/1710/args/flanneld ']'
+ grep -e etcd.socket:2379 /var/snap/microk8s/1710/args/etcd
+ grep -e basic-auth-file /var/snap/microk8s/1710/args/kube-apiserver
+ grep '\-\-enable\-v2' /var/snap/microk8s/1710/args/etcd
--enable-v2=true
+ false
+ '[' -L /var/snap/microk8s/1710/bin/cilium ']'
+ '[' -e /var/snap/microk8s/1710/var/lock/clustered.lock ']'
+ '[' -e /var/snap/microk8s/1710/args/flannel-template.conflist ']'
+ grep -e cniVersion /var/snap/microk8s/1710/args/flannel-template.conflist
    "cniVersion": "0.3.1",
+ '[' '!' -f /var/snap/microk8s/1710/args/cluster-agent ']'
+ grep -e '\-\-timeout' /var/snap/microk8s/1710/args/cluster-agent
--timeout 240
+ mkdir -p /var/snap/microk8s/1710/juju/share/juju /var/snap/microk8s/1710/juju-home
+ chmod -R ug+rwX /var/snap/microk8s/1710/juju /var/snap/microk8s/1710/juju-home
+ chmod -R o-rwX /var/snap/microk8s/1710/juju /var/snap/microk8s/1710/juju-home
+ getent group microk8s
+ chgrp microk8s -R /var/snap/microk8s/1710/juju /var/snap/microk8s/1710/juju-home
+ grep -e '\-\-ip-masq' /var/snap/microk8s/1710/args/flanneld
--ip-masq=true
+ grep -e '\-\-cluster-cidr=<IP_ADDRESS>/24' /var/snap/microk8s/1710/args/kube-proxy
+ '[' -e /var/snap/microk8s/1710/args/cni-network/cni.yaml ']'
+ '[' -e /var/snap/microk8s/1710/var/lock/ha-cluster ']'
+ echo 'Setting up the CNI'
Setting up the CNI
++ date +%s
+ start_timer=1602346594
+ timeout=120
+ KUBECTL='/snap/microk8s/1710/kubectl --kubeconfig=/var/snap/microk8s/1710/credentials/client.config'
+ sleep 5
++ date +%s
+ now=1602346669
+ [[<PHONE_NUMBER> ><PHONE_NUMBER> ]]
+ sleep 5
++ date +%s
+ now=1602346674
+ [[<PHONE_NUMBER> ><PHONE_NUMBER> ]]
+ sleep 5
++ date +%s
+ now=1602346679
+ [[<PHONE_NUMBER> ><PHONE_NUMBER> ]]
+ sleep 5
++ date +%s
+ now=1602346684
+ [[<PHONE_NUMBER> ><PHONE_NUMBER> ]]
+ sleep 5
++ date +%s
+ now=1602346689
+ [[<PHONE_NUMBER> ><PHONE_NUMBER> ]]
+ sleep 5
++ date +%s
+ now=1602346694
+ [[<PHONE_NUMBER> ><PHONE_NUMBER> ]]
+ sleep 5
++ date +%s
+ now=1602346699
+ [[<PHONE_NUMBER> ><PHONE_NUMBER> ]]
+ sleep 5
++ date +%s
+ now=1602346704
+ [[<PHONE_NUMBER> ><PHONE_NUMBER> ]]
+ sleep 5
++ date +%s
+ now=1602346709
+ [[<PHONE_NUMBER> ><PHONE_NUMBER> ]]
+ sleep 5
++ date +%s
+ now=1602346714
+ [[<PHONE_NUMBER> ><PHONE_NUMBER> ]]
+ sleep 5
++ date +%s
+ now=1602346719
+ [[<PHONE_NUMBER> ><PHONE_NUMBER> ]]
+ break
+ /snap/microk8s/1710/kubectl --kubeconfig=/var/snap/microk8s/1710/credentials/client.config apply -f /var/snap/microk8s/1710/args/cni-network/cni.yaml
The connection to the server <IP_ADDRESS>:16443 was refused - did you specify the right host or port?
-----)

Uninstalling the previous command leads to an error that there is nothing to uninstall.
Using channel 1.18/stable results in a similar error later down the line:
oipo@oipo-X570-AORUS-ELITE:/home/oipo-unencrypted/Programming$ sudo snap install microk8s --classic --channel=1.18/stable
microk8s (1.18/stable) v1.18.9 from Canonical✓ installed
oipo@oipo-X570-AORUS-ELITE:/home/oipo-unencrypted/Programming$ sudo microk8s enable registry dashboard dns
Enabling the private registry
Enabling default storage class
Unable to connect to the server: net/http: TLS handshake timeout
Failed to enable storage
Failed to enable registry

After this command, uninstalling is possible.

@Oipo this may have something to do with the hostname having capital letters.
From the docs troubleshooting section
Ensure the hostname of your machine name does not contain capital letters or underscores. Kubernetes normalizes the machine name causing its registration to fail.
After that you may want to restart microk8s.

Thank you for your response.
Unfortunately, after changing the hostname to xanthos and rebooting, the issue persists.

Will it be possible to reinstall microk8s?
sudo snap remove microk8s --purge then sudo snap install microk8s --channel <what channel you prefer>

oipo@xanthos:~$ sudo snap remove microk8s --purge
[sudo] password for oipo:
snap "microk8s" is not installed

Wait. I thought you successfully installed 1.18/stable?
https://github.com/ubuntu/microk8s/issues/1638#issuecomment-706593632

Well, for varying definitions of "successfully". As even on 1.18, microk8s is not usable. Hence I removed that one yesterday.

Im sorry to hear that.  If you don't mind trying the 1.18/stable channel this time.    Hopefully this time it works.
While for 1.19, there's an issue reported similar to this.
https://github.com/ubuntu/microk8s/issues/1623
May i know the machine specs you got and for which arch?
Thanks

The same error as before still happens:
oipo@xanthos:~$ sudo snap install microk8s --classic --channel=1.18/stable
microk8s (1.18/stable) v1.18.9 from Canonical✓ installed
oipo@xanthos:~$ sudo microk8s enable registry dashboard dns
Enabling the private registry
Enabling default storage class
The connection to the server <IP_ADDRESS>:16443 was refused - did you specify the right host or port?
Failed to enable storage
Failed to enable registry

I don't think the hostname had any effect whatsoever.
The specifications are as follows:
Ryzen 3900x
32GB RAM
Ubuntu 20.04, x64

If you start with just enabling dns first?
microk8s enable dns.  Then check running pods or the node state.
microk8s kubectl get no -o wide or microk8s kubectl get pods -A
Thanks.