Connecting to running Swank server?

I have a compiled application (Nyxt browser) which includes a Swank server that I can start on a given port. I would like to connect Vlime to that server, but either I am doing it wrong or there is something broken. Here is what I did:

Start Nyxt and execute start-swank (starts the Swank server on port 4006)
Start Neovim, open a Lisp buffer and press <localleader>cc
I enter <IP_ADDRESS> and 4006 and the host and port respectively.
Try to send (+  2 3) to the REPL by pressing <localleader>si, entering the expression and hitting <CR>

At this point I get an error:
Error detected while processing function vlime#ui#input#FromBufferComplete[14]..<lambda>28[1]..<SNR>207_CheckInputValidity[2]..<lam
bda>29[1]..vlime#ui#WithBuffer[19]..<SNR>192_SendToREPLInputComplete:
line    2:
E716: Key not present in Dictionary: "ListenerEval, [a:content, function('s:OnListenerEvalComplete')]))"
E116: Invalid arguments for function function
E116: Invalid arguments for function vlime#WithThread
Error detected while processing function vlime#ui#input#FromBufferComplete[14]..<lambda>28[1]..<SNR>207_CheckInputValidity:
line    2:
E171: Missing :endif

Afterwards the REPL buffer opens, but all it contains is
SWANK, remote <IP_ADDRESS>:4006
============================
--

No expressions have been evaluated.
If I understand the documentation correctly, the Vim plugin does not communicate with the Swank server directly, but with a Vlime server, which then communicated with the Swank server. Is there a way of starting the Vlime server from within Vim and telling it to connect to the existing Swank server? Patching Nyxt to include the Vlime server is something I would very much want to avoid.

Update: after some more reading of the manual I have tried the following:

Start SBCL and add the path to Vlime to the Quicklisp search paths: (push #P"/home/hiphish/.local/share/nvim/site-packages/vlime/lisp/" ql:*local-project-directories*)
Load Vlime: (ql:quickload :vlime)
Start the Swank server in Nyxt: start-swank
Run the Vlime server, connecting to the running Swank server: (vlime:main :port 7002 :start-swank nil :swank-port 4006)
In Neovim open up init.lisp and press <localleader>cc, enter the port of the Vlime server (7002)

I still get the same error message in Neovim and the console of the Vlime server shows:
CL-USER(12): (vlime:main :port 7002 :start-swank nil :swank-port 4006)

NIL
  <INFO> [22:43:20] vlime-usocket - Server created: (#(127 0 0 1) 7002)
CL-USER(13):   <INFO> [22:43:44] vlime-usocket - New client: #<USOCKET:STREAM-USOCKET {10040ED6B3}>
  <INFO> [22:43:44] vlime-usocket - Control thread stopping: (:SWANK-DATA-ERROR
                                                              #<SB-INT:SIMPLE-READER-PACKAGE-ERROR "Package ~A does not exist." {10042FD803}>)

Can you create a transcript of the data being sent back and forth (eg. via wireshark, tcpick, or at least strace), so that we can see what is missing?
vlime depends on a few contribs, perhaps there's something that doesn't replies as expected.

This is all I got from TShark:
$ sudo tshark -f 'port 4006' -i any
Password:
Running as user "root" and group "root". This could be dangerous.
Capturing on 'any'
    1 0.000000000    <IP_ADDRESS> → <IP_ADDRESS>    TCP 76 58146 → 4006 [SYN] Seq=0 Win=65495 Len=0 MSS=65495 SACK_PERM=1 TSval=2204118391 TSecr=0 WS=128
    2 0.000017703    <IP_ADDRESS> → <IP_ADDRESS>    TCP 76 4006 → 58146 [SYN, ACK] Seq=0 Ack=1 Win=65483 Len=0 MSS=65495 SACK_PERM=1 TSval=2204118391 TSecr=2204118391 WS=128
    3 0.000031258    <IP_ADDRESS> → <IP_ADDRESS>    TCP 68 58146 → 4006 [ACK] Seq=1 Ack=1 Win=65536 Len=0 TSval=2204118391 TSecr=2204118391
    4 0.501867548    <IP_ADDRESS> → <IP_ADDRESS>    TCP 196 58146 → 4006 [PSH, ACK] Seq=1 Ack=1 Win=65536 Len=128 TSval=2204118893 TSecr=2204118391
    5 0.501888087    <IP_ADDRESS> → <IP_ADDRESS>    TCP 68 4006 → 58146 [ACK] Seq=1 Ack=129 Win=65408 Len=0 TSval=2204118893 TSecr=2204118893
    6 0.513019264    <IP_ADDRESS> → <IP_ADDRESS>    TCP 68 4006 → 58146 [FIN, ACK] Seq=1 Ack=129 Win=65536 Len=0 TSval=2204118904 TSecr=2204118893
    7 0.513208339    <IP_ADDRESS> → <IP_ADDRESS>    TCP 68 58146 → 4006 [ACK] Seq=129 Ack=2 Win=65536 Len=0 TSval=2204118905 TSecr=2204118904

Never mind, I'm a moron, I set Vlime in Neovim to listen to 4006 instead of 7002. Here are the correct captures:
$ sudo tshark -f 'port 4006' -i any  # Swank server running inside Nyxt
Password:
Running as user "root" and group "root". This could be dangerous.
Capturing on 'any'
    1 0.000000000    <IP_ADDRESS> → <IP_ADDRESS>    TCP 76 58226 → 4006 [SYN] Seq=0 Win=65495 Len=0 MSS=65495 SACK_PERM=1 TSval=2204487619 TSecr=0 WS=128
    2 0.000018514    <IP_ADDRESS> → <IP_ADDRESS>    TCP 76 4006 → 58226 [SYN, ACK] Seq=0 Ack=1 Win=65483 Len=0 MSS=65495 SACK_PERM=1 TSval=2204487619 TSecr=2204487619 WS=128
    3 0.000031248    <IP_ADDRESS> → <IP_ADDRESS>    TCP 68 58226 → 4006 [ACK] Seq=1 Ack=1 Win=65536 Len=0 TSval=2204487619 TSecr=2204487619
    4 0.496900843    <IP_ADDRESS> → <IP_ADDRESS>    TCP 133 58226 → 4006 [PSH, ACK] Seq=1 Ack=1 Win=65536 Len=65 TSval=2204488116 TSecr=2204487619
    5 0.496917053    <IP_ADDRESS> → <IP_ADDRESS>    TCP 68 4006 → 58226 [ACK] Seq=1 Ack=66 Win=65536 Len=0 TSval=2204488116 TSecr=2204488116
    6 0.497684623    <IP_ADDRESS> → <IP_ADDRESS>    TCP 2002 4006 → 58226 [PSH, ACK] Seq=1 Ack=66 Win=65536 Len=1934 TSval=2204488117 TSecr=2204488116
    7 0.497693109    <IP_ADDRESS> → <IP_ADDRESS>    TCP 68 58226 → 4006 [ACK] Seq=66 Ack=1935 Win=64000 Len=0 TSval=2204488117 TSecr=2204488117
    8 0.498208956    <IP_ADDRESS> → <IP_ADDRESS>    TCP 68 58226 → 4006 [FIN, ACK] Seq=66 Ack=1935 Win=65536 Len=0 TSval=2204488117 TSecr=2204488117
    9 0.498964403    <IP_ADDRESS> → <IP_ADDRESS>    TCP 68 4006 → 58226 [FIN, ACK] Seq=1935 Ack=67 Win=65536 Len=0 TSval=2204488118 TSecr=2204488117
   10 0.498977177    <IP_ADDRESS> → <IP_ADDRESS>    TCP 68 58226 → 4006 [ACK] Seq=67 Ack=1936 Win=65536 Len=0 TSval=2204488118 TSecr=2204488118

$ sudo tshark -f 'port 7002' -i any  # Vlime server running in SBCL
Running as user "root" and group "root". This could be dangerous.
Capturing on 'any'
    1 0.000000000    <IP_ADDRESS> → <IP_ADDRESS>    TCP 76 43484 → 7002 [SYN] Seq=0 Win=65495 Len=0 MSS=65495 SACK_PERM=1 TSval=2204487610 TSecr=0 WS=128
    2 0.000013526    <IP_ADDRESS> → <IP_ADDRESS>    TCP 76 7002 → 43484 [SYN, ACK] Seq=0 Ack=1 Win=65483 Len=0 MSS=65495 SACK_PERM=1 TSval=2204487610 TSecr=2204487610 WS=128
    3 0.000021781    <IP_ADDRESS> → <IP_ADDRESS>    TCP 68 43484 → 7002 [ACK] Seq=1 Ack=1 Win=65536 Len=0 TSval=2204487610 TSecr=2204487610
    4 0.502008293    <IP_ADDRESS> → <IP_ADDRESS>    TCP 196 43484 → 7002 [PSH, ACK] Seq=1 Ack=1 Win=65536 Len=128 TSval=2204488112 TSecr=2204487610
    5 0.502031506    <IP_ADDRESS> → <IP_ADDRESS>    TCP 68 7002 → 43484 [ACK] Seq=1 Ack=129 Win=65408 Len=0 TSval=2204488112 TSecr=2204488112
    6 0.506976942    <IP_ADDRESS> → <IP_ADDRESS>    TCP 68 7002 → 43484 [FIN, ACK] Seq=1 Ack=129 Win=65536 Len=0 TSval=2204488117 TSecr=2204488112
    7 0.508230062    <IP_ADDRESS> → <IP_ADDRESS>    TCP 68 43484 → 7002 [ACK] Seq=129 Ack=2 Win=65536 Len=0 TSval=2204488119 TSecr=2204488117
    8 17.026596081    <IP_ADDRESS> → <IP_ADDRESS>    TCP 224 43484 → 7002 [PSH, ACK] Seq=129 Ack=2 Win=65536 Len=156 TSval=2204504637 TSecr=2204488117
    9 17.026613364    <IP_ADDRESS> → <IP_ADDRESS>    TCP 56 7002 → 43484 [RST] Seq=2 Win=0 Len=0

Sorry... I meant that the contents would be helpful, so that we see which commands are sent are what replies are received.

bump Anything useful in the logs?

VLIME sends that:
[1, [{"name": "EMACS-REX", "package": "KEYWORD"}, [{"name": "CONNECTION-INFO", "package": "SWANK"}], "COMMON-LISP-USER", true]]
[2, [{"name": "EMACS-REX", "package": "KEYWORD"}, [{"name": "SIMPLE-COMPLETIONS", "package": "SWANK"}, "+", "COMMON-LISP-USER"], "COMMON-LISP-USER", true]]

but gets no reply.
And this here is relayed to swank:
00003B(:emacs-rex (swank:connection-info) "COMMON-LISP-USER" t 1)000788(:return (:ok

So it looks like the vlime-server part in your SBCL forwards the first query to swank, which answers; but either the vlime-server doesn't read, or doesn't relay the data.
Do you have any error messages visible? Can you run nyxt from an xterm or so, in case error messages appear there?

Do you have any error messages visible? Can you run nyxt from an xterm or so, in case error messages appear there?

Yes, Nyxt does indeed display an error:
;; Swank started at port: 4006.
<INFO> [12:40:32] Swank server started at port 4006
;; swank:close-connection: end of file on #<SB-SYS:FD-STREAM for "socket <IP_ADDRESS>:4006, peer: <IP_ADDRESS>:40666" {100F20A453}>

That last line appears about a second or less after I have connected Neovim to Vlime.

Hey, I was just trying the exact same thing, but like @HiPhish I could not make vlime to talk to the externally managed swank server.
Steps to reproduce
Terminal 1 (swank server):
[SBCL] CL-USER> (ql:quickload "swank")
To load "swank":
  Load 1 ASDF system:
    swank
; Loading "swank"
.
("swank")

[SBCL] CL-USER> (swank:create-server :port 4005 :dont-close t)
;; Swank started at port: 4005.
4005

Terminal 2 (vlime server):
[SBCL] CL-USER> (load "~/opt/vlime/lisp/load-vlime.lisp")
WARNING:
   redefining EMACS-INSPECT (#<SB-PCL:SYSTEM-CLASS COMMON-LISP:T>) in DEFMETHOD
T

[SBCL] CL-USER> (vlime:main :port 7007 :start-swank nil :swank-port 4005)
NIL

[SBCL] CL-USER>   <INFO> [21:58:52] vlime-usocket - Server created: (#(127 0 0 1) 7007)

Terminal 3 (vim + vlime):

Open vim
Press <localleader>cc to connect to the Vlime server, and when prompted use <IP_ADDRESS> as Host, and 7007 as port number

What happens
The following message gets logged inside Terminal 2 (Vlime server):
  <INFO> [22:01:26] vlime-usocket - New client: #<USOCKET:STREAM-USOCKET {100396C963}>
  <INFO> [22:01:27] vlime-usocket - Control thread stopping: (:CLIENT-DATA-ERROR
                                                              #<PACKAGE-DOES-NOT-EXIST "The name ~S does not designate any package." {1003FBF583}>)

While this is logged inside Terminal 1:
;; swank:close-connection: end of file on #<SB-SYS:FD-STREAM for "socket <IP_ADDRESS>:4005, peer: <IP_ADDRESS>:52924" {10024001E3}>

Note
It does appear to be vlime-related, because if I bypass vlime I can get the swank server to execute my forms just fine.
Terminal 4:
[SBCL] CL-USER> (ql:quickload :swank-client)
To load "swank-client":
  Load 1 ASDF system:
    swank-client
; Loading "swank-client"

(:SWANK-CLIENT)

[SBCL] CL-USER> (swank-client:with-slime-connection (conn "localhost" 4005)
    (swank-client:slime-eval (quote (handler-bind ((error (function continue)))
                                      (format t "Hello, hot-reload!~&")))
                             conn))
NIL

And on Terminal 1 (Swank server) I can see:
Hello, hot-reload!
;; swank:close-connection: end of file on #<SB-SYS:FD-STREAM for "socket <IP_ADDRESS>:4005, peer: <IP_ADDRESS>:52975" {1001DB8A83}>

I even tried to start the swank server the way vlime does it, internally, with:
(let ((swank::*loopback-interface* "<IP_ADDRESS>"))
  (swank::setup-server 0
                       (lambda (port)
                         (format t "Announce-port: ~A~&" port))
                       :spawn
                       t
                       nil))

But this too does not seem to work -- i.e. when connecting to vlime's server from vim, I get the same :CLIENT-DATA-ERROR exception.
vlime.pcapng.zip

@HiPhish:

Yes, Nyxt does indeed display an error:
;; Swank started at port: 4006.
<INFO> [12:40:32] Swank server started at port 4006
;; swank:close-connection: end of file on #<SB-SYS:FD-STREAM for "socket <IP_ADDRESS>:4006, peer: <IP_ADDRESS>:40666" {100F20A453}>

That last line appears about a second or less after I have connected Neovim to Vlime.

So the socket connection is closed for some reason - but we don't see that reason. Hmm.
@iamFIREcracker:

But this too does not seem to work -- i.e. when connecting to vlime's server from vim, I get the same :CLIENT-DATA-ERROR exception.

Well, your capture file shows that the INIT-PRESENTATIONS and CREATE-REPL calls are not answered... so one of these might error out.
Do you have a way to use SBCL's interactive debugger when an error occurs?

Short update: If I run sbcl and do (ql:quickload :vlime) in there, I can connect via vlime just fine.
(Though I'm currently on my experimental json-branch, where swank directly talks JSON to vlime....)

@phmarek:

Do you have a way to use SBCL's interactive debugger when an error occurs?

Actually, I am not really sure how to do that given that the error seems to be dealt with, internally; is there a way to intercept that? I guess I could look at the code and place few BREAKs?
Anyways, with a little bit of trial and error I was able to make this work; apparently, adding (swank-loader:init :load-contribs t) before the call to VLIME:MAIN inside Terminal 2 seems to do the trick, though I genuinely have no idea why would that be working.
So to recap:
Terminal 1 (swank server) :
[SBCL] CL-USER> (ql:quickload "swank")
To load "swank":
  Load 1 ASDF system:
    swank
; Loading "swank"
.
("swank")

[SBCL] CL-USER> (swank:create-server :port 4005 :dont-close t)
;; Swank started at port: 4005.
4005

[SBCL] CL-USER>

Terminal 2 (vim + vlime server):

Open vim
Run :term and start sbcl in it
Run the following:

[SBCL] CL-USER> (load "~/opt/vlime/lisp/load-vlime.lisp")
WARNING:
   redefining EMACS-INSPECT (#<SB-PCL:SYSTEM-CLASS COMMON-LISP:T>) in DEFMETHOD
T

[SBCL] CL-USER> (swank-loader:init :load-contribs t)
WARNING: Not reloading SWANK.  Package already exists.
WARNING:
   redefining THREAD-FOR-EVALUATION (#<STRUCTURE-CLASS SWANK::MULTITHREADED-CONNECTION>
                                     #<SB-MOP:EQL-SPECIALIZER :FIND-EXISTING>) in DEFMETHOD
NIL

[SBCL] CL-USER> (vlime:main :port 7007 :start-swank nil :swank-port 4005)
NIL

[SBCL] CL-USER>   <INFO> [21:30:57] vlime-usocket - Server created: (#(127 0 0 1) 7007)

Press <localleader>cc to connect vim to vlime, and when prompted, use <IP_ADDRESS> as Host and 7007 as port number

Hopefully this time, you should see the following inside the REPL you run VLIME:MAIN on, and evaluating expressions should just...work!
<INFO> [21:33:17] vlime-usocket - New client: #<USOCKET:STREAM-USOCKET {1003684963}>

Any ideas why a call to (swank-loader:init :load-contribs t) is required here? I assume something is missing from the image VLIME:MAIN is run on...

I can recreate what @iamFIREcracker did and it works with a second SBCL REPL. But when i try the same thing connecting to Nyxt it still fails.

Start Nyxt, execute start-swank
Open a new SBCL REPL and enter the following:

CL-USER(1): (push #P"/home/hiphish/.local/share/nvim/site-packages/vlime/lisp/" ql:*local-project-directories*)

(#P"/home/hiphish/.local/share/nvim/site-packages/vlime/lisp/"
 #P"/home/hiphish/.local/share/quicklisp/local-projects/")
CL-USER(2): (ql:quickload :vlime)
To load "vlime":
  Load 1 ASDF system:
    vlime
; Loading "vlime"
.
(:VLIME)
CL-USER(3): (swank-loader:init :load-contribs t)
WARNING: Not reloading SWANK.  Package already exists.
WARNING:
   redefining THREAD-FOR-EVALUATION (#<STRUCTURE-CLASS SWANK::MULTITHREADED-CONNECTION>
                                     #<SB-MOP:EQL-SPECIALIZER :FIND-EXISTING>) in DEFMETHOD

NIL
CL-USER(4): (vlime:main :port 7002 :start-swank nil :swank-port 4006)

NIL
  <INFO> [22:14:57] vlime-usocket - Server created: (#(127 0 0 1) 7002)

In ~/.config/nyxt run nvim init.lisp
Press <localleader>cc to connect to the Vlime server, enter host and port (using the default values in this case)

SBCL prints
<INFO> [22:16:18] vlime-usocket - New client: #<USOCKET:STREAM-USOCKET {10046B29A3}>
  <INFO> [22:16:18] vlime-usocket - Control thread stopping: (:SWANK-DATA-ERROR
                                                              #<SB-INT:SIMPLE-READER-PACKAGE-ERROR "Package ~A does not exist." {10049D57C3}>)

The Nyxt console prints
;; swank:close-connection: end of file on #<SB-SYS:FD-STREAM for "socket <IP_ADDRESS>:4006, peer: <IP_ADDRESS>:33240" {10070E0D83}>

Here is the Wireshark capture:

nyxt.txt
nyxt.pdf
nyxt.zip

I realized I could get swank to log all the events by running (setf swank:*log-events* t) on the image the Swank server runs on.  So I re-run vlime without (swank-loader:init :load-contribs t), tried to connect to it, let it fail, and then I got the following logged on the Swank's image:
[SBCL] CL-USER> decode-message
decode-message
dispatch-event: (:EMACS-REX (SWANK:CONNECTION-INFO) "COMMON-LISP-USER" T 1)
wait-for-event: (:EMACS-REX . SWANK::_) NIL
send-event: #<SB-THREAD:THREAD "worker" waiting on: #<WAITQUEUE  {1001E00853}> {1001DF7D13}> (:EMACS-REX (SWANK:CONNECTION-INFO) "COMMON-LISP-USER" 1)
dispatch-event: (:RETURN #<SB-THREAD:THREAD "worker" FINISHED values: T {1001DF7D13}> (:OK (:PID 43025 :STYLE :SPAWN :ENCODING (:CODING-SYSTEMS ("utf-8-unix"
 "iso-latin-1-unix")) :LISP-IMPLEMENTATION (:TYPE "SBCL" :NAME "sbcl" :VERSION "2.1.4" :PROGRAM "/usr/local/Cellar/sbcl/2.1.4/libexec/bin/sbcl") :MACHINE (:I
NSTANCE "hairstyle.local" :TYPE "X86-64" :VERSION "Intel(R) Core(TM) i7-4650U CPU @ 1.70GHz") :FEATURES (:SWANK :QUICKLISP :ASDF3.3 :ASDF3.2 :ASDF3.1 :ASDF3
:ASDF2 :ASDF :OS-MACOSX :OS-UNIX :NON-BASE-CHARS-EXIST-P :ASDF-UNICODE :X86-64 :GENCGC :64-BIT :ANSI-CL :BSD :COMMON-LISP :DARWIN :IEEE-FLOATING-POINT :LITTL
E-ENDIAN :MACH-O :PACKAGE-LOCAL-NICKNAMES :SB-CORE-COMPRESSION :SB-LDB :SB-PACKAGE-LOCKS :SB-THREAD :SB-UNICODE :SBCL :UNIX) :MODULES ("SB-CLTL2" "SB-INTROSP
ECT" "SB-BSD-SOCKETS" "SB-POSIX" "ASDF" "asdf" "UIOP" "uiop") :PACKAGE (:NAME "COMMON-LISP-USER" :PROMPT "CL-USER") :VERSION "2.26.1")) 1)
encode-message
decode-message
dispatch-event: (:EMACS-REX (SWANK:SWANK-REQUIRE (QUOTE (:SWANK-ASDF :SWANK-PACKAGE-FU :SWANK-PRESENTATIONS :SWANK-FANCY-INSPECTOR :SWANK-C-P-C :SWANK-ARGLIS
TS :SWANK-REPL :SWANK-FUZZY))) "COMMON-LISP-USER" T 2)
send-event: #<SB-THREAD:THREAD "worker" RUNNING {1001E03823}> (:EMACS-REX (SWANK:SWANK-REQUIRE (QUOTE (:SWANK-ASDF :SWANK-PACKAGE-FU :SWANK-PRESENTATIONS :SW
ANK-FANCY-INSPECTOR :SWANK-C-P-C :SWANK-ARGLISTS :SWANK-REPL :SWANK-FUZZY))) "COMMON-LISP-USER" 2)
wait-for-event: (:EMACS-REX .   I would really wish to understand what package is causing all this but I simply don't know how; if you have any hints on how to proceed just let me know -- I don't mind spending more time on this.

The wireshark trace shows that the first request goes vim → vlime → swank → vlime but doesn't reach vim any more.
The vlime server log shows the same data.
The line
dispatch-event: (:RETURN #<SB-THREAD:THREAD "worker" FINISHED values: T {1001E03823}> (:OK ("SWANK-FUZZY" … "SWANK-PRESENTATIONS" …)) 2)

indicates that SWANK-PRESENTATIONS is available; but the next call (:EMACS-REX (SWANK:INIT-PRESENTATIONS) "COMMON-LISP-USER" T 3) errors.
Reading the quoted line again, I can see that   "ASDF" "asdf" "UIOP" "uiop"` are duplicated in upper- and lowercase.
Does nyxt change the reader mode (http://www.lispworks.com/documentation/HyperSpec/Body/23_aba.htm)? If so, can you switch that back before (ql:quickload :vlime) etc., to see whether that is the reason?
I'm not sure that is enough, though - ASDF might not reload systems it believes to have loaded, so we might need to find the actual mismatch symbol names.

Reading the quoted line again, I can see that "ASDF" "asdf" "UIOP" "uiop"` are duplicated in upper- and lowercase.

I think we should not worry about this, as both the systems seems to be making themselves available via different names, to satisfy more people:
$ tail -n 5 "/usr/local/Cellar/sbcl/2.1.4/share/sbcl/contrib/asdf/uiop.lisp"

;; Provide both lowercase and uppercase, to satisfy more people.
(provide "uiop") (provide "UIOP")
(provide "UIOP")
(provide "uiop")

and:
$ tail -n 8 /usr/local/Cellar/sbcl/2.1.4/share/sbcl/contrib/asdf/asdf.lisp
  ;; Provide both lowercase and uppercase, to satisfy more people, especially LispWorks users.
  (provide "asdf") (provide "ASDF")

  ;; Finally, call a function that will cleanup in case this is an upgrade of an older ASDF.
  (cleanup-upgraded-asdf))

(when *load-verbose*
  (asdf-message ";; ASDF, version ~a~%" (asdf-version)))

Alright, after applying the following patch I was then able to understand what was missing:
diff --git a/lisp/src/vlime-usocket.lisp b/lisp/src/vlime-usocket.lisp
index e060a9b..1c1ee24 100644
--- a/lisp/src/vlime-usocket.lisp
+++ b/lisp/src/vlime-usocket.lisp
@@ -105,7 +105,8 @@
                                     swank-stream)
                     (finish-output swank-stream))
                   (t (c)
-                     (swank/backend:send control-thread `(:client-data-error ,c)))))
+                     (let ((msg (format nil "~A" c)))
+                       (swank/backend:send control-thread `(:client-data-error ,msg))))))

               (:swank-data
                 (vom:debug "swank-data msg")
@@ -116,7 +117,8 @@
                                     client-stream)
                     (finish-output client-stream))
                   (t (c)
-                     (swank/backend:send control-thread `(:swank-data-error ,c)))))
+                     (let ((msg (format nil "~A" c)))
+                       (swank/backend:send control-thread `(:swank-data-error ,msg))))))

               ((:exit :client-eof :swank-eof :client-data-error :swank-data-error)
                 (vom:info "Control thread stopping: ~s" msg)

Let's start with the simple case:
(load "~/opt/vlime/lisp/load-vlime.lisp")
(vlime:main :port 7007 :start-swank nil :swank-port 4005)

While trying to connectvim to vlime I would get the following error message:
      <INFO> [21:56:44] vlime-usocket - Control thread stopping: (:SWANK-DATA-ERROR
                                                                  "Package CFFI-FEATURES does not exist.

I am not exactly sure why I would need that, but I (ql:quickload "cffi")'d it anyway, and after that I got:
      <INFO> [21:57:54] vlime-usocket - Control thread stopping: (:CLIENT-DATA-ERROR
                                                                  "The name \"SWANK-REPL\" does not designate any package.")

And that error message disappeared after I run (swank-loader:init :load-contribs t) -- and this seems to work with both local and remote images (to test a remote connection, I used ngrok).
So in summary, this is what enables me to connect to a remote Swank server:
(load "~/opt/vlime/lisp/load-vlime.lisp")
(ql:quickload "cffi") ;; Solves: Package CFFI-FEATURES does not exist
(swank-loader:init :load-contribs t) ;; Solves: The name SWANK-REPL does not designate any package
(vlime:main :port 7007 :start-swank nil :swank-port 4005)

Few open points:

Does the diff above make sense? I can create a PR if need be
What's the deal with "cffi"?  Why do I need to manually load it?
What's with that (swank-loader:init :load-contribs t)? Why do I need to manually run it while starting vlime without having it to create a Swank server?

Enough debugging for today -- hopefully this is helpful.

Thanks to the patch I have been able to narrow down the issue as well, but in my case it is the CHIPZ system that is missing. If I start the Vlime server as follows everything works:
;;; Preparation, probably not needed if you start Vlime from its directory
(push #P"/home/hiphish/.local/share/nvim/site-packages/vlime/lisp/" ql:*local-project-directories*)
(ql:quickload :vlime)

;;; The missing system
(ql:quickload :chipz)

;;; Business as usual
(swank-loader:init :load-contribs t)
(vlime:main :port 7002 :start-swank nil :swank-port 4006)

Why do I need to load a system by hand? Is it a missing dependency?

@iamFIREcracker :

Does the diff above make sense? I can create a PR if need be

Yes, please.

What's the deal with "cffi"? Why do I need to manually load it?

No idea. Would you please use (sb-debug:print-backtrace) or similar to find out what is trying to use cffi?

What's with that (swank-loader:init :load-contribs t)? Why do I need to manually run it while starting vlime without having it to create a Swank server?

As your comment says, vlime requires swank-repl - which is a contrib. Just loading all contribs resulted in problems in the past, though...
But you're right, loading the required contribs should be handled by vlime... Sadly I don't see a function to load individual contribs early or later on, and I didn't look whether swank-loader:init can be called multiple times with different contrib lists.
@HiPhish : I have no idea what is using chipz - would you please print a backtrace as well to see the source of the dependency?
Thanks for your help!

would you please print a backtrace as well to see the source of the dependency?

Do you mean this?
CL-USER(4): (vlime:main :port 7002 :start-swank nil :swank-port 4006)

NIL
  <INFO> [21:09:31] vlime-usocket - Server created: (#(127 0 0 1) 7002)
CL-USER(5):   <INFO> [21:09:48] vlime-usocket - New client: #<USOCKET:STREAM-USOCKET {10046B2E83}>
  <INFO> [21:09:48] vlime-usocket - Control thread stopping: (:SWANK-DATA-ERROR
                                                              "Package CHIPZ-SYSTEM does not exist.

  Stream: #<dynamic-extent STRING-INPUT-STREAM (unavailable) from \"(:return...\">")

CL-USER(5): (sb-debug:print-backtrace)

Backtrace for: #<SB-THREAD:THREAD "main thread" RUNNING {1004AC81F3}>
0: (SB-INT:SIMPLE-EVAL-IN-LEXENV (PRINT-BACKTRACE) #<NULL-LEXENV>)
1: (EVAL (PRINT-BACKTRACE))
2: (INTERACTIVE-EVAL (PRINT-BACKTRACE) :EVAL NIL)
3: (SB-ACLREPL::REP-ONE)
4: (SB-ACLREPL::REPL :BREAK-LEVEL 0 :NOPRINT NIL :INSPECT NIL :CONTINUABLE NIL)
5: ((LAMBDA (SB-ACLREPL::NOPRINT) :IN SB-ACLREPL:MAKE-REPL-FUN) NIL)
6: ((LAMBDA NIL :IN SB-IMPL::TOPLEVEL-REPL))
7: (SB-IMPL::%WITH-REBOUND-IO-SYNTAX #<FUNCTION (LAMBDA NIL :IN SB-IMPL::TOPLEVEL-REPL) {1004F0AB2B}>)
8: (SB-IMPL::TOPLEVEL-REPL NIL)
9: (SB-IMPL::TOPLEVEL-INIT)
10: ((FLET SB-UNIX::BODY :IN SB-IMPL::START-LISP))
11: ((FLET "WITHOUT-INTERRUPTS-BODY-1" :IN SB-IMPL::START-LISP))
12: (SB-IMPL::START-LISP)

Sorry, no.
I meant that the backtrace should be collected when the condition is signalled; IIRC the handler-case needs to be changed to a handler-bind for that (so that the handler is actually run before the stack is unwound).

@phmarek:

Does the diff above make sense? I can create a PR if need be

Yes, please.

Here you go: https://github.com/vlime/vlime/pull/66

What's the deal with "cffi"? Why do I need to manually load it?

No idea. Would you please use (sb-debug:print-backtrace) or similar to find out what is trying to use cffi?

Alright, here is what I did:
diff --git a/lisp/src/vlime-usocket.lisp b/lisp/src/vlime-usocket.lisp
index 1c1ee24..c9189c1 100644
--- a/lisp/src/vlime-usocket.lisp
+++ b/lisp/src/vlime-usocket.lisp
@@ -110,15 +110,15 @@

               (:swank-data
                 (vom:debug "swank-data msg")
-                (handler-case
+                (handler-bind ((error (lambda (c)
+                                        (sb-debug:print-backtrace)
+                                        (let ((msg (format nil "~A" c)))
+                                          (swank/backend:send control-thread `(:swank-data-error ,msg))))))
                   (let ((swank-msg (swank/backend:utf8-to-string (nth 1 msg))))
                     (vom:debug "Message from SWANK: ~s" swank-msg)
                     (write-sequence (msg-swank-to-client swank-msg :octets)
                                     client-stream)
-                    (finish-output client-stream))
-                  (t (c)
-                     (let ((msg (format nil "~A" c)))
-                       (swank/backend:send control-thread `(:swank-data-error ,msg))))))
+                    (finish-output client-stream))))

               ((:exit :client-eof :swank-eof :client-data-error :swank-data-error)
                 (vom:info "Control thread stopping: ~s" msg)

and this is the stack-trace I got back after the failed "connect":

Backtrace for: #<SB-THREAD:THREAD "Vlime Control Thread" RUNNING {10056CD6E3}>
0: ((COMMON-LISP:FLET "H0" :IN VLIME-USOCKET::VLIME-CONTROL-THREAD) #<SB-INT:SIMPLE-READER-PACKAGE-ERROR "Package ~A does n
ot exist." {1005842373}>)
1: (SB-KERNEL::%SIGNAL #<SB-INT:SIMPLE-READER-PACKAGE-ERROR "Package ~A does not exist." {1005842373}>)
2: (COMMON-LISP:ERROR #<SB-INT:SIMPLE-READER-PACKAGE-ERROR "Package ~A does not exist." {1005842373}>)
3: (SB-KERNEL:WITH-SIMPLE-CONDITION-RESTARTS COMMON-LISP:ERROR NIL SB-INT:SIMPLE-READER-PACKAGE-ERROR :PACKAGE "CFFI-FEATUR
ES" :STREAM #<SB-IMPL::STRING-INPUT-STREAM {8617713}> :FORMAT-CONTROL "Package ~A does not exist."  Stream: #<dynamic-extent STRING-INPUT-STREAM (unavailable) from "(:return...">

The current thread is not at the foreground,
SB-THREAD:RELEASE-FOREGROUND has to be called in #<SB-THREAD:THREAD "main thread" RUNNING {1007C382C3}>
for this thread to enter the debugger.

and if we zoom in on the :cffi related part:
ES" :STREAM #<SB-IMPL::STRING-INPUT-STREAM {8617713}> :FORMAT-CONTROL "Package ~A does not exist." :FORMAT-ARGUMENTS ("CFFI
-FEATURES"))
4: (SB-IMPL::READER-FIND-PACKAGE "CFFI-FEATURES" #<SB-IMPL::STRING-INPUT-STREAM {8617713}> T)
5: (SB-IMPL::READ-TOKEN #<SB-IMPL::STRING-INPUT-STREAM {8617713}> #\c)

Now, interestingly enough, :cffi is a system the remote image I am trying to connect to, is depending on; so I wonder, do we need to load in the local image, i.e. the one running Vlime, all the systems the remote one is depending on?  Because that would explain why I have to (ql:quickload "cffi") first, and why @HiPhish needs to QL:QUICKLOAD other systems (systems I guess:nyxt is depending on?!)
I am no Swank expert, so apologies if none of the above makes sense / is correct.

Here you go: #66

Thanks, already saw that ;)

What's the deal with "cffi"? Why do I need to manually load it?
No idea. Would you please use (sb-debug:print-backtrace) or similar to find out what is trying to use cffi?
Alright, here is what I did:

Thanks, exactly what I meant!

and if we zoom in on the :cffi related part:
ES" :STREAM #<SB-IMPL::STRING-INPUT-STREAM {8617713}> :FORMAT-CONTROL "Package ~A does not exist." :FORMAT-ARGUMENTS ("CFFI
-FEATURES"))
4: (SB-IMPL::READER-FIND-PACKAGE "CFFI-FEATURES" #<SB-IMPL::STRING-INPUT-STREAM {8617713}> T)
5: (SB-IMPL::READ-TOKEN #<SB-IMPL::STRING-INPUT-STREAM {8617713}> #\c)

Now, interestingly enough, :cffi is a system the remote image I am trying to connect to, is depending on; so I wonder, do we need to load in the local image, i.e. the one running Vlime, all the systems the remote one is depending on? Because that would explain why I have to (ql:quickload "cffi") first, and why @HiPhish needs to QL:QUICKLOAD other systems (systems I guess:nyxt is depending on?!)

Looking at that now in more detail (sorry, I seem to have missed that earlier on!), the issue is the CFFI pushes non-keywords on *FEATURES* -- for me eg. CFFI-FEATURES:FLAT-NAMESPACE.
So parsing the features list breaks because of the non-existing package!

I am no Swank expert, so apologies if none of the above makes sense / is correct.

No, well done! A good analysis!
I'm wondering whether it would be possible for you to test-drive my vlime and swank branches that use JSON for communication...  As they talk directly, there's no intermediate vlime-server needed.
But if you can load the Lisp vlime parts on the remote image anyway, you could just have your editor connect to the remote vlime as well...

Sorry for taking so long, here is my backtrace:
CL-USER(1): (push #P"/home/hiphish/.local/share/nvim/site-packages/vlime/lisp/" ql:*local-project-directories*)

(#P"/home/hiphish/.local/share/nvim/site-packages/vlime/lisp/"
 #P"/home/hiphish/.local/share/quicklisp/local-projects/")
CL-USER(2):
Unknown command "C-L".
CL-USER(2): (ql:quickload :vlime)
To load "vlime":
  Load 1 ASDF system:
    vlime
; Loading "vlime"
.
(:VLIME)
CL-USER(3): (vlime:main :port 7002 :start-swank nil :swank-port 4006)

; compiling file "/home/hiphish/.local/share/nvim/site-packages/vlime/lisp/src/vlime-usocket.lisp" (written 01 JUL 2021 12:14:09 AM):
; processing (IN-PACKAGE #:CL-USER)
; processing (DEFPACKAGE #:VLIME-USOCKET ...)
; processing (IN-PACKAGE #:VLIME-USOCKET)
; processing (DEFUN SERVER-LISTENER ...)
; processing (DEFUN VLIME-CONTROL-THREAD ...)
; processing (IN-PACKAGE #:VLIME)
; processing (DEFMETHOD START-SERVER ...)

; wrote /home/hiphish/.cache/common-lisp/sbcl-2.1.6-linux-x64/home/hiphish/.local/share/nvim/site-packages/vlime/lisp/src/vlime-usocket-tmpGHU3ALSV.fasl
; compilation finished in 0:00:00.022
NIL
  <INFO> [00:14:39] vlime-usocket - Server created: (#(127 0 0 1) 7002)
CL-USER(4):   <INFO> [00:14:50] vlime-usocket - New client: #<USOCKET:STREAM-USOCKET {1004502EB3}>

Backtrace for: #<SB-THREAD:THREAD "Vlime Control Thread" RUNNING {1004502FE3}>
0: ((COMMON-LISP:FLET "H0" :IN VLIME-USOCKET::VLIME-CONTROL-THREAD) #<SB-INT:SIMPLE-READER-PACKAGE-ERROR "Package ~A does not exist." {100471B7B3}>)
1: (SB-KERNEL::%SIGNAL #<SB-INT:SIMPLE-READER-PACKAGE-ERROR "Package ~A does not exist." {100471B7B3}>)
2: (COMMON-LISP:ERROR #<SB-INT:SIMPLE-READER-PACKAGE-ERROR "Package ~A does not exist." {100471B7B3}>)
3: (SB-KERNEL:WITH-SIMPLE-CONDITION-RESTARTS COMMON-LISP:ERROR NIL SB-INT:SIMPLE-READER-PACKAGE-ERROR :PACKAGE "CHIPZ-SYSTEM" :STREAM #<SB-IMPL::STRING-INPUT-STREAM {7F86DB20E563}> :FORMAT-CONTROL "Package ~A does not exist."  Stream: #<dynamic-extent STRING-INPUT-STREAM (unavailable) from "(:return...">

The current thread is not at the foreground,
SB-THREAD:RELEASE-FOREGROUND has to be called in #<SB-THREAD:THREAD "main thread" RUNNING {1004AB81F3}>
for this thread to enter the debugger.


some packages seem to break bingo

I have some dependency of one of my dependencies that seems to break bingo, not sure why:
This is the output of my log:
notify: go [list -e -json -compiled -test=true -export=false -deps=true -find=false -- /some/path/to/my/project/...]: exit status 1: go<EMAIL_ADDRESS>/path/to/my/gopath/pkg/mod/cache/vcs/a6f30753f09f9965ec97c58b60d35441dc379255da2d413e0d7ce71487babf0b.info exists with wrong content (have "" want "git2:https://github.com/globalsign/mgo")
go<EMAIL_ADDRESS>/path/to/my/gopath/pkg/mod/cache/vcs/a6f30753f09f9965ec97c58b60d35441dc379255da2d413e0d7ce71487babf0b.info exists with wrong content (have "" want "git2:https://github.com/globalsign/mgo")
go: error loading module requirements

Tried adding a replace in my go.mod, which caused my go.sum to contain the correct version of that package (now pointing to a version that has a go.mod file), but the error message from bingo remains the same.
The specific mgo/bson version is pulled in by go-openapi/runtime.

Removed my pkg directory and the override to the mgo branch containing a go.mod fixed the problem. So I guess there's not much bingo can do here. I just have to continue file issues around the planet until everyone is go.mod-enabled?

@dsvensson
You should make sure that the go list command works correctly and that bingo will work properly.


Spigot mob spawning, animals work but mobs dont?

Configuring animals (fe only parrots) for a biome works, configuring only blazes doesn't work, the default mobs spawn. Test biome config mob spawning settings for Forge and Spigot and confirm.

For virtual biomes, any mobs that are spawned by OTG at the end of population work, any mobs spawned on a timer by mc don't work. Have added a comment in the biome configs for 1.12.2 v9_r11.

*Does work for Forge, only doesn't work for Spigot.


feature: combine in vertical list

Can we have a combine feature similar to this example from react-beautiful-dnd?
Thanks for this amazing library!

You can refer to this discussion https://github.com/clauderic/dnd-kit/issues/127 for insight on how to implement this type of functionality


chore: add component template

Description
Adds a template file for Components similar to the existing style template

Is there some command to create a component off of this template?

Is there some command to create a component off of this template?

not yet, these are just for copy/paste. I've got a script in some other projects i can leverage to set that up


[Feature Request]添加美观的可关闭卡片组件

可针对Modal设置closeIcon参数自由定义关闭按钮：
closeIcon={
  <CloseCircleTwoTone
    style={{
      fontSize: 30,
      position: "absolute",
      top: -15,
      right: -15
    }}
  />
}

@Coding-with-Adam
Thank you for your affirmation, dash is a wonderful tool to build web app, I'm glad to create more expand functionality for it🤗.

Thank you. We look forward to it.
Do you know https://github.com/roeap/dash-ant-design-components

@Coding-with-Adam
Never heard of it before, I went to have a look, it contains some common components which already exists in my library, what I do in feffery-antd-components is not only porting components from Ant Design and Ant Design Pro, but also create new components to implement special functions.

@Coding-with-Adam
You can contact me at my email address<EMAIL_ADDRESS>

最新开发版本中已添加AntdPopupCard组件 ✅


ocamlPackages.hex: 1.3.0 → 1.4.0

Motivation for this change
Use Dune 2.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 101897 1 run on x86_64-darwin

1 package failed to build:

dune-release

5 packages built:

jackline
libbap
python27Packages.bap
python37Packages.bap
python38Packages.bap

seems like we have a bit of a dependency hell

I haven’t reached that conclusion yet, but indeed, it is kind of messy.


add psibase devcontainer template repo

@joshspicer since this was merged, does that mean I can expect that at some point this template I added will be available from within vscode (and other "supporting tools") when people are adding a new dev container?


Typo in autoload/dashboard/telescope.vim

Lines 6 and 10 have Telesope instead of Telescope_

fixed Thanks.

The function defined telescope.nvim is TelescopeFindFile, the function called in dashboard.nvim is TelescopeFindFiles

Oh Sorry.. I forget I changed command in telescope.vim ..check PR.https://github.com/nvim-lua/telescope.nvim/commit/18a91f27143628d732ae339b5df3996e3066fdb6

fixed.


Multiple EntityManagerFactory instances per PersistenceUnit are created

Observed:
In the current JPA module implementation, multiple EntityManagerFactory instances are created. (This is not a bug in Hibernate, but in the CDI service provider)
As stated in the JPA spec: "Only one EntityManagerFactory is permitted to be created for each
deployed persistence unit configuration."
I will create a test and submit a PR for this.

Wanted to add that it's good to fix this from the multiple instance creation perspective, and not the spec one.
We're not looking to pass specification tests with Thorntail

@kenfinnigan That makes sense to me. I'm just aiming for mostly-compliant so it won't break things. :)
I don't think I would have even found out about this behavior if I wasn't trying to integrate OGM.


Break up long reads into 150mers to enable long read data for variant calling

A collaborator has tested a lot of methods for variant calling with long read data and determined that breaking up reads into 150mers and using graphtyper works the best of the methods tested. This would be a easy way to accept long reads into the variant calling portion of the pipeline.

Here is an example command for doing this:
cat $infile | seqkit sliding -W 150 -s 150 -o ${strain}_nano150.fastq.gz

This has been implemented in the dev branch


Could you please specify dependencies?

Hi,
Thank you so much for this awesome work! Could you please specify dependencies? Which versions of TVM, DGL, and Python are needed? It would be helpful.
Thanks.
Khaled

@khaled-rahman The repo will be updated to support the latest TVM. For stable benchmarking, you can use TVM v0.7. DGL is only used for data loading, so the version doesn't matter. We did the experiments using python3.6.


Package request: marker

marker
Project description
bookmark commands (or commands templates) and easily retreive them with the help of a real-time fuzzy matcher.

Metadata

homepage URL: https://github.com/pindexis/marker
source URL: https://github.com/pindexis/marker
license: mit
platforms: unix, linux, darwin

There are no releases in linked repo + last commit was made in 2019. I don't know if it's a good idea to include abandoned software in nixpkgs.

Further to the above, marker doesn't work with fish shell. Perhaps intelli-shell might be a better package?. Written in rust in 2023 with the same functionality as marker but with wider compatibility.

Further to the above, marker doesn't work with fish shell. Perhaps intelli-shell might be a better package?. Written in rust in 2023 with the same functionality as marker but with wider compatibility.

Thanks for suggestion... yes, it's better to have intelli-shell...

Thanks for suggestion... yes, it's better to have intelli-shell...

Ok. I'll leave it to you to close this issue and open a new request for intelli-shell. Many thanks.

Thanks for suggestion... yes, it's better to have intelli-shell...

Ok. I'll leave it to you to close this issue and open a new request for intelli-shell. Many thanks.

sure, about to ask you that... i will raise a new request for intelli-shell
i am very much a beginner in nix.. so i don't now how to package, but i am learning..
but i can surely help if needed any help...

https://github.com/NixOS/nixpkgs/issues/289067

I have found one more alternative to marker/intellishell , and works more like marker.. i am sharing here for those who are looking for such manager
https://github.com/knqyf263/pet
this is already available in nixpkgs


Sync eng/common directory with azure-sdk-tools for PR 1077

Sync eng/common directory with azure-sdk-tools for PR https://github.com/Azure/azure-sdk-tools/pull/1077
See eng/common workflow

/azp run net - template - tests

/azp run net - template - tests

/check-enforcer override


Add license

Cool project! Do you plan to release under a open source license?

Good point. Added a License. Thanks.


PP-4097 reconfigure app to use i18n dynamically

Reconfigure app to use i18n in a way which means english isn’t hard coded.
This is also changes the way the strings are fed into the the templates which required switching to using _("object.path") syntax
Also added cy.json which contains the welsh strings

Hi Alex,
I think all of this is PP-4097, the tasks of the ticket are

Move all hardcoded English text out of templates and into en.json
Create cy.json file
Ensure en.json and cy.json have the same keys

That’s what this ticket does. It’s not concerned with any of the tasks in PP-4098

Jon and I have discussed this in person and he explained to me that the code changes are just internationalisation changes to make supporting multiple languages easier but do not include any of the work to switch based on the language of the payment (though there is a facility to switch based on a URL parameter to demonstrate it works).
Since it’s a bit ambiguous whether such internationalisation changes should be part of this story or PP-4098, I’m happy for them to be done here. These changes will pave the way for PP-4098, which will focus on how to determine which language to use, rather than mechanics of actually supporting multiple languages.
Jon has a agreed to move the addition of the cy.json file into another PR.


Parsing Discrepancies in Transfer-Encoding Header

Parsing discrepancies in Flask
Versions

Python 3.8.10
Flask 2.0.2
Werkzeug 2.0.2

Type 1 : [Prefix]chunked[Suffix]

Problem :
[fuzz]chunked , chunked[fuzz]

characters-accepted : 0x09 , 0x0b , 0x0c , 0x1c , 0x1d , 0x1e , 0x1f , 0x20 , 0x0d
Expected: RFC : "chunked"
In the Field value of Transfer-Encoding header , if there is a prefix or a suffix
containing above mentioned characters, flask treats the request as chunked
F+or 0x0d alone only suffix form gets treated as chunked request
Type 2 : preheaders inplace of CR
X: X [non standard header]

problem:
X: X[fuzz]\nTransfer-Encoding: chunked

characters accepted : [0x01-0x09] , [0x0a-0xff]
Expected: RFC : Headers should be terminated with CRLF in RFC ABNF grammar
grammar : HTTP-message = start-line *( header-field CRLF ) CRLF [ message-body]
Type 3 : preheaders end
X: X [non standard header]

problem:
X: X[fuzz]Transfer-Encoding: chunked

Expected: RFC : Headers should be terminated with CRLF in RFC ABNF grammar
grammar : HTTP-message = start-line *( header-field CRLF ) CRLF [ message-body]
characters accepted : 0x0a , 0x0d
Type 4 : preheaders after colon
X: X [non standard header]

problem:
X: [fuzz]Transfer-Encoding: chunked

characters accepted : 0x0a 0x0d
Expected: RFC : Headers should be terminated with CRLF in RFC ABNF Grammar
POC
Type 1

prefix-09

     echo -ne 'GET / HTTP/1.1\r\nHost: localhost\r\nConnection: Close\r\nTransfer-Encoding: \x09chunked\r\nContent-Length: 13\r\n\r\n2\r\nyy\r\n0\r\n\r\nX' | nc localhost 5000

suffix-09

  echo -ne 'GET / HTTP/1.1\r\nHost: localhost\r\nConnection: Close\r\nTransfer-Encoding: chunked\x09\r\nContent-Length: 13\r\n\r\n2\r\nyy\r\n0\r\n\r\nX' | nc localhost 5000

Type 2
    echo -ne 'GET / HTTP/1.1\r\nHost: localhost\r\nConnection: Close\r\nX: X\x01\nTransfer-Encoding: chunked\r\nContent-Length: 13\r\n\r\n2\r\nyy\r\n0\r\n\r\nX' | nc localhost 5000

Type 3
    echo -ne 'GET / HTTP/1.1\r\nHost: localhost\r\nConnection: Close\r\nX: X\x0dTransfer-Encoding: chunked\r\nContent-Length: 13\r\n\r\n2\r\nyy\r\n0\r\n\r\nX' | nc localhost 5000

Type 4
    echo -ne 'GET / HTTP/1.1\r\nHost: localhost\r\nConnection: Close\r\nX:\x0d\nTransfer-Encoding: chunked\r\nContent-Length: 13\r\n\r\n2\r\nyy\r\n0\r\n\r\nX' | nc localhost 5000

Code to Reproduce
from pprint import pprint
from flask import Flask, request

app = Flask(__name__)

@app.route("/" , methods=["GET" , "POST"])
def serve():
    data = request.get_data().decode()
    pprint(request.headers)
    pprint(data)
    message = f"\n--------\nRequest\n{request.headers}\nBody Length: {len(data)}\nBody: {data}\n"

    with open("output/fuzz.txt" , "a+") as f:
        f.write(message)

    return f"Body Length :{len(data)} Body {data}"

if __name__ == "__main__":

    open("output/fuzz.txt" , "w").close()
    app.run()

The same issue is applicable for 2.1.x as well .  Closing this issue as it will be reported as a security issue

Before emailing, please verify if this happens on Python's http.server as well. We are a basic wrapper around that, it would be http.server that is parsing headers at this point in the server code. Again, the development server is not intended to be particularly secure.

No need to email at this point since you've already disclosed it publicly.


DS-4328

This change will clear the dc.date.issued item metadata field when published is selected during the initial questions submission step.
Jira ticket: https://jira.duraspace.org/browse/DS-4328
Fixes #7668

Thanks for the review @nwoodward. I have actually found a bug with my fix after this initial contribution, so i'll try to contribute my improved fix soon.
The issue introduced by my fix is that date issued gets cleared when in the workflow. A better solution is to only clear the "today" value.

Ah, OK. I noticed that the error disappeared when you leave the Initial Questions step, but then the Date of Issue is empty. I'll wait for your fix to review again.

The improved fix is now pushed to this PR.

NOTE: doesn't need to be ported to main, as the InitialQuestionsStep no longer exists.  Simply closing & reopening to ensure it still passes builds.

Already tested & approved.  Passes build as well.  Merging.  Thanks @PhilipVis !


CI: Build on 3.7, and get docs building again.

Following up on #406 chasing down more bit rot.

Codecov Report

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

@@           Coverage Diff           @@
##           master     #409   +/-   ##
=======================================
  Coverage   82.37%   82.37%
=======================================
  Files          53       53
  Lines        5578     5578
  Branches      774      774
=======================================
  Hits         4595     4595
  Misses        835      835
  Partials      148      148

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update dff46b6...ccb121e. Read the comment docs.

With @tacaswell's blessing, I have given up on getting the docs to build on 3.5. It's the oldest version of Python that is not end-of-lifed, and there seems to be some bad interaction that I cannot reproduce locally.


[Feature]First try LowCode concept

Feature

Try to introduce LowCode

Description

Encapsulate a component with LowCode concepts

Provisional BasePage components


Moving lens distortion shader into drivers and adding GLES2 support

Moving the lens distortion shader out of the mobile_vr module and into the GLES2 and GLES3 drivers.

You need clang-format 6+, yours is likely older.

@akien-mga looks like going to clang 7 fixed that, it's now stuck on a build error in the android scripts but I think thats unrelated to the work I did.

Thanks, looks great!


Le dim. 11 oct. 2020 à 16:36, Lilia Mehamli<EMAIL_ADDRESS>a
écrit :

Merged #39 https://github.com/openmindsclub/H4ckT0b3rF3st-2k20/pull/39
into main.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/openmindsclub/H4ckT0b3rF3st-2k20/pull/39#event-3863742522,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AHFOKW3GERPXEGY2HPWXQ3LSKG7FBANCNFSM4SLZUHOA
.


Bugfix: nPoints should be the number of gridPoints

Codecov Report

Merging #18 into master will not change coverage.
The diff coverage is 100%.

@@           Coverage Diff           @@
##           master      #18   +/-   ##
=======================================
  Coverage   94.37%   94.37%
=======================================
  Files          37       37
  Lines        3042     3042
=======================================
  Hits         2871     2871
  Misses        171      171

Impacted Files
Coverage Δ

src/helpme.h
96.91% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 1e56278...af0b718. Read the comment docs.

Great catch.  Thanks!


Update QuantumCircuit.barrier docstrings - Issue8076 Fix

Summary
Update QuantumCircuit.barrier docstrings from:
"""Barrier instruction."""
to:
"""A barrier is a visual indicator of the grouping of a circuit section.      Actings as a directive for circuit compilation to separate pieces      of a circuit so that any optimizations or re-writes are constrained      to only act between barriers."""
Based on description by @chriseclectic on StackExchange as requested
Fix #8076
Details and comments

Hi @DanielAja, the lint CI job is failing, it seems you have to run black to fix it 🙂

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
3 unchanged lines in 1 file lost coverage.
Overall coverage decreased (-0.05%) to 84.56%

Files with Coverage Reduction
New Missed Lines
%

qiskit/pulse/library/waveform.py
3
91.49%

Totals

Change from base Build<PHONE_NUMBER>:
-0.05%

Covered Lines:
63619

Relevant Lines:
75235

💛  - Coveralls


Add gif to README

As a user, it would be helpful to have a gif of the library in action directly in the README so I don't have to go to the demo to see roughly what it does.

@jaredwent this should be done after #49 is complete by @turnerniles

@jaredwent may the best man win

guide


Update motion-controllers.md

small formatting changes

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

mixed-reality-docs/motion-controllers.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Transfer learning - image classification

#2

@shreydan can you add NBreview app to this repository? this app helps us review Jupyter Notebooks.

Hey that would be awesome, I also faced some issues during review, and didn't knew something like that exists... Can review better using that.

@sezan92 @Anindyadeep I've added reviewNB https://app.reviewnb.com/shreydan/computer-vision-course/. Apparently, it'll be accessible via their own website, please let me know if there are any issues.

Initial PR looks good to me. An addition can be adding a small docstrings inside the function telling about what the function does.

Can you give an example? I was thinking, for all HF classes/methods, we can link them back to the docs.

@alanahmet @shreydan @Anindyadeep I think we can adopt the standard practice of merging the PR by the author themselves.

So we don't assign others as a reviewer anymore?

@alanahmet Sorry I think you missed the review, I had assigned everyone for review of this PR and we'll continue to do so for all PRs.

So we don't assign others as a reviewer anymore?

@alanahmet no. It means, when a PR is approved, the author of the PR him/herself will merge to the main branch.


Shows "Installed yesterday" instead of "Installed 1 day ago" (EXPOSUREAPP-9825)

Ticket
https://jira-ibs.wbs.net.sap/browse/EXPOSUREAPP-9825

This PR effectively addresses https://github.com/corona-warn-app/cwa-app-ios/issues/3648.


updating the MuscleTorquesWithBspline BC to be compatible with pyelas…

The numba/numpy import check was removed in the update so I removed the numpy version of the BC on the main branch. The repo should now work with the current version of pyelastica.

I changed the names to muscle_torques_with_bspline.py as you suggested and deleted the Icon files. Not sure what those are and they aren't necessary.
I did not implement suggestion 2. You are right that it would be cleaner, but it would break the import of any script written using the old version and removing one subfolder doesn't seem worth the hassle it if messes up anyone's script.

Okay sounds good to me. We can merge


it skips a bunch of pages for no reason and it does the same for all the books in the library

https://www.tiktok.com/@cozykyon/video/7154356660553649410?is_from_webapp=1&sender_device=pc&web_id=7074602649546999297
here's what i mean. how do i fix it?

Sorry I can't really tell what's wrong from the video itself. Is it about it scrolling too fast? What are the controls you used to change pages?

Sorry I can't really tell what's wrong from the video itself. Is it about it scrolling too fast? What are the controls you used to change pages?

i be scrolling normally with the mouse cursor and it skip pages. all i use is the mouse cursor and nothing else and it skips pages no matter how slow i go.

Are you by any chance using a touchpad? The alternative way to scroll for now is by using arrow keys or page up and down.
From the video description it says that it's been a week (since Oct 14), but the app hasn't been updated for awhile so it might not be caused by code changes from the site

both touchpad and arrow keys, and its been like this since may not October, i started using another e reader and it also stopped working lol
https://twitter.com/cozyKyon/status/1524701145486307328?t=98ok0KN6675n1hAH0HnHWw&s=19
irdk how to explain it properly. all ik is that it skips pages. sorry for the complicated question

Same problem, reader skips pages. As I noticed, it happens randomly and being fixed with full browser restart. Also it didn't affects continuous mode.


React-native app crashes on Open in real device but runs fine in Simulator

React-native app crashes on Open but runs fine in Simulator
React Native version: 0.56.0
System:
OS: macOS High Sierra 10.13.6
CPU: x64 Intel(R) Core(TM) i5-2415M CPU @ 2.30GHz
Memory: 466.00 MB / 8.00 GB
Shell: 3.2.57 - /bin/bash
Binaries:
Node: 12.10.0 - /usr/local/bin/node
Yarn: 1.17.3 - /usr/local/bin/yarn
npm: 6.11.3 - /usr/local/bin/npm
Watchman: 4.9.0 - /usr/local/bin/watchman
SDKs:
iOS SDK:
Platforms: iOS 12.1, macOS 10.14, tvOS 12.1, watchOS 5.1
IDEs:
Android Studio: 3.5 AI-191.8<IP_ADDRESS>00203
Xcode: 10.1/10B61 - /usr/bin/xcodebuild
npmPackages:
react: ^16.4.1 => 16.5.2
react-native: ^0.56.0 => 0.56.0
npmGlobalPackages:
react-native-cli: 2.0.1
react-native-device-info: 0.26.4
react-native-webview: 5.3.0
Actual Behaviour
The application installs but crashes when we open the app.

cant we resolve without upgrading to the latest react-native version?


config linter

Is your feature request related to a problem? Please describe.
I get frustrated by bad configurations both syntactically bad (malformed ymls) and against my teams standards (like naming application names too long). It's even worse when these things are only apparent at runtime.
Describe the solution you'd like
I propose another module in this project that houses a cli application that can take my config server's configuration and then runs a set of lint rules. Some rules could be blessed in the open-source project and we could expose this framework such that I can add additional rules based on my team's standards.
Sometimes the lint can be done statically against the files in git but other times I want to render the environment config against a profile which is why I want the scc integration.
Describe alternatives you've considered
We could just leave this to users to build their own bespoke solution (like I have) but I have seen this come up before in an old talk 44:10 where Clint mentions a yml validation gradle task.
Additional context
Way back I wanted this only because I couldn't figure out what was broken in my yml (turned out to be dupe keys).

I'm not sure this is something we want to tackle. Configuration can be in properties or yaml. There's another open issue about not applying a new environment during refresh if standard boot config props validation failed, which I think is more in scope.

I also think it's a process issue. If the first time you are applying particular configuration is in production, there's something missing.

Most of the time I agree @spencergibb about applying a config in nonprod first, but sometimes configurations are profiled to only be used in production. For example, if I have a configuration for my email domain, I may use junk config in nonprod but only want to take the reputational hit in a production environment.
Standard config property validations seem right to me. The gap I see there are errors in the configuration that causes the config server to fail to serve the configuration in the first place.
I also see what you mean about config being properties or yml. We are able to lint yml changes on the git backend pretty easily on each pr. Testing against the full property set is more of an integration test considering the different backends like vault we'd have hooked up. I guess I'd be interested to know if other teams consistently come up with their own linters and see if there is an opportunity for consolidation.

I don't know of anyone else doing linters besides what you mentioned. For now, I'm going to close this after some discussion with the team as we do not want to support it.

Totally understand, thanks for taking the time!


Feature suggestion: Add logs with LogLevel using the Standard logging in .NET

There is not logging support in your core library (the Mscc.GenerativeAI package).
I wish there is a way to debug your library from the logs with proper LogLevel when something went wrong.
The Standard .NET Logging should be a good idea.

Thanks, I will look into it.
There should be an option to leverage dependency injection (DI) to provide access to the ILogger interface. However, that's usually bound to an application host or builder.
Good idea, and a solid addition to the package.

@jochenkirstaetter
I have a simple Embedding usage. It always return Response status code does not indicate success: 400 (Bad Request). error. It because there is no logs comes from your library. I have totally no idea how to debug this. With the same ApiKey, all other APIs are functional. Do you have any idea?
async Task Main()
{
	var googleAI = new GoogleAI(apiKey: Util.GetPassword("GEMINI_API_KEY"));

	var model = googleAI.GenerativeModel(model: Model.Embedding).Dump();

	var response = await model.GetModel().Dump();

	var embeddings = await model.EmbedContent(GetMarkdown());

	embeddings.Dump();
}

Yes, it's the wrong model

Here is my markdown content:
string GetMarkdown()
{
	return """
Read more about [Mscc.GenerativeAI.Web](https://github.com/mscraftsman/generative-ai/blob/main/src/Mscc.GenerativeAI.Web) and how to add it to your ASP.NET (Core) web applications. Read more about [Mscc.GenerativeAI.Google](https://github.com/mscraftsman/generative-ai/blob/main/src/Mscc.GenerativeAI.Google).

## Install the package 🖥

Install the package [Mscc.GenerativeAI](https://www.nuget.org/packages/Mscc.GenerativeAI/) from NuGet. You can install the package from the command line using either the command line or the NuGet Package Manager Console. Or you add it directly to your .NET project.

Add the package using the `dotnet` command line tool in your .NET project folder.

dotnet add package Mscc.GenerativeAI

Working with Visual Studio use the NuGet Package Manager to install the package Mscc.GenerativeAI.

PM> Install-Package Mscc.GenerativeAI

Alternatively, add the following line to your `.csproj` file.

```
You can then add this code to your sources whenever you need to access any Gemini API provided by Google. This package works for Google AI (Google AI Studio) and Google Cloud Vertex AI.
Features (as per Gemini analysis) ✦
The provided code defines a C# library for interacting with Google's Generative AI models, specifically the Gemini models. It provides functionalities to:

List available models: This allows users to see which models are available for use.
Get information about a specific model: This provides details about a specific model, such as its capabilities and limitations.
Generate content: This allows users to send prompts to a model and receive generated text in response.
Generate content stream: This allows users to receive a stream of generated text from a model, which can be useful for real-time applications.
Generate a grounded answer: This allows users to ask questions and receive answers that are grounded in provided context.
Generate embeddings: This allows users to convert text into numerical representations that can be used for tasks like similarity search.
Count tokens: This allows users to estimate the cost of using a model by counting the number of tokens in a prompt or response.
Start a chat session: This allows users to have a back-and-forth conversation with a model.
Create tuned models: This allows users to provide samples for tuning an existing model. Currently, only the text-bison-001 and gemini-1.0-pro-001 models are supported for tuning

The package also defines various helper classes and enums to represent different aspects of the Gemini API, such as model names, request parameters, and response data.
Authentication use cases 👥
The package supports the following use cases to authenticate.

Google AI: Authentication with an API key
Google AI: Authentication with OAuth
Vertex AI: Authentication with Application Default Credentials (ADC)
Vertex AI: Authentication with OAuth (using Mscc.GenerativeAI.Google)
Vertex AI: Authentication with Service Account (using Mscc.GenerativeAI.Google)

This applies mainly to the instantiation procedure.
""";
}

The model.GetModel() issue I mentioned here: https://github.com/mscraftsman/generative-ai/issues/13
I think the main point is the payload format.
Would you consider expose the full response body into the exception object? If I have that, the debugging experience will be much smoother.

I tried using Postman to send request.
Here is my request payload which is serialized by EmbedContentRequest object.
var request = new EmbedContentRequest("Hello");
request.TaskType = TaskType.RetrievalDocument;
request.Title = "Hello World";
request.Content.Role = "user";
request.Dump();

The JSON is:
{
    "model": "models/embedding-001",
    "content": {
        "parts": [
            {
                "text": "Hello"
            }
        ],
        "role": "user",
        "text": "Hello"
    },
    "taskType": "RETRIEVAL_DOCUMENT",
    "title": "Hello World"
}

The response body is:
{
    "error": {
        "code": 400,
        "message": "Invalid JSON payload received. Unknown name \"text\" at 'content': Cannot find field.",
        "status": "INVALID_ARGUMENT",
        "details": [
            {
                "@type": "type.googleapis.com/google.rpc.BadRequest",
                "fieldViolations": [
                    {
                        "field": "content",
                        "description": "Invalid JSON payload received. Unknown name \"text\" at 'content': Cannot find field."
                    }
                ]
            }
        ]
    }
}

I found the bug here:

I'll raise a new issue for this.

That second key "text" is too much, and therefore a Bad Request.

Yes, that should be fine now. Or?

It works perfectly now.

Great feedback, thanks.

Work on .NET logging has started.
Currently, there is a new branch logging available that integrates the NuGet package Microsoft.Extension.Logging into the library. I'm using the LoggerMessageAttribute on various extension methods to provide more details about what's happening inside the classes.
Stay tuned, it's still WIP but an active task for now.
Cheers, JoKi


FSDP Strategy checkpoint loading

Description & Motivation
https://github.com/Lightning-AI/pytorch-lightning/blob/b9680a364da4e875b237ec3c03e67a9c32ef475b/src/lightning/pytorch/strategies/fsdp.py#L587-L596
Here we can only check a local path whether sharded or not. Any remote file path like hdfs://, the function will eventually raise an error.
Pitch
No response
Alternatives
No response
Additional context
No response
cc @borda

The feature has been requested here: #18786
Contributions always welcome :)


How can I enable airline in just one window?

what exactly are you trying to achieve?

@chrisbra The airline's status bar only shows up when I open a new tab in Vim using :vs newfile. What I want to do is get the status bar shown up when I open just one tab in Vim.

that is a faq

@chrisbra Cool, it's done. Thx.


Mashing toggle float causes window to gradually increase in size.

Pretty simple issue. If I have a window and I mash the key I have set to toggle float, the window will get progressively larger.
Not a huge issue, can easily be avoided by not mashing the button. I just thought you might want to know.

fixed in 7ff1fd9d6943ac6877da0523a95753ff9abb3cbd


Defiant ape token

Please note: This repository is being rebuilt to accept the new volume of token additions and modifications. PR merges will be delayed.

I agree to not ping anybody on Discord/Twitter/email about this pull request. Instead I will inquire by posting a new comment in the pull request if needed.

PRs are reviewed in bulk and and can take up to two weeks to be merged.
This repository is managed using an auto merge action. Please ensure your PR has no deleted lines, and it will be merged.
Please provide the following information for your token.
Please include change to the src/tokens/solana.tokenlist.json file in the PR.
DON'T modify any other token on the list.
At minimum each entry should have

Token Address:
Token Name:
Token Symbol:
Logo: (logo should be uploaded under assets/mainnet//*.<png/svg>)
Link to the official homepage of token:
Coingecko ID if available (https://www.coingecko.com/api/documentations/v3#/coins/get_coins__id_):

Auto merge requirements
Your pull request will be automatically merged if the following conditions are met:

Your pull request only adds new tokens to the list. Any modification to existing
tokens will require manual review to prevent unwanted modifications.

Your pull request does not touch unrelated code. In particular, reformatting changes to unrelated
code will cause the auto merge to reject your PR.

Any asset files added correspond to the token address you are adding. Asset files
must be PNG, JPG or SVG files.

Your change is valid JSON and conforms to the schema. If your change failed validation,
read the error message carefully and update your PR accordingly.

No other tokens shares the same name, symbol or address.

For example, this change would be rejected due to unrelated changes:

The bot runs every 60 minutes and bulk-merges all open pull requests to prevent conflicts.
This means that you need to wait up to 60 minutes for your pull request to be merged or reprocessed.

in https://github.com/solana-labs/token-list/pull/21333/checks?check_run_id=5461362642:
duplicate token: token address 8PvtB3kEnoNMLcEBBsXdQqy3N2RYnWgJ4GzhButPytTL is already used
see https://github.com/solana-labs/token-list#duplicate-token for an explanation and description of how to resolve


what happens if i don't know how many rows and columns to add?

i have a form which adds a new row to the sheet every time i use it, so is it possible to reopen a file and append its contents?

Right now it is not. It would be great if we can use read using this library


Receiving 415 (Unsupported Media Type) error when making DELETE request.

Hello!
So far enjoying the library, it has been super helpful.
I found that when a DELETE request is made with a content-type different from application/vnd.api+json, a 415 Unsupported Media Type error is returned. I understand this should not be. As per the specification:

Clients MUST send all JSON API data in request documents with the header Content-Type: application/vnd.api+json without any media type parameters.

This requirement that the content-type must be application/vnd.api+json is only when there is data being sent. A DELETE request contains no JSON api data, and therefore does not need to have that specific content-type.
I would like to modify this myself, where is this behavior being set? I'm having trouble locating it.
Thank you
Jean

Hi,
Glad you're finding the library useful! You make a really great point. Content negotiation is done in the BootJsonApi middleware, using this trait:
https://github.com/cloudcreativity/json-api/blob/master/src/Http/Middleware/NegotiatesContent.php
However, that is using the neomerx/json-api package's header checker to check the headers. Looking at their code, that is always checking the Content-Type header regardless of whether any HTTP request content has been sent:
https://github.com/neomerx/json-api/blob/master/src/Http/Headers/RestrictiveHeadersChecker.php#L47-L52
I'll create an issue there as I think there implementation isn't spec compliant.

Opened this issue:
https://github.com/neomerx/json-api/issues/178

Super quick response. It helped a lot. Thank you!

@jp-apps
question for you that will help me out. It's regarding this comment in the other issue:
https://github.com/neomerx/json-api/issues/178#issuecomment-307047190
The DELETE request you were sending, did it include a Content-Length or Transfer-Encoding header?

The DELETE request I am sending does not contain any Content-Length or Transfer-Encoding header.
I've been following the issue and looked into that last comment you referenced. The request's DELETE method spec does not indicate any restriction on whether it should or should not include a message-body. Therefore, I think one can be included. If there if a message-body, then the server should forward it unless there is no Content-Length or Transfer-Encoding header, in which case it should be ignored. So, I think you can't rely on getParsedBody() returning null, you would have to rely on the Content-Length or Transfer-Encoding headers.

Yeah, that's my thoughts exactly. Not sure how this is going to go though...


add minimal demo

You should probably clean out the outputs from here – I don't think anyone wants 1.5 megabytes of base64 encoded PNG to be in the repository's history forever.

thank you for the feedback. I have stripped out the notebook.


raft election is unstable

There are 3 members A B C in my cluster. When A is isolated from cluster, B and C will elect a leader. but according to my experiment, B and C will frequently and repeatedly switch leadership: B is leader, several seconds later, C becomes leader, and several second later, B becomes leader again, etc...
Here is a log fragment:
2015/10/14 04:54:00 raft: 195b29178f1028da decreased progress of f337b8e7bdb6b7c7 to [next = 266739, match = 0, wait = 0]
2015/10/14 04:54:00 raft: 195b29178f1028da received msgApp rejection(lastindex: 266832) from f337b8e7bdb6b7c7 for index 266738
2015/10/14 04:54:00 raft: 195b29178f1028da decreased progress of f337b8e7bdb6b7c7 to [next = 266738, match = 0, wait = 0]
2015/10/14 04:54:00 raft: 195b29178f1028da received msgApp rejection(lastindex: 266832) from f337b8e7bdb6b7c7 for index 266738
2015/10/14 04:54:00 raft: 195b29178f1028da received msgApp rejection(lastindex: 266832) from f337b8e7bdb6b7c7 for index 266737
2015/10/14 04:54:00 raft: 195b29178f1028da decreased progress of f337b8e7bdb6b7c7 to [next = 266737, match = 0, wait = 0]
2015/10/14 04:54:01 raft: 195b29178f1028da received msgApp rejection(lastindex: 266832) from f337b8e7bdb6b7c7 for index 266736
2015/10/14 04:54:01 raft: 195b29178f1028da decreased progress of f337b8e7bdb6b7c7 to [next = 266736, match = 0, wait = 0]
2015/10/14 04:54:01 raft: 195b29178f1028da received msgApp rejection(lastindex: 266832) from f337b8e7bdb6b7c7 for index 266735
2015/10/14 04:54:01 raft: 195b29178f1028da decreased progress of f337b8e7bdb6b7c7 to [next = 266735, match = 0, wait = 0]
2015/10/14 04:54:01 raft: 195b29178f1028da [term: 63612] received a MsgVote message with higher term from 98a85ee0d61cdae4 [term: 63613]
2015/10/14 04:54:01 raft: 195b29178f1028da became follower at term 63613
2015/10/14 04:54:01 raft: 195b29178f1028da [logterm: 63612, index: 276495, vote: 0] rejected vote from 98a85ee0d61cdae4 [logterm: 63193, index: 275799] at term 63613
2015/10/14 04:54:01 raft.node: 195b29178f1028da lost leader 195b29178f1028da at term 63613
2015/10/14 04:54:02 raft: 195b29178f1028da is starting a new election at term 63613
2015/10/14 04:54:02 raft: 195b29178f1028da became candidate at term 63614
2015/10/14 04:54:02 raft: 195b29178f1028da received vote from 195b29178f1028da at term 63614
2015/10/14 04:54:02 raft: 195b29178f1028da [logterm: 63612, index: 276495] sent vote request to 98a85ee0d61cdae4 at term 63614
2015/10/14 04:54:02 raft: 195b29178f1028da [logterm: 63612, index: 276495] sent vote request to f337b8e7bdb6b7c7 at term 63614
2015/10/14 04:54:02 raft: 195b29178f1028da [logterm: 63612, index: 276495, vote: 195b29178f1028da] rejected vote from f337b8e7bdb6b7c7 [logterm: 57986, index: 266832] at term f87e
2015/10/14 04:54:03 raft: 195b29178f1028da received vote rejection from f337b8e7bdb6b7c7 at term 63614
2015/10/14 04:54:03 raft: 195b29178f1028da [q:2] has received 1 votes and 1 vote rejections
2015/10/14 04:54:03 raft: 195b29178f1028da [logterm: 63612, index: 276495, vote: 195b29178f1028da] rejected vote from 98a85ee0d61cdae4 [logterm: 63193, index: 275799] at term f87e
2015/10/14 04:54:03 raft: 195b29178f1028da [term: 63614] received a MsgVote message with higher term from f337b8e7bdb6b7c7 [term: 63615]
2015/10/14 04:54:03 raft: 195b29178f1028da became follower at term 63615
2015/10/14 04:54:03 raft: 195b29178f1028da [logterm: 63612, index: 276495, vote: 0] rejected vote from f337b8e7bdb6b7c7 [logterm: 57986, index: 266832] at term 63615
2015/10/14 04:54:04 raft: 195b29178f1028da [term: 63615] received a MsgVote message with higher term from f337b8e7bdb6b7c7 [term: 63616]
2015/10/14 04:54:04 raft: 195b29178f1028da became follower at term 63616
2015/10/14 04:54:04 raft: 195b29178f1028da [logterm: 63612, index: 276495, vote: 0] rejected vote from f337b8e7bdb6b7c7 [logterm: 57986, index: 266832] at term 63616
2015/10/14 04:54:05 raft: 195b29178f1028da [term: 63616] ignored a MsgVote message with lower term from 98a85ee0d61cdae4 [term: 63615]

Which version of etcd you are using?

On machine B and C:
root@etcd-b:~# ls -alh /home/data/etcd/member/snap
total 32K
drwx------ 2 root root 4.0K Oct 14 01:22 .
drwx------ 4 root root 4.0K Oct 12 15:56 ..
-rw-r--r-- 1 root root 9.2K Oct 13 09:24<PHONE_NUMBER>0098e2-00000000000186a1.snap
-rw-r--r-- 1 root root  11K Oct 14 01:22<PHONE_NUMBER>00e40a-0000000000030d42.snap

on machien A:
root@etcd-a:~# ls -alh /home/data/etcd/member/snap
total 20K
drwx------ 2 root root 4.0K Oct 13 09:24 .
drwx------ 4 root root 4.0K Oct 12 15:56 ..
-rw-r--r-- 1 root root 9.2K Oct 13 09:24<PHONE_NUMBER>0098e2-00000000000186a1.snap

@combk8s I would recommend you to upgrade to 2.1 first because 2.1 may fix some potential problems. You could follow https://github.com/coreos/etcd/blob/master/Documentation/upgrade_2_1.md to do it.

If I run the following command on machine A to simulate isolation（disable 2380 port）:
···
iptables -A INPUT -p tcp --dport 2380 -j DROP
iptables -A OUTPUT -p tcp --sport 2380 -j DROP
···
B and C will frequently and repeatedly switch leadership.
However, if I run the following command(disable all the traffic from/to B an d C):
iptables -I INPUT -s 10.180.213 -j DROP
iptables -I INPUT -s 10.180.214 -j DROP
iptables -I OUTPUT -d 10.180.213 -j DROP
iptables -I OUTPUT -d 10.180.213 -j DROP

It turns out the raft algorithm works fine.
Does it mean raft may use some extra information(besides the heartbeat and votemsg from port 2380) to make election?

iptables -A INPUT -p tcp --dport 2380 -j DROP
iptables -A OUTPUT -p tcp --sport 2380 -j DROP

This is incorrect, and machine A could still send messages to machine B and C, while machine A cannot receive any messages from B and C. The message from machine A to machine B,C is not from 2380 port.

Thanks.


Functionality: Name the comic files after the comic

Currently, it looks like any comic that is downloaded is going to be named the same thing (comic.cbr).  It would be easier on the user if you parsed out the URL and got the name of the comic, created a sub directory of the same name as the comic and name the comic file similar name.  So downloading using the URL, https://readcomiconline.to/Comic/Untold-Tales-Of-The-New-Universe-D-P-7/Full?id=157330, would be parsed out to Untold-Tales-Of-The-New-Universe-D-P-7.  This will make sorting lots easier after the downloading is done.

Done.


Batchnorm Scaling Factor is Clamped Near Zero

I believe that the parameter clamping also reduces the batchnorm scaling factor to near zero, when (as far as I understand) it should stay near 1 (where it was initialized).
In line 170 of main.py:
# clamp parameters to a cube
for p in netD.parameters():
    p.data.clamp_(opt.clamp_lower, opt.clamp_upper)

This makes alot of sense to me. I'm going to take out clamping for batch norm scaling and take this part out and see if it leads to any improvements.

@NickShahML please share your results once you have them!

I've tried it before. The loss becomes several magnitudes higher, and results are not as good.
Mentioned it a month ago on reddit.

I'm getting exactly what @ppwwyyxx reported. The results are simply chaotic and far higher of loss.

Interesting!  Good to know - I have been trying to get a wgan working on a separate codebase, and I'm running into trouble.  I'll try putting my batchnorm scale around the same magnitude as my weight clamping.
Anyway, if you make a small change to the weights_init function to have the batchnorm scale factors start at 0.01, instead of near 1, it may help others reading through the code!

Actually, I also found that as long as you did the clipping (and clip BN as well), it will have some of the nice properties of WGAN, even just using the original GAN loss. For example, it can train without requiring BatchNorm in generator.

If your network is linear with no biases scaling the BN parameter by a constant c would multiply the output of the network by c. Since the discriminator wants to make the loss as large as possible, this c would go to infinity very quickly, that's why it should be clamped (same as with most other parameters in the network).


Azure AI Client SDK

API change check
APIView has identified API level changes in this PR and created following API reviews.
azure-ai-client


Tab complete spaces (and other special characters)

Allows users to tab-complete options that contain exotic characters like spaces, by:

Explicitly telling GNU Readline which characters constitute word boundaries in the gitsh language.
Using GNU Readline's char_is_quoted_p setting to inform Readline when a word boundary is escaped.
Expanding the parser to support more escape sequences.
Decorating the completer with a new Gitsh::CompletionEscaper which unescapes user input on the way in (so we can match it against the possibly completions) and then escapes the completions on the way out (so they can be correctly parsed by the shell)

Regression caught by manual testing: something after 16ddce7e7b8c3f07345ce2cb0fcc45c2e183eea5 introduced a bug where the line :set color.ui true in my .gitshrc file causes an error. Seems to be because I changed a [\s…] to [ …] in the parser.

@mike-burns Based on our conversation at the thoughtbot summit about how hard it was to understand the character class constants in Gitsh::Parser, what do you think of 36d999d539f55924c1c68a3340182b1af49d0513?

I have, for many years, wished regexps were written like this, and therefore
that commit looks great!


Remove custom fallbackPlacements from the dropdown

Closes #32648
Why to remove fallbackPlacements option from the dropdown:

This restricts the flipping behavior of the dropdown to four directions only and it does not let the dropdown flip in the exact opposite side of the current placement.
I believe that there should be an option in the dropdown's configuration to override the customized (by bootstrap) configuration of the popper. It is not available for fallbackPlacements right now.

Why to keep fallbackPlacements option in Tooltip/Popover:
Because it provides better placements to Tooltip/Popover IMO (Since there is no official special handing for the placement of Tooltip/Popover on the edges, like- dropstart and dropend for dropdowns). Popper's default value for fallbackPlacements is [oppositePlacement] it means:

If the popper has placement set to bottom, but there isn't enough space to position the popper in that direction, it will change the popper placement to top (opposite side). As soon as enough space is detected on the bottom, the placement will be reverted to the bottom side. But if the top placement doesn't fit (while Popper trying to flip the element), it reverts back to the original placement (to the bottom side even if there was not enough space in the viewport that made Popper try to flip the element). And this behavior causes the issue: #32384.

More in the description of #32437. So its better to have more fallback placements by default for Tooltip/Popover.

And the flip modifier can be added with fallbackPlacements by the popperConfig option in case the same issue like #32384 is caused with dropdowns as well (Which is rare in case of dropdowns IMO).

@mdo how do we proceed with this?

@XhmikosR @rohit2sharma95 I don't see the issue in #32648 in our production site at https://getbootstrap.com/docs/5.0/components/dropdowns/#menu-alignment. Should I be looking in a particular browser or OS?

Actually I just saw the issue in another PR on the RTL cheatsheet: https://deploy-preview-32986--twbs-bootstrap.netlify.app/docs/5.0/examples/cheatsheet-rtl/.


sequoia: use llvm 12 same as rust toolchain

Description of changes
the rust toolchain uses llvm 12 by default so sequoia should use it too.
incidentally this fixes aarch64-darwin build.
Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[X] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.05 Release Notes (or backporting 21.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[ ] Fits CONTRIBUTING.md.

merging this for now just to fix the aarch64 darwin build, but happy to take care of anyfeedback should there be any.


Completely freeze and zombify WSL with tmux and oh-my-zsh

A brief description

Under specific but easy to reproduce conditions, tmux and oh-my-zsh will freeze the entire WSL and become unkillable even from the Windows task manager.  It also becomes impossible to stop the LxssManager service, which gets stuck at the "Stopping" phase, and it is even unkillable by killing the service's PID with taskkill /f /PID in an administrative command prompt.  The only way to kill it is by rebooting (I haven't tried elevating my commandprompt from administrator to NT Authority\System, maybe that would work, since even administrative taskkill is being told access denied.

Your Windows build number

Build 14926
(happens on earlier builds too, at least since 14905.  Don't remember if it happened in anniversary)

Steps / All commands required to reproduce the error from a brand new installation

From a clean install of WSL:
Install dependencies:
sudo apt install tmux git curl zsh
Run the oh-my-zsh install script
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
While running the script, it will ask for your user password in order to change your default shell.  This does not actually do anything with WSL, so whatever.
Now run tmux with tmux.  Inside of tmux, you will have a bash prompt.  From here, run zsh with zsh.
Now hold down the enter key for a while, continually entering an empty line, which should begin to scroll the screen.  Eventually it will freeze and become totally unkillable, even with the Windows task manager, and even if you attempt to manually stop the LxssManager service with either sc or from the administrative tools snap-in.

Strace of the failing command
Freezes, so no strace.
Required packages and commands to install
tmux, git, curl, zsh (commands to install oh-my-zsh covered above)

By the way, this is definitely not a console issue, because it happens even if you try to do it from an X terminal.
Also, I tested this without oh-my-zsh, and it didn't freeze.  When I looked at what oh-my-zsh does while screenscrolling outside of tmux, I noticed that intermittently, it's printing something that says "git:()".  I think this might be related to the problem.

By the way, I only was able to test on one machine. If anyone else could attempt to reproduce and confirm, it would be helpful.

By the way, I was playing with a few other programs, and I was able to get them to break on oh-my-zsh (the new mintty/wsltty, for example, will crash zsh  without tmux.  I think the hang is related to the pty implementation, maybe).

@fpqc - If you could narrow down a sequence of reproducible steps it'd be very useful to us.

@benhillis I gave them above.

Install git curl zsh and tmux
Install oh-my-zsh with the script
run tmux
inside tmux, run zsh
hold down the enter key for a while until it freezes up.

@fpqc Sorry, missed that :)

@benhillis also, btw, if you change the theme in .zshrc from robbyrussell to pygmalion (it's right at the top of .zshrf after you install oh-my-zsh), it seems to hang much faster (sometimes in as few as eight lines).  Not sure why that is.

@benhillis I know it's the weekend but I am dying to know if you got a chance to attempt reproduction.

Yes we got a repro and have a working theory on what is going wrong that led to this behavior. Once we have the fix ready we will certainly try to get it into the earliest possible insider build.

Great!

Not yet, if you do narrow down the repro steps please do share it with us. Thanks for your help.

@dethoma I haven't been able to reproduce it myself, but I would have assumed that it generated a proper crashdump somewhere.

I've just hit this issue with a fresh build - no bsod, but a freezing bash

@arcanis The freeze is the easy part, triggers very reliably with tmux and oh-my-zsh (I think it is a bug in the pty implementation, since I managed to trigger it outside of tmux).  I have not yet been able to reproduce the bsod, but I think that might be disk i/o related, since it happened to me while saving my .zshrc file in nano (while using zsh in tmux).

Fixed in 14942.

Never mind.  Still broken.

For the sake of linking, this is probably related to #1127

The bad news: this bug looks to continue to happen in build 14951.
The good news: I can not get this to reproduce on an internal build.  We have made quite a few fixes which have made it out to the Insider builds yet.

One interesting bit, I did see it display "git:()" once in testing.  Not certain what's causing that.

@russalex Seems good now. I worked all day with oh-my-zsh (with the completion and compfix libs re-added), and I haven't hit a deadlock.  I didn't do the "enter key stress" test this time, but I am sure you guys have (and there is another issue open related to this anyway), so I am going to go ahead and close.

I managed to reproduce this on Windows Store (Xenial?) using a similar procedure. After installing Oh My Zsh, I tried navigating into a directory with a Git repository, at which point zsh froze (I think). In procexp, I have unkillable zombie zsh5 and git processes.

After pressing Ctrl+C, I get text $(virtualenv_prompt_info) on-screen. Opening the same Git repository in Git Bash, I get an error fatal: Unable to create 'C:/Users/jimbo1qaz/encrypted/code/wavetable/wavetable/.git/index.lock': File exists.
Note that I have a rather odd Windows directory hierarchy: %userprofile%/code/ is a Windows symlink to encrypted/code/, and encrypted/ is a Windows symlink to Dropbox/encrypted/. I entered the Git repository via code/wavetable/wavetable which requires resolving two directory symlinks.
Should I create a new issue?

@jimbo1qaz Did you try bare Command Prompt and wsl.exe?

I have encountered this issue multiple times.
Using WSL partially fixed the problem (the freezes happens less).
I have removed Oh-my-zsh for the moment and I'm using woefe/git-prompt.zsh.
Also, upgrading GIT to the latest version seemed to increase the performance by.. a lot
sudo apt-add-respository ppa:git-core/ppa
sudo apt-get update
sudo apt-get install git

No freeze anymore