Infinite Redirect with malformed Auth Service

Ambassador version
0.29.0
Failing Configuration
Considering the following authentication service:
---
apiVersion: ambassador/v0
kind:  AuthService
name:  authentication
auth_service: "extauth-service:8080"
path_prefix: "/ambassador/extauth/"

and the following mapping:
---
apiVersion: ambassador/v0
kind: Mapping
name: catch-all
prefix: /website
service: http://getambassador.io

When requesting the /website resource, the client will be continuously redirected.
ambassador output
AMBASSADOR: starting diagd
AMBASSADOR: starting Envoy
AMBASSADOR: waiting
PIDS: 9:diagd 10:envoy 11:kubewatch
ACCESS [2018-03-23T16:23:46.409Z] "GET /website/ HTTP/1.1" 301 - 0 0 6 3 "-" "PostmanRuntime/7.1.1" "f5e15c54-957e-4d08-a00c-22fb9e26c9dd" "<IP_ADDRESS>:80" "-"
ACCESS [2018-03-23T16:23:46.540Z] "GET /ambassador/extauth/website/ HTTP/1.1" 301 - 0 0 0 0 "-" "PostmanRuntime/7.1.1" "c19325b7-28c9-4fc2-a4d9-1d6df23f993f" "<IP_ADDRESS>:80" "-"
ACCESS [2018-03-23T16:23:46.664Z] "GET /ambassador/extauth/ambassador/extauth/website/ HTTP/1.1" 301 - 0 0 0 0 "-" "PostmanRuntime/7.1.1" "1de779ef-c57b-4e3b-a43c-1888e9d9c86b" "<IP_ADDRESS>:80" "-"
ACCESS [2018-03-23T16:23:46.784Z] "GET /ambassador/extauth/ambassador/extauth/ambassador/extauth/website/ HTTP/1.1" 301 - 0 0 0 0 "-" "PostmanRuntime/7.1.1" "b12fc0b1-8622-465c-b408-3e44479c8c65" "<IP_ADDRESS>:80" "-"
ACCESS [2018-03-23T16:23:46.907Z] "GET /ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/website/ HTTP/1.1" 301 - 0 0 0 0 "-" "PostmanRuntime/7.1.1" "9a9be481-5690-44dc-86c0-6a8d2e60be51" "<IP_ADDRESS>:80" "-"
ACCESS [2018-03-23T16:23:47.028Z] "GET /ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/website/ HTTP/1.1" 301 - 0 0 0 0 "-" "PostmanRuntime/7.1.1" "56be8180-d22c-4516-8740-e680182f372c" "<IP_ADDRESS>:80" "-"
ACCESS [2018-03-23T16:23:47.153Z] "GET /ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/website/ HTTP/1.1" 301 - 0 0 0 0 "-" "PostmanRuntime/7.1.1" "96544129-92aa-4a7d-a956-e9e2b8a1cad6" "<IP_ADDRESS>:80" "-"
ACCESS [2018-03-23T16:23:47.272Z] "GET /ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/website/ HTTP/1.1" 301 - 0 0 0 0 "-" "PostmanRuntime/7.1.1" "d1de5c6c-4db4-4147-9499-90157404bcf1" "<IP_ADDRESS>:80" "-"
ACCESS [2018-03-23T16:23:47.392Z] "GET /ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/website/ HTTP/1.1" 301 - 0 0 0 0 "-" "PostmanRuntime/7.1.1" "f03c83c3-d730-4e8b-b3d6-0be78049994b" "<IP_ADDRESS>:80" "-"
ACCESS [2018-03-23T16:23:47.516Z] "GET /ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/website/ HTTP/1.1" 301 - 0 0 0 0 "-" "PostmanRuntime/7.1.1" "b5115b3d-c5f8-403e-832e-d86df72d9df7" "<IP_ADDRESS>:80" "-"
ACCESS [2018-03-23T16:23:47.641Z] "GET /ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/website/ HTTP/1.1" 301 - 0 0 0 0 "-" "PostmanRuntime/7.1.1" "0f030aba-4b42-40e6-be03-391473938339" "<IP_ADDRESS>:80" "-"

authentication service HTTP access logs
<IP_ADDRESS> - - [23/Mar/2018:16:23:46 +0000] "GET /ambassador/extauth//website/ HTTP/1.1" 301 0 "" "PostmanRuntime/7.1.1"
<IP_ADDRESS> - - [23/Mar/2018:16:23:46 +0000] "GET /ambassador/extauth//ambassador/extauth/website/ HTTP/1.1" 301 0 "http://<IP_ADDRESS>:80/website/" "PostmanRuntime/7.1.1"
<IP_ADDRESS> - - [23/Mar/2018:16:23:46 +0000] "GET /ambassador/extauth//ambassador/extauth/ambassador/extauth/website/ HTTP/1.1" 301 0 "http://<IP_ADDRESS>:80/ambassador/extauth/website/" "PostmanRuntime/7.1.1"
<IP_ADDRESS> - - [23/Mar/2018:16:23:46 +0000] "GET /ambassador/extauth//ambassador/extauth/ambassador/extauth/ambassador/extauth/website/ HTTP/1.1" 301 0 "http://<IP_ADDRESS>:80/ambassador/extauth/ambassador/extauth/website/" "PostmanRuntime/7.1.1"
<IP_ADDRESS> - - [23/Mar/2018:16:23:46 +0000] "GET /ambassador/extauth//ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/website/ HTTP/1.1" 301 0 "http://<IP_ADDRESS>:80/ambassador/extauth/ambassador/extauth/ambassador/extauth/website/" "PostmanRuntime/7.1.1"
<IP_ADDRESS> - - [23/Mar/2018:16:23:47 +0000] "GET /ambassador/extauth//ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/website/ HTTP/1.1" 301 0 "http://<IP_ADDRESS>:80/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/website/" "PostmanRuntime/7.1.1"
<IP_ADDRESS> - - [23/Mar/2018:16:23:47 +0000] "GET /ambassador/extauth//ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/website/ HTTP/1.1" 301 0 "http://<IP_ADDRESS>:80/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/website/" "PostmanRuntime/7.1.1"
<IP_ADDRESS> - - [23/Mar/2018:16:23:47 +0000] "GET /ambassador/extauth//ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/website/ HTTP/1.1" 301 0 "http://<IP_ADDRESS>:80/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/website/" "PostmanRuntime/7.1.1"
<IP_ADDRESS> - - [23/Mar/2018:16:23:47 +0000] "GET /ambassador/extauth//ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/website/ HTTP/1.1" 301 0 "http://<IP_ADDRESS>:80/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/website/" "PostmanRuntime/7.1.1"
<IP_ADDRESS> - - [23/Mar/2018:16:23:47 +0000] "GET /ambassador/extauth//ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/website/ HTTP/1.1" 301 0 "http://<IP_ADDRESS>:80/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/website/" "PostmanRuntime/7.1.1"
<IP_ADDRESS> - - [23/Mar/2018:16:23:47 +0000] "GET /ambassador/extauth//ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/website/ HTTP/1.1" 301 0 "http://<IP_ADDRESS>:80/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/ambassador/extauth/website/" "PostmanRuntime/7.1.1

The fix
Remove the trailing slash from the auth service's path_prefix field

Functioning Debug Log (without trailing slash)
[2018-03-23 19:53:39.140][17][debug][main] source/server/connection_handler_impl.cc:195] [C133] new connection
 [2018-03-23 19:53:39.140][17][debug][http] source/common/http/conn_manager_impl.cc:181] [C133] new stream
 [2018-03-23 19:53:39.140][17][debug][http] source/common/http/conn_manager_impl.cc:439] [C133][S11756801222761169486] request headers complete (end_stream=true):
 [2018-03-23 19:53:39.140][17][debug][http] source/common/http/conn_manager_impl.cc:444] [C133][S11756801222761169486]   ':authority':'<IP_ADDRESS>'
 [2018-03-23 19:53:39.140][17][debug][http] source/common/http/conn_manager_impl.cc:444] [C133][S11756801222761169486]   'user-agent':'curl/7.47.0'
 [2018-03-23 19:53:39.140][17][debug][http] source/common/http/conn_manager_impl.cc:444] [C133][S11756801222761169486]   'accept':'*/*'
 [2018-03-23 19:53:39.140][17][debug][http] source/common/http/conn_manager_impl.cc:444] [C133][S11756801222761169486]   ':path':'/website/'
 [2018-03-23 19:53:39.140][17][debug][http] source/common/http/conn_manager_impl.cc:444] [C133][S11756801222761169486]   ':method':'GET'
 [2018-03-23 19:53:39.140][17][debug][router] source/common/router/router.cc:248] [C0][S282793012411271430] cluster 'cluster_ext_auth' match for URL '/ambassador/extauth/website/'
 [2018-03-23 19:53:39.140][17][debug][router] source/common/router/router.cc:293] [C0][S282793012411271430]   ':authority':'<IP_ADDRESS>'
 [2018-03-23 19:53:39.140][17][debug][router] source/common/router/router.cc:293] [C0][S282793012411271430]   'user-agent':'curl/7.47.0'
 [2018-03-23 19:53:39.140][17][debug][router] source/common/router/router.cc:293] [C0][S282793012411271430]   'accept':'*/*'
 [2018-03-23 19:53:39.140][17][debug][router] source/common/router/router.cc:293] [C0][S282793012411271430]   ':path':'/ambassador/extauth/website/'
 [2018-03-23 19:53:39.140][17][debug][router] source/common/router/router.cc:293] [C0][S282793012411271430]   ':method':'GET'
 [2018-03-23 19:53:39.140][17][debug][router] source/common/router/router.cc:293] [C0][S282793012411271430]   'x-forwarded-proto':'http'
 [2018-03-23 19:53:39.140][17][debug][router] source/common/router/router.cc:293] [C0][S282793012411271430]   'x-request-id':'ae9427bf-e868-438a-ab21-d55a62b8ecde'
 [2018-03-23 19:53:39.140][17][debug][router] source/common/router/router.cc:293] [C0][S282793012411271430]   'content-length':'0'
 [2018-03-23 19:53:39.140][17][debug][router] source/common/router/router.cc:293] [C0][S282793012411271430]   'x-ambassador-calltype':'extauth-request'
 [2018-03-23 19:53:39.140][17][debug][router] source/common/router/router.cc:293] [C0][S282793012411271430]   'x-envoy-internal':'true'
 [2018-03-23 19:53:39.140][17][debug][router] source/common/router/router.cc:293] [C0][S282793012411271430]   'x-forwarded-for':'<IP_ADDRESS>'
 [2018-03-23 19:53:39.140][17][debug][router] source/common/router/router.cc:293] [C0][S282793012411271430]   'x-envoy-expected-rq-timeout-ms':'5000'
 [2018-03-23 19:53:39.140][17][debug][router] source/common/router/router.cc:293] [C0][S282793012411271430]   ':scheme':'http'
 [2018-03-23 19:53:39.140][17][debug][pool] source/common/http/http1/conn_pool.cc:73] creating a new connection
 [2018-03-23 19:53:39.141][17][debug][client] source/common/http/codec_client.cc:23] [C134] connecting
 [2018-03-23 19:53:39.141][17][debug][connection] source/common/network/connection_impl.cc:499] [C134] connecting to <IP_ADDRESS>:8080
 [2018-03-23 19:53:39.141][17][debug][connection] source/common/network/connection_impl.cc:508] [C134] connection in progress
 [2018-03-23 19:53:39.141][17][debug][pool] source/common/http/http1/conn_pool.cc:99] queueing request due to no available connections
 [2018-03-23 19:53:39.141][17][debug][connection] source/common/network/connection_impl.cc:413] [C134] connected
 [2018-03-23 19:53:39.141][17][debug][client] source/common/http/codec_client.cc:52] [C134] connected
 [2018-03-23 19:53:39.141][17][debug][pool] source/common/http/http1/conn_pool.cc:225] [C134] attaching to next request
 [2018-03-23 19:53:39.141][17][debug][router] source/common/router/router.cc:923] [C0][S282793012411271430] pool ready
 [2018-03-23 19:53:39.141][17][debug][router] source/common/router/router.cc:573] [C0][S282793012411271430] upstream headers complete: end_stream=false
 [2018-03-23 19:53:39.141][17][debug][http] source/common/http/async_client_impl.cc:85] async http request response headers (end_stream=false):
 [2018-03-23 19:53:39.141][17][debug][http] source/common/http/async_client_impl.cc:88]   'date':'Fri, 23 Mar 2018 19:53:39 GMT'
 [2018-03-23 19:53:39.141][17][debug][http] source/common/http/async_client_impl.cc:88]   'content-length':'0'
 [2018-03-23 19:53:39.141][17][debug][http] source/common/http/async_client_impl.cc:88]   'content-type':'text/plain; charset=utf-8'
 [2018-03-23 19:53:39.141][17][debug][http] source/common/http/async_client_impl.cc:88]   ':status':'200'
 [2018-03-23 19:53:39.141][17][debug][http] source/common/http/async_client_impl.cc:88]   'x-envoy-upstream-service-time':'0'
 [2018-03-23 19:53:39.141][17][debug][client] source/common/http/codec_client.cc:81] [C134] response complete
 [2018-03-23 19:53:39.141][17][debug][filter] source/common/http/filter/extauth.cc:223] [C133][S11756801222761169486] ExtAuth accepting request
 [2018-03-23 19:53:39.141][17][debug][router] source/common/router/router.cc:248] [C133][S11756801222761169486] cluster 'cluster_http___prismatica_io' match for URL '/website/'
 [2018-03-23 19:53:39.141][17][debug][router] source/common/router/router.cc:293] [C133][S11756801222761169486]   ':authority':'<IP_ADDRESS>'
 [2018-03-23 19:53:39.141][17][debug][router] source/common/router/router.cc:293] [C133][S11756801222761169486]   'user-agent':'curl/7.47.0'
 [2018-03-23 19:53:39.141][17][debug][router] source/common/router/router.cc:293] [C133][S11756801222761169486]   'accept':'*/*'
 [2018-03-23 19:53:39.141][17][debug][router] source/common/router/router.cc:293] [C133][S11756801222761169486]   ':path':'//'
 [2018-03-23 19:53:39.141][17][debug][router] source/common/router/router.cc:293] [C133][S11756801222761169486]   ':method':'GET'
 [2018-03-23 19:53:39.141][17][debug][router] source/common/router/router.cc:293] [C133][S11756801222761169486]   'x-forwarded-proto':'http'
 [2018-03-23 19:53:39.141][17][debug][router] source/common/router/router.cc:293] [C133][S11756801222761169486]   'x-request-id':'ae9427bf-e868-438a-ab21-d55a62b8ecde'
 [2018-03-23 19:53:39.141][17][debug][router] source/common/router/router.cc:293] [C133][S11756801222761169486]   'x-envoy-expected-rq-timeout-ms':'3000'
 [2018-03-23 19:53:39.141][17][debug][router] source/common/router/router.cc:293] [C133][S11756801222761169486]   'x-envoy-original-path':'/website/'
 [2018-03-23 19:53:39.141][17][debug][router] source/common/router/router.cc:293] [C133][S11756801222761169486]   ':scheme':'http'
 [2018-03-23 19:53:39.141][17][debug][pool] source/common/http/http1/conn_pool.cc:73] creating a new connection
 [2018-03-23 19:53:39.142][17][debug][client] source/common/http/codec_client.cc:23] [C135] connecting
 [2018-03-23 19:53:39.142][17][debug][connection] source/common/network/connection_impl.cc:499] [C135] connecting to <IP_ADDRESS>:80
 [2018-03-23 19:53:39.142][17][debug][connection] source/common/network/connection_impl.cc:508] [C135] connection in progress
 [2018-03-23 19:53:39.142][17][debug][pool] source/common/http/http1/conn_pool.cc:99] queueing request due to no available connections
 [2018-03-23 19:53:39.142][17][debug][pool] source/common/http/http1/conn_pool.cc:200] [C134] response complete
 [2018-03-23 19:53:39.142][17][debug][pool] source/common/http/http1/conn_pool.cc:220] [C134] moving to ready
 [2018-03-23 19:53:39.216][17][debug][connection] source/common/network/connection_impl.cc:413] [C135] connected
 [2018-03-23 19:53:39.216][17][debug][client] source/common/http/codec_client.cc:52] [C135] connected
 [2018-03-23 19:53:39.216][17][debug][pool] source/common/http/http1/conn_pool.cc:225] [C135] attaching to next request
 [2018-03-23 19:53:39.216][17][debug][router] source/common/router/router.cc:923] [C133][S11756801222761169486] pool ready
 [2018-03-23 19:53:39.292][17][debug][router] source/comm
 [2018-03-23 19:53:39.292][17][debug][http] source/common/http/conn_manager_impl.cc:876] [C133][S11756801222761169486] encoding headers via codec (end_stream=false):
 [2018-03-23 19:53:39.292][17][debug][http] source/common/http/conn_manager_impl.cc:881] [C133][S11756801222761169486]   'server'
 [2018-03-23 19:53:39.292][17][debug][http] source/common/http/conn_manager_impl.cc:881] [C133][S11756801222761169486]   'date':
 [2018-03-23 19:53:39.292][17][debug][http] source/common/http/conn_manager_impl.cc:881] [C133][S11756801222761169486]   'content-type':'text/html; charset=utf-8'
 [2018-03-23 19:53:39.292][17][debug][http] source/common/http/conn_manager_impl
 [2018-03-23 19:53:39.292][17][debug][http] source/common/http/conn_manager_impl.cc:881] [C133][S11756801222761169486]   'vary':'Accept-Encoding'
 [2018-03-23 19:53:39.292][17][debug][http] source/common/http/conn_manager_impl.cc:881] [C133][S11756801222761169486]   'etag':'"590ba6fa-239c"'
 [2018-03-23 19:53:39.292][17][debug][http] sourc
 [2018-03-23 19:53:39.292][17][debug][http] source/common/http/conn_manager_impl.cc:881] [C133][S11756801222761169486]   'x-github-request-id':'A9CE:3B99:BF5F5BE:10558000:5AB55B43'
 [2018-03-23 19:53:39.292][17][debug][http] source/common/http/conn_manager_impl.cc:881] [C133][S11756801222761169486]   ':status':'404'
 [2018-03-23 19:53:39.292][17][debug][http] source/common/http/conn_manager_impl.cc:881] [C133][S11756801222761169486]   'x-envoy-upstream-service
 [2018-03-23 19:53:39.292][17][debug][client] source/common/http/codec_client.cc:81] [C135] response complete

Malfunctioning debug log (with trailing slash)
amb-broken.txt

After discussing with @kflynn, this appears to be the fact that my Gorillaframework's router has strictslashes turned on.
Closing in favor of a documentation-based PR


Repository - rename to componette/componette

I would like to rename repository to more appropriate name componette/componette.
There's big chance in the future, that we'll have for example componette.org domain or any other.
Do you agree?
@chemix @matej21

I'm fine with this

Thank you guys @chemix @milo and @mrtnzlml

Done


mini.completion: client.resolved_capabilities is deprecated in 0.8

Contributing guidelines

[X] I have read CONTRIBUTING.md
[X] I have read CODE_OF_CONDUCT.md
[X] I have updated 'mini.nvim' to latest version

Module(s)
mini.completion
Description
vim.lsp.client.resolved_capabilities property as used in https://github.com/echasnovski/mini.nvim/blob/ee7c02297cf95cba07f8bf8da3ecf99337a1c15e/lua/mini/completion.lua#L804 is deprecated as of nvim 0.8.
See https://github.com/neovim/neovim/issues/14090#issuecomment-1113956767
[LSP] Accessing client.resolved_capabilities is deprecated, update your plugins or configuration to access client.server_capabilities instead.The new key/value pairs in server_capabilities directly match those defined in the language server protocol

Neovim version
NVIM v0.8.0-dev+141-g55187de11
Steps to reproduce

Upgrade to nvim nightly
Enable mini.completion
Enter insert mode
A message is generated by nvim

My mini.completion configuration
             require("mini.completion").setup({
                 lsp_completion = {
                     source_func = "omnifunc",
                     auto_setup = false,
                     mappings = {
                         force_twostep = "<C-Space>",
                         force_fallback = "<S-Space>",
                     },
                 },
             })

Expected behavior
No warning message of deprecated API use
Actual behavior
Nvim generates a warning message when initially entering insert mode.
[LSP] Accessing client.resolved_capabilities is deprecated, update your plugins or configuration to access client.server_capabilities instead.The new key/value pairs in server_capabilities directly match those defined in the language server protocol

Thanks! I'll look into it.

Should work now on recent main without warnings. Thanks for noticing this!


Speed up application start time

Support fast startup for mountebank
Context
mountebank takes longer to start up than it used to, presumably because of the additional packages it now requires. I suspect the reason is that, by requiring each package in the global scope of each module, everything gets loaded at app start time, even though there are an increasing number of dependencies that may never be used in various use cases (JSON, XML, CSV, etc).
Implementation
I believe the fix will be going through the code and moving every require inside a function instead of the global scope for modules. Need to confirm that node properly caches require calls.
Acceptance Criteria
The result should include an automated test in the performanceTest directory that starts up mountebank N number of times (experiment with as large an N as is tolerable) and validates it's below some time threshold. Run the test before and after the change and report the results to ensure valid data.

Confirmed node's caching should take care of avoiding duplicate loading/parsing: https://nodejs.org/api/modules.html#modules_caching

Testing showed a 25-35% startup time reduction


Grinder of Grinders

allow users to launch multiple Grinders with JDK_VERSION x PLATFORM x
JDK_IMPL x SDK_RESOURCE (nightly/releases)
JDK_VERSION, PLATFORM, and JDK_IMPL value can be comma-separated
PLATFORM can set to all. The script will run test on the platforms
according to JDK_VERSION and JDK_IMPL

Signed-off-by: lanxia<EMAIL_ADDRESS>

JDK_VERSION
PLATFORM
JDK_IMPL
SDK_RESOURCE
Grinder
Comments

empty (deafult to 8)
x86-64_linux
empty (default openj9)
nightly
Grinder/10112/

8
x86-64_linux
hotspot
nightly
Grinder/10117/

8,11
x86-64_linux
openj9
nightly
Grinder/10121/
triggered 2 child builds:

8,11
x86-64_linux,  ppc64le_linux (with extra space in value)
openj9
nightly
Grinder/10124/
triggered 4 child builds:

8
x86-64_linux
hotspot,openj9
nightly
Grinder/10129/
triggered 2 child builds:

Test_openjdk11_j9_sanity.functional_x86-64_linux_personal/1062/

Going to ask for a review. Set as Draft for now, plan to merge after the release.

Change to WIP to resolve merge conflicts

PR updated. Grinder: https://ci.adoptopenjdk.net/job/Grinder/3969


[Bug]: Fix issue templates

Hey guys,
Just wanted to give you a heads-up that the issue templates are not working properly. I would love your help to fix it.
Best regards
NH

Fixed through a06e9b9

Broken through d6147c4


Add an image for 2.4.2?

Wanted to know if you are going to make an image for 2.4.2?
I see that you don't do branches or folders to represent each version but instead just update the image on master and tag so I'm not sure how much it'll make sense to do this tag but just asking.

I'm not inclined to do this but I can try if it's something you or someone really needs.


Deprecated function in WMCore/src/python/WMCore/WMRuntime/Startup.py

Impact of the bug
Deprecated function isAlive() is used in Startup.py -- may impact systems if/when it is removed
Describe the bug
A warning notice is generated when Startup.py checks monitor status; relevant lines (50-51):
    if monitor.isAlive():         monitor.shutdown()
Unfortunately, at the moment I can't find a log in the appropriate state to copy the warning, but the gist is that isAlive() is deprecated and that is_alive() should be used instead.
How to reproduce it
Steps to reproduce the behavior:
Inspect the logs of a finished job, e.g. for CMS@Home-dev in https://lhcathomedev.cern.ch/lhcathome-dev/
Expected behavior
No warning of the usage of deprecated functions.
Additional context and error message
I noticed it last week while perusing logs of my CMS@Home-dev tasks.  However, as mentioned above I don't currently have a task in the right state to copy the message.

@ivanreid Ivan, thanks for creating this issue.
I looked into one job tarball and found the following lines in the condor.err log file:
INFO:root:StepName: logArch1, StepType: LogArchive, with result: 0
INFO:root:MonitorThread: JobEnded
INFO:root:MonitorState: Shutdown called
INFO:root:Completing task at directory: /srv/job/WMTaskSpace
INFO:root:Looking for master report at /srv/job/WMTaskSpace/../../Report.0.pkl
INFO:root:  found it!
INFO:root:Looking for a taskStep report at /srv/job/WMTaskSpace/cmsRun1/Report.pkl
INFO:root:  found it!
INFO:root:Looking for a taskStep report at /srv/job/WMTaskSpace/stageOut1/Report.pkl
INFO:root:  found it!
INFO:root:Looking for a taskStep report at /srv/job/WMTaskSpace/logArch1/Report.pkl
INFO:root:  found it!
INFO:root:Shutting down monitor
Startup.py:50: DeprecationWarning: isAlive() is deprecated, use is_alive() instead
  if monitor.isAlive():

A quick google search reveals that isAlive() is indeed removed in python 3.9.
https://bugs.launchpad.net/hplip/+bug/1889280
https://github.com/python/cpython/pull/15225/commits


Uncaught TypeError: Cannot read property 'getPanes' of undefined

Open two panes, each contains one tab.
Try to move one of tabs to other pane; it supposed to just close pane, that will be empty, but I got exception instead.

Atom Version: 0.186.0
System: Mac OS X 10.10.2
Thrown From: move-panes package, v0.1.2
Stack Trace
Uncaught TypeError: Cannot read property 'getPanes' of undefined
At /Users/manisenkov/.atom/packages/move-panes/lib/move-panes.coffee:58

TypeError: Cannot read property 'getPanes' of undefined
  at Object.module.exports.getRelativePane (/Users/manisenkov/.atom/packages/move-panes/lib/move-panes.coffee:58:33)
  at Object.module.exports.move (/Users/manisenkov/.atom/packages/move-panes/lib/move-panes.coffee:33:17)
  at Object.module.exports.moveLeft (/Users/manisenkov/.atom/packages/move-panes/lib/move-panes.coffee:12:17)
  at atom-workspace.<anonymous> (/Users/manisenkov/.atom/packages/move-panes/lib/move-panes.coffee:5:60)
  at atom-workspace.handler (/Applications/Atom.app/Contents/Resources/app/src/space-pen-extensions.js:115:32)
  at atom-workspace.jQuery.event.dispatch (/Applications/Atom.app/Contents/Resources/app/node_modules/space-pen/vendor/jquery.js:4681:9)
  at atom-workspace.elemData.handle (/Applications/Atom.app/Contents/Resources/app/node_modules/space-pen/vendor/jquery.js:4359:46)
  at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (/Applications/Atom.app/Contents/Resources/app/src/command-registry.js:243:29)
  at /Applications/Atom.app/Contents/Resources/app/src/command-registry.js:3:61
  at KeymapManager.module.exports.KeymapManager.dispatchCommandEvent (/Applications/Atom.app/Contents/Resources/app/node_modules/atom-keymap/lib/keymap-manager.js:558:16)
  at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (/Applications/Atom.app/Contents/Resources/app/node_modules/atom-keymap/lib/keymap-manager.js:396:22)
  at HTMLDocument.module.exports.WindowEventHandler.onKeydown (/Applications/Atom.app/Contents/Resources/app/src/window-event-handler.js:182:20)

Commands
     -0:52.3 editor:consolidate-selections (atom-text-editor.editor.is-focused)
     -0:52.3 core:cancel (atom-text-editor.editor.is-focused)
  6x -0:40.0 core:close (atom-text-editor.editor.is-focused)
     -0:17.4 tree-view:toggle (atom-text-editor.editor)
     -0:10.4 window:focus-pane-on-left (atom-text-editor.editor)
     -0:07.2 pane:split-left (atom-text-editor.editor.is-focused)
     -0:04.7 pane:close (atom-text-editor.editor.is-focused)
     -0:01.0 move-panes:move-left (atom-text-editor.editor.is-focused)

Config
{
  "core": {
    "themes": [
      "seti-ui",
      "seti-syntax"
    ]
  }
}

Installed Packages
# User
atom-lint, v0.20.1
editorconfig, v0.3.0
linter, v0.12.0
minimap, v4.5.0
move-panes, v0.1.2
project-manager, v1.15.5
seti-syntax, v0.3.3
seti-ui, v0.6.3

# Dev
No dev packages

Same here. This has been going on for a while now actually.
I have many tabs each pane.
thanks !
/Users/crucial/.atom/packages/move-panes/lib/move-panes.coffee:58
Hide Stack Trace
TypeError: Cannot read property 'getPanes' of undefined
  at Object.module.exports.getRelativePane (/Users/crucial/.atom/packages/move-panes/lib/move-panes.coffee:58:33)
  at Object.module.exports.move (/Users/crucial/.atom/packages/move-panes/lib/move-panes.coffee:33:17)
  at Object.module.exports.moveLeft (/Users/crucial/.atom/packages/move-panes/lib/move-panes.coffee:12:17)
  at atom-workspace.<anonymous> (/Users/crucial/.atom/packages/move-panes/lib/move-panes.coffee:5:60)
  at atom-workspace.handler (/Applications/Atom.app/Contents/Resources/app/src/space-pen-extensions.js:115:32)
  at atom-workspace.jQuery.event.dispatch (/Applications/Atom.app/Contents/Resources/app/node_modules/space-pen/vendor/jquery.js:4681:9)
  at atom-workspace.elemData.handle (/Applications/Atom.app/Contents/Resources/app/node_modules/space-pen/vendor/jquery.js:4359:46)
  at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (/Applications/Atom.app/Contents/Resources/app/src/command-registry.js:246:29)
  at CommandRegistry.handleCommandEvent (/Applications/Atom.app/Contents/Resources/app/src/command-registry.js:3:61)
  at CommandRegistry.module.exports.CommandRegistry.dispatch (/Applications/Atom.app/Contents/Resources/app/src/command-registry.js:159:19)
  at EventEmitter.<anonymous> (/Applications/Atom.app/Contents/Resources/app/src/window-event-handler.js:75:30)
  at EventEmitter.emit (events.js:116:17)

I get this issue when trying to move a tab either left or top, when I'm in the left-most or top-most pane in a group.

+1

+1


Update installation instructions for beta8

@joshfree @ellismg @muratg Please review

@anurse @natemcmaster

LGTM.

:shipit: after considering my comment.

LGTM


Create security.md guide for Security feature

Add an entry in https://github.com/opensearch-project/opensearch-js/tree/main/guides for security feature. Please mimic the format of other guides, and make sure that the code snippets can run from start and finish in order without any uncaught errors.
Blocked by #606

@nhtruong I'd like to work on this

And it's yours!


Unittest strategies

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
I propose a Gekko mock object to test a strategy.

const config = require('../../core/util.js').getConfig();
config.MACD={ ... }
const mock=MockGekko(require('../../strategies/MACD.js'));
const tradeHistory=mock.inject(candles).getTradeHistory();
assert(...

node test/strategies/MACD.js --config test/test-config.json

What is the current behavior? (You can also link to an open issue here)

What is the new behavior (if this is a feature change)?
add test/strategies/mockGekko.js

Other information:

Hey! As discussed in #1078 I can't merge the labgekko in since I want to keep this out of the core library. Can you update this PR so it does not include those changes (easiest would be to create a new branch for testing strategies).

I remove the labgekko in my branch unittest.

You must create the PR on the develop branch, see contributing

All the link are dead ! Impossible to read the documentation.

I rebase the modification to develop branch.


Add usage example to README

Could we add an example app + sample pack usage example to the readme, please?

To get puma buildpack to work, I used:
pack build solar-mgmt --buildpack gcr.io/paketo-community/ruby --builder gcr.io/paketo-buildpacks/builder:cflinuxfs3

This is good feedback for something we could do in all of our repos. We have a pretty extensive samples repo that provides usage information that we should link to in every buildpack (at least at a language family level).


add demo data bundle

Create a bundle (1000s of CSVs) of the Malawi data:

across/over 7-14 days
across the maximum number of stations possible

The bundle should be posted to WMO Confluence as a zip file with:

CSVs of data
a station list formatted as per the test examples at https://github.com/wmo-im/wis2box/blob/main/tests/data/metadata/station/station_list.csv

Thanks @chenxiaoxia2019.  Can you add to the zip a file called station_list.csv that is formatted like https://github.com/wmo-im/wis2box/blob/main/tests/data/metadata/station/station_list.csv with the relevant stations in the zip?

In addition, there are some files per below where the WSI in the filename is in lowercase but should be UPPERCASE to match the official WSI:

WIGOS_0-454-2-awsmlomba_* should be 0-454-2-AWSMLOMBA
WIGOS_0-454-2-awsnamitambo_* should be 0-454-2-AWSNAMITAMBO

@tomkralidis The WSI of these two stations in the filename was not set correctly. But now they are sending with the correct WSI using Uppercase. So far, the WSI in the filename is not from the OSCAR, but to follow our list we prepared for Campbell. We are also contacting a Malawi colleague who takes care of OSCAR to correct another two wrong WSI.

WIGOS_0-454-2-awsmlomba_* (one file: WIGOS_0-454-2-awsmlomba_2022-01-17T1256)
WIGOS_0-454-2-awsnamitambo_* (from 2022-01-25 to 2022-01-26T0755)

P.S Another two stations needed to be corrected from OSCAR.

0-454-2-AWNNAMBUMA -->0-454-2-AWSNAMBUMA
0-454-2-a10343014 -->0-454-2-AWSMHUJU

Thanks @chenxiaoxia2019. Can you add to the zip a file called station_list.csv that is formatted like https://github.com/wmo-im/wis2box/blob/main/tests/data/metadata/station/station_list.csv with the relevant stations in the zip?

@tomkralidis Do we only need the list for the currently available stations?

In addition, there are some files per below where the WSI in the filename is in lowercase but should be UPPERCASE to match the official WSI:

WIGOS_0-454-2-awsmlomba_* should be WIGOS_0-454-2-AWSMLOMBA_*
WIGOS_0-454-2-awsnamitambo_* should be WIGOS_0-454-2-AWSNAMITAMBO_*

https://wmo-teams.atlassian.net/wiki/spaces/WIS2/pages/302907405/WIS+2.0+in+a+box
I added the currently available station list here.

Thanks @chenxiaoxia2019. Can you add to the zip a file called station_list.csv that is formatted like https://github.com/wmo-im/wis2box/blob/main/tests/data/metadata/station/station_list.csv with the relevant stations in the zip?

https://wmo-teams.atlassian.net/wiki/spaces/WIS2/pages/302907405/WIS+2.0+in+a+box
I added the currently available station list here.

Thanks @chenxiaoxia2019

correct, only stations that are in the data bundle
can you place the station list CSV file in the data bundle zipfile?  Then anyone setting up a demo only has to download the bundle which will have both the station list and data

@tomkralidis The ZipFile has been updated with the station_list.csv

Thanks @chenxiaoxia2019.  I've made some minor touchups (file rename to Malawi_SYNOP_20220216.zip) and uploaded a new zip.  As well, following our discussion at today's standup, from stations_list.csv, I removed the station name field, and renamed the WSI field to wigos_station_identifier because wis2box is tied to that column name.
Let me know if this is okay.


New examples area

Thought it would be worth using this repo for examples that are created, small sample snippets that can accompany answers to questions in the community. Here's a first one on a question I saw somewhere about deep inserts.

examples: great idea! 👍


Suggest using list instead of unnecessary quasiquoting

Saw this code today:
`(,(mod-full-name m) ,(mod-mappings m))

The quasiquoting is doing nothing at all here. The above is equivalent to (list (mod-full-name m) (mod-mappings m)).

Here's some more context from racket/collects/compiler/embed.rkt line 867:
    `(module #%resolver '#%kernel
       (let-values ([(orig) (current-module-name-resolver)]
                    [(regs) (make-hasheq)]
                    [(mapping-table) (quote
                                      ,(map
                                        (lambda (m)
                                          `(,(mod-full-name m)
                                            ,(mod-mappings m)))
                                        code-l))]
                    <...>)
         <...>))

The s-expressions (<full-name> <mappings>) are pieces of code which are being inserted into a larger (module <...>) form. The use of a quotation operator makes it clear that these parentheses belong to quoted code like the others do.

I don't think it makes that clear at all, especially since the (list (mod-full-name m) (mod-mappings m))  being built in that code isn't quoted code: because it's being inserted under a quote in the template, it's not code, it's data. It's a list of two-element lists, and that list isn't being interpreted or evaluated at all. It's just a table treated like an ordinary data structure by the surrounding code it's inserted into.
I think there's plenty of reasonable uses of quasiquotation. But I don't think that just because a datum is being inserted into a code template means that datum should be constructed with quasiquotation. I'm not sure where the line is, but I think "can be constructed with a simple list call without any quoting at all" is definitely on the "too much quotation" side of the line.
(You might also be interested in #122, which is an analogous situation for hashes.)

I don't think it makes that clear at all, especially since the (list (mod-full-name m) (mod-mappings m)) being built in that code isn't quoted code: because it's being inserted under a quote in the template, it's not code, it's data. It's a list of two-element lists, and that list isn't being interpreted or evaluated at all. It's just a table treated like an ordinary data structure by the surrounding code it's inserted into.

I actually agree with you there, and I just didn't bring that up because it might be a confusing tangent.
That's because if I refactor that quote into list calls the way I like it, we end up with this:
    `(module #%resolver '#%kernel
       (let-values ([(orig) (current-module-name-resolver)]
                    [(regs) (make-hasheq)]
                    [(mapping-table) (list
                                      ,@(map
                                         (lambda (m)
                                           `(list ,(mod-full-name m)
                                                  ,(mod-mappings m)))
                                         code-l))]
                    <...>)
         <...>))

And now instead of  `(,(mod-full-name m) ,(mod-mappings m)), we have  `(list ,(mod-full-name m) ,(mod-mappings m)), where the use of quasiquotation helps clarify that list is an operator that's being invoked.
I get the impression that people use quote pretty often with association lists and other cons-based data structures. These data structures aren't common in my own use of Racket, and as such I haven't become a particular fan of using quasiquotation for this purpose, but I suspect it's the main factor in why the code is currently written this way. I suspect the same is true of the association list in #122.
In this case there's a second potential concern, performance. I'm not sure how much this plays a part here, but if it is the main concern, then I'm with you: Everything under the quote isn't code; it's a quoted datum that only incidentally gets represented as an s-expression, and (list (mod-full-name m) (mod-mappings m)) is the way I would prefer building it up.

I think I wouldn't suggest rewriting (list ,(mod-full-name m) ,(mod-mappings)). For quasiquoted lists, I'd probably only rewrite cases where everything in the list is immediately unquoted.
As an aside, the code in #122 wasn't written that way because of performance. It was just because the author (who I know) was unfamiliar with the hash function.


Use the sql builder instead of writing manual queries

We should use the builder defined here https://github.com/G-Research/yunikorn-history-server/blob/main/internal/database/sql/builder.go
Example usage - https://github.com/G-Research/yunikorn-history-server/blob/main/internal/database/repository/application.go#L142-L146

I investigated the current state of our db layer logic, and found the following usage:
internal/database/repository/application.go
        - GetApplicationByID does raw SELECT with named columns, using single ID parameter
        - GetAllApplications uses builder
        - GetAppsPerParititionPerQueue uses builder

internal/database/repository/queue.go
        - GetAllQueues does raw SELECT with named columns, and no parameters
        - GetQueue does raw SELECT with named columns, using single queueID parameter
        - GetQueuesInPartition does raw SELECT with named columns, using single partitionID parameter

internal/database/repository/partitions.go
        - GetAllPartitions uses builder
        - GetPartitionByID does raw SELECT with named columns, using single partitionID param

internal/database/repository/node.go
        -  GetNodesPerPartition uses builder

internal/database/repository/history.go
        -  GetApplicationsHistory uses builder
        -  GetContainersHistory uses builder

I am omitting functions that do non-SELECT db operations, such as UPDATE, DELETE, etc - as the SQL builder code does not support those. We should probably discuss if we want to rework the other ones - the remaining ones all just use a single query parameter. If the pgx driver preserves column-order in its responses for a full SELECT *-type query, we can coalesce the numerous column specifications down into a single SelectAll().

Not going to change course on db access at this time.


Apply suggestions from code review

This fixes most of the suggestions raised by the reviewer in https://github.com/python-discord/code-jam-9/pull/4

The README has been updated to include the inline code blocks for improved readability.
Duplicated code has been removed from the server client.py where we return the default upon any errors.
Difficulty levels have been documented where they have been mentioned.
The server connection_manager.py has improved readability.
Redundant line breaks have been removed from the server event_handler.
Within the server modifiers.py:

The FOUR_SPACES and TWO_SPACES have been removed as constants and instead hardcoded.
The keywords.kwlist has been imported as python_keywords. Removes the redundant variable.

An environment variable has been used in place of hardcoding a constant for the server snekbox.py, with a default.

The comment that was broken onto a new line in the servers event_handler.py was not changed as this flags a flake8 error. Also within the servers event_handler.py, the error response was not changed as we only check the difficulty for None on connect to handle the type checkers.
In addition, I have also increased the sync timer on the frontend to 60 seconds, up from 10 seconds. This makes the game less annoying by not resetting the cursor so often.

LGTM


Model() is not replacing the old value within a transaction

GORM Playground Link

https://github.com/go-gorm/playground/pull/739
Description

Attempt to insert into two different tables within a transaction one by one.
Expected : Successful commit should lead to a record each in both the tables.
Actual : the transaction errors with the error described in the PR description

The tests for this https://github.com/go-gorm/playground/pull/739 are impacted by the same issue that's reported in https://github.com/go-gorm/playground/issues/730

https://github.com/go-gorm/playground/pull/739#issuecomment-2220620354


Allow "flattening" of query responses to shorten object nesting?

@JackPenney found this the other week after I raised an issue with my queries looking a bit of a mess:
https://www.fourkitchens.com/blog/development/graphql-leveler-controlling-shape-query/
If I have a heavily nested query it would be nice to make the response a little nicer to read and "hoist" the value out of the nesting and into a higher up variable. The article explains it nicely with its _get helper example.
Trouble is this is in javascript and not c# so we can't use it as is but its something to look into.

Hi
Just wanted to let you know that the project is moving to the Umbraco Community GitHub organisation, so we are closing all existing issues.
If you think your issue is still relevant, please feel free to reopen it.
/Rasmus

Hi
Just wanted to let you know that the project is moving to the Umbraco Community GitHub organisation, so we are closing all existing issues.
If you think your issue is still relevant, please feel free to reopen it.
/Rasmus


Create a New pt-br laguage file

Please submit translation files to the translation repository. https://github.com/lenis0012/Translations
Either way thank you very much for contributing =)


DEBUG: test rerender

…nda-forge-pinning 2<IP_ADDRESS>.27.40

Checklist

[ ] Used a personal fork of the feedstock to propose changes
[ ] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.


Thread issue

It cause general protection exception running on virtual machine softwares except qemu.

like load the png in thread can cause general protection exception


How to configure logging

Hi,
we use graphite-clickhouse and carbon-clickhouse in production and are very happy with the performance improvements over our previous graphite stack.
the query logging is too much for us but we would like to keep the access logging.
So, ideally we would like to log query at warn and everything else at info.
We have unsuccessfully tried this configuration but feel that we are misunderstanding how this should work:
[[logging]]
logger = "query"
file = "/var/log/graphite-clickhouse/graphite-clickhouse.log"
level = "warn"
encoding = "mixed"
encoding-time = "iso8601"
encoding-duration = "seconds"

[[logging]]
logger = ""
file = "/var/log/graphite-clickhouse/graphite-clickhouse.log"
level = "info"
encoding = "mixed"
encoding-time = "iso8601"
encoding-duration = "seconds"

we reversed the ordering and tried playing around with it in general but the result is the same - when we set any logger to be warn we get no logs, we dont see many warnings or errors so I guess we may not have been patient enough for them but I would have expected to see many access log lines.
Cheers!

the friendly telemetry team at UK HMRC (tax people.)

Hi,
I checked your configuration and it works. In /var/log/graphite-clickhouse/graphite-clickhouse.log I see many access logs and nothing else

Thank you kindly for testing this.
yes.... trying it again it works perfectly as expected.
No idea how we got this so wrong.
Sorry for wasting your time.
Matthew.


Add FreeBSD installation instructions

FreeBSD ports for OpenSearch and OpenSearch-Dashboards have been
committed to the FreeBSD ports tree, and packages will be available soon
to FreeBSD users through the regular package management system.
Add FreeBSD to the list of platforms.  Because installation instruction
do not change based on the architecture, add a "All" architecture to
avoid duplicating the same information multiple times.
Also include a link to the port page on FreshPorts which allow to
"conveniently" see the port history (in a more convenient way than
cgit).
While here, adjust the list of all artifacts to order them
alphabetically in the artifacts directory.

Screenshot from the rendering of the PR:

As of today, textproc/opensearch and textproc/opensearch-dashboards packages are available for FreeBSD 11, 12, 13 and 14 for both amd64 and i386 (except FreeBSD 12 amd64 where a build dependency seems to be broken).
The packages availability matrix is visible in FreshPorts at the URI the PR associate with the artifacts.

🚀

Scheduled for production on 2021/10/4


fixes flow issue in sidebar by dynamically building link key

PR Checklist

Please check all that apply to this PR using "x":

[x] I have checked that this PR is not a duplicate of an existing PR (open, closed or merged)
[x] I have checked that this PR does not introduce a breaking change
[ ] This PR introduces breaking changes and I have provided a detailed explanation below

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting)
[ ] Refactoring (no functional changes)
[ ] Documentation changes
[x] Other - Please describe: Flow type correction

Fixes
Issue Number: #2024
What is the current behavior?
Error ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ src/ui/component/sideBar/view.jsx:71:22

Cannot create li element because in property key:
 • Either React.Element [1] is incompatible with string [2].
 • Or React.Element [1] is incompatible with number [3].

        src/ui/component/sideBar/view.jsx
    [1]  60│                   <>
         61│                     {__('Publishes')}
         62│                     <Spinner type="small" />
         63│                   </>
           :
         68│               ),
         69│             },
         70│           ].map(linkProps => (
         71│             <li key={linkProps.label}>
         72│               <Button {...linkProps} className="navigation-link" activeClass="navigation-link--active" />
         73│             </li>
         74│           ))}
         75│         </ul>
         76│

        /private/tmp/flow/flowlib_1ec7e4cc/react.js
 [2][3] 188│ declare type React$Key = string | number;

What is the new behavior?
Does not pass a span as li key, which is the correct behavior for a react element

Thanks for the PR! As last time, can we show you some appreciation once this is reviewed/merged?


Can't store datetime.timedelta

The documentation does not state that datetime.timedelta is an excluded pydantic type, but when I try to save it to the MongoDB I get the following error:
bson.errors.InvalidDocument: cannot encode object: datetime.timedelta(seconds=21600), of type: <class 'datetime.timedelta'>

I had to make a custom validator that returns int to make this work. The ODMantic documentation refers to json encoders, but those don't seem to actually be used in the pipeline from a model to the MongoDB Engine. But the custom validator is. Now I just need to figure out if I can create a type based custom validator instead of a member based one without creating a custom type.

The custom validator isn't doing what I thought it was doing. It was replacing the timedelta with an integer in the model class, not just the database. Looking at the motor, I think I need to define a TypeEncoder for it, but I don't see how to add that in ODMantic.

Looks like I can do it with the following:
AsyncIOMotorClient(
    "mongodb://db_user:user_password@host:27017",
    type_registry=type_registry,
)


Inet pton

Holy cow why did I even think that was ever a good idea?

Codecov Report

Merging #29 into master will increase coverage by 0.6%.
The diff coverage is 93.75%.

@@            Coverage Diff            @@
##           master      #29     +/-   ##
=========================================
+ Coverage   85.38%   85.99%   +0.6%
=========================================
  Files           7        7
  Lines         602      621     +19
  Branches       57       59      +2
=========================================
+ Hits          514      534     +20
+ Misses         70       69      -1
  Partials       18       18

Impacted Files
Coverage Δ

luna/server.h
97.72% <ø> (ø)
:arrow_up:

luna/server.cpp
69.56% <100%> (+2.12%)
:arrow_up:

luna/private/server_impl.cpp
86.02% <92.3%> (+0.78%)
:arrow_up:

Continue to review full report at Codecov.

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


cigien: Watch (?-i:T2QnSad1GGc)(?#youtu.be)

cigien requests the watch of the watch_keyword (?-i:T2QnSad1GGc)(?#youtu.be). See the MS search here and the Stack Exchange search in text, in URLs, and in code.

(?-i:T2QnSad1GGc)(?#youtu.be) has been seen in 1 true positive, 0 false positives, and 0 NAAs.

(?-i:T2QnSad1GGc)(?#youtu.be) has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Spevacus in Charcoal HQ

Approved by Spevacus in Charcoal HQ


Empty result when searching by _id in a custom schema table

Crate.io version 0.47.7
create table my_table (
first_column integer,
 second_column string
);

insert into my_table (first_column, second_column)
values ('123', '456');

select _id from my_table limit 100;

Returns: _id: AUw3V8zMTVvl9Ie6E1eS
select * from my_table where _id = 'AUw3V8zMTVvl9Ie6E1eS' limit 100;

Returns our record.
Same scenario but with a custom schema

create table testing.my_table (
first_column integer,
 second_column string
);

insert into testing.my_table (first_column, second_column)
values ('123', '456');

select _id from testing.my_table limit 100;

Returns _id: AUw3XWDnTVvl9Ie6E1eT
But if we try searching by _id field we get an empty result
select * from testing.my_table where _id = 'AUw3XWDnTVvl9Ie6E1eT' limit 100;

Same thing if we set a primary key field;
create table testing.my_table1 (
  id integer primary key,
first_column integer,
 second_column string
);

insert into testing.my_table1 (id, first_column, second_column)
values (1, '123', '456');

select * from testing.my_table1 where id = 1 limit 100;

Returns empty result.

Did a test on play.crate.io and version 0.47.6 returns an error:
select * from testing.my_table where _id = 'AUw3XWDnTVvl9Ie6E1eT' limit 100;
SQLActionException[Table 'my_table' unknown].
Looks like "schema" is ignored.

thanks for reporting we'll take care of this asap. fyi, this issue does not occur on the 0.48 testing release.

Ok thx for the info will check 0.48.0
pawel (at) mobile

On 20 mar 2015, at 16:05, Sebastian Utz<EMAIL_ADDRESS>wrote:
thanks for reporting we'll take care of this asap. fyi, this issue does not occur on the 0.48 testing release.
—
Reply to this email directly or view it on GitHub.

fixed by #1818
thanks for reporting!

will be released with the next 0.47 hotfix release (0.47.8)


Front-end design for user input

(Actually, it's not an issue, more a discussion topic)
Do you have any tested and proven front-end design for accepting the user input? I'm looking at the Google Calendar interface and it seems quite good. Do you have any other ideas / recommendations?

In my experience this is a fairly complex control to implement, so if you don't need the full flexibility, you may benefit from a more simple interface.
That being said - Google Calendar and Outlook interfaces for recurrence are fairly similar, and what I've used in the past as the "standard" reference.

I have just found this library which could be quite helpful in implementing front-end
(nice thing is that it "translates" on the spot user input directly to RRule):
http://jakubroztocil.github.io/rrule/

This is a good question and from my research, I have not found a great solution. Most UI's are limiting in some capacity to what the library is capable of.
With that said, for Rindle's recurring scheduler we actually utilize the above JavaScript rrule library and accept text input that we convert into a rrule for use on the backend utilizing When:

This covers the majority of common use cases and is relatively easy for our users. However, it is not perfect and does not 100% handle every use case.
I'd love to add the ability to parse text string out in Rindle at some point.

Thank you for your thoughts on this subject! It's not my skill set, but that would be nice to have some vue component for this :)
Outlook has a really clean interface, we would go for something similar, using tabs for choosing day/week/month cycle.

@tplaner maybe it would be good to create the separate Discussion tab in the project?

I've enabled the discussions tab.


Fix tagging

Make it happen automatically via Github actions remove default publish of 0.01

Still up for discussion. #119 will resolve the issue where it is impossible to not tag a build as latest. Releases currently take the git tag name (i.e. 0.0.1), all others use the commit hash. There is no per branch tags like main, or main-stable, etc. Though we could add it.
Tagging @dannylamb, @noahwsmith as this has been discussed before, do we want to add some more logic to this?


inconsistent naming

[x] vertical-align

super: -st (???) → -sp

[x] font-family

cursive: -cs → -cv

[ ] page-break-[before|after]

always: -t (for true) → ?
avoid: -f (for false) → ?

[ ] background-size

contain: -s (for small) → ?
cover: -l (for large) → ?

[ ] background-repeat (us #26 instead)

[x] text-transform

capitalize: -c → -cp
uppercase: -h (for high) → -uc
lowercase: -l (for low) → -lc

[x] overflow — .-of → .-ko (for "box-overflow")

[ ] flex-wrap

nowrap: -n → -nw (consistent with white-space)

[x] overflow-wrap — .-ww (legacy "word-wrap") → .-ow

UPDATE: page-break-[before|after] will remain unchanged as the new CSS properties break-beforeand break-after gain support. Do not change these classes. (Will be deprecated later; see another issue.)

 bangs:feat-20rename

 bangs v0.11.0

UPDATE: leaving background-repeat unchecked in this issue. see issue #26

more to change:

[ ] background-clip property .-bk → .-bx
[ ] border-box value -b -> -r (for box-sizing, background-origin, background-clip)
[ ] clip value .-c → .-x (for text-overflow)


The collection that was edited over a month ago has not been reflected on the site.

More than one month ago, I submitted a pull request to add items to different collections, and it has already been merged. However, the new items are not showing up on the live site until now. Could you let me know the reason? Has the site not been updated yet?
I would greatly appreciate it if anyone could provide a response. Thank you.

I investigated this issue and found that it may be due to case sensitivity in the repo name.
The repo name automq/automq should be changed to AutoMQ/automq.
Now it's works:

I'm in the process of adding a GitHub Action to ensure that subsequent PRs that modify collection configs catch these common issues before merged: https://github.com/pingcap/ossinsight/pull/1799

Thank you very much for your patient response.


New Dockerfile using alpine-golang-make-onbuild base image

Following the docker related PR series.
New Dockerfile using the alpine-golang-make-onbuild base image whose goal is to unified the way to dockerize prometheus tools and exporters based on Golang.
The binary is build using make. (Golang is installed via make too, respecting the GO_VERSION).
A testable image is available under my name on Docker hub : Link
I have also added some Docker usage instructions in the readme.
As always, the alpine-golang-make-onbuild  image can be also move under Prometheus organization.
@juliusv @discordianfish

:+1:


Use DOM API instead of string concatenation

This PR fixes #104643 and 12 (out of ~110) issues discovered by tsec.
Changes are based mostly on using general functions createHTMLElement and createHTMLTableElement from src/vs/base/common/htmlElement.ts in places where previously the HTML was constructed by setting an .innerHTML property.

@koto @engelsdamien

@RMacfarlane please review changes in the issue reporter


Stuttery

Hello, im pretty noob so probably is a mistake on the useage at my end.
I am trying to record then playback controller input. first i record a real controller then i play it back through vgamepad it plays back but is extremely stuttery even when trying to do just the analog inputs so far, as its trying to replicate the original input it sends updates quite frequently.
Is there anyway to smooth move an analog stick so i could estimate the motion with linear segments instead of jumping for each state.

Nvm. There was a mistake in my code sorry.

Not sure what happened here, but make sure to sleep a little bit between calls in order not to flood the driver ;)

I'm using it to record controller input then replay it through a virtual controller. The polling rate of the recording is 100hz and I attempt to update the virtual controller at the same rate. I think my program was lagging because of the way I was keeping track of the timing for when to update the controller, I was using a while loop checking the time rather than 'time.sleep' not 100% sure why that caused problems but it seems to be fully functional now.
Thanks for taking the time to reply.


Inconsistent behavior while adding scaling before translateX and translateY.

(https://codepen.io/ksr89-magic/pen/Vwjvzdx)
STR:
When the above codepen page is loaded then first click on the "Animate scaling" button then click on the "Animate All Properties" button then you can see inconsistent behavior while the object is moving and scaling.
Expected Output:
Reload the codepen page then click on the "Animate All Properties" button, the object should move in a straight path with scaling.

The order in which your animating the transforms properties matters (this is not related to Anime.js, but to the way CSS transforms work).
So if you want to make sure to always have consistent behaviour I recommend setting all the transforms properties in the order you want, even if you're only animating one.
So your scaling animation should look like this:
  anime({     targets: '.square',     translateX: 0, // Or '+=0'     scale: 0.8,     duration: 3000,     easing: "linear"   });
That way next time you're animating the transforms, the translateX property will always be set before scale.


Fix name of syslog-tls-skip-verify log driver option

Proposed changes
The name of this option was previously given as syslog-tls-skip, but
the example used syslog-tls-skip-verify.  The latter is correct.
This commit fixes the typo.

Looks like this was independently fixed in baaead7cdd1777f41fe8061bcf9c47badb4637a3


Can new git blame hover move to align with the text not whitespace?

With git.blame.editorDecoration.enabled
Current:

Expected:

@hediet, do extensions have control over where the hover is being shown?

do extensions have control over where the hover is being shown?

They do not.


Implement stop-prepl

Sometimes I need to restart my dev setup and I want to be sure I don't have dangling opened prepl connections, I currently use (clojure.core.server/stop-server) to stop prepl since it uses server/start-server, but would be a nice touch to have an "official way" to stop a prepl.
Sample code:
(ns user
  (:require
    [app.server :as server]
    [clojure.tools.namespace.repl :as tools-ns :refer [set-refresh-dirs refresh]]
    [propel.core :as propel]))

;; Ensure we only refresh the source we care about. This is important
;; because `resources` is on our classpath and we don't want to
;; accidentally pull source from there when cljs builds cache files there.
(set-refresh-dirs "src/dev" "src/main")

(defn start []
  (server/start)
  (propel/start-prepl! {:port-file? true}))

(defn restart
  "Stop the server, reload all source code, then restart the server.

  See documentation of tools.namespace.repl for more information."
  []
  (server/stop)
  (clojure.core.server/stop-server)
  (refresh :after 'user/start))

Hmm this might be good but I think I intended people to just use built in
prepl stuff originally since you can name the prepl and use that...
I'll have a think though! :)
On Sun, 3 Nov 2019 at 14:59, Rafael Delboni<EMAIL_ADDRESS>wrote:

Sometimes I need to restart my dev setup and I want to be sure I don't
have dangling opened prepl connections, I currently use
(clojure.core.server/stop-server) to stop prepl since it uses
server/start-server, but would be a nice touch to have an "official way"
to stop a prepl.
Sample code:
(ns user
(:require
[app.server :as server]
[clojure.tools.namespace.repl :as tools-ns :refer [set-refresh-dirs refresh]]
[propel.core :as propel]))
;; Ensure we only refresh the source we care about. This is important
;; because resources is on our classpath and we don't want to
;; accidentally pull source from there when cljs builds cache files there.
(set-refresh-dirs "src/dev" "src/main")
(defn start []
(server/start)
(propel/start-prepl! {:port-file? true}))
(defn restart
"Stop the server, reload all source code, then restart the server.
See documentation of tools.namespace.repl for more information."
[]
(server/stop)
(clojure.core.server/stop-server)
(refresh :after 'user/start))
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/Olical/propel/issues/6?email_source=notifications&email_token=AACM6XJLU6AP6CBC7UNJ57TQR3RONA5CNFSM4JILUAFKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HWOLNJQ,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACM6XJCEXINALOQTRD2WKTQR3RONANCNFSM4JILUAFA
.


Change SoC.c/h (State of Charge) to Charge.c/h to prevent confusion.

SoC has another meaning which is System on Chip which is a more common term. Changing the src file names and function names to Charge will make this less confusing.
TODO: Change names from SoC to Charge

Thanks for making the issue. This has been bugging me for a while.


Roll gallery to b6728704a6441ac37a21e433a1e43c990780d47b

Includes:

Scroll 75% of x, y on each list scroll increment (flutter/gallery#824)

Issue: https://github.com/flutter/flutter/issues/114025
Pre-launch Checklist

[X] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[X] I read the Tree Hygiene wiki page, which explains my responsibilities.
[X] I read and followed the Flutter Style Guide, including Features we expect every widget to implement.
[X] I signed the CLA.
[X] I listed at least one issue that this PR fixes in the description above.
[X] I updated/added relevant documentation (doc comments with ///).
[X] I added new tests to check the change I am making, or this PR is test-exempt.
[X] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

Google testing failure appears to be entirely unrelated to this change.


Feature/rename workspaces

This PR addresses:

The need to rename our workspace nomenclature where we use vanilla to instead use python. This includes files and folder names as well.
Updated "basic stable" workspace title and its associated logo

I tested a build of all the workspaces in a feature branch, and the python (formerly vanilla) and all other images built successfully.
This will introduce a breaking change in that if anyone has a script that has conda activate vanilla will need to change to conda activate python

@grallewellyn Yes! Thank you for catching that. I'll make the fix right now.

Before we merge this PR, could you please approve the other PR for updating the packages?
Will do. I'll wait for that to be merged, before merging this one.

We will need to do some more testing once this is deployed to make sure the Get Started page and devfiles are updated
@grallewellyn I had the same thought. 👍🏽

Just merged the update packages branch!

@grallewellyn Glad we merged that one first! This branch now has conflicts which I'll resolve. It'll probably require another review because of our branch protection rules.

@grallewellyn With your update packages branch merged to develop, I brought those changes into my feature branch for this PR to resolve the conflicts which triggered the review again.


Playnite crash when opening Player Activities screen

When I click on the menu item to open the Player Activities screen, Playnite crash.
Here is the log file attached.
extensions.zip

palyeracti.zip
Me too

https://github.com/Lacro59/playnite-plugincommon/commit/59aeb247861c99dd48259a01f556e8be1cd09426


[fpv] Support expected failure properties

This PR supports parsing results with expected failures. Some of the formal properties are expected to failure in normal formal testbenchs.
For example: most of the security countermeasures are not supposed to be proven under normal formal conditions. They are only reachable via forcing the env.
So this PR adds support to results parsing. It allows user to input a expected_failure hjson file. And these failing properties won't be calculated towards total failing tests.
Signed-off-by: Cindy Chen<EMAIL_ADDRESS>

I wonder if a better approach is to wrap these assertions in ifndef FPV_ON, in case the list is small enough.

I wonder if a better approach is to wrap these assertions in ifndef FPV_ON, in case the list is small enough.

These assertions are used for sec_cm FPV testbenchs. So we do not want to exclude them with FPV_ON.
Another reason for adding this support:
We can make sure these assertions are truely unreachable in normal cases. So it further proves we can only reach these sec_cm assertions by forcing design values.

I wonder if a better approach is to wrap these assertions in ifndef FPV_ON, in case the list is small enough.

Thanks Sri :) These assertions are used for sec_cm FPV testbenchs. So we do not want to exclude them with FPV_ON.
Another reason for adding this support: We can make sure these assertions are truely unreachable in normal cases. So it further proves we can only reach these sec_cm assertions by forcing design values.

Then, how about we solve it by creating a new define called FPV_SEC_CM_ON?

I wonder if a better approach is to wrap these assertions in ifndef FPV_ON, in case the list is small enough.

Thanks Sri :) These assertions are used for sec_cm FPV testbenchs. So we do not want to exclude them with FPV_ON.
Another reason for adding this support: We can make sure these assertions are truely unreachable in normal cases. So it further proves we can only reach these sec_cm assertions by forcing design values.

Then, how about we solve it by creating a new define called FPV_SEC_CM_ON?

Thanks Sri for the suggestion. I still think this solution is more generic. For example - if in a prim_counter module, we wrote an assertion with a pre-condition that the input step_i can change. But in some IP, the step is a fixed input. Then this property will be an unreachable for certain IP. I think scenarios like that might be easier to solve with external exp_failures input.

In that case, could we disable those sva's in the bock's specific testbench / tcl script? I feel like a better solution would be to not even have the tool try to prove properties that are known to be unprovable, rather than try to get the tool to report it unprovable and then, mask it in the final report.

That is a good point, thanks Sri. Let me think about it more.

I wonder if a better approach is to wrap these assertions in ifndef FPV_ON, in case the list is small enough.

Thanks Sri :) These assertions are used for sec_cm FPV testbenchs. So we do not want to exclude them with FPV_ON.
Another reason for adding this support: We can make sure these assertions are truely unreachable in normal cases. So it further proves we can only reach these sec_cm assertions by forcing design values.

Then, how about we solve it by creating a new define called FPV_SEC_CM_ON?

Thanks Sri for the suggestion. I still think this solution is more generic. For example - if in a prim_counter module, we wrote an assertion with a pre-condition that the input step_i can change. But in some IP, the step is a fixed input. Then this property will be an unreachable for certain IP. I think scenarios like that might be easier to solve with external exp_failures input.

In that case, could we disable those sva's in the bock's specific testbench / tcl script? I feel like a better solution would be to not even have the tool try to prove properties that are known to be unprovable, rather than try to get the tool to report it unprovable and then, mask it in the final report.

Thanks @sriyerg I think about it more, but still prefer the current method:
1). Letting the formal tool prove these properties are indeed unreachable.
This could help make sure the countermeasure are not reachable through normal sequences without probing.
2). It is easier to review expected failures in the Hjson format.
There are other types of assertions that might fail in normal cases - such as CDC, etc. I think with macro define, it might be harder to review with macro define and TCL file exclusion.
3). I understand this might create overhead for the tool, but currently we only have rv_plic and pinmux. It should not make the tool proving too complex.
Thanks,
Cindy

I wonder if a better approach is to wrap these assertions in ifndef FPV_ON, in case the list is small enough.

Thanks Sri :) These assertions are used for sec_cm FPV testbenchs. So we do not want to exclude them with FPV_ON.
Another reason for adding this support: We can make sure these assertions are truely unreachable in normal cases. So it further proves we can only reach these sec_cm assertions by forcing design values.

Then, how about we solve it by creating a new define called FPV_SEC_CM_ON?

Thanks Sri for the suggestion. I still think this solution is more generic. For example - if in a prim_counter module, we wrote an assertion with a pre-condition that the input step_i can change. But in some IP, the step is a fixed input. Then this property will be an unreachable for certain IP. I think scenarios like that might be easier to solve with external exp_failures input.

In that case, could we disable those sva's in the bock's specific testbench / tcl script? I feel like a better solution would be to not even have the tool try to prove properties that are known to be unprovable, rather than try to get the tool to report it unprovable and then, mask it in the final report.

Thanks @sriyerg I think about it more, but still prefer the current method: 1). Letting the formal tool prove these properties are indeed unreachable. This could help make sure the countermeasure are not reachable through normal sequences without probing.
2). It is easier to review expected failures in the Hjson format. There are other types of assertions that might fail in normal cases - such as CDC, etc. I think with macro define, it might be harder to review with macro define and TCL file exclusion.
3). I understand this might create overhead for the tool, but currently we only have rv_plic and pinmux. It should not make the tool proving too complex.
Thanks, Cindy

Thank you @cindychip for thinking through all aspects and settling on this solution. This is fine with me.

Thanks Sri for your review as usual :)


[CI] fixed meshkit error util failure

Notes for Reviewers
Signed commits

[x] Yes, I signed my commits.

Thanks. What should be done to avoid this in the future?

This was in errorutil, I am checking meshkit code as I am not much familiar with its codebase. To avoid this whenever a contributor is defining new error code, should run make error commands for appropriate components.

Thanks. What should be done to avoid this in the future?

This was in errorutil, I am checking meshkit code as I am not much familiar with its codebase. To avoid this whenever a contributor is defining new error code, should run make error commands for appropriate components.

but must be solved by automation in future. :smile:


Ignore interfaces that use unrecognized drivers

AWS supports three types of virtual network adapters described here https://aws.amazon.com/premiumsupport/knowledge-center/enable-configure-enhanced-networking/: VIF, Intel 82599 VF, and Elastic Network Adapter. As such, AWS EC2 ENI that can be hot-swapped will be associated with one of those three drivers.
New interfaces that are not associated with any of the three adapters will be an interface type that should not be matched by amazon-ec2-net-utils. One example is branch interfaces provided by VLAN.
Issue #, if available:
Description of changes: Given in commit message.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Please document the testing/validation that you've performed for this change.

We used this version of the rule generator since May 2021, and we found that it successfully ignored all attachment and detachment events for our branch interfaces, while responding to regular ENI attachment/detachment events.

Hi team, is there anything else to do on our side to get this merged? We're thinking that any teams using ec2-net-utils on top of VLAN devices will benefit from this fix.


[ISSUE #1901] Fix bug in sending request/reply message using broker 4.7.0

What is the purpose of the change
Fix #1901
Brief changelog
add cluster property to msgInner in asyncSendMessage method
Verifying this change
XXXX
Follow this checklist to help us incorporate your contribution quickly and easily. Notice, it would be helpful if you could finish the following 5 checklist(the last one is not necessary)before request the community to review your PR.

[x] Make sure there is a Github issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a Github issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[x] Format the pull request title like [ISSUE #123] Fix UnknownException when host config not exist. Each commit in the pull request should have a meaningful subject line and body.
[x] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[x] Write necessary unit-test(over 80% coverage) to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add integration-test in test module.
[x] Run mvn -B clean apache-rat:check findbugs:findbugs checkstyle:checkstyle to make sure basic checks pass. Run mvn clean install -DskipITs to make sure unit-test pass. Run mvn clean test-compile failsafe:integration-test  to make sure integration-test pass.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

Coverage decreased (-0.06%) to 50.923% when pulling 5e1d2907b7710f7346fd4e2286f8353ee7995b0a on RongtongJin:fix_1901 into c5e5f8dd6e2ff22e6d433880cce2d789640cfa29 on apache:develop.


Linking against system libbroti

Would it be possible/acceptable to link against the system libbroti instead of adding another one.
This would be especially useful for distros wanting to have only one copy of each library, and where they have a preference for avoiding vendored code, due to licensing issues, etc.
I would be interesting in helping set up the setup.py voodoo to make it allow that an option.

The patch here may be a start point: https://git.archlinux.org/svntogit/community.git/tree/trunk/shared-brotli.patch?h=packages/python-brotlipy
(That's how we are currently using for Arch Linux.)

Thanks @felixonmars .  I see that patch is already merged, but not released.
Submitted the patch to openSUSE https://build.opensuse.org/request/show/744825


⚠ AGEG website (prod) has degraded performance

In 9b6fbe1, AGEG website (prod) (https://www.ageg.ca/) experienced degraded performance:

HTTP code: 200
Response time: 4330 ms

Resolved: AGEG website (prod) performance has improved in 6521523.


"All frames were too dark"

Please describe the issue in as much detail as possible, including any errors and traces.
If your issue is a camera issue, be sure to also post the image generated by running sudo howdy snapshot.
I've been trying to add my face using howdy on Linux Mint, but every time I do, the terminal says that the frames are too dark. I've tried in different lighting situations, but they all have the same result.
It usually says that the average default is 70-80, when the threshold is 50.
Any support would be appreciated.

I've searched for similar issues already, and my issue has not been reported yet.
Linux distribution (if applicable): Mint (latest version)
Howdy version (sudo howdy version): 2.6.1

Have you ran sudo howdy test to see if your frames really are dark? If not, you can up how dark a frame has to be to be rejected in the config

https://github.com/boltgolt/howdy/issues/751#issuecomment-1436481884

After running the test, the resulting camera footage is extremely dark, colorless, and flashing. My webcam works fine in other cases, so I'm assuming I didn't properly configure howdy with it. How could I have it work as intended?

Are you trying to set up a IR or normal camera?

Are you trying to set up a IR or normal camera?

I'm on a Dell XPS15 9500, so it's an IR camera.

I'm having also an XPS and in may case I had to select manually one of the 4 options I had the others were too dark.
go to: sudo howdy config and check out which device are you using
then go to:
/dev/v4l/by-path
to see which devices are available and just try all of them changing the path in the config and using sudo howdy test

After checking the 4 options, 1 was too dark, 2 led to sudo howdy test failing, but one was bright enough, but colorless.
I'm not sure if that's supposed to happen, but thank for the advice!

After checking the 4 options, 1 was too dark, 2 led to sudo howdy test failing, but one was bright enough, but colorless.
I'm not sure if that's supposed to happen, but thank for the advice!

Colorless is the indication that you've found the right camera! IR cameras have no color of course

It still won't recognize my face though. And the red sensors aren't turning on at all.

The red dots are actually IR light emitters, you might be able to get them to work with the great tool from @EmixamPP
After camera configuration, did you clear and readd your models? Is your PAM setup for Howdy to fire?


Update libffi to 3.3

More than likely we're going to need this to support the mac arm boxes. It has support for universal binaries on the mac. It's specific to PPC/Intel, but it's closer. This also has a bunch of PPC and aarch64 fixes. It's many many years of dev work compared to 3.2.1 which we used before.
Signed-off-by: Tim Smith<EMAIL_ADDRESS>

I'll merge this once I can pull down the adhoc and take a look


Inconsistent/unstable behaviour with rendering relative links via .RenderString

What version of Hugo are you using (hugo version)?

$ hugo version
hugo v0.124.0-629f84e8edfb0b1b743c3942cd039da1d99812b0+extended linux/amd64 BuildDate=2024-03-16T15:44:32Z VendorInfo=gohugoio

Does this issue reproduce with the latest release?
Yes

Trying to build Comentario docs I hit a problem with this file. I use a table shortcode to render a responsive table (for the lack of table render hook):

{{ replace (page.RenderString .Inner) "\x3ctable\x3e" (printf "\x3ctable class=%q\x3e" (.Get 0)) | safeHTML }}

The below content is rendered OK:
{{
}}

| Attribute                                                          | Description                                                                    | Default value         |
|--------------------------------------------------------------------|--------------------------------------------------------------------------------|-----------------------|
| [`auto-init`](/configuration/embedding/comments-tag/auto-init)     | Whether to automatically initialise Comentario                                 | `true`                |
| `css-override`                                                     | Additional CSS stylesheet URL, or `false` to disable loading styles altogether |                       |
| [`lang`](/configuration/embedding/comments-tag/lang)               | Language for the embedded Comentario                                           | Page language or `en` |
| [`live-update`](/configuration/embedding/comments-tag/live-update) | Whether [Live update](/kb/live-update) of comments is enabled on the page      | `true`                |
| `max-level`                                                        | Maximum comment visual nesting level. Set to `1` to disable nesting altogether | `10`                  |
| `no-fonts`                                                         | Set to `true` to avoid applying default Comentario fonts                       | `false`               |
| [`page-id`](/configuration/embedding/comments-tag/page-id)         | Overrides the path (URL) of the current page                                   |                       |
{{
}}

However, if I change any of the links in the left column to a relative one, for example, [auto-init](/configuration/embedding/comments-tag/auto-init) ⇒ [auto-init](auto-init), weird things happen.
Running hugo results in error messages:
Start building sites …
hugo v0.124.0-629f84e8edfb0b1b743c3942cd039da1d99812b0+extended linux/amd64 BuildDate=2024-03-16T15:44:32Z VendorInfo=gohugoio

ERROR configuration/embedding/_index.en.md: Failed to find page for path "auto-init" (link text "auto-init")
ERROR configuration/embedding/_index.en.md: Failed to find page for path "lang" (link text "lang")
ERROR configuration/embedding/_index.en.md: Failed to find page for path "live-update" (link text "live-update")
ERROR configuration/embedding/_index.en.md: Failed to find page for path "page-id" (link text "page-id")

But most strange is that running hugo server does succeed approximately 1 time out of 4, failing with the same error in the other 3 runs.
Although I don't understand why it wouldn't find those relative links, it has at least to be consistent.
If I remove the shortcode wrapping the table, the table is rendered just fine every time (but lacks the necessary styling of course).

I noticed that you are using the global page function within the shortcode.
https://gohugo.io/functions/global/page/#be-aware-of-caching

Thanks @jmooring for pointing that out. I believe there must be a BIG FAT WARNING whenever Hugo hits page in a shortcode.
Is there any other way to invoke .RenderString in a shortcode?

Is there any other way to invoke .RenderString in a shortcode?

.Page.RenderString

Thanks. Adding a warning for using page inside a shortcode would still be useful I think.

Thanks. Adding a warning for using page inside a shortcode would still be useful I think.

It's impossible to know the intent of people using anything. That said, adding page was more of a "proof of concept" that we could pass this all the way down to the call stack (which is used in other newly added features of Hugo).


CMS: Heap Size and Occupancy before GC

Heap size and occupancy before GC are returning  heap size and occupancy after GC.

@AlinaHovakimyan - Which collector are we talking about here? And can you submit a log fragment or whole log.

@dsgrieve the log file used:
cms_gen.log
For example in  22
2024-08-16T15:20:51.002+0400: 34.193: [GC (CMS Initial Mark) [1 CMS-initial-mark: 0K(349568K)] 54146K(506816K), 0.0326151 secs] [Times: user=0.03 sys=0.00, real=0.03 secs]
For this line I was expecting to receive:
heap used before: 0 k
heap size before: 349568 K
heap used after: 54146 K
heap size after: 506816 K
Please let me know, if my expectations were incorrect.
Please see the received  event in the screenshot:


Cannot disable magnetometer

Hi,
I am sending motion capture data to /mavros/vision_pose/pose and want to disable the magnetometer since I am testing indoors. I have set the checked the ekf position fusion and the yaw fusion under the aid mask parameter. then disabled the cal_mag0 and sys_has_mag. but when I do so, my mavros/local_position/pose topic cannot be seen at all.

@RomanBapst do you know what is wrong here?

EKF2 doesn't initialize without mag data, this is a known issue. There's nothing fundamentally preventing us from fixing this, it's just a matter of testing the said fix and keeping it maintained.

I can make a PR for this soon.

Would arming still be prevented if there was no mag?  I wonder if it could be handled similar to other sensors like GPS and Airspeed where there are parameters to let users/integrators decide if the sensors are required for arming and other functions?

I am using the pixfalcon on 1.9.2, forgot to mention this

@julianoes Is it alright to run the V2 firmware on a pixfalcon? or should I be running some other version, I am not too sure of the difference between all the versions of the firmware (v2, v3, v4).

@totomyl Yes, but you should TRY to update to V3 firmware following the instructions here: http://docs.px4.io/master/en/config/firmware.html#bootloader
FMUv2 is very resource constrained, so quite a lot of drivers that you might want to use are not installed by default. If you can run FMUv3 (depends on version of the hardware) then you are less likely to run into problems.
There is a little overview of the differences in FMU versions here: http://docs.px4.io/master/en/flight_controller/pixhawk_series.html#fmu-versions
The FMU version implies compatibility of firmware - so all FMUv2 boards can run the same firmware. An increased FMU version number only tells you that the firmware is not compatible with other FMU versions (e.g. they might be the same except for a minor connector difference). But usually an increased FMU version number means "more capable hardware".

I am not sure, if this issue is completely solved. I tried today with the latest master build of PX4 v1.10.0b and after reading through the #13023 and the related info, I made EKF2_AID_MASK to 24 (EV pos + EV yaw) , GPS_checks to 0, EKF2_HGT_MODE to Vision. But the mag still interferes and there is a deviation from the external reference yaw causing the arming check error "Preflight Yaw estimate error". Do I need to set any other parameter? @julianoes any advice please!
Thanks

To disable mag fusion, use EKF2_MAG_TYPE "none" (or "MC custom"), don't disable the mag completely.


[Suggestion] Add calculation for Always Cast

Is it even possible, like is the always cast based on seed or just normal prng?

wands are generated based on the seed and the coordinates
so it will require some extra calculations, but it's possible

oh AC perk

i think it's also based on coordinates/seed


Script for translating fake IP addresses into environment specific

The CONFIGfile contains all data that is necessary to establish the connections, which are required for properly operating the application.
TCP/IP addresses, operation names and application release number might depend on the environment (e.g. SDN test laboratory or live network) in which the application gets instantiated in.
As a consequence the CONFIGfile has to be adapted to the environment before instantiation.
This adaption shall be automated.
For supporting the automation, fake IP addresses have to be put into the CONFIGfile during specification.
Fake IP addresses will be replaced by environmental specific addresses during creating the container.

[ ] Write script for reading list of environment specific TCP/IP addresses and replacing the fake IP addresses in the CONFIGfile.
[ ] Release numbers also to be updated in the CONFIGfile.
[ ] Script to be embedded into the pipeline for deploying into SDN laboratory
[ ] Script to be embedded into the pipeline for deploying into live network

We developed a script , that

takes a mapping file as an input which consists of the original "ip address" and "port" for every  "application-name" and "release-number" in the environment, finds the instance and update it. The input file will be in the following format ,

  {
            "category": "TinyApplicationController",
            "abbreviation" : "TAR",
            "component": "TypeApprovalRegister",
            "release": "0.0.1",
            "fake-tcp-ip": "<IP_ADDRESS>",
            "fake-tcp-port": 3002,
            "original-tcp-ip": "<IP_ADDRESS>",
            "original-tcp-port": 3002
        }

Updates the tcp instances , based on the mapped http instance for the "application-name" and "release-number"

And would like to share the information that , we are not utilizing the "fake ip address" and "port" details.
Having the original IP address, application-name , release-number as per the environment is sufficient to perform this operation.
Kindly let me know is this is fine or ? do we have to include an additional check after finding the tcp instance , if the existing ip is the fake one assigned for this application and then replace the address.
Or
Can we remove this entries realted to fakeips from the input file.

I have some doubts about making "application-name" and "release-number" as an input to the replacement of the ip-address and port:

the logic requires "application-name" and "release-number" being there. If the attributes have different names or aren't there, the replacement fails.
since a couple of weeks there might be multiple TcpClients per HttpClient. Consequently, there might be multiple ip-address/port pairs per application-name/release-number (e.g. HTTP and HTTPS).

Wouldn't it be easier to just search for string "<IP_ADDRESS>" and replace it by string "<IP_ADDRESS>"?

Sorry , looks like this issue closed by mistake.

Implementation states that filling in the locally correct combination of IP address and TCP port can be based on ApplicationName and ReleaseNumber.
Consequently, the concept of FakeIP addresses can be abandoned.
The local host IP address (<IP_ADDRESS>) shall be applied as a standard instead.

Documentation to be changed
FakeIP table to be adapted to show always the local host IP address, but individual TCP ports
FakeIP to be disregarded in the script for adding locally correct IP addresses and TCP ports.


ACSS: Download of SAP Installation Media not working

I am following the steps (https://learn.microsoft.com/en-gb/azure/sap/center-sap-solutions/get-sap-installation-media) to download the SAP installation media through script. But I am not getting the desired result. Under sapbits/sapfiles there is only archive folder with number of installation files. The manual step suggests there should be a bom folder also. Could you please have a look? Thanks.

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

ID: ca80690c-bf00-5e8d-093f-b0cc2b8fc213
Version Independent ID: f37d1031-30fa-41e7-dcc5-127bd7ead76e
Content: Get SAP installation media
Content Source: articles/sap/center-sap-solutions/get-sap-installation-media.md
Service: sap-on-azure
Sub-service: center-sap-solutions
GitHub Login: @lauradolan
Microsoft Alias: ladolan

@shekhag
Thank you for bringing this to our attention.
I've delegated this to content author @lauradolan, who will review it and offer their insightful opinions.

@lauradolan
Could you please review add comments on this, update as appropriate.


im using the 0.4.10 version c3.js as there was performance issue while loading huge data such as 10M.I have done some changes to library to make it work.but every time new kind of graph i ahve to so similiar changes can i use latest version ? is the performance factor is improved in newer library

C3 version:
D3 version:
Browser:
OS:

Performance issues with c3js are not addressed yet, see #2303


Introduce Gallery system

Pools are an agreggate of images maintained by it's creator, other chosen users by it's creator and the staff.

Pool was renamed to Gallery.


Communicate to inactive user why he can only claim 1 G$

if user doesnt claim for X days then he becomes inactive.
inactive users when they claim the first time they get the claim amount from the firsttimeclaim pool which is currently set at 1G$. in the begining the claim amounts will probably be  in the hundreds as we print 10000 for each $1.
This might confuse the user.

Explaining this might confuse the user even more... :)

@sirpy
@tomerGD and I decided it's not necessary at this point.
Thanks


Possible to run with sketch image?

Is it possible to run MonsterMash not by sketching in the UI, but by uploading an image of drawn lines?

That is possible on the demo website (try import layer as mask with a transparent png), but it doesn't seem like that update was pushed to Github: https://monstermash.zone/


Change auto_resize from simple boolean

At the moment if auto_resize is set to False to allow 4k images to render at full resolution then all the images in the slideshow must be resized to the correct 4k size supported by the Raspberry Pi. Possibly this should be done automatically by detecting the type of Pi and if Pi4 adding 3840 to the end of pi3d.Texture.WIDTHS
This change might be best done in pi3d and just take the auto_resize option out of config

Yeah, agreed. I think this is a bit opaque to an end user right now anyway, so eliminating it would be a win I think.

I like that.

I think these changes to pi3d make the need to turn automatic resize off, effectively disappear. I will put this into the next release of pi3d quite soon, possibly with the FixedString pixel width justification mod and after relevant testing.

Can this be closed?

Yes, it has been superseded by the change to pi3d