03:11:20,985 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:652> Received response ClientResponse{responseHeaders={Connection=[keep-alive], Content-Length=[11], Date=[Sat, 14 Jan 2017 10:09:27 GMT]}, responseCode=200, status='OK', protocol=HTTP/1.1} for request ClientRequest{path='/foo/a', method=GET, protocol=HTTP/1.1} for exchange HttpServerExchange{ GET /foo/a request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:11:20,989 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:520> Sending request ClientRequest{path='/path/a', method=GET, protocol=HTTP/1.1} to target localhost/<IP_ADDRESS>:8888 for exchange HttpServerExchange{ GET /path/a request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:11:20,991 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:527> Sent request ClientRequest{path='/path/a', method=GET, protocol=HTTP/1.1} to target <IP_ADDRESS> for exchange HttpServerExchange{ GET /path/a request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:11:20,993 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:652> Received response ClientResponse{responseHeaders={Connection=[keep-alive], Content-Length=[14], Date=[Sat, 14 Jan 2017 10:09:27 GMT]}, responseCode=200, status='OK', protocol=HTTP/1.1} for request ClientRequest{path='/path/a', method=GET, protocol=HTTP/1.1} for exchange HttpServerExchange{ GET /path/a request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}

io.undertow.server.handlers.RoutingHandlerTestCase.testRoutingTemplateHandler{proxy}{http2}: ------- Stderr: -------
03:13:45,323 WARN  (main) [io.undertow] <PredicatedHandlersParser.java:460> UT005060: Predicate contains[value=%{i,SomeHeader},search='special']  uses old style square braces to define predicates, which will be removed in a future release. predicate[value] should be changed to predicate(value)
03:13:45,333 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:520> Sending request ClientRequest{path='/foo', method=GET, protocol=HTTP/1.1} to target localhost/<IP_ADDRESS>:8888 for exchange HttpServerExchange{ GET /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:45,335 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:527> Sent request ClientRequest{path='/foo', method=GET, protocol=HTTP/1.1} to target <IP_ADDRESS> for exchange HttpServerExchange{ GET /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:45,338 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:652> Received response ClientResponse{responseHeaders={content-length=[3], date=[Sat, 14 Jan 2017 10:12:01 GMT]}, responseCode=200, status='', protocol=HTTP/1.1} for request ClientRequest{path='/foo', method=GET, protocol=HTTP/1.1} for exchange HttpServerExchange{ GET /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:45,341 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:520> Sending request ClientRequest{path='/foo', method=DELETE, protocol=HTTP/1.1} to target localhost/<IP_ADDRESS>:8888 for exchange HttpServerExchange{ DELETE /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:45,342 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:527> Sent request ClientRequest{path='/foo', method=DELETE, protocol=HTTP/1.1} to target <IP_ADDRESS> for exchange HttpServerExchange{ DELETE /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:45,344 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:652> Received response ClientResponse{responseHeaders={content-length=[0], date=[Sat, 14 Jan 2017 10:12:01 GMT]}, responseCode=405, status='', protocol=HTTP/1.1} for request ClientRequest{path='/foo', method=DELETE, protocol=HTTP/1.1} for exchange HttpServerExchange{ DELETE /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:45,348 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:520> Sending request ClientRequest{path='/foo', method=POST, protocol=HTTP/1.1} to target localhost/<IP_ADDRESS>:8888 for exchange HttpServerExchange{ POST /foo request {Connection=[Keep-Alive], Content-Length=[0], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:45,349 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:527> Sent request ClientRequest{path='/foo', method=POST, protocol=HTTP/1.1} to target <IP_ADDRESS> for exchange HttpServerExchange{ POST /foo request {Connection=[Keep-Alive], Content-Length=[0], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:45,351 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:652> Received response ClientResponse{responseHeaders={content-length=[10], date=[Sat, 14 Jan 2017 10:12:01 GMT]}, responseCode=200, status='', protocol=HTTP/1.1} for request ClientRequest{path='/foo', method=POST, protocol=HTTP/1.1} for exchange HttpServerExchange{ POST /foo request {Connection=[Keep-Alive], Content-Length=[0], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:45,355 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:520> Sending request ClientRequest{path='/foo', method=GET, protocol=HTTP/1.1} to target localhost/<IP_ADDRESS>:8888 for exchange HttpServerExchange{ GET /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], SomeHeader=[value], Host=[localhost:7777]} response {}}
03:13:45,357 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:527> Sent request ClientRequest{path='/foo', method=GET, protocol=HTTP/1.1} to target <IP_ADDRESS> for exchange HttpServerExchange{ GET /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], SomeHeader=[value], Host=[localhost:7777]} response {}}
03:13:45,359 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:652> Received response ClientResponse{responseHeaders={content-length=[3], date=[Sat, 14 Jan 2017 10:12:01 GMT]}, responseCode=200, status='', protocol=HTTP/1.1} for request ClientRequest{path='/foo', method=GET, protocol=HTTP/1.1} for exchange HttpServerExchange{ GET /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], SomeHeader=[value], Host=[localhost:7777]} response {}}
03:13:45,362 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:520> Sending request ClientRequest{path='/foo', method=GET, protocol=HTTP/1.1} to target localhost/<IP_ADDRESS>:8888 for exchange HttpServerExchange{ GET /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], SomeHeader=[special], Host=[localhost:7777]} response {}}
03:13:45,363 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:527> Sent request ClientRequest{path='/foo', method=GET, protocol=HTTP/1.1} to target <IP_ADDRESS> for exchange HttpServerExchange{ GET /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], SomeHeader=[special], Host=[localhost:7777]} response {}}
03:13:45,366 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:652> Received response ClientResponse{responseHeaders={content-length=[11], date=[Sat, 14 Jan 2017 10:12:01 GMT]}, responseCode=200, status='', protocol=HTTP/1.1} for request ClientRequest{path='/foo', method=GET, protocol=HTTP/1.1} for exchange HttpServerExchange{ GET /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], SomeHeader=[special], Host=[localhost:7777]} response {}}
03:13:45,370 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:520> Sending request ClientRequest{path='/foo/a', method=GET, protocol=HTTP/1.1} to target localhost/<IP_ADDRESS>:8888 for exchange HttpServerExchange{ GET /foo/a request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:45,371 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:527> Sent request ClientRequest{path='/foo/a', method=GET, protocol=HTTP/1.1} to target <IP_ADDRESS> for exchange HttpServerExchange{ GET /foo/a request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:45,373 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:652> Received response ClientResponse{responseHeaders={content-length=[11], date=[Sat, 14 Jan 2017 10:12:01 GMT]}, responseCode=200, status='', protocol=HTTP/1.1} for request ClientRequest{path='/foo/a', method=GET, protocol=HTTP/1.1} for exchange HttpServerExchange{ GET /foo/a request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:45,377 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:520> Sending request ClientRequest{path='/baz', method=GET, protocol=HTTP/1.1} to target localhost/<IP_ADDRESS>:8888 for exchange HttpServerExchange{ GET /baz request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:45,378 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:527> Sent request ClientRequest{path='/baz', method=GET, protocol=HTTP/1.1} to target <IP_ADDRESS> for exchange HttpServerExchange{ GET /baz request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:45,380 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:652> Received response ClientResponse{responseHeaders={content-length=[3], date=[Sat, 14 Jan 2017 10:12:01 GMT]}, responseCode=200, status='', protocol=HTTP/1.1} for request ClientRequest{path='/baz', method=GET, protocol=HTTP/1.1} for exchange HttpServerExchange{ GET /baz request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:45,384 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:520> Sending request ClientRequest{path='/baz/a', method=GET, protocol=HTTP/1.1} to target localhost/<IP_ADDRESS>:8888 for exchange HttpServerExchange{ GET /baz/a request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:45,385 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:527> Sent request ClientRequest{path='/baz/a', method=GET, protocol=HTTP/1.1} to target <IP_ADDRESS> for exchange HttpServerExchange{ GET /baz/a request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:45,387 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:652> Received response ClientResponse{responseHeaders={content-length=[11], date=[Sat, 14 Jan 2017 10:12:01 GMT]}, responseCode=200, status='', protocol=HTTP/1.1} for request ClientRequest{path='/baz/a', method=GET, protocol=HTTP/1.1} for exchange HttpServerExchange{ GET /baz/a request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:45,397 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:520> Sending request ClientRequest{path='/path/foo', method=GET, protocol=HTTP/1.1} to target localhost/<IP_ADDRESS>:8888 for exchange HttpServerExchange{ GET /path/foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:45,398 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:527> Sent request ClientRequest{path='/path/foo', method=GET, protocol=HTTP/1.1} to target <IP_ADDRESS> for exchange HttpServerExchange{ GET /path/foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:45,401 DEBUG (XNIO-1 I/O-4) [io.undertow.server.handlers.proxy] <ProxyHandler.java:652> Received response ClientResponse{responseHeaders={content-length=[14], date=[Sat, 14 Jan 2017 10:12:01 GMT]}, responseCode=200, status='', protocol=HTTP/1.1} for request ClientRequest{path='/path/foo', method=GET, protocol=HTTP/1.1} for exchange HttpServerExchange{ GET /path/foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}

io.undertow.server.handlers.PathTemplateHandlerTestCase.testPathTemplateHandler{proxy}{http2}: ------- Stderr: -------
sed by the target server
03:13:52,701 DEBUG (XNIO-1 I/O-5) [io.undertow.client] <HttpClientConnection.java:504> Connection to localhost/<IP_ADDRESS>:7778 was closed by the target server
03:13:52,713 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:520> Sending request ClientRequest{path='/foo', method=GET, protocol=HTTP/1.1} to target localhost/<IP_ADDRESS>:8888 for exchange HttpServerExchange{ GET /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:52,715 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:527> Sent request ClientRequest{path='/foo', method=GET, protocol=HTTP/1.1} to target <IP_ADDRESS> for exchange HttpServerExchange{ GET /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:52,717 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:652> Received response ClientResponse{responseHeaders={content-length=[3], date=[Sat, 14 Jan 2017 10:12:01 GMT]}, responseCode=200, status='', protocol=HTTP/1.1} for request ClientRequest{path='/foo', method=GET, protocol=HTTP/1.1} for exchange HttpServerExchange{ GET /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:52,722 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:520> Sending request ClientRequest{path='/foo/', method=GET, protocol=HTTP/1.1} to target localhost/<IP_ADDRESS>:8888 for exchange HttpServerExchange{ GET /foo/ request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:52,724 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:527> Sent request ClientRequest{path='/foo/', method=GET, protocol=HTTP/1.1} to target <IP_ADDRESS> for exchange HttpServerExchange{ GET /foo/ request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:52,726 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:652> Received response ClientResponse{responseHeaders={content-length=[4], date=[Sat, 14 Jan 2017 10:12:01 GMT]}, responseCode=200, status='', protocol=HTTP/1.1} for request ClientRequest{path='/foo/', method=GET, protocol=HTTP/1.1} for exchange HttpServerExchange{ GET /foo/ request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:52,732 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:520> Sending request ClientRequest{path='/foo/a', method=GET, protocol=HTTP/1.1} to target localhost/<IP_ADDRESS>:8888 for exchange HttpServerExchange{ GET /foo/a request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:52,733 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:527> Sent request ClientRequest{path='/foo/a', method=GET, protocol=HTTP/1.1} to target <IP_ADDRESS> for exchange HttpServerExchange{ GET /foo/a request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:52,736 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:652> Received response ClientResponse{responseHeaders={content-length=[11], date=[Sat, 14 Jan 2017 10:12:01 GMT]}, responseCode=200, status='', protocol=HTTP/1.1} for request ClientRequest{path='/foo/a', method=GET, protocol=HTTP/1.1} for exchange HttpServerExchange{ GET /foo/a request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:52,741 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:520> Sending request ClientRequest{path='/path/a', method=GET, protocol=HTTP/1.1} to target localhost/<IP_ADDRESS>:8888 for exchange HttpServerExchange{ GET /path/a request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:52,742 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:527> Sent request ClientRequest{path='/path/a', method=GET, protocol=HTTP/1.1} to target <IP_ADDRESS> for exchange HttpServerExchange{ GET /path/a request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:13:52,745 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:652> Received response ClientResponse{responseHeaders={content-length=[14], date=[Sat, 14 Jan 2017 10:12:01 GMT]}, responseCode=200, status='', protocol=HTTP/1.1} for request ClientRequest{path='/path/a', method=GET, protocol=HTTP/1.1} for exchange HttpServerExchange{ GET /path/a request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}

io.undertow.server.handlers.RoutingHandlerTestCase.testRoutingTemplateHandler{proxy}{http2-clear}: ------- Stderr: -------
03:16:23,777 WARN  (main) [io.undertow] <PredicatedHandlersParser.java:460> UT005060: Predicate contains[value=%{i,SomeHeader},search='special']  uses old style square braces to define predicates, which will be removed in a future release. predicate[value] should be changed to predicate(value)
03:16:23,787 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:520> Sending request ClientRequest{path='/foo', method=GET, protocol=HTTP/1.1} to target localhost/<IP_ADDRESS>:8888 for exchange HttpServerExchange{ GET /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:16:23,788 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:527> Sent request ClientRequest{path='/foo', method=GET, protocol=HTTP/1.1} to target <IP_ADDRESS> for exchange HttpServerExchange{ GET /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:16:23,791 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:652> Received response ClientResponse{responseHeaders={content-length=[3], date=[Sat, 14 Jan 2017 10:14:42 GMT]}, responseCode=200, status='', protocol=HTTP/1.1} for request ClientRequest{path='/foo', method=GET, protocol=HTTP/1.1} for exchange HttpServerExchange{ GET /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:16:23,795 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:520> Sending request ClientRequest{path='/foo', method=DELETE, protocol=HTTP/1.1} to target localhost/<IP_ADDRESS>:8888 for exchange HttpServerExchange{ DELETE /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:16:23,797 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:527> Sent request ClientRequest{path='/foo', method=DELETE, protocol=HTTP/1.1} to target <IP_ADDRESS> for exchange HttpServerExchange{ DELETE /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:16:23,798 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:652> Received response ClientResponse{responseHeaders={content-length=[0], date=[Sat, 14 Jan 2017 10:14:42 GMT]}, responseCode=405, status='', protocol=HTTP/1.1} for request ClientRequest{path='/foo', method=DELETE, protocol=HTTP/1.1} for exchange HttpServerExchange{ DELETE /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:16:23,803 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:520> Sending request ClientRequest{path='/foo', method=POST, protocol=HTTP/1.1} to target localhost/<IP_ADDRESS>:8888 for exchange HttpServerExchange{ POST /foo request {Connection=[Keep-Alive], Content-Length=[0], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:16:23,804 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:527> Sent request ClientRequest{path='/foo', method=POST, protocol=HTTP/1.1} to target <IP_ADDRESS> for exchange HttpServerExchange{ POST /foo request {Connection=[Keep-Alive], Content-Length=[0], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:16:23,806 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:652> Received response ClientResponse{responseHeaders={content-length=[10], date=[Sat, 14 Jan 2017 10:14:42 GMT]}, responseCode=200, status='', protocol=HTTP/1.1} for request ClientRequest{path='/foo', method=POST, protocol=HTTP/1.1} for exchange HttpServerExchange{ POST /foo request {Connection=[Keep-Alive], Content-Length=[0], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:16:23,810 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:520> Sending request ClientRequest{path='/foo', method=GET, protocol=HTTP/1.1} to target localhost/<IP_ADDRESS>:8888 for exchange HttpServerExchange{ GET /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], SomeHeader=[value], Host=[localhost:7777]} response {}}
03:16:23,812 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:527> Sent request ClientRequest{path='/foo', method=GET, protocol=HTTP/1.1} to target <IP_ADDRESS> for exchange HttpServerExchange{ GET /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], SomeHeader=[value], Host=[localhost:7777]} response {}}
03:16:23,814 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:652> Received response ClientResponse{responseHeaders={content-length=[3], date=[Sat, 14 Jan 2017 10:14:42 GMT]}, responseCode=200, status='', protocol=HTTP/1.1} for request ClientRequest{path='/foo', method=GET, protocol=HTTP/1.1} for exchange HttpServerExchange{ GET /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], SomeHeader=[value], Host=[localhost:7777]} response {}}
03:16:23,817 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:520> Sending request ClientRequest{path='/foo', method=GET, protocol=HTTP/1.1} to target localhost/<IP_ADDRESS>:8888 for exchange HttpServerExchange{ GET /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], SomeHeader=[special], Host=[localhost:7777]} response {}}
03:16:23,818 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:527> Sent request ClientRequest{path='/foo', method=GET, protocol=HTTP/1.1} to target <IP_ADDRESS> for exchange HttpServerExchange{ GET /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], SomeHeader=[special], Host=[localhost:7777]} response {}}
03:16:23,820 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:652> Received response ClientResponse{responseHeaders={content-length=[11], date=[Sat, 14 Jan 2017 10:14:42 GMT]}, responseCode=200, status='', protocol=HTTP/1.1} for request ClientRequest{path='/foo', method=GET, protocol=HTTP/1.1} for exchange HttpServerExchange{ GET /foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], SomeHeader=[special], Host=[localhost:7777]} response {}}
03:16:23,825 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:520> Sending request ClientRequest{path='/foo/a', method=GET, protocol=HTTP/1.1} to target localhost/<IP_ADDRESS>:8888 for exchange HttpServerExchange{ GET /foo/a request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:16:23,826 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:527> Sent request ClientRequest{path='/foo/a', method=GET, protocol=HTTP/1.1} to target <IP_ADDRESS> for exchange HttpServerExchange{ GET /foo/a request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:16:23,828 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:652> Received response ClientResponse{responseHeaders={content-length=[11], date=[Sat, 14 Jan 2017 10:14:42 GMT]}, responseCode=200, status='', protocol=HTTP/1.1} for request ClientRequest{path='/foo/a', method=GET, protocol=HTTP/1.1} for exchange HttpServerExchange{ GET /foo/a request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:16:23,831 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:520> Sending request ClientRequest{path='/baz', method=GET, protocol=HTTP/1.1} to target localhost/<IP_ADDRESS>:8888 for exchange HttpServerExchange{ GET /baz request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:16:23,832 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:527> Sent request ClientRequest{path='/baz', method=GET, protocol=HTTP/1.1} to target <IP_ADDRESS> for exchange HttpServerExchange{ GET /baz request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:16:23,834 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:652> Received response ClientResponse{responseHeaders={content-length=[3], date=[Sat, 14 Jan 2017 10:14:42 GMT]}, responseCode=200, status='', protocol=HTTP/1.1} for request ClientRequest{path='/baz', method=GET, protocol=HTTP/1.1} for exchange HttpServerExchange{ GET /baz request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:16:23,837 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:520> Sending request ClientRequest{path='/baz/a', method=GET, protocol=HTTP/1.1} to target localhost/<IP_ADDRESS>:8888 for exchange HttpServerExchange{ GET /baz/a request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:16:23,838 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:527> Sent request ClientRequest{path='/baz/a', method=GET, protocol=HTTP/1.1} to target <IP_ADDRESS> for exchange HttpServerExchange{ GET /baz/a request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:16:23,840 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:652> Received response ClientResponse{responseHeaders={content-length=[11], date=[Sat, 14 Jan 2017 10:14:42 GMT]}, responseCode=200, status='', protocol=HTTP/1.1} for request ClientRequest{path='/baz/a', method=GET, protocol=HTTP/1.1} for exchange HttpServerExchange{ GET /baz/a request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:16:23,844 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:520> Sending request ClientRequest{path='/path/foo', method=GET, protocol=HTTP/1.1} to target localhost/<IP_ADDRESS>:8888 for exchange HttpServerExchange{ GET /path/foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:16:23,845 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:527> Sent request ClientRequest{path='/path/foo', method=GET, protocol=HTTP/1.1} to target <IP_ADDRESS> for exchange HttpServerExchange{ GET /path/foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}
03:16:23,847 DEBUG (XNIO-1 I/O-6) [io.undertow.server.handlers.proxy] <ProxyHandler.java:652> Received response ClientResponse{responseHeaders={content-length=[14], date=[Sat, 14 Jan 2017 10:14:42 GMT]}, responseCode=200, status='', protocol=HTTP/1.1} for request ClientRequest{path='/path/foo', method=GET, protocol=HTTP/1.1} for exchange HttpServerExchange{ GET /path/foo request {Connection=[Keep-Alive], User-Agent=[Apache-HttpClient/4.2.6 (java 1.5)], Host=[localhost:7777]} response {}}

##### there are 6 more failed tests, see build details

See comments on the JIRA


What happened to cognitive science?

https://www.nature.com/articles/s41562-019-0626-2
More than a half-century ago, the cognitive revolution, with the influential tenet cognition is computation, launched the investigation of the mind through a multidisciplinary endeavour called cognitive science.

This has been read but not added to bibliography yet


Automatic normalization of parameters to same scale in gradient based methods

I could be terribly wrong, but in gradient based optimization, it is important that the parameters have the same order of size.
I was hoping something like that could be done automatically by GalacticOptim.
See for example the example where we want to model the function y = 1x[1] + 1e-6x[2] with a model  yhat = θ[1]*x[1] + θ[2]*x[2].
This is only useful when x[2] >> x[1]. Such that they both contribute in the same scale to the output.
This happens with for example x[1] = 1 and x[2] = 1e6.
(With more datapoints, we would have the same results).
Here is an example where the initial value of θ = [2, 2e-6]
using Zygote
model(x,θ) = θ[1]*x[1]+θ[2]*x[2]

p = [1,1e-6] #actual parameters
actual(x) = model(x,p)
l(x,θ) = (actual(x)-model(x,θ))^2

θ = [2,2e-6]
x = [1,1e6]
dldx,dldθ= gradient(l,x,θ)
η = 0.001
#one gradient descent step
#θ = θ - η.*dldθ #[1.996, -3999.999998]

This is horribly wrong
This is fixed by scaling the parameters by their starting values:
θ_start = copy(θ)
normalize(θ) = θ./θ_start
inv_normalize(α) = α.*θ_start

α = normalize(θ)
model2(x,α) = model(x,inv_normalize(α))
l2(x,α) = l(x,inv_normalize(α))

# check that the change of coordinates is correct
@assert model2(x,α) == model(x,θ)
@assert l2(x,α) == l(x,θ)

dldx,dldα= gradient(l2,x,α)
η = 0.001
α = α - η.*dldα
# At the end of the optimization, report:
θ = inv_normalize(α) # [1.98,0.00000198]

Which is more like we expected.
I propose an keyword argument scale which lets GalacticOptim scale the parameters by the starting values (the u0 passed to the OptimizationProblem)

Yes, this could be an interesting option to add.

Sounds good 👍

I have some starting code here:
I implemented this as a wrapper around solve.
The pitfalls are that the OptimizationFunction passed to remake lacks the other fields of OptimizationFunction
If you would implement this, then this might be a good starting point for your implementation, you just need to move this code inside the solve. And probably make it cleaner. (maybe having this scale option in the creation of the OptimizationProblem instead of the solve)
using GalacticOptim, Optim
using Flux

function solve_normalized(prob,args... ;cb=(args...)->(false),kwargs...)
    θ_start = copy(prob.u0)
    @assert !any(θ_start .== 0) "TODO: error text"

    _normalize = (θ) ->  θ./θ_start #TODO: inplace?
    _inv_normalize = (α) -> α.*θ_start

    normalized_f(α,args...) = prob.f.f(_inv_normalize(α),args...)
    normalized_cb(α,args...) = cb(_inv_normalize(α),args...)

    lb = isnothing(prob.lb) ? nothing : _normalize(prob.lb)
    ub = isnothing(prob.ub) ? nothing : _normalize(prob.ub)
    _prob = remake(prob,u0=_normalize(prob.u0),lb=lb,ub=ub,f=OptimizationFunction(normalized_f,prob.f.adtype))
    # TODO: passing other fields of prob.f

    optsol = solve(_prob,args...;cb=normalized_cb,kwargs...)
    optsol.u .= _inv_normalize(optsol.u)
    optsol
end

model(x,θ) = θ[1]*x[1]+θ[2]*x[2]
p = [1,1e-6] #actual parameters
x = [1,1e6]
actual(x) = model(x,p)
l(x,θ) = (actual(x)-model(x,θ))^2
optfunc(θ,args...) = l(x,θ)
cb = (θ,l) -> (println(l);false)

θ = [2,2e-6] #starting values of the model, we want this to converge to p
prob = OptimizationProblem(OptimizationFunction(optfunc,GalacticOptim.AutoZygote()),θ)
sol1 = solve(prob,Descent(0.01),maxiters=200,save_best=false,cb=cb)
sol2 = solve_normalized(prob,Descent(0.01),maxiters=200,save_best=false,cb=cb)
println(sol1.u) #[NaN,NaN]
println(sol2.u) #[1.0000000000000007, 1.0000000000000006e-6]

Yes, I think this would need to go into the solve dispatches.

I couldn't understand your optimisation problem. Did you intend to write.
model(θ,p) = θ[1]*p[1]+θ[2]*p[2]
x0 = [1,1e-6] #actual parameters
p = [1,1e6]
data = model(x0,p)
l(θ,p) = (data-model(θ,p))^2
optfunc(θ,args...) = l(x,θ)
cb = (θ,l) -> (println(l);false)

θ = [2,2e-6] #starting values of the model, we want this to converge to p
prob = OptimizationProblem(OptimizationFunction(optfunc,GalacticOptim.AutoZygote()),θ, p)
sol1 = solve(prob,Descent(0.01),maxiters=1000,cb=cb)

I couldn't understand your optimisation problem. Did you intend to write.

My apologies for the late response, I somehow missed this in my mails.
Maybe the following code is more clear.
using GalacticOptim, Optim
using Flux

function solve_normalized(prob,args... ;cb=(args...)->(false),kwargs...)
    u_start = copy(prob.u0)
    @assert !any(u_start .== 0) "TODO: error text"

    _normalize = (u) ->  u./u_start #TODO: inplace?
    _inv_normalize = (α) -> α.*u_start

    normalized_f(α,args...) = prob.f.f(_inv_normalize(α),args...)
    normalized_cb(α,args...) = cb(_inv_normalize(α),args...)

    lb = isnothing(prob.lb) ? nothing : _normalize(prob.lb)
    ub = isnothing(prob.ub) ? nothing : _normalize(prob.ub)
    _prob = remake(prob,u0=_normalize(prob.u0),lb=lb,ub=ub,f=OptimizationFunction(normalized_f,prob.f.adtype))
    # TODO: passing other fields of prob.f

    optsol = solve(_prob,args...;cb=normalized_cb,kwargs...)
    optsol.u .= _inv_normalize(optsol.u)
    optsol
end

model(data,u) = u[1]*data[1]+u[2]*data[2]
p = [1,1e-6] #actual parameters
data = [1,1e6]
actual(data) = model(data,p)
l(data,u) = (actual(data)-model(data,u))^2
optfunc(u,args...) = l(data,u)
cb = (u,l) -> (println(l);false)

u = [2,2e-6] #starting values of the model, we want this to converge to p
prob = OptimizationProblem(OptimizationFunction(optfunc,GalacticOptim.AutoZygote()),u)
sol1 = solve(prob,Descent(0.01),maxiters=200,save_best=false,cb=cb)
sol2 = solve_normalized(prob,Descent(0.01),maxiters=200,save_best=false,cb=cb)
println(sol1.u) #[NaN,NaN]
println(sol2.u) #[1.0000000000000007, 1.0000000000000006e-6]

The goal is to train the model such that it matches the data generating process "actual" at only data= [1,1e6]
In other words, the optimization variable u should learn to be equal to p.


[BUG] Address with email update fails when logged in

:bug: Bug report
Current Behavior

Address update fails when logged in while using Magento
Expected Behavior

I can go through checkout when logged in

this is because we send the setGuestEmailOnCart mutation when email is present on the address partial


Ref #133 Add CSS grid layout

Maybe can be useful?
https://github.com/sylvainpolletvillard/postcss-grid-kiss

Don't think so. It nothing directly related to the spec. Thanks for sharing anyway!

👍


Card - Fluid by default

Summary
It seems there always has to be a max-w applied. What if we are already wrapping the Card within a sized container like a grid cell?
Basic example
The default to be fluid (no max-width) and size unset
Motivation
This component becomes very hard to use in the way which it should be used, it shouldn't be forced to be a width-setting component.

Can you show us a REPL or stackbli example?

You can do <Card class="max-w-none"/> in the meantime.

I was wondering why Card objects don't stretch to the browser screen such as if there was a setting limiting the max width. And finally, here, I got a solution. Thanks. (I'm not familiar in Frontend stuff though...)

Please use the props for the styling: https://flowbite-svelte.com/docs/components/card#Card_styling
The design is from https://flowbite.com/docs/components/card/


Updates to customizing variables docs

I believe #24033 is factually inaccurate, while also containing some typos and grammar problems. This PR addresses a few things:

Variable overrides can come before or after you import Bootstrap—they'll still override the default value in our code.
Removed the double :: at the end of the paragraph.
Fixed usage of overwrite when we mean override.

/cc @johann-s @xhmikosr @bobeta

Ah, yeah, we're both right. I only tested variable overrides within the same Sass file, not across say a custom variables file and an import of Bootstrap. Testing it out in both cases again and will make edits.


Allow --makepass to work non-interactively

When automating deployments of ZNC, it can be helpful to capture a generated <Password> section. Allow users to do this by defining an environment variable ZNC_PASS containing the chosen password.
The password block can be retrieved with the following snippet when the environment variable is set;
znc --makepass | sed -n '/Pass/,/Pass/p'
I saw that there was a previous attempt in #1712 upon completion, and I shamelessly reused @stephenfin's commit message somewhat. This is another approach to the same issue.

Wouldn't it be any better to use this instead?
$ echo -n password | argon2 saltysalty -id -e
$argon2id$v=19$m=4096,t=3,p=1$c2FsdHlzYWx0eQ$uYMsezRK7lr5T5Cs3kNT/CeJ1g44FayYpiFEm1BEkxU

And you can configure iterations/parallelism/etc more precisely this way


⚠ Bofrost.gr has degraded performance

In 7a4cd50, Bofrost.gr (https://www.bofrost.gr) experienced degraded performance:

HTTP code: 200
Response time: 1691 ms

Resolved: Bofrost.gr performance has improved in cd3388b.


generate Wiremock proxy stub out of a contract

currently we are working on some new parts for our API and we want use the Wiremock proxy functionality, but unfortunately that will not work.
we want to generate a stub which looks like this:
{   "priority": 10000,   "request": {     "method": "GET",     "urlPattern": "/restapi/.*"   },   "response": {     "proxyBaseUrl" : "http://<IP_ADDRESS>/restapi"   } }
our goal is to stub the new things for our apps and use the old things (auth key exchange, user key exchange, etc.) of the current dev system.
is there a way to get this behavior with a contract?

Currently, there's no way to achieve this out of the box on the producer side. You'd have to override the way stubs are generated.
What you can do however is to use @AutoConfigureWireMock and create that particular stub only on the consumer side (http://cloud.spring.io/spring-cloud-static/Dalston.SR3/#_spring_cloud_contract_wiremock). That way you'll manually start a WireMock instance in the way you want with the proxy. You won't have it tested against the producer.

this works fine for the test.
but when I use the StubRunnerServer (@EnableStubRunnerServer Annotation on the SpringBootApplication class), this stub is still missing. I tried it with json and javacode mapping in the consumer and the producer module (where the other contract stubs are located), but the proxy stub is never included in the StubRunnerServer.
do we have any chance to get the proxy stub started with the stubrunner?
our app developers should use the fat jar for developing against the new api stuff.

Ok, now I understand... What you can do is that on the producer side, after the stubs are generated, and before they are packaged in a jar, you will create that one stub you mentioned and place it in the output directory. That way the standard sc-contract mechanism will still package the stub in the JAR. The problem I see is that it's an untested stub - but I understand that you know what you're doing :)

sounds great! will try that and post my results later :)
thanks a lot.

Ok! I'll close the issue then

it works fine!
i use the maven-resources-plugin to copy the resources before the jar is packaged. thanks a lot!
looks like:
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-resources-plugin</artifactId>
    <executions>
        <execution>
            <id>copy-resource-one</id>
            <phase>prepare-package</phase>
            <goals>
                <goal>copy-resources</goal>
            </goals>
            <configuration>
                <outputDirectory>${basedir}/target/stubs/META-INF/someinternalstuff/mappings/</outputDirectory>
                <resources>
                    <resource>
                        <directory>src/test/resources/mappings/</directory>
                        <includes>
                            <include>**/proxy_*.json</include>
                        </includes>
                    </resource>
                </resources>
            </configuration>
        </execution>
    </executions>
</plugin>

That's how I would do it too. Glad that it works for you!


Remove docusaurus website version

/azp run typespec - ci

No changes needing a change description found.

You can try these changes here

🛝 Playground
🌐 Website
📚 Next docs


add the actual jar file

The previous PR missed the checkin of the actual jar file because it was ignored by .gitignore.

+1


Automatically set Lightning address

With Alby Jim or Alby Hub (once https://github.com/getAlby/hub/pull/560 is merged) we should extract the lightning address from the connection string and assign it to the wallet.

fixed in https://github.com/getAlby/go/commit/eea5bb8bce861860d3cf4e5a58f225658c218924


HDDS-4287: Exclude protobuff classes from ozone-filesystem-hadoop3 jars

What changes were proposed in this pull request?
Excluded the protobuf classes from hadoop-ozone-filesystem-hadoop3/2. We already kept the dependency on hadoop anyway and hadoop provides protobuf jars. So, we just excluded the protobuff classes.
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-4287

+1 LGTM


Controls need to be remapped

Controls can now be generically re-mapped for joypads. Still working on keyboard (i.e. ZX Spectrum) mapping.


pedro is cleaning code for fun..

Bit of a holiday, so enjoying .. this is running pull ..

Changes for the upstream development version should be pulled into the develop branch.
I've changed the base to the develop branch.
The changes look good, but there's a few things I'll be leaving comments on in the commits for the "age of discovery" commit.
Finally, the commit messages could be a little more descriptive.
EG: "Pedro cleaning code for fun n future" -> "Remove commented imports and fix class desc"
With the body of the commit message describing the class description you fixed.
I'm also somewhat confused by what you mean by "age of discovery" for the commit message because from looking through the diff for that commit, it's not clear what's being affected by "age of discovery".

Thanks for all the comment @ShadowKyogre taken on board...;-))

ohh forgot.. age of discovery is disocivering all the magic u have written over the years.. and +++++ for that.. and thank them upstairs its not in c++ either ;-)))


leapfrogai serve fails to stop gracefully

There seems to be an issue, both in Docker and my host environment (Python 3.11.6 or Python 3.10.2 in a VENV, Ubuntu 22.04.3 LTS), where using "Ctrl-C" (SIGINT) to end the process in the terminal causes leapfrogai.serve() to crash the server and hang instead of stopping gracefully. On the host environment (developer mode with just python main.py), this is fine since one can just press "Ctrl-C" a 2nd time to kill the hanging process; however if running via Docker without detached mode, the terminal will hang as well, causing the user to open another terminal to kill the Docker container.
Below are the logs, which are the same/similar for CTransformers' backend as well:
(.venv) jlaw@law-desktop ➜  ~/dev/leapfrogai-backend-whisper git:(add-gpu-support) ~ python main.py
Initializing Leapfrog
Starting server. Listening on port 50051.
^CTraceback (most recent call last):
  File "/home/jlaw/dev/leapfrogai-backend-whisper/main.py", line 87, in <module>
    asyncio.run(main())
  File "/usr/lib/python3.10/asyncio/runners.py", line 44, in run
    return loop.run_until_complete(main)
  File "/usr/lib/python3.10/asyncio/base_events.py", line 636, in run_until_complete
    self.run_forever()
  File "/usr/lib/python3.10/asyncio/base_events.py", line 603, in run_forever
    self._run_once()
  File "/usr/lib/python3.10/asyncio/base_events.py", line 1871, in _run_once
    event_list = self._selector.select(timeout)
  File "/usr/lib/python3.10/selectors.py", line 469, in select
    fd_event_list = self._selector.poll(timeout, max_ev)
KeyboardInterrupt
Exception ignored in: <function Server.__del__ at 0x7f5b00a441f0>
Traceback (most recent call last):
  File "/home/jlaw/dev/leapfrogai-backend-whisper/.venv/lib/python3.10/site-packages/grpc/aio/_server.py", line 185, in __del__
  File "src/python/grpcio/grpc/_cython/_cygrpc/aio/common.pyx.pxi", line 118, in grpc._cython.cygrpc.schedule_coro_threadsafe
  File "src/python/grpcio/grpc/_cython/_cygrpc/aio/common.pyx.pxi", line 110, in grpc._cython.cygrpc.schedule_coro_threadsafe
  File "/usr/lib/python3.10/asyncio/base_events.py", line 436, in create_task
  File "/usr/lib/python3.10/asyncio/base_events.py", line 515, in _check_closed
RuntimeError: Event loop is closed
sys:1: RuntimeWarning: coroutine 'AioServer.shutdown' was never awaited

The installed package's code for leapfrogai.serve is below:
from concurrent import futures
import grpc

from grpc_health.v1 import health
from grpc_health.v1 import health_pb2
from grpc_health.v1 import health_pb2_grpc

from grpc_reflection.v1alpha import reflection

from .audio import audio_pb2_grpc
from .chat import chat_pb2_grpc
from .embeddings import embeddings_pb2_grpc
from .completion import completion_pb2_grpc
from .name import name_pb2_grpc

async def serve(o):
    # Create a tuple of all of the services we want to export via reflection.
    services = (reflection.SERVICE_NAME, health.SERVICE_NAME)

    # Create a gRPC server
    server = grpc.aio.server(futures.ThreadPoolExecutor(max_workers=40))

    if hasattr(o, "ChatComplete"):
        chat_pb2_grpc.add_ChatCompletionServiceServicer_to_server(o, server)
        services += ("chat.ChatCompletionService",)

    if hasattr(o, "ChatCompleteStream"):
        chat_pb2_grpc.add_ChatCompletionStreamServiceServicer_to_server(o, server)
        services += ("chat.ChatCompletionStreamService",)

    if hasattr(o, "Complete"):
        completion_pb2_grpc.add_CompletionServiceServicer_to_server(o, server)
        services += ("completion.CompletionService",)

    if hasattr(o, "CompleteStream"):
        completion_pb2_grpc.add_CompletionStreamServiceServicer_to_server(o, server)
        services += ("completion.CompletionStreamService",)

    if hasattr(o, "CreateEmbedding"):
        embeddings_pb2_grpc.add_EmbeddingsServiceServicer_to_server(o, server)
        services += ("embeddings.EmbeddingsService",)

    if hasattr(o, "Name"):
        name_pb2_grpc.add_NameServiceServicer_to_server(o, server)
        services += ("name.NameService",)

    if hasattr(o, "Transcribe") and hasattr(o, "Translate"):
        audio_pb2_grpc.add_AudioServicer_to_server(o, server)
        services += ("audio.Audio",)

    # Do reflection things to list all the gRPC services (allows for `grpcurl --plaintext localhost:50051 list`)
    reflection.enable_server_reflection(services, server)

    # Create a health_servicer and list all services as 'healthy'
    # NOTE: Health checks can be validated via `grpcurl --plaintext -d {"service": "SERVICE_NAME"}' localhost:50051 grpc.health.v1.Health/Check`
    health_servicer = health.HealthServicer(experimental_non_blocking=True)
    health_pb2_grpc.add_HealthServicer_to_server(health_servicer, server)
    for service in services:
        # TODO: I still need to modify the protos for the services to add a 'check' endpoint
        health_servicer.set(service, health_pb2.HealthCheckResponse.SERVING)

    # Listen on port 50051
    print("Starting server. Listening on port 50051.")
    server.add_insecure_port("[::]:50051")
    await server.start()

    # block the thread until the server terminates...without using async to await the completion
    # of all requests, this is the best we can do to gracefully wait while the server responds to requests
    await server.wait_for_termination()

The fix is on main: https://github.com/defenseunicorns/leapfrogai-sdk/blob/main/src/leapfrogai/serve.py#L67-L83 but the ctransformers backend isn't on 0.4.0 yet, once it is that will fix this.


[TFTRT - Dynamic Shape Phase 3] Add Dynamic Shape Testing for ConvertArgMinMax

@bixia1 @tfeher for review
Feature Tracker: #45481

@DEKHTIARJonathan  Can you please check @bixia1's comments and keep us posted ? Thanks!

@bixia1 I found the issue:
DefaultLogger my_arg-topk: implementation limit for 4D and higher tensors -- reduceAxes must specify one of last three dimensions

I pushed the fix and now it passes on TRT5 & TRT7

@bixia1 I found the issue:
DefaultLogger my_arg-topk: implementation limit for 4D and higher tensors -- reduceAxes must specify one of last three dimensions

I pushed the fix and now it passes on TRT5 & TRT7

@bixia1 we should be good to go ;)

@bixia1 we should be good to go ;)


[SPARK-36509][CORE] Fix the issue that executors are never re-scheduled if the worker stops with standalone cluster

What changes were proposed in this pull request?

This PR fixes an issue that executors are never re-scheduled if the worker which the executors run on stops.
As a result, the application stucks.
You can easily reproduce this issue by the following procedures.
# Run master
$ sbin/start-master.sh

# Run worker 1
$ SPARK_LOG_DIR=/tmp/worker1 SPARK_PID_DIR=/tmp/worker1/ sbin/start-worker.sh -c 1 -h localhost -d /tmp/worker1 --webui-port 8081 spark://<hostname>:7077

# Run worker 2
$ SPARK_LOG_DIR=/tmp/worker2 SPARK_PID_DIR=/tmp/worker2/ sbin/start-worker.sh -c 1 -h localhost -d /tmp/worker2 --webui-port 8082 spark://<hostname>:7077

# Run Spark Shell
$ bin/spark-shell --master spark://<hostname>:7077 --executor-cores=1 --total-executor-cores 1

# Check which worker the executor runs on and then kill the worker.
$ kill <worker pid>

With the procedure above, we will expect that the executor is re-scheduled on the other worker but it won't.
The reason seems that Master.schedule cannot be called after the worker is marked as WorkerState.DEAD.
So, the solution this PR proposes is to call Master.schedule whenever Master.removeWorker is called.
This PR also fixes an issue that ExecutorRunner can send ExecutorStateChanged message without changing its state.
This issue causes assertion error.
2021-08-13 14:05:37,991 [dispatcher-event-loop-9] ERROR: Ignoring errorjava.lang.AssertionError: assertion failed: executor 0 state transfer from RUNNING to RUNNING is illegal

Why are the changes needed?

It's a critical bug.
Does this PR introduce any user-facing change?

No.
How was this patch tested?

Manually tested with the procedure shown above and confirmed the executor is re-scheduled.

Test build #142717 has started for PR 33818 at commit 256b285.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/47217/

Kubernetes integration test status failure
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/47217/

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/47217/

Test build #142717 has finished for PR 33818 at commit 256b285.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/142717/

Thanks all. Merged to master, branch-3.2, branch-3.1 and branch-3.0.


Very small 2D label boxes in dataset

Hi,
While analyzing the 2D camera data I found out that there are many labels that are very small (1 or 2 pixels of height or width). I though it was a mistake on my data processing, but I seem to find many random small boxes in images that should not be there. I attach some examples in which it can be seen both the image with all labels, and also the image with only the problematic small red box. Could you please confirm if these labels are wrong?
Thank you

I do not really see a problem in the examples above.  Those small boxes are indeed for objects that are far away or partially occluded if you look at image closely.

Thank you for reaching out!
I also do not see any issues with the attached example images. The bounding boxes in these images look correct to me. Note that our bounding boxes only capture the visible parts of the objects. In contrast to this, amodal bounding boxes include the occluded parts of the objects.
From our labeling specifications: "2D bounding boxes are drawn as tightly as possible around objects in the camera images, and capture all visible parts of the object. The boxes only capture the visible parts of the object, and do not try to estimate the extent of a partially occluded object."

Thank you for your comments. Sorry to insist, maybe in the pictures it was not clear in the pictures the places I was pointing to. I may be wrong but in these pictures, there are small red "dots" that are labels just pointing to a wall, the road, a mountain, etc. I hope now it is more clear.

Thank you for your follow-up message! Would you be able to provide the name of a segment (with affected frame numbers, if possible) in which you see such spurious bounding boxes? I can then take a closer look. Thank you!

I don't have the number for the above figures, but I include some more examples with references to their context_name and frame_timestamp_micros. The camera number is displayed in the images. Thanks @henrikkretzschmar
Context:<PHONE_NUMBER>1949427452_3645_350_3665_350
Frame:<PHONE_NUMBER>315425

Context:17790754307864212354_1520_000_1540_000
Frame:<PHONE_NUMBER>365181

Context:<PHONE_NUMBER>2976940738_2219_229_2239_229
Frame:<PHONE_NUMBER>093432

How to extract these 2D boxes?

Hi @carranza96,
Thanks again for providing those example images! I was able to identify those tiny boxes in our data. It looks like they may be caused by an issue in our tools. We are now looking into a possible fix. In the meantime, maybe you could try filtering them out as you train your models?
Thanks,
Henrik

Hi @henrikkretzschmar. I'm glad it helped.
What do you think would be a reasonable threshold? Something like a minimum area of an object to be detectable in these images would be helpful

@carranza96, this may depend on the detector. You can probably safely filter out any boxes that span just a few pixels for which your model would not be able to predict anything meaningful even if there was a real object. I have not conducted any experiments on this, though.


updated project dependencies to use jvm sdk 1.0.0 and updated readme

@mht-dotsource can you please mention me if I need to review a pull request or assign me if possible?

@schleichardt pls review the pull request


GetTextRange wide character inconsistency

Describe the bug
The length parameter of the GetTextRange method is not consistent with the TextLength property and other length/positional properties of Scintilla.NET.
To Reproduce
var text = "😁😁😁";
Assert.AreEqual(6, text.Length); // Succeeds, because each 😁 is 2 characters wide
Assert.AreEqual("😁", text.Substring(0, 2)); // Succeeds

scintilla1.Text = text;
Assert.AreEqual(6, scintilla1.TextLength); // Succeeds
Assert.AreEqual(6, scintilla1.Lines[0].EndPosition); // Succeeds
Assert.AreEqual("😁", scintilla1.GetTextRange(0, 2)); // Fails, as GetTextRange returns "😁😁"

Expected behavior
GetTextRange should have consistent behavior with the other length/position properties and methods of Scintilla.NET. The inconsistency is illustrated above. Alternatively, there should be another method or an optional parameter that lets us specify how wide characters should be handled.

Hi,
Thanks for reporting this and 👍for the sample code.

@otykier do you still reproduce this behavior?  My initial test of the sample provided was returning true for GetTextRange.

Unfortunately, the issue persists. Just tested now with <IP_ADDRESS>. Take a look at the attached sample project.
In these examples, we use the scintilla.SelectionStart and scintilla.SelectionEnd property to determine the range of the selection.
When selecting a character before the wide char (emoji), everything is good, and string.Substring, scintilla.GetTextRange and scintilla.SelectedText returns the same result:

Selecting the wide char, scintilla.GetTextRange now returns a different string than string.Substring or scintilla.SelectedText:

And finally, if we go beyond the wide char, we get an exception if we try to use scintilla.GetTextRange:

I'm not sure if this is an issue in the native Scintilla control, or in the Scintilla.NET wrapper. But the main issue, as far as I can tell, is that there is inconsistency between how wide characters are counted. In a .NET string, they should be counted as 2 characters, and that is also what scintilla.SelectionStart and scintilla.SelectionEnd does (as seen from the screenshots above). But other methods, such as scintilla.GetTextRange seem to only count wide characters as a single character.
WinFormsApp1.zip

That does repro, I'll see what I can find out.  Thank you for the report!

There are two things to discuss here, because your examples are different.

Your first example is:

var text = "😁😁😁";
scintilla1.Text = text;
Assert.AreEqual("😁", scintilla1.GetTextRange(0, 2)); // Fails, as GetTextRange returns "😁😁"
In my opinion, that should fail.  Keep in mind, position and length args for GetTextRange are character based as far as I can tell:
/// The zero-based starting character position of the range to get.
/// The number of characters to get.
So you are asking GetTextRange to return 2 characters starting from the beginning of the line.  Which it does and two emoji's are not equal to 1 emoji.

Your second example does seem to show a bug that appears to be coming from CharToBytePosition, which was getting too many characters for the end byte position in GetTextRange.  Which seems to be why the extra characters and exception were happening in your sample.

I'm testing a fix that sets the code page when the line has multibyte characters.  It seems to work but I want to play with it a little bit more since this function has 63 references and as far as I can tell hasn't been touched since 2015.

In my opinion, that should fail. Keep in mind, position and length args for GetTextRange are character based as far as I can tell:
name="position">The zero-based starting character position of the range to get.
name="length">The number of characters to get.
So you are asking GetTextRange to return 2 characters starting from the beginning of the line. Which it does and two emoji's are not equal to 1 emoji.

The issue here is the inconsistency between methods like GetTextRange and TextLength. Since TextLength returns 6 for the string "😁😁😁", one would assume that calling GetTextRange(0, 6) would produce a valid result, but it doesn't.
But thanks a lot for looking into this. I realize this is a tough not to crack, and I have no idea if the issue originates in the native Scintilla codebase, or in the .NET wrapper.

Fair enough, it is inconsistent.  So using Selection based ranges is more of the user scenario you are trying to solve and not handing the function a number?

I'm leaning towards not changing anything here because it seems like it is intentional to work this way.  It is not consistent per se, but I'm seeing these as two different tools for two different types of jobs.

If you want to use a selection based range from the control, then use the SelectedText example similar to what you provided in your repro sample.
If you want to get a literal number of visible characters outside of the selection, then GetTextRange seems like it will be the better option.

What is the scenario you are trying to solve for with this sample repro?

try version <IP_ADDRESS> and see if GetTextRange works the way you are expecting

This fix in #111 introduces a new fix for this issue...adding a new function "GetWideTextRange" instead of using "GetTextRange" if you want to include wide characters in a get text style function.

[heart]         Daniel Otykier reacted to your message:

From: Brandon Desjarlais @.>
Sent: Tuesday, February 27, 2024 9:24:33 PM
To: desjarlais/Scintilla.NET @.>
Cc: Daniel Otykier @.>; Mention @.>
Subject: Re: [desjarlais/Scintilla.NET] GetTextRange wide character inconsistency (Issue #65)
This fix in #111https://github.com/desjarlais/Scintilla.NET/issues/111 introduces a new fix for this issue...adding a new function "GetWideTextRange" instead of using "GetTextRange" if you want to include wide characters in a get text style function.
—
Reply to this email directly, view it on GitHubhttps://github.com/desjarlais/Scintilla.NET/issues/65#issuecomment-1967616223, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ACEPOSAN5GAKN24EUK4OOMTYVZFJDAVCNFSM6AAAAAAWJDYHTOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNRXGYYTMMRSGM.
You are receiving this because you were mentioned.Message ID: @.***>

That’s great, thanks a lot!


Add better lock support using sys calls

fixes #409
Uses sys calls over file locking.

should fix it as it has sustained multiple tests

Awesome! Let me run a few more and check the code :+1:

That's great, I often had issues with old signatures.json lock file!


Allow nested namespace in copypaste

$ copypaste --namespace "myproject::utils" /path/to/myproject/myproject/utils/

Where is it currently failing?

Oh, I see: namespace myproject::utils {


Don't impose colon on prompt format

I'm porting an old cli app to rust, and dialoguer has mostly been great, except for this:
Enter a number, or\n[V]iew, [D]iff, [C]ancel\n> should render in a very straightforward fashion. I want the newlines to break up the user's options, and give them some visual clarity. I don't want the final prompt to render like this:
[V]iew, [D]iff, [C]ancel

> :

but it turns out that colon is hardcoded in dialoguer.theme.format_input_prompt. Why? I needed a crate (and am extremely grateful for it) to deal with all the stdin misery. I didn't expect it to make me rethink my interface.

Upvoting. Please add this feature.

I agree, this would be a great feature to have in the crate. However, in the meantime, here's a workaround I used in my own project. You may need to override more methods if you use other types of input
use std::fmt;
use dialoguer::theme::Theme;

pub struct MyTheme;

impl Theme for MyTheme {
    /// Formats a prompt.
    fn format_prompt(&self, f: &mut dyn fmt::Write, prompt: &str) -> fmt::Result {
        write!(f, "{prompt}")
    }

    /// Formats an input prompt.
    fn format_input_prompt(
        &self,
        f: &mut dyn fmt::Write,
        prompt: &str,
        default: Option<&str>,
    ) -> fmt::Result {
        match default {
            Some(default) => write!(f, "[{default}] {prompt}"),
            None => write!(f, "{prompt} "),
        }
    }

    /// Formats an input prompt after selection.
    fn format_input_prompt_selection(
        &self,
        f: &mut dyn fmt::Write,
        prompt: &str,
        selection: &str,
    ) -> fmt::Result {
        write!(f, "{prompt} {selection}")
    }
}

fn main() {
  let response = dialoguer::Input::with_theme(&MyTheme).with_prompt(">").interact().unwrap();
}

Upvoting too


Create decorated response interface

Created an interface for the decorated response object so that you can type hint slim controller actions to the interface, rather than the class, creating consistency within the action type-hint and to follow dependency inversion

Coverage remained the same at 100.0% when pulling 8e7d1af463c7c6f7b03987c237387c91846f5c35 on mporam:decorated-response-interface into 9f8e2736fa85b821acb778fb6576e4acee21e1bc on slimphp:master.


Composer dependency abandoned

Composer.json:
"white-frame/dynatable": "5.2.0"
Error:
Package white-frame/white-frame is abandoned, you should avoid using it. Use white-frame/framework instead.
https://packagist.org/packages/white-frame/dynatable
Requires:

php: >=5.5.9
illuminate/support: 5.2.*
white-frame/white-frame: 5.2.*

See https://github.com/white-frame/dynatable/issues/9#issuecomment-244908083


Handle errors when prometheus is unavailable or kepler metrics missing

Will come back to this after the carbon hack presentation


Implement deterministic shuffling

This adds an overload of the shuffle() method on sequences that takes
an explicit Random source.
Fix: https://github.com/vavr-io/vavr/issues/1318

Thank you! 😊

Thanks, great work! 👍

You caught me at a good time. :smile:


Shaved 7mb off published package size

Right now running npm install webfontloader leads to 7mb of extra stuff (e.g. closure compiler) being downloaded. With this PR only webfontloader.js and the license/readme/changelog will be included.

This is great, thanks a lot for making this change.


Json download link not working

Visualize Data
Data can either be generated from the raw datasets or the processed data (JSON files containing tracks) which can be downloaded from here.
The above link is not working
These two JSON files should be placed inside the /data folder (create the folder if not present already).
Afterwards use trainer.data.vis_gen() to visualize the data. Set the required dataset from the code. Also fix the paths

Have you got the json files?


Newsletter 194 cjdns entry fixups

fix link to the doc (from jonatack/bitcoin to bitcoin/bitcoin, and to a commit that includes the update merged yesterday)
add a second pull merged yesterday that covers the most frequent issue users have been running into
maybe remove link to anonymity networks section (cjdns is an fc00::/8 reserved IPv6 range overlay network with e2e encryption but does not hide the sender and the recipient from intermediate routers)

Happy to update or drop some of these, per feedback.

Thakns for the PR, @jonatack, Added a small change to fix build error.


Resolve ProcedureKitCloud compilation issues with Xcode 8.2 beta 2

Xcode 8.2 beta 2 (8C30a) changed several of the CKOperation (and subclasses') property/block types slightly. Make these associatedtypes so they work on both Xcode 8.2 beta 2 and earlier versions of Xcode 8.

@danthorpe:
Some network tests failed in the first run. Will dig into them in a separate PR:
[18:25:34]: ▸ Failing tests:
[18:25:34]: ▸ -[NetworkProcedureTests test__waits_for_reachability_change_before_retrying()]
[18:25:34]: ▸ -[NetworkReachabilityWaitProcedureTests test__procedure_waits_until_network_is_reachable()]
[18:25:34]: ▸ -[ReachabilityManagerTests test__when_connected_block_is_run()]
[18:25:34]: ▸ ** TEST FAILED **


Create Requirements document

Create a document detailing the requirements of the system and its scope.

[x] Read the repo README.md.
[x] Create SMART requirements Priority from Low (1) to High (3)
[x] Make an Excel spreadsheet containing the SMART requirements and upload to wiki
[x] Provide an overview and scope of the project

Moved the benchmarking and time series research to their own issue tickets.

Requirements reviewed - No issues, looks good.


:construction_worker:  set permissions for all gha workflows

Description

Checklist

[ ] My changes follow the contributing guidelines of this project.
[ ] I have performed a self-review of my code.
[ ] I have made corresponding changes to the documentation.
[ ] I have added tests that prove my fix is effective or that my changes work.
[ ] New and existing unit tests pass locally with my changes.

coverage: 95.397%. remained the same when pulling 84cfcde2d6415f8b2f55d264aa19acf47c9740e1 on chore/security-gha-permissions into 2c88eebda8a8701947b4ad21f24d995242d8aedc on main.


Release Google.Cloud.Speech.V1P1Beta1 version 3.0.0-beta02

Changes in this release:
New features

Added new fields to facilitate debugging (commit 915f69d)

Created release for Google.Cloud.Speech.V1P1Beta1-3.0.0-beta02


upgrade version and match environment with 14.x

Codecov Report
Patch and project coverage have no change.

Comparison is base (1bcd4ea) 95.36% compared to head (07a2cbe) 95.36%.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #134   +/-   ##
=======================================
  Coverage   95.36%   95.36%
=======================================
  Files          26       26
  Lines         907      907
=======================================
  Hits          865      865
  Misses         42       42

Flag
Coverage Δ

unittests
95.36% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


LOGO Overflow

Describe the bug
The Logo of the webpage overflows when the height of navbar changes for mobile view. I would like to fix it. Here is screenshot for the same.

Expected behaviour
The logo will be perfectly aligned to fit all screen sizes.
Screenshots

Additional context
I request you to assign me this issue.
Code of Conduct

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

Please assign me this issue

please assign me this issue @amanjaiman1


Revert "Fix REPL representation bug"

Reverts source-academy/frontend#2262
This PR introduced a bug in the stepper, let's revert this commit first and reopen the issue. Perhaps the next stepper team can take a look at that.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

9 of 16 (56.25%)  changed or added relevant lines in 3 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.02%) to 34.454%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/commons/repl/Repl.tsx
4
5
80.0%

src/commons/sideContent/SideContentTestcaseCard.tsx
4
5
80.0%

src/commons/sideContent/githubAssessments/SideContentEditableTestcaseCard.tsx
1
6
16.67%

Totals

Change from base Build<PHONE_NUMBER>:
0.02%

Covered Lines:
4589

Relevant Lines:
12390

💛  - Coveralls

Closing in favor of #2305


Warning of duplicated imports "useTrackEvent"

Environment
"@nuxtjs/plausible": "^1.0.2",
"nuxt": "^3.12.4",
"nuxt-gtag": "^2.1.0",

Reproduction
pnpm dev
Describe the bug

[10:18:37]  WARN  Duplicated imports "useTrackEvent", the one from "/Users/bean/Projects/GitHub/HADB/hadb.me/node_modules/.pnpm/@nuxtjs+plausible@1.0.2_magicast@0.3.4_rollup@4.19.1/node_modules/@nuxtjs/plausible/dist/runtime/composables/useTrackEvent" has been ignored and "/Users/bean/Projects/GitHub/HADB/hadb.me/node_modules/.pnpm/nuxt-gtag@2.1.0_magicast<EMAIL_ADDRESS>is used

✔ Vite client built in 28ms                                                                                10:18:38

[10:18:38]  WARN  Duplicated imports "useTrackEvent", the one from "/Users/bean/Projects/GitHub/HADB/hadb.me/node_modules/.pnpm/@nuxtjs+plausible@1.0.2_magicast@0.3.4_rollup@4.19.1/node_modules/@nuxtjs/plausible/dist/runtime/composables/useTrackEvent" has been ignored and "/Users/bean/Projects/GitHub/HADB/hadb.me/node_modules/.pnpm/nuxt-gtag@2.1.0_magicast<EMAIL_ADDRESS>is used

✔ Vite server built in 1081ms                                                                                10:18:39

[10:18:56]  WARN  Duplicated imports "useTrackEvent", the one from "/Users/bean/Projects/GitHub/HADB/hadb.me/node_modules/.pnpm/@nuxtjs+plausible@1.0.2_magicast@0.3.4_rollup@4.19.1/node_modules/@nuxtjs/plausible/dist/runtime/composables/useTrackEvent" has been ignored and "/Users/bean/Projects/GitHub/HADB/hadb.me/node_modules/.pnpm/nuxt-gtag@2.1.0_magicast<EMAIL_ADDRESS>is used

Additional context
No response
Logs
No response

You're right, the warnings appear if you have actually configured to use both in the modules nuxt configuration. If you choose to compare the libraries, but only need one at build time, I'd recommend removing the other from your modules, as this will also reduce the bundle size.
In my opinion, this is intentional. Using both tracking libraries together feels like an edge case. Depending on which one is needed for manual event tracking, you can put the module that should provide the useTrackEvent composable at a higher position in the modules array.
Close this as not intended. This is only a warning and won't break your code. 🙂


Backup of RWO volumes used by Pods fails

Description
I have a stuck backup job and I think this is because it tries to backup a RWO volume in the wrong Node.
On the backup Pod I see the following Event:
Multi-Attach error for volume "pvc-0df4196b-7261-425d-bee0-0e74d466a216" Volume is already used by pod(s) gitlab-postgresql-0

The backup Pod is scheduled on my node test-v2-01, the Pod which has the volume mounted is running on Node test-v2-02.
Additional Context
The volume is based on Rook Ceph and a volume in RWO mode.
I started to see the issue after switching over from plain local volumes. So far I only saw this during a bootstrap from scratch, have to observe how it behaves over time in the running cluster.
Logs
No response
Expected Behavior
The backup Pod should be scheduled on the correct Pod so that it can mount the Volume and perform the backup.
I am not sure if there could be a race condition, e.g. k8up decided where to put the backup Pod, the other Pod which uses the Volume starting right after this and k8up then using the outdated data.
Steps To Reproduce
Did not yet find out how to reproduce this reliably. So far I see this problem after a bootstrap of my setup from scratch, this means fresh machines, fresh Kubernetes and then a fresh deployment of everything based on Flux.
Version of K8up
v2.10.0
Version of Kubernetes
v1.30.1+k0s
Distribution of Kubernetes
k0s

Hi @johbo
Thanks for opening the issue.
Is it possible that the pod was restarted right after the backup started? K8up determines what pod is running on what node before creating the jobs. If the pod gets restarted and scheduled to a new node, it can happen that this doesn't match anymore.

Yes, I think this could be the cause of the issue. I've not yet had a chance to look into the k8up code.
Based on your hint I think this could explain it though. During bootstrap I have a few things happening in a sequence which could lead to this problem if I understand you correctly:

Create the volume (Deploy PVC)
Restore data into the Volume via a Job
Wait for the restore Job to complete
Deploy the application

Now I think that the Schedule object is deployed already early into the namespace. K8up could then trigger a backup based on the restore Job's Pod and once the application is deployed it could end up in the situation that the application's Pod is on a different Node.
I think for bootstrapping my setup I can workaround this by delaying the deployment of the backup Schedule.
There might be still a minor problem due to a possible race condition if a Pod restarted and k8up now has the "wrong" Node.

Did observe the situation a little longer and I saw more Jobs piling up, so my assumption that this might be caused by my bootstrapping procedure is probably wrong.
Think I found the code here: https://github.com/k8up-io/k8up/blob/1e7871c51b1a4e1647033fd54847fbecd495f525/operator/backupcontroller/executor.go#L62
Think I have to switch on more verbose logging to see what happens.
From reading the code I have the assumption that Pods with the status "Completed" will not be filtered out in the list. In my setup I do have a few of those who refer to the PVC.

Interesting. But AFAIK a pod in state "completed" should release its lock on the PVC. So K8up should be able to mount it.
Did you see multi-attach errors referencing already completed pods?

I think that I found the cause, currently testing the change in this PR: https://github.com/k8up-io/k8up/pull/979
It seems that there is a catch with RWO Volumes, they are not always bound to a specific Node. I've seen this issue when I switched my setup to use Rook Ceph to provide the RWO Volumes. This means the Volume is not bound to a specific Node anymore. If I now have a Job using the Volume being scheduled on Node 1 and then after it finished another Pod being scheduled on Node 2, then k8up can get a hiccup if the Pods of the first Job are still there in status "Completed" it seems.
I'll try to add a test case this evening into the PR, this should describe the problem more precisely.

I am closing the issue now. Have the change from PR https://github.com/k8up-io/k8up/pull/979 running since a few days and the problem is gone.


AOS element appearing when page is loaded

Hello, I am creating a custom wordpress theme. I enqueue aos.css and aos.js files in the head.
I wrote this code in my js file:
import AOS from 'aos';
jQuery(window).load(function () {
AOS.init();
let scrollRef = 0;
window.addEventListener('scroll', function () {
// increase value up to 10, then refresh AOS
scrollRef <= 10 ? scrollRef++ : AOS.refresh();
})
});
Before when the website was static and not in wordpress everything was working fine, but now the elements are animated one time when the page is loaded and not on scroll.
Does someone knoe how to fix the issue? Thank you in advance

I now figured it out. I was using AOS on SVG element and I read that on SVG is not working. I will use a div with inside the svg element


Covalent server returns HTTP 500 Internal Server Error when submitting a workflow

Environment

Covalent version:  0.106.0
Python version: 3.8.13
Operating system: Linux/MacOS

What is happening?
Covalent server returns HTTP 500 Internal Server Error when submitting a workflow, even while
other workflows can be submitted.
How can we reproduce the issue?
This is a rare event that occurs when a batch of workflows on the order of ~10-20 jobs have been submitted to the Covalent server and a new workflow is submitted in succession.
What should happen?
Covalent server should consistently be able to pick up submitted/resubmitted workflows and return useful debugging information that may arise from exceptions or validation errors.
Any suggestions?
No response

For 2 and 5, please link to the issues that are tracking these fixes.
For 3 and 4, are these things that can be fixed? Do we have a plan for them?

for 2 and 5 I want to come back to them after the switch to FastAPI, and after the db changes are integrated with the front-end.
for 3 and 4, they only occur when I'm testing using >500 users on my machine.

Feedback from @venkatBala :
database is locked is caused by multiple threads attempting to write to the DB concurrently. These may need to be queued.

One convincing theory from @venkatBala is that @wjcunningham7 sees the errors at ~500 workflows and @Emmanuel289 sees the errors at ~20 workflows because @wjcunningham7 server has much better specs. In order to close this we need to decide what threshold of of workflows must be supported on what type of machine, and ensure that it will run without error.

@scottwn I think we should publish expected behavior for standard user configs, e.g., 4cores/8GB, 8cores/16GB for now.  Would also be nice to identify the minimal specs to run Covalent as 1 user.  We can use VMs to test whether these errors appear on these servers for certain workloads, e.g., X concurrent users with 1 workflow, or batches of Y workflows from 1 user.  Ideal output is a few configurations for using Covalent that we can add to the docs.

I did a retrial on my 8-core, 32GB mac with Covalent v135.0,  dispatching up to 27 jobs in succession with workflows containing O(100) electrons and I did not get the original 500 error. However, the UI froze indefinitely and the db became locked.

Does this still happen?


Add unique class to action modal windows

This PR adds a unique class to action modal windows, allowing individual modals to be targeted via CSS. This is helpful when trying to match the styling of a specific modal to iFramed content (eg. Stripe forms).
Solves: https://x.com/binaryfire/status/1773133588709413339?s=20
Results:
Action::make('addPost')

/* theme.css */

.fi-modal-window-add-post {
    @apply !bg-blue-500;
    @apply dark:!bg-blue-500;
}

Can we please not leak the concept of "action-name" outside of the actions package, please replace this arg with modal-window-class or something which can pass through the entire class string to the modal

@danharrin Done. Also moved the class name logic to CanOpenModal

What about making this more generic?
Something like extraModalWindowAttributes.
I don't like using something specifically for classes as we also don't do this in most other places.
By the way, have you tried using CSS with :has(iframe), @binaryfire?
Not sure if we should add a class to all modals if it's only needed in very select cases, @danharrin.

If I understand correctly the name of an action should be unique (within each component).
So, if I want three red modals, I have to create three separate css definitions for the same thing?
If this is the case, I would like to suggest the following;

protected string | Closure | null $modalWindowClass = null;

public function modalWindowClass(string | Closure | null $classes = null): static
{
    $this->modalWindowClass = $classes;

    return $this;
}

public function getModalWindowClass(): string
{
    if($this->modalWindowClass) {
        return $this-evaluate($this->modalWindowClass);
    }
    return 'fi-modal-window-' . str($this->getName())->camel()->kebab();
}

Hi @zepfietje.
The iframe was just one example - there have been several times I've wanted to change the styling of specific modals without iframes too (similar to @tanthammar). This is especially common when you're integrating actions into a public website instead of an admin panel
Resource pages automatically get a fi-resource-{resource name} class - this PR is aiming to do something similar for modals. That seems a lot cleaner to me than using CSS selectors
I think it makes sense to do something similar for modals. Feels a lot cleaner to me than
To apply the same styling to multiple modals you could do this:
.fi-modal-window-add-post,
.fi-modal-window-add-tag {
    @apply !bg-blue-500;
    @apply dark:!bg-blue-500;
}

Also, you can create a single css block that targets multiple classes, so that's still a clean way

Ignore the last comment... it got posted before I finished writing it!
@zepfietje The iframe was just one example - there have been several times I've wanted to change the styling of specific modals without iframes too (similar to @tanthammar). This is especially common when integrating actions into a public website instead of an admin panel. Websites use modals will many different styles and I need a way of allowing users to style these dynamically (using values stored in the db). That's only possible with a predictable selector.
Resource pages automatically get a fi-resource-{resource name} class. This PR is aiming to do something similar for modals. That seems a lot cleaner to me than using CSS selectors (which will have to be written differently each time depending on the modal content). Modals feel like a bit of a second class citizen to me with respect to CSS. They're anonymous and don't "belong" to the action that triggered them. There's a clean way to customize the action button, but not what it displays.
@tanthammar To apply the same styling to multiple modals you could do this:
.fi-modal-window-add-post,
.fi-modal-window-add-tag {
    @apply !bg-blue-500;
    @apply dark:!bg-blue-500;
}

I agree that extraModalAttributes would be cool, but I feel like that should be in addition to this class. Similar to how pages have both extraBodyAttrbutes and a fi-resource-{resource name} class

I would be open to add extraModalWindowAttributes() to the class, seems like a worthwhile addition. We can remove any autogenerating class names and let the user decide which class names they want to add.

I would be open to add extraModalWindowAttributes() to the class, seems like a worthwhile addition. We can remove any autogenerating class names and let the user decide which class names they want to add.

That is the most fitting suggestion, as it follows other Filament components pattern.
But, I assume that the position where the attributes are inserted cannot be in blade @class([]) as it is now?
@binaryfire "The header and footer divs don't have bg classes of their own"
Sticky header/footer both have bg-white dark:bg-gray-900

I refactored to extraModalAttributes, which adds attributes directly to the modal container. I think that's better because you can alter the overlay now too. And it simplifies the class and method names.
Here's an example of the kind of slick, modern modal styles you can create:
.my-modal-window {
    @apply !bg-red-500;

    .fi-modal-content {
        @apply !bg-blue-500;
    }

    .fi-modal-header, .fi-modal-footer {
        @apply !bg-green-500;
    }

    input {
        @apply !bg-yellow-500;
    }
}

I would be open to add extraModalWindowAttributes() to the class, seems like a worthwhile addition. We can remove any autogenerating class names and let the user decide which class names they want to add.

Yeah this is exactly what I would propose. Modals just feel a little different in this regard when comparing to resource page CSS classes.

Ok I've refactored to extraModalWindowAttributes. The attributes are added to the modal window now instead of the modal container.

Thanks


ModernWindow not being destroyed when going "Back"

First time with C# and WPF w/ ModernUI Framework. Thank you guys for the hard work.
I'm trying to understand how I would properly initialize another ModernWindow as well as destroy the object when the back arrow is clicked. The window loads fine but going back doesn't destroy the object. Do I have to handle a close event somewhere to properly dispose of it?
public void navigateMediaSelection(object sender, RoutedEventArgs e)
{
    ModernWindow window = new ModernWindow();

    try
    {
        window.LinkNavigator.Navigate(new Uri("/Pages/MediaView/MovieView.xaml", UriKind.Relative), this);
    }
    catch (Exception error)
    {
        ModernDialog.ShowMessage(error.Message, FirstFloor.ModernUI.Resources.NavigationFailed, MessageBoxButton.OK);
    }
}

Also, I am trying to figure out how to change the DisplayName property that is set in MainWindow.xaml. I have a Link that would be better if it was bound to a variable since the page title will change.
Thank you

My application uses Microsoft.Office.Interop.Excel services to open and read an Excel file.  I need to close Excel and dispose of the objects.  I've implemented IDispose on view model and the page, but they never fire.  I've tried SessionEnding on the App, but it is never called when closing the application.  I can't find any reference to my page object in the Exit event which is triggered.  Do I need to intercept the navigation URIs?

I found that I can add it to the UserControl_Unloaded() event.  It doesn't fire until the application is actually closing, but it will fire for the opened window.

@bobthiele I figured out what the problem was. I am not home at the moment but when I am later, I will post the alternative code.
I was creating the wrong Window class. IIRC, you are suppose to initialize a new window class with BBCodeBlock.

@bobthiele Also, don't expect help from this GitHub. It appears the repository is dead and there are no active developers for it.

Hey @feered can you post your alternative code? I have a problem with disposing viewmodels even in ModernTab when element is set to be not KeepAlive.
Thanks!


Feature econtext - Internal Review

WORK IN PROGRESS
Creating PR now for early review
DONE

Remote tests seem to work OK.
Need to review output on the admin console
Unit tests
Inline comments/documentation for usage of Gateway

TODO
Confirm with ECONTEXT :
Store

'retokURL' => 'http://www.example.com'

ECONTEXT seems to provide it's own card entry UI, which we will not use. Safe to provide dummy data in this parameter

'retngURL' => 'http://www.example.com'

ECONTEXT seems to provide it's own card entry UI, which we will not use. Safe to provide dummy data in this parameter

'ordAmount'

Store seems to require this parameter being set (needed for request to be correct format). Does the value actually get used?

Store, Purchase, Auth

post['Language'] = 1 # 0 Japanese 1 English

What is this language setting for?

so far so good

Let me know if you've done todos!

@matsubo
Have 4 TODO's to address. Will email ECONTEXT.


Modal design improvements

Summary | Résumé
Some design updates to the base Dialog component and implementations.

Before
After

Looks like behind the Heading "Blocks" and the left column (padding) is still white.

Looks good just the one comment above.


[Fix][ST-29177] Issues with Special Characters ByteLength in SDK

Summary
Fix issues SDK unable to properly decode special character bytelengths
Completed Tasks

[x] install and use browser friendly buffer module to properly read body bytelength
[x] Minor code refactor

Support Ticket
ST-29177

LGTM 👍 Can you add a test as well?

Yeah sure 👍🏽


Solr date item.lastmodified of OAI-Index is wrong if local timezone has an offset to UTC

Describe the bug
When an item get's indexed in the OAI-Solr-Index the timezone information get's lost. This leads to a wrong date in the OAI index.
The reason is, that the databases timestamp with timezone gets transformed to a java.sql.Timestamp. That is when the timezone information get's lost. Later the XOAI solr date formatter adds a Z for Zulu time zone without knowing about the original timezone of the timestamp.
So this Database timestamp with timezone:
2022-10-27 10:07:43.934+02 becomes this java.sql.Timestamp:
2022-10-27 10:07:43.934 becomes this Solr date:
2022-10-27T10:07:43.934Z
Which means that the Solr date is 2 hours ahead of the Database timestamp (and wrong).
To prevent this I added this to the XOAI class:
if(lastChange != null) {
            lastChange = new Date(lastChange.getTime() - TimeZone.getDefault().getOffset(lastChange.getTime()));
        }
return lastChange;

at this line
This is not really a nice solution. I would be glad if someone would find a cleaner bug fix.
To Reproduce
Steps to reproduce the behavior:

Add a timestamp to the database that differs from UTC
Index the item using: $ JAVA_OPTS="-Xmx1024M -Xms1024M -Dfile.encoding=UTF-8" && [dspace-folder]/bin/dspace oai import
Compare timestamp in database with date of item.lastmodified in OAI-Index

Expected behavior
The timestamps should not differ between database and Solr Index

@christian-scheible : While I haven't tested it yet, a slightly better fix might be to use java.time.Instant when getting the current date/time on this line
It might be possible to just change that line to something like:
Date now = Date.from(Instant.now());

I'm not sure if that'll fix the problem or not, so definitely test it first.  But, I suspect the issue is with that new Date() which is probably grabbing the current date in local time instead of UTC.

@tdonohue. Thanks for your suggestion, but unfortunately this won't help in this case because now is not the date that gets returned. It's the date from item.getLastModified().

@tdonohue. Thanks for your suggestion, but unfortunately this won't help in this case because now is not the date that gets returned. It's the date from item.getLastModified().

I encountered this issue when our OAI indexing was reprocessing items for DSpace 7.5. I think the solution would be to set the UTC timezone for the SimpleDateFormatter in SolrUtils.getDateFormatter(). This method is used in other places and resulting in other cases where timezone information is lost (such as lastModified in the Solr search core). I'll try out the change and see if it resolves the problem.

@christian-scheible is right:  the problem is that a local date-time is going into the database as if it were "timestamp with time zone", which it is not.  Instant is just another type of local date-time, without zone information.  When it is subsequently cached in Solr, there is not enough information to convert it properly.
Probably we need a ZonedDateTime or the like, whose relationship to UTC is known, then the usual java.time gymnastics to convert that to a Date.  IIRC there are some examples in #8890.

@uofmsean: I didn't manually add the timestamp using SQL, but rather by modifying an item in the DSpace frontend. Therefore, all the date handling was done through DSpace code.

@christian-scheible, just to confirm, do you have the local timezone set for PostgreSQL and have you also tried "oai import" with -Duser.timezone=??? just to be sure? FYI, we're on DSpace 7.5 and using Java 11 and PostgreSQL 13.
I'm not seeing the same problem any more in our environment after I applied the fix I outlined above, and we are in the America/Winnipeg timezone so we're currently -5 hours from UTC. Without the fix, the SimpleDateFormat string will use the local default timezone to format the time, and this gets lost when it is put in Solr because the SOLR_DATE_FORMAT assumes you are formatting as UTC.

Hi @uofmsean,
I have tried and applied your fix, which resolves the issue of items not getting indexed after a change. However, the date in item.lastmodified is still incorrect in my case. It currently shows: 2023-06-26T09:16:33.664Z, but it should be: 2023-06-26T11:16:33.664Z.
All time zones on our servers (Solr, DSpace, database) are set to Europe/Berlin.

@uofmsean yes, I removed my change before trying your solution.

For anyone impacted by this bug, there's a PR created at #8984 by @uofmsean .   Additional testers welcome, as it'll help ensure this gets merged quickly!

Thanks @tdonohue for the comment and @uofmsean for the proposed PR.  I've tested the source code change and it's working well.  It resolves the issue for us 👍


samples: tfm: Enumerate more test variants

Some TFM samples run different test suites/cases based on
which configurations are set.
Enumerate more of these to ensure builds are OK,
and allow internal CI to run these on target.
Signed-off-by: Torstein Grindvik<EMAIL_ADDRESS>

@torsteingrindvik Is there anything that is specific to NCS in this commit? From what I can tell this looks fine to be sent upstream.

@torsteingrindvik Is there anything that is specific to NCS in this commit? From what I can tell this looks fine to be sent upstream.

Not really.
Will submit to upstream and change to [fromlist]

The following west manifest projects have been modified in this Pull Request:

Name
Old Revision
New Revision
Diff

psa-arch-tests
https://github.com/zephyrproject-rtos/psa-arch-tests/commit/a81f9da287569f169d60026916952641b233faa8 (master)
https://github.com/zephyrproject-rtos/psa-arch-tests/pull/5
zephyrproject-rtos/psa-arch-tests#5/files

Note: This message is automatically posted and updated by the Manifest GitHub Action.


Camera sample app does not work

I cannot see video when running camera example, I can see black screen instead.
There are no errors in console.
I tried it with electron 1.1.1 and 1.2.0 on Ubuntu 12.04.

It does not work when google chrome is already running on my PC. When I close my browser and start electron app everything goes just fine.


FCREPO-1965 : Use FedoraResource instead of Nodes

DO NOT MERGE AS IS.
This needs some serious review. Especially this straight string replace, it should be a prefix conversion, but I couldn't figure it out.
https://github.com/fcrepo4-exts/fcrepo-transform/compare/master...whikloj:FCREPO-1965?expand=1#diff-6d09d802d4f17432bf17d32194cd0de0R93
I am getting http://fedora.info/definitions/v4/repository#Resource but need fedora:Resource
https://jira.duraspace.org/browse/FCREPO-1965

You can also remove the BY_NAME field, it is no longer used: https://github.com/fcrepo4-exts/fcrepo-transform/compare/master...whikloj:FCREPO-1965?expand=1#diff-6d09d802d4f17432bf17d32194cd0de0L64

Closing for https://github.com/fcrepo4-exts/fcrepo-transform/pull/13 on DEV branch


Add autocomplete to GitlabRepoUrlPicker

Hey, I just made a Pull Request!
This is the code from #25842 with little adjustments. As the other one seemed stale, I opened a new PR.
:heavy_check_mark: Checklist

[x] A changeset describing the change and affected packages. (more info)
[ ] Added or updated documentation
[ ] Tests for new functionality and regression tests for bug fixes
[ ] Screenshots attached (for UI changes)
[x] All your commits have a Signed-off-by line in the message. (more info)

hi @benjdlambert can we merge this as a minor change anytime soon? Our organization would also benefit greatly from this feature.

@benjdlambert I think I updated all references to the data structure to include the id. Ideally, the availableRepos (here) would include the ID, too. Then, it could be used in templates directly. What is your take on it?

I'm not sure why the checks fail. When I run yarn build:api-reports plugins/scaffolder*, git detects no changes in the files.

@benjidotsh can you try out the bitbucket changes here to make sure things look good for you too?

@benjdlambert are there any tests specifically that should be performed? Is something else missing for this PR to be merged?

@swnia since you're also touching Bitbucket's implementation, I think @benjdlambert just wants to verify whether that still works.
I tried testing it out, but I'm struggling getting the code to work in my instance at all, probably due to a version mismatch.

Ok, I finally got it to work after merging the latest changes into this branch.
Looks good! ✅

@benjdlambert  can we merge this now that all checks are done?