In small files  works, big not

job.lua:405: Failed to spawn process:

this is my load lazy astronvim config

return {
    {
        "Exafunction/codeium.nvim",
        lazy = false,
        dependencies = {"nvim-lua/plenary.nvim", "hrsh7th/nvim-cmp"},
        config = function()
            local lspkind = require("lspkind")
            local cmp = require("cmp")
            require("codeium").setup {
                cmp.setup({
                    -- ...
                    sources = {
                        -- ...
                        {name = "codeium"}
                    }
                }),
                formatting = {
                    format = lspkind.cmp_format({
                        mode = "symbol",
                        maxwidth = 50,
                        ellipsis_char = '...',
                        symbol_map = {Codeium = ""}
                    })
                }
            }
        end
    }
}

this happen in big files only, in small files works perfectly.
Full error:
Erro detectado ao processar TextChangedI Autocommands for "*":
Error executing lua callback: .../.local/share/nvim/lazy/plenary.nvim/lua/plenary/job.lua:405: Failed to spawn process: {
  _additional_on_exit_callbacks = {},
  _shutdown_check = <userdata 1>,
  _stderr_results = {},
  _stdout_results = {},
  _user_on_exit = <function 1>,
  args = { "-sSL", "-D", "/run/user/1000/plenary_curl_5ace460a.headers", "-X", "POST", "-H", "Content-Type: application/json", "--data-raw", "{\"editor_options\": {\"insert_spaces\": true, \"tab_size\": 4}, \"me
tadata\": {\"extension_name\": \"vim\", \"ide_name\": \"neovim\", \"request_id\": 244, \"api_key\": \"**", \"extension_version\": \"1.2.90\", \"ide_version\": \"0.9.4\"}, \"doc
ument\": {\"editor_language\": \"php\", \"language\": 29, \"line_ending\": \"\\n\", \"cursor_offset\": 26, \"text\": \"<?php\\n\\nnamespace SM;\\n\\nretur [\\n    'router' => [\\n        'routes' => [\\n
    'login' => [\\n                'type' => 'Segment',\\n                'options' => [\\n                    'route' => '/[:action]',\\n                    'defaults' => [\\n                        'controller
' => 'SM\\\\Controller\\\\Auth',\\n                        'action' => 'index'\\n                    ]\\n                ]\\n            ],\\n            'api' => [\\n                'type' => 'Segment',\\n
           'options' => [\\n                    'route' => '/api',\\n                    'defaults' => [\\n                        'controller' => 'SMApi\\\\Controller\\\\Index',\\n                        'actio
n' => 'index'\\n                    ]\\n                ],\\n                'may_terminate' => true,\\n                'child_routes' => [\\n                    'wildcard' => [\\n                        'type'
=> 'Wildcard',\\n                        'options' => [\\n                            'key_value_delimiter' => '?',\\n                            'param_delimiter' => '='\\n                        ],\\n
               'may_terminate' => true\\n                    ],\\n                    'getClienteByKey' => [\\n                        'type' => 'Segment',\\n                        'options' => [\\n
                'route' => '/atendimentos/:key/cliente',\\n                            'defaults' => [\\n                                'action' => 'get-cliente-by-key'\\n                            ]\\n
                 ]\\n                    ],\\n                    'getOrcamentosByKey' => [\\n                        'type' => 'Segment',\\n                        'options' => [\\n                            '
route' => '/atendimentos/:key/orcamentos',\\n                            'defaults' => [\\n                                'action' => 'getOrcamentosByKey'\\n                            ]\\n
   ]\\n                    ],\\n                    'calculaFrete' => [\\n                        'type' => 'Segment',\\n                        'options' => [\\n                            'route' => '/calcula-
frete',\\n                            'defaults' => [\\n                                'action' => 'calculaFrete'\\n                            ]\\n                        ]\\n                    ],\\n
           'system' => [\\n                        'type' => 'Segment',\\n                        'options' => [\\n                            'route' => '/change-system/:system_key',\\n
   'defaults' => [\\n                                'action' => 'change-system'\\n                            ]\\n                        ],\\n                        'may_terminate' => true\\n
   ],\\n                    'atendimentobycdcli' => [\\n                        'type' => 'Segment',\\n                        'options' => [\\n                            'route' => '/atendimento-by-cdcli[/:cdc
li]',\\n                            'constraints' => [\\n                                'cdcli' => '[0-9]+'\\n                            ],\\n                            'defaults' => [\\n
           'action' => 'listAtendimentoByCdcli'\\n                            ]\\n                        ],\\n                        'may_terminate' => true\\n                    ],\\n                    'gets
tatusatendimento' => [\\n                        'type' => 'Segment',\\n                        'options' => [\\n                            'route' => '/atendimento-get-status/:cdcli/:cdfil/:nrorc',\\n
                   'constraints' => [\\n                                'cdcli' => '[0-9]+'\\n                            ],\\n                            'defaults' => [\\n                                'actio
n' => 'getStatusAtendimento'\\n                            ]\\n                        ],\\n                        'may_terminate' => true\\n                    ],\\n                    'update-nome-clientes' =
> [\\n                        'type' => 'Segment',\\n                        'options' => [\\n                            'route' => '/update-nome-clientes',\\n                            'constraints' => [\\n
                              'cdcli' => '[0-9]+'\\n                            ],\\n                            'defaults' => [\\n                                'action' => 'update-nome-clientes'\\n
                 ]\\n                        ],\\n                        'may_terminate' => true\\n                    ],\\n                    'getobjetoscorreios' => [\\n                        'type' => 'Seg
ment',\\n                        'options' => [\\n                            'route' => '/get-objetos-correios/:cdcli/:cdfil/:nrorc',\\n                            'constraints' => [\\n
       'cdcli' => '[0-9]+'\\n                            ],\\n                            'defaults' => [\\n                                'action' => 'getObjetosCorreios'\\n                            ]\\n
                    ],\\n                        'may_terminate' => true\\n                    ],\\n                    'autocomplete' => [\\n                        'type' => 'Segment',\\n
  'options' => [\\n                            'route' => '/autocomplete/:type',\\n                            'defaults' => [\\n                                'action' => 'autocomplete'\\n
       ]\\n                        ],\\n                        'may_terminate' => true\\n                    ],\\n                    'getstatuspagamento' => [\\n                        'type' => 'Segment',\\n
                       'options' => [\\n                            'route' => '/get-status-pagamento/:idPedido/:nrorc/:cdfil',\\n                            'defaults' => [\\n                                'ac
tion' => 'get-status-pagamento'\\n                            ]\\n                        ],\\n                        'may_terminate' => true\\n                    ],\\n                    'import-service-bulk'
 => [\\n                        'type' => 'Segment',\\n                        'options' => [\\n                            'route' => '/93634f26dfc8c7b13817e16ecfdcbb62b62a9836/:idAtendente',\\n
            'defaults' => [\\n                                'action' => 'import-service-bulk'\\n                            ]\\n                        ],\\n                        'may_terminate' => true\\n
                  ],\\n                    'workflow-transfer-column' => [\\n                        'type' => 'Segment',\\n                        'options' => [\\n                            'route' => '/workf
low-transfer-column/:idAtendimento/:idColumn',\\n                            'defaults' => [\\n                                'action' => 'workflow-transfer-column'\\n                            ]\\n
             ],\\n                        'may_terminate' => true\\n                    ]\\n                ]\\n            ],\\n            'gerar-link-continuidade' => [\\n                'type' => 'Segment',\
\n                'options' => [\\n                    'route' => '/gerar-link-continuidade',\\n
Error executing vim.schedule lua callback: .../.local/share/nvim/lazy/plenary.nvim/lua/plenary/log.lua:166: /home/develop/.cache/nvim/codeium: É um diretório
stack traceback:
        [C]: in function 'assert'
        .../.local/share/nvim/lazy/plenary.nvim/lua/plenary/log.lua:166: in function 'warn'
        .../.local/share/nvim/lazy/codeium.nvim/lua/codeium/api.lua:275: in function ''
        vim/_editor.lua: in function <vim/_editor.lua:0>
[codeium] [WARN  21:41:15] /home/develop/.local/share/nvim/lazy/codeium.nvim/lua/codeium/api.lua:275: failed to cancel in-flight request {
[codeium]   code = 0,
[codeium]   out = '{"code":"unknown","message":"no session state for apiKey d75bfe49-e8e9-4f68-b577-e5e1aa82b443, sessionId "}',
[codeium]   response = {
[codeium]     body = '{"code":"unknown","message":"no session state for apiKey d75bfe49-e8e9-4f68-b577-e5e1aa82b443, sessionId "}',
[codeium]     exit = 0,
[codeium]     headers = { "Accept-Encoding: gzip", "Content-Type: application/json", "Vary: Origin", "Date: Tue, 28 Nov 2023 00:39:56 GMT", "Content-Length: 107", "", "" },
[codeium]     status = 500
[codeium]   },
[codeium]   status = 500
[codeium] }

Are you able to share any big files in which this happens?

yes, an old legacy project, a php file with an array of 5 thousand lines for example.
293Kb file .php
module.config.php.tar.gz
This happens for example when I click on "return" and remove a letter and try to add more, but in other smaller files this does not happen and works normally.

Thanks for the sample. I've just updated the extension with a newer language server version. Can you try again to see if the problem is still around? Also, in the original post, can you paste the full red error message? The yellow warning message is probably benign.

Yes, I updated bringing the full error.

I tried again with the last commit, but the error persists, maybe I have a wrong nvim-cmp configuration? the standard I found is the file size, unfortunately there are files with more than 5k lines in PHP.
this is my configuration nvim-cmp
https://github.com/brunojoao/astronvim_monster/blob/main/plugins/nvim-cmp.lua
in small files works fine:

after update i receive this error:
Error executing vim.schedule lua callback: .../.local/share/nvim/lazy/plenary.nvim/lua/plenary/log.lua:166: /home/develop/.cache/nvim/codeium: É um diretório
stack traceback:
        [C]: in function 'assert'
        .../.local/share/nvim/lazy/plenary.nvim/lua/plenary/log.lua:166: in function <.../.local/share/nvim/lazy/plenary.nvim/lua/plenary/log.lua:121>
        ...ocal/share/nvim/lazy/codeium.nvim/lua/codeium/notify.lua:14: in function 'error'
        .../.local/share/nvim/lazy/codeium.nvim/lua/codeium/api.lua:310: in function ''
        vim/_editor.lua: in function <vim/_editor.lua:0>
[codeium] [ERROR 22:23:58] /home/develop/.local/share/nvim/lazy/codeium.nvim/lua/codeium/notify.lua:14: completion request failed:  {
[codeium]   code = 0,
[codeium]   out = '{"code":"unknown","message":"unable to get language from file: unrecognized language"}',
[codeium]   response = {
[codeium]     body = '{"code":"unknown","message":"unable to get language from file: unrecognized language"}',
[codeium]     exit = 0,
[codeium]     headers = { "Accept-Encoding: gzip", "Content-Type: application/json", "Vary: Origin", "Date: Tue, 28 Nov 2023 01:23:58 GMT", "Content-Length: 86", "", "" },
[codeium]     status = 500
[codeium]   },
[codeium]   status = 500
[codeium] }

... but my file is index.php, unrecognized

Also, in my particular case the issue was not dependent on whether the file was small or large; I would hit the error on every file regardless of size.

Is this the same bug as #20?

Is this the same bug as #20?

Personally, I'd say the 2 bugs are not the same but I'm also not 100% sure.
Apologies, I wish I had a more helpful answer I could give you.

The original issue seems similar to #20. The issue that @cleong14 is encountering is #121. The issue that @brunojoao is encountering in https://github.com/Exafunction/codeium.nvim/issues/115#issuecomment-1828916083 after an upgrade is also #121. I will close this issue as a duplicate of #20.

Linking the directory issue fix here for convenience: https://github.com/Exafunction/codeium.nvim/issues/121#issuecomment-1832819652


Problem building 0.3.37-m1 in jetson nano

First I enabled nvidia runtime in my jetson nano,
checked the version of my jetpack:
Package: nvidia-jetpack
Version: 4.6.2-b5
Architecture: arm64
Maintainer: NVIDIA Corporation
Installed-Size: 194
Depends: nvidia-cuda (= 4.6.2-b5), nvidia-opencv (= 4.6.2-b5), nvidia-cudnn8 (= 4.6.2-b5), nvidia-tensorrt (= 4.6.2-b5), nvidia-visionworks (= 4.6.2-b5), nvidia-container (= 4.6.2-b5), nvidia-vpi (= 4.6.2-b5), nvidia-l4t-jetson-multimedia-api (>> 32.7-0), nvidia-l4t-jetson-multimedia-api (<< 32.8-0)
Homepage: http://developer.nvidia.com/jetson
Priority: standard
Section: metapackages
Filename: pool/main/n/nvidia-jetpack/nvidia-jetpack_4.6.2-b5_arm64.deb
Size: 29378
SHA256: 925f4abff97e6024d86cff3b9e132e7c7554d05fb83590487381b7e925d5b2bb
SHA1: e3ef727e87df5c331aece34508c110d57d744fe9
MD5sum: 7cb2e387af41bc8143ac7b6525af7794
Description: NVIDIA Jetpack Meta Package
Description-md5: ad1462289bdbc54909ae109d1d32c0a8

Added my user to the docker group
sudo groupadd docker
sudo usermod -aG docker ${USER}

then proceeded to pull the image for arm64:
docker pull sskorol/vosk-api:0.3.37-m1

Changed the Dockerfile to use the proper tag
ARG L4T_VERSION=r32.6.1

FROM sskorol/vosk-api:0.3.37-m1

Then proceeded to use the command:
cd jetson && ./build.sh -m nano -i ml -t 0.3.37

But in step 14 or 15 I had this problem:
It freezes in:
c++ -std=c++17 -I.. -isystem /opt/kaldi/tools/openfst-1.8.0/include -O3 -march=armv8-a -Wno-sign-compare -Wall -Wno-sign-comare -Wno-unused-local-typedefs -Wno-deprecated-declarations -Winit-self -DKALDI _DOUBLEPRECISION=0 -DHAVE_EXECINFO_H=1 -DHAVE_CXXABI_H -DHAVE_OPENBLAS -I/opt/kaldi/tools/OpenBLAS/install/include -ftree-vectorize -pthread -g -fPIC -DUSE_KALDI_SVD -c -o word-allign-lattice.o word-allign-lattice.cc

After 1 hour or so it comes back and says:
c++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
make[1]: *** [<builtin>: lattice-functions-transition-model.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory '/opt/kaldi/src/lat'
make: *** [Makefile:147: lat] Error 2
The command '/bin/sh -c cd /opt/kaldi/src &&   ./configure --mathlib=OPENBLAS_CLAPACK --shared --use-cuda &&  sed -i "s: -01 : -03 -march=$ARCH :g" kaldi.mk && echo "[BUILDING KALDI] -j $(nproc) online2 lm rnnlm cudafeat cudadecoder" returned a non-zero code: 2
unable to prepare context: unable to evaluate symlinks in Dockerfile path: lstat /home/jetson/projects/vosk-api-gpu/Dockerfile.server: no such file or directory

Im currently using a jetson nano that has 4GB RAM

@DocksDocks I wonder why did you use m1 image as a baseline for the Jetson Nano? m1 image is for Apple M1 chip (+ w/o GPU support), and not for Jetson boards. Please read the instruction and find out the links with a valid image tags.

Thank you so much for the answer, it was actually a lack of attention and knowledge by my part.
I focused on the OS/ARCH part and saw that the m1 was linux/arm64 which is the architecture of my jetson nano, and I thought that it was what I was looking.
Now that you told me to look for valid image tags I saw the [0.3.27-nano] and will try to build it tomorrow.
I am new to jetson nano and dockers, so I have a question, I was trying to build this to use with python code and basically detect in real time speech with my jetson, is this the correct path?
Thank you so much again for the quick answer and sorry for any inconvenience.

@sskorol Thank you so much for the answer, it was actually a lack of attention and knowledge by my part.
I focused on the OS/ARCH part and saw that the m1 was linux/arm64 which is the architecture of my jetson nano, and I thought that it was what I was looking.
Now that you told me to look for valid image tags I saw the [0.3.27-nano] and will try to build it tomorrow.
I am new to jetson nano and dockers, so I have a question, I was trying to build this to use with python code and basically detect in real time speech with my jetson, is this the correct path?
Thank you so much again for the quick answer and sorry for any inconvenience.

@DocksDocks, yes, that's the best way to start. But be aware that 4Gb of memory is not enough for a big (more accurate) model. You can use only a small model on Jetson Nano. I have both Nano and Xavier NX. The latter works with a big model relatively well after making some tweaks.

Hello again, this time I tried to build the 0.3.27 nano docker image and at step 15 I got this error this time:
XXABI_H -DHAVE_OPENBLAS -I/opt/kaldi/tools/OpenBLAS/install/include -ftree-vectorize -pthread -g -fPIC -DUSE_KALDI_SVD -DHAVE_CUDA -I/usr/local/cuda/include -fPIC -pthread -isystem /opt/kaldi/tools/openfst-1.8.0/include   -c -o nnet-compute-discriminative-parallel.o nnet-compute-discriminative-parallel.cc
c++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
make[1]: *** [nnet-example-functions.o] Error 1
make[1]: *** Waiting for unfinished jobs....
<builtin>: recipe for target 'nnet-example-functions.o' failed
ar -cr kaldi-decoder.a training-graph-compiler.o lattice-simple-decoder.o lattice-faster-decoder.o lattice-faster-online-decoder.o simple-decoder.o faster-decoder.o decoder-wrappers.o grammar-fst.o decodable-matrix.o lattice-incremental-decoder.o lattice-incremental-online-decoder.o
ranlib kaldi-decoder.a
c++ -shared -o libkaldi-decoder.so -Wl,--as-needed  -Wl,-soname=libkaldi-decoder.so,--whole-archive kaldi-decoder.a -Wl,--no-whole-archive  -Wl,-rpath=/opt/kaldi/tools/openfst-1.8.0/lib -rdynamic -Wl,-rpath=/opt/kaldi/src/lib  ../lat/libkaldi-lat.so  ../fstext/libkaldi-fstext.so  ../hmm/libkaldi-hmm.so  ../transform/libkaldi-transform.so  ../gmm/libkaldi-gmm.so  ../tree/libkaldi-tree.so  ../util/libkaldi-util.so  ../matrix/libkaldi-matrix.so  ../base/libkaldi-base.so /opt/kaldi/tools/openfst-1.8.0/lib/libfst.so -L/opt/kaldi/tools/OpenBLAS/install/lib -l:libopenblas.a -l:libblas.a -l:liblapack.a -l:libf2c.a -lm -lpthread -ldl
make[1]: Leaving directory '/opt/kaldi/src/nnet2'
make: *** [nnet2] Error 2
Makefile:147: recipe for target 'nnet2' failed
ln -sf /opt/kaldi/src/decoder/libkaldi-decoder.so /opt/kaldi/src/lib/libkaldi-decoder.so
make[1]: Leaving directory '/opt/kaldi/src/decoder'
The command '/bin/sh -c cd /opt/kaldi/src && 	./configure --mathlib=OPENBLAS_CLAPACK --shared --use-cuda && 	sed -i "s: -O1 : -O3 -march=$ARCH :g" kaldi.mk && 	echo "[BUILDING KALDI] >>>" && 	make -j $(nproc) online2 lm rnnlm cudafeat cudadecoder' returned a non-zero code: 2
unable to prepare context: unable to evaluate symlinks in Dockerfile path: lstat /home/jetson/projects/vosk-api-gpu/jetson/Dockerfile.server: no such file or directory

I thought since I put the right image this time it would work fine, did I do something wrong?

@sskorol
For the questions:
did you add SWAP on your Nano?

I don't know what adding swap to my nano means, sorry for being dumb, if you're talking about memory swap i'm using the default jetson nano 4gb config, using 'top' command shows me this:

KiB Mem :  4059296 total,  1263096 free,  1662472 used,  1133728 buff/cache
KiB Swap:  2029632 total,  2029632 free,        0 used.  2162484 avail Mem

Second question
did you enable nvidia-docker runtime?

I did enable my nvidia-docker runtime

And about the file you told me to copy in my jetson folder, after I add the Dockerfile.server to my jetson folder do I need to change the parameters equivalent to my image inside the .server file?
(this is more for confirmation) because it comes with this arg
ARG TAG=0.3.37-pc

and the $tag
FROM sskorol/vosk-api:$TAG

Basically I am asking if I need to change the tags like I did in the normal Dockerfile

I added the Dockerfile.server and

I added the Dockerfile.server to the jetson folder and added the proper tags to the file, increased my SWAP size from 2GB to 6GB (it helped a lot in the proccess) and...
Build is finally completed
  ---> 7a30c6d78225
Step 8/8 : CMD ["python3", "./asr_server_gpu.py"]
 ---> Running in c0f36e4b8890
Removing intermediate container c0f36e4b8890
 ---> 6d87c0f051f8
Successfully built 6d87c0f051f8
Successfully tagged sskorol/vosk-server:0.3.27-nano

I will open in discussion a thread that's not related to compile so if a person has a problem still uses it, will close this issue now


Notify user of bad posture

1. Goal(s)
Create a noticeable way to tell user that their posture is wrong
2. Tasks

[ ] try windows notifications (that way it's configurable with do not disturb
[ ] try popup window as notifications
[ ] try audio notifications
[ ] make sure notification isn't spamming or annoying (could count frames good frames + bad frames = total frames / FPS)
[ ] find notification audio track
[ ] option to change notifications

3. Technical details

popup windows
system notification (could be system dependent)
audio implementation


rework image cleaner a bit

clean images on both dind and host docker,
since host docker contains the vast majority of used images.
run image cleaner as its own daemonset, rather than inside dind, since it should run even when dind doesn't. This also prevents the need to relaunch dind when the image cleaner changes, which takes a long time.
prioritize deleting untagged images so we remove images such as failed build products first
match image-gc config to kubernetes' own as much as possible:

units are percent instead of fractions (80 instead of 0.8)
units refer to 'used' rather than 'available' (80 means )
add high/low thresholds so when high threshold is exceeded, images are reclaimed until the low threshold is passed
config is now imageGCThreshold[High|Low], matching the names in kubernetes

The default thresholds are 80/60: when 80% of inodes are used, cull images until the number drops below 60%
includes #539

I've tested this manually with:
gcloud compute --project=binder-prod ssh gke-prod-a-ssd-pool-32-134a959a-lbw0
lbw0 $ docker run -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/docker:/var/lib/docker --rm -it minrk/k8s-image-cleaner:76b09ad

and it successfully cleaned out a number of large images from the host docker on that node. YOu can see the results in the inodes-available chart (that uptick in the green line):

So at least the image seems to be correct.
I've also tested deploying this locally with minikube, so the new daemonset seems to work as well.
Deleting images takes a pretty long time (on the order of 30 minutes to cull from 80 to 60% of used inodes).

travis restart made it happy...it sounds like you did all the testing we could try without actually deploying to prod...so I'm gonna merge this :-)
re: the amount of time it takes to clean images, do you still think this is a preferable solution to just recycling nodes occasionally? That happens relatively instantaneously (though it also creates some disruptions and isn't automatable right now). WDYT?

actually, looking through the changes, I'm gonna hold off on merging cuz this touches on a bunch more k8s components than I had thought, and I wanna make sure somebody with more k8s knowledge than me makes sure it's 👍


Example adding custom object to CodeArea

I would like to add a custom object to a CodeArea. I can see how to do it with a GenericStyledArea but  I cannot see how to do it using CodeArea since it uses String as the generic.
Thank you

As you have noted CodeArea uses String as the generic, so custom objects cannot be added to it.
So unfortunately you will have to extend GenericStyledArea to create your own custom code area to fit your needs.
If you want to be able to add multiple different types of objects I recommend looking here (starting with CustomSegmentDemo.java) to see an alternative way of doing it that should make it easier.

Yea I figured that was the case. Ill extend GenericStyledArea. Thank you so much for your response!


[rui/eval] add financial evaluation (FinGPT)

duplicated with https://github.com/rui-ye/OpenFedLLM/pull/18
closed.


Autocompletion shows lots of internal namespaces

Description
As of recently, autocompletion on a namespace shows all the nested namespaces including lots of internal ones. For example:

Steps to Reproduce
Type a namespace and autocomplete it, e.g. Meta..
Expected behavior: Internal namespaces are hidden.
Actual behavior: They are shown.
Reproduces how often: 100%
Versions
c30380e2fa0fcaed60ef79c97e6724b8763633a0

@Vtec234 Thanks for reporting this issue. Not sure how we missed this. I will fix it.


My first branch

I have created a new branch, a file and made a commit

Please let me know if you have questions


In zuul 2.x sample demo, a request routing to nginx-backend http service always got 404 error

Condition:
1.disable eureka, and then
2.choose ConfigurationBasedServerList
We found this error was relation to 'Host' header forward to real service. Or i  did incorrect configuration(see below bold line)?

Which host header are you getting on your backend?

configuration is ,
api.ribbon.listOfServers=http://xx.com:80
backend Host header is Host:localhost:7001(it should be Host:xx.com:80)

That's not how proxies are supposed to behave. You have to maintain the host header from the original request otherwise your service has no idea where the request came from.

I think it is not more friendly that the proxy overrides the host header for the host obtained from ribbon.listOfServers? @artgon

And so? how to fix this problem?

I have the same problem. @artgon please help to solve this.

If you want to change the outbound host header, you can add a filter that modifies the inbound request headers.


Enhance readability by standardizing use of React.ComponentProps or React.HTMLAttributes

I propose we consider consistently using React.ComponentProps<T> over React.HTMLAttributes<T>. This suggestion stems from the perspective that the React.ComponentProps<T> types are often more readable and comprehensible. In some cases, we have also used React.ComponentPropsWithoutRef<T>. Standardizing on one approach across the codebase would increase overall readability.
Here are examples showcasing the different current uses:
https://github.com/shadcn-ui/ui/blob/aca3ef97e35bd0b57c922a9189144efe725f771a/apps/www/components/theme-wrapper.tsx#L6
https://github.com/shadcn-ui/ui/blob/aca3ef97e35bd0b57c922a9189144efe725f771a/apps/www/registry/default/ui/table.tsx#L5-L8
https://github.com/shadcn-ui/ui/blob/aca3ef97e35bd0b57c922a9189144efe725f771a/apps/www/registry/default/ui/form.tsx#L87-L90
I couldn't find any example using React.ComponentPropsWithRef<T>. This would be another possibility.
However, I'm currently unsure about potential performance differences or other possible factors that could influence the choice between these options. If anyone knows more about this, I would appreciate more information.

I've started using React.ComponentProps<T> more often myself so definitely something we can consider. Thanks for the suggestion. I'll look into it.

any updates?🍕

This issue has been automatically closed because it received no activity for a while. If you think it was closed by accident, please leave a comment. Thank you.

@shadcn has this been closed by accident? Could you have a look into this?


Rename Template::write_into()

I think we should rename Template::write_into(&mut io::Write) as it clashes with FastWritable::write_into(&mut fmt::Write).
Maybe write_io_into(), write_io() or write_bytes()?

Maybe we should rename both:

write_into_io
write_into_fmt

?


Hero Fusion

[ ] Trigger combine + ability 1
[ ] Trigger combine + ability 2
[ ] Trigger 1 -> description 1 + ability combine
[ ] Trigger 2 -> description 2 + ability combine


Problem: Process.monitor of remote process not working as expected

I found that our solution in Quantum.Util.start_or_link/1 does not work as expected.
This will cause this error on node disconnect:
10:10:23.827 [error] Supervisor received unexpected message: {:DOWN, #Reference<0.3175945100.3353870340.142203>, :process, #PID<14627.118.0>, :noconnection}

hmm, I want to help.
But, I can't reproduce the issue. I found the error message from https://github.com/erlang/otp/blob/OTP-20.3.2/lib/stdlib/src/supervisor.erl#L631
I think it should due to one supervisor process monitor one remote process, but I can't find where the code in quantum-core.

@redink What happens if you start & connect two cluster nodes and then quit the one that has the TaskStagesSupervisor running? Does the other node start a new supervisor?

@redink This is the culprit: https://github.com/quantum-elixir/quantum-core/blob/master/lib/quantum/util.ex#L10-L17
The function is used in many start_link functions.

But
  @spec start_or_link(GenServer.on_start()) :: GenServer.on_start()
  def start_or_link({:error, {:already_started, pid}}) when is_pid(pid) do
    Process.link(pid)
    {:ok, pid}
  end

  def start_or_link(other) do
    other
  end

these codes just invoking Process.link/1 rather than Process.monitor/1.
The message {:DOWN, #Reference<0.3175945100.3353870340.142203>, :process, #PID<14627.118.0>, :noconnection} only from Process.monitor/1, https://hexdocs.pm/elixir/Process.html#monitor/1
And if we use Process.link/1, the crash message will be {:EXIT, from, reason} http://erlang.org/doc/man/erlang.html#process_flag-2

after node 2 disconnect node 1, node 1 not affected by anything, and node 2 will start the new task stage supervisor process.

@redink Can you force quit the application instead of Node.disconnect?

I force quit the node 1, and node 2 not affected by anything.

@redink You need to force quit the node with currently has the global job on it. In your screenshot you would've to quit node 2 instead.

I did some research on how to solve this problem. The cleanest solution would be to use a library like swarm to orchestrate the workers.
Swarm will also bring the advantage that conflicting workers can be merged together.


fix: Windi CSS plugin must be before ServerRef plugin

Fixes https://github.com/slidevjs/slidev/issues/898
Maybe also:

https://github.com/slidevjs/slidev/issues/897
https://github.com/slidevjs/slidev/issues/894

Did you find the root cause of this? Sounds like it could be a bug of sever-ref?

Did you find the root cause of this? Sounds like it could be a bug of sever-ref?

No, so far I've spent some time trying to figure out what was going on and then realized that moving up the plugin fixes the problem.
But yeah there is probably some kind of compatibility issue between ServerRef and Windi plugins.
I also think that it can be great to find the root issue, but I don't think I will have the time to investigate it now.

@antfu maybe it is missing a call to next here https://github.com/antfu/vite-plugin-vue-server-ref/blob/main/src/index.ts#L35 ?

Yes will do

Here is the PR: https://github.com/antfu/vite-plugin-vue-server-ref/pull/3

With the fix of https://github.com/antfu/vite-plugin-vue-server-ref/pull/3 this might not be needed right?

With the fix of antfu/vite-plugin-vue-server-ref#3 this might not be needed right?

Yes just tested and it seems ok with vite-plugin-vue-server-ref 0.3.1


Missing documentation for Using Environments from Registry (Python SDK)

Hi,
We are trying to use Environments that were build directly in the share ml registry. The link to the documentation is missing. See section Use environments for training
The missing document link is: https://github.com/MicrosoftDocs/azure-docs/blob/main/articles/machine-learning/how-to-deploy-managed-online-endpoint-sdk-v2.md
Or is there any documentation which has information on how to use already built environments form the shared ml registry.

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

ID: a10c58c2-1767-778c-5591-8b6eb1e50969
Version Independent ID: ecc11aa4-56c9-d8b0-69c0-d9978de4adc5
Content: Manage Azure Machine Learning environments with the CLI & SDK (v2) - Azure Machine Learning
Content Source: articles/machine-learning/how-to-manage-environments-v2.md
Service: machine-learning
Sub-service: core
GitHub Login: @ositanachi
Microsoft Alias: osiotugo

@obiii
Thanks for your feedback! We will investigate and update as appropriate.

@obiii
I've delegated this to @ositanachi, a content author, to review and share their valuable insights.

Thank you for your feedback. To make it easier for you to submit feedback on articles on learn.microsoft.com, we're transitioning our feedback system from GitHub Issues to a new experience.  As part of that transition, we are closing  older issues that we believe have been resolved by subsequent document updates.
If you feel that this issue still persists, please respond and let us know.
#please-close


Fix time zone to London

What

Set config.time_zone for collections to London
Update some tests
Refactor the Transition Countdown Clock to use local time, rather than UTC.

Context

If no time_zone is set, Rails uses UTC by default. This proved problematic in a recent change to the postcode checker, which had changes that were to be made live at a specific time, and because in the UK as we are still in BST, they would have been an hour late.

Consequences

For its atom feeds, collections presents content items, and the content store uses UTC. So where the Feed Entry Presenter calls Time.zone.parse, we will now be returning time in GMT/BST rather than UTC. That's probably a good thing for an atom feed, so I've updated the tests to reflect this behaviour.

Collections also builds the Organisation pages. The Organisation Document Presenter uses Date.parse to present the public_updated_at time stamp, but the test was using Time.zone.parse. This was passing when the default time zone was UTC, but now Time.zone is set, the two methods return a different string.

:warning: This application is Continuously Deployed: :warning:

Merged changes are automatically deployed to staging and production.

Make sure you follow the guidance for deployments before you merge.

Check your branch is being deployed in the Release app, after merging.

@hannako 👍 thanks for raising this.
Sorry to be a pain, but I think we should leave the atom feed in UTC. It's already established in the feed and changing it does break backward compatibility. Also we do have a few other atom feeds in UTC around GOV.UK, so if we aim for consistency that would be good.

@hannako 👍 thanks for raising this.
Sorry to be a pain, but I think we should leave the atom feed in UTC. It's already established in the feed and changing it does break backward compatibility. Also we do have a few other atom feeds in UTC around GOV.UK, so if we aim for consistency that would be good.

@sihugh just said the same thing in a DM - great minds!! Just amending now @bevanloon  👍


Fix standing charge recency check error when valid_from is None

Thanks for the PR. I've added some comments to try and address an issue. Also if you could specify the tariff you're on so I can add some tests to try and prevent this from happening again in the future, that would be great :)

I was fixing another bug, and so I've pulled in the suggested change separately. Thanks for the effort to apply the fix.


deps: bump rsmt2d to 0.5.0

I tried updating to this version before but didn't like that we needed to keep both flattened and imported squares, so that code became even bulkier for the next currently unpushed iteration of Retriever, so I decided to wait until the requested rsmt2d API changes to land before upgrading(cc @adlerjohn), but now we have to update as core updated already.

🤔

@adlerjohn, I just rerun it, and now it works. I didn't change anything; it seems like some bug on CI. This happened specifically during the build of the integration testis jobs

@renaynay, refactor to remove flattened shares + remove codec and tree constructor from session and setting shares directly into the imported square. Maybe a few more things


Copy & Paste does not work in GB Studio 3 on Ubuntu 20.04

Describe the bug
Copy & Paste functions do not work in GB Studio 3 on Ubuntu 20.04.
To Reproduce
Steps to reproduce the behavior:
You can reproduce the bug by clicking for example on "Copy Scene". "Paste Scene" does not appear at all.
Tried it in a new empty project, in a sample project, and in an existing old project as well.
Expected behavior
"Paste" option should appear in the popup menu after you click on "Copy" on scenes, actors, events, etc.
Screenshots

Platform (please complete the following information):

OS: Ubuntu 20.04
App version: GB Studio 3

Additional context

Please try to use the issue template to keep bug reports consistent.
Would you be able to test this on 2.0beta5 from code>releases?
Is this a new issue or something on multiple versions.

Sorry for the inconsistency. I edited the original post to fit the template.
Previous versions including 2.0beta5 did not have this issue, so this is a new problem. (I downgraded GB Studio to 2.0beta5, by the way.)

+1ing the issue, I have it too in the same version

I overheard talk about trying to use clipboard data so you didn't "accidentally" paste raw json elsewhere, maybe that could be part of the issue? linux doesn't support raw data clipboard?
it might have been to avoid pasting it in a text box.
I'm concerned if we can't plain text paste json, in say notepad, there are a lot of tools blocked out from editing data, like collision or mettasprites, or just seeing how data looks under the hood.
It's very common for apps like after effects or nuke to create and paste raw text data, sometimes with a note on header to say "after effects keyframe data" first.

I don't think it is because of raw data clipboard. As I change back to version 2.0beta5, it immediately works, and my clipboard data has not been changed. Was there any change in clipboard management in versions 3.0.0 and 3.0.1?

Maybe it was a change in node or WebKit? As of a week or two ago I can't
paste images directly into discord (I use the browser version) and have to
manually pick them in my clipboard manager, which seems to process them in
a way chrome likes .
El 17/12/2021 04:59, "bunnymnemonic" @.***> escribió:

I don't think it is because of raw data clipboard. As I change back to
version 2.0beta5, it immediately works, and my clipboard data has not been
changed. Was there any change in clipboard management in versions 3.0.0 and
3.0.1?
—
Reply to this email directly, view it on GitHub
https://github.com/chrismaltby/gb-studio/issues/869#issuecomment-996512461,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEZZKHZFRTDKSWQTMICQNP3URLUWPANCNFSM5J52FYBA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you commented.Message ID:
@.***>

As I can see, clipboard management has been rewritten in 3.0.0 and 3.0.1. Copying might be the problem, because I can copy a scene from 2.0beta5, and "Paste" appears in 3.0.0. Of course, it cannot paste it because it is a different format (clipboard format and types has been introduced in the new version). I cannot fully understand the code but the problem might hide there.

I have just tested GB Studio 3.0.1 under Ubuntu 21.10 and Kubuntu 21.10. Clipboard does not work in neither.


Handle edit_prefix without VRF

Fixed a bug in the backend where the edit_prefix operation would fail for prefixes in a VRF where the VRF wasn't included in the prefix attributes.

LGTM - will check CI when rebased into py3-branch.


Docker base image verification check

See: https://github.com/slsa-framework/slsa-github-generator/blob/c0a6eaa12da7dbcb07a3a2975a02fb687b5a4874/.github/workflows/scripts/verify-base-images.sh

This doesn't really seem necessary.


migrate to latest version of NSwag

This is needed to upgrade YamlDotNet, in order to resolve inability to parse yaml files with long keys correctly (A MaxAliasLength of 128 breaks serialization of long keys in YamlDotNet).

Linking #553

Closed in #570


Create xpk package with utils module

Fixes / Features

Create xpk package
Create utils module
Refactor xpk.py to use utils module
Install xpk with pip as part of GH CI/CD workflows to verify it

This PR serves as a preparatory PR for further refactor. It introduces utils.py module to set an example for further changes.
Testing / Documentation
Tested manually

[ y ] Tests pass
[ n ] Appropriate changes to documentation are included in the PR - no user-facing changes

/assign @sharabiani
/assign @44past4

I will update and merge once we resolve discussion around the structure and naming

@sharabiani @Obliviour PTAL


Add dynamic date tag to allow easy viewing of photos before and after date of current photo

It is currently difficult to see photos either side of the current photo when you have that photo selected from a tag. For example, let's say I'm viewing all tags of John Smith but I now want to see photos before and after this photo. I can't see how I can see the prior photo to this the current photo if it is not John Smith.
I think it would be good if there was a dynamic tag generated, for the same day that the current photo was taken, and thus I could click on this dynamic tag (say 1 Jan 2023) and then all photos take on that day would be displayed. I could then see the photos before and after the tagged photo I was looking at.
The other way or reaching photos, before and after a displayed tagged photo, is by looking at the date that the photo was taken, and then searching for that day of photos. However, I haven't found a way of easily finding photos taken on say the 1-JAN-2023 as there doesn't appear to be a search date for an exact day?
The date of the photo is displayed when looking at photos so maybe this date could by hyperlinked to take you a group of photos that were taken on that date. This could also be extended to allowing a user to click on the location displayed so as to show you all photos from that location as well.

there doesn't appear to be a search date for an exact day?

True, it's not directly accessible. The closest thing currently available is via the Stats page. The Stats page shows a graph by time, and if you tap on nodes in that graph, you get a filter that appears just below. The graph is contextual so that if the current collection spreads over years, it will show a year filter. For months a month filter, and for days a day filter.

This could also be extended to allowing a user to click on the location displayed so as to show you all photos from that location as well.

Do you know you can tap on the country and place filters below the small map in the Info page?

But to get back to your request, I'll think about adding a similar filter for the day in the Info page.


Neko: Invalid field access : onComplete

OS:Windows 7 64-bit SP1
Haxe version (with Neko):3.4.2
Lime: 5.0.3
Code:
class Main extends Application {
    public function new () {
        super ();
	this.preloader.onComplete.add(function():Void{
	    trace("Complete");
        });
    }
}

Am I missing something?

Try overriding onPreloaderComplete in your Main class instead, preloader may be null at that stage, but using the onPreloadComplete callback instead should be helpful :smile:

I will destroy you last when I end the Matrix sir.


Essentials list V0.1

Essentials for initial release August 2016
Some of these may be mentioned in issues related to this milestone.
Make sure all these boxes are checked. If they are, we're ready for release! 🍻
Documentation

[x] Getting Started guide x
[x] API docs x
[x] Style guide x

Data

[x] Binary data storage format (e.g. HDF5)
[ ] Explicit use cases + format

[ ] Array ID names

[ ] Support for "complex" measurements (not using a Loop)

[ ] Modular use outside of a Loop

[ ] Multi-value parameters

[ ] Tuple
[ ] Array

[ ] Access from main process to datasets

Parallelism

[ ] "Foreground" fully functional with live plot x

[ ] No multiprocessing as default, keep in the code as "experimental" x

[ ] Logging + debugging to file x

Plotting

[ ] Live plotting x

Instruments x

[ ] Handling of massively asynchronous instruments (for example using concurrent.futures interface). x
[ ] Channels
[ ] Syntax:

instruments.channel_list[0].volt
voltages = [0,1,2,1,0]
instrument.channel_list.volt(voltages)

instruments.channel_list[0].set_async(0)
instruments.channel_list[1].set_async(1)
instruments.channel_list.do_things()

Syntax

[x] Loop(Combine(p1,p2)[(x0,y0),(x1,y1),..]).each(..).run(..) x
[x] qc.Measure(vna.s11, vna.s21).setup(..).teardown(..).run(..) and Loop(..).setup(..).teardown(..).run(..) x

We've changed directions so many times since this plan was aired, so I am closing this issue.


Remove use of _append

_append is not compatible with Yocto 3.4 (honister) because the syntax
for variable overrides has changed. Fortunately, there is only one
location where the old style of override was being used and it can
easily be converted to use += instead

Superseded by #15


second condition in the "actions" tab

[x] I checked for similar existing requests (both open and closed) before posting.
[x] My request is generic, other users may benefit from it too.

Proposal
The option to use a second condition in the "actions" tab for both "Notifications" and "Actions" besides the alarm event.
Additional info, As an simple example
Only send the notification/run the action when:
- an specific input_boolean is in the "on" state
- time or date condition is met
- etc

You can use the standard automations in HA for this.
I don't have plans to make a full duplicate of the automations functionality that HA has.

Hello. Thank you for your great work.
Regarding your previous answer. Yes, everything can be done with HA, even an alarm system.
Perhaps many of us are looking for a place to unite all the configuration of our alarm system.
Having more options in Alarmo helps and simplifies.
😀


Hamburger menu on landing page gets "selected" when used, on Android Firefox

When browsing the landing home page in mobile Firefox, on Android, trying to use the hamburger menu can result in it confusingly being "selected" as if it's text. See screenshot:

I can't seem to reproduce this in the mobile browsers I have handy: Chrome or Safari on iOS.
(Thanks @drakedevel for the report and screenshot!)

@brockwhittaker was this resolved by your recent work on this mobile UI?

Not sure if this is the right place to post this, but there seems to be a similar problem with the close sidebar icon 'X'. Happens on Chrome and Firefox on Android.

@brockwhittaker can you investigate?

Should have been fixed in #5347. Was that commit in at this point?

That may not have made it out to zulipchat.com yet.  @brockwhittaker if you can confirm it no longer exists in chat.zulip.org/hello, I think we can close.

@srimukhsai can you confirm the issue is resolved on chat.zulip.org/hello?

@timabbott the x icon still seems to be treated as text, and is selectable

Sent from my OnePlus ONEPLUS A3003 using FastHub


mime: should application/x-javascript be changed to application/javascript ?

https://github.com/golang/go/blob/829b64c1ead819bdf84d950581020c36f00cd02b/src/mime/type.go#L65
What did you do?
Serve javascript files with go. The application runs in a docker container based on golang:1-alpine
What did you expect to see?
Content-Type : application/javascript
What did you see instead?
Content-Type : application/x-javascript

Illustration did not fit in a playground : runnable example
relevant? rfc4329
As far as I can tell golang:1-alpine doesn't come with any registered mime types. This means that only the built in types are used for content type sniffing. application/javascript is not included in the built in types.
Should application/javascript be included and (separately) should application/x-javascript be removed?

This is #7498, which is still open. There was a CL (https://codereview.appspot.com/73070043) but (from the old thread):

According to Brad's comment on the CL, we need more proof that change is safe in the wild.

and then the discussion stalled and the change was not merged.

I've moved the old thread to the 1.11 milestone and tentatively labelled as "NeedsDecision" to give it a chance to be looked at in the near future. I guess you can comment in the old thread if you have any insights on why this would be a needed (and safe) change, to keep all the discussion in one place. I suggest we close this as a dup of #7498.

@ALTree Yes this can be closed as it is indeed a duplicate (search failed me, or overlooked it). Thank you for the fast response.


Silence update available message

I'm running serve 10.0.1 and I'm getting a message:
UPDATE AVAILABLE The latest version of `serve` is 10.0.2

I've been using serve for a long time and these constant messages to upgrade are super annoying. Could we have a way/flag to silence them please?

Added in https://github.com/zeit/serve/pull/457.

Any chance we could get an argument for this? Using an environment variable means that I'd have to use something like cross-env for my script to work for both... I'd be happy to open a PR to add a flag.


BluetoothLE find devices crashes with an ArgumentException if the system has an invalid device

If you run the below code (Console app with the Nuget package) on windows 10.0.19041 , it will crash with the following error.
code
using System;
using System.Threading.Tasks;
using InTheHand.Bluetooth;

namespace InTheHandBLETest
{
    class Program
    {
        static void Main(string[] args)
        {
            var discoveryTask = TestDeviceDiscovery();
            discoveryTask.Wait();
        }

        private static async Task<bool> TestDeviceDiscovery()
        {
            var discoveredDevices = await Bluetooth.ScanForDevicesAsync(new RequestDeviceOptions
            {
                AcceptAllDevices = true
            });
            Console.WriteLine($"found {discoveredDevices?.Count} devices");
            return discoveredDevices?.Count > 0;
        }
    }
}

error
System.AggregateException
  HResult=0x80131500
  Message=One or more errors occurred. (The parameter is incorrect.

The provided device ID is not a valid BluetoothLEDevice object.)
  Source=System.Private.CoreLib
  StackTrace:
   at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
   at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.Wait()
   at InTheHandBLETest.Program.Main(String[] args) in C:\Users\stephen\source\repos\InTheHandBLETest\Program.cs:line 12

  This exception was originally thrown at this call stack:
    [External Code]
    InTheHandBLETest.Program.TestDeviceDiscovery() in Program.cs

Inner Exception 1:
ArgumentException: The parameter is incorrect.

The provided device ID is not a valid BluetoothLEDevice object.

the same code worked last christmas, so I think an update killed it. Any chance of fixing this?

I ran the above code directly in the repo code so I could debug it better, and it seems that one device that my PC thinks is connected (even though it isn't, and it reports an error when I attempt to click remove device) is causing the error. I guess this is primarily a problem with my environment, though it would be amazing if the code could catch that exception and keep going, rather than blowing up and taking the app down with it.

I produced a fix that works in my enviroment in #135 . The root cause of the problem seems to be the broken driver or whatever that has left me with the zombie device, but with this fix at least this can still run even in the presence of that mess.

Thanks for the pull request, I'll go ahead and close the issue now.

How did you solve it? I had the same problem, I couldn't search the device.

@bbhxwl there is a fix in the above pull request. I don't know when the version containing that PR will be released, but until then you can built it yourself.
Alternatively, if you are able to, disconnect all the bluetooth devices and make sure your PC has forgotten them.

@bbhxwl there is a fix in the above pull request. I don't know when the version containing that PR will be released, but until then you can built it yourself.
Alternatively, if you are able to, disconnect all the bluetooth devices and make sure your PC has forgotten them.

Can I download the latest project and compile it myself? There is a previously paired one in my Bluetooth device, which can't be deleted. I don't know why.

yep, just clone the branch at https://github.com/stephen-systemfriend/32feet/tree/invalid-device-id-check.
I'm currently actually using a project reference to that from visual studio while I wait for the next release

Sorry for the delay, the latest version 4.0.20 should be appearing on NuGet now.

是的，只需在https://github.com/stephen-systemfriend/32feet/tree/invalid-device-id-check克隆分支。
在等待下一个版本时，我目前实际上正在使用来自 Visual Studio 的项目引用

Is there a compiled DLL for WinForm? I can't compile here. Very urgent, if you have compiled, can you send me one?
seriousness code explain project file that 's ok Disable display status
error XA5207 Android jar with API level 27 not found. This means that the Android SDK platform with API level 27 is not installed. Please install it in Android SDK manager Tools > Android > Android SDK Manager... Or change the xamarin.android project to target the installed API version（ Missing C: (program files (x86)  Android  Android SDK  platforms  android-27  Android. Jar.) InTheHand.BluetoothLE C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets five hundred and six

The version with the fix is now on NuGet - https://www.nuget.org/packages/InTheHand.BluetoothLE/

The version with the fix is now on NuGet - https://www.nuget.org/packages/InTheHand.BluetoothLE/

Thank you very much, my English is not good, China can not search WinForm related Bluetooth program, thank you for your efforts.

The version with the fix is now on NuGet - https://www.nuget.org/packages/InTheHand.BluetoothLE/
ScanForDevicesAsync and  RequestLEScanAsync

What's the difference?
What is the event of asynchronously scanning ble?

RequestLEScan is a WebBluetooth method which returns a BluetoothLEScan which performs continuous scanning until stopped and raises events in the main Bluetooth object. ScanForDevicesAsync does a one-off scan of available devices and returns a collection. It's provided by the library for convenience but has no equivalent in the Web Bluetooth standard which the library tries to follow.


[ADP-286] Enable tagging latest container

Issue Number
ADP-286
Overview

Adds a GitHub action that triggers the "docker-build-push.nix"
script on release.
Modified the "docker-build-push.nix" script:
On release:
- upload byron image as "latest"
- upload images: "-byron" and "-jormungandr"
- upload images: "byron" and "jormungandr"
On master branch:
- upload "dev-master-byron" and "dev-master-jormungandr"
On every commit:
- upload "<COMMIT_ID>-byron" and "<COMMIT_ID>-jormungandr"
The difference here is that we're using a release workflow
consistent with the other repo's addressed under [ADP-286].
Additionally, we're uploading a image with the commit ID on every
build.
Note I've also added a "Buildkite_Token" GitHub secret so the action
can talk to BuildKite.

Comments

The idea behind this was to bring this repo's
"docker-build-push.nix" further into aligment with the rest of the
repo's under [ADP-286], but I'm not particularly sure I've achieved
that. This repo has quite different image requirements, namely:

"dev-master" images
"date-backend" images

Hi @KtorZ
The brief for AD-286 as it was given to us and as implemented elsewhere, was that all containers tagged latest must be triggered from the GitHub release process.
The existing workflow does not do this, hence this PR which does.
We have no ownership over this workflow, we're just delivering what was asked of us. If it's not actually wanted, then this PR brings no value :smile:

Thanks, we continue to trigger builds with v20* tag pushes for now because they work well enough.


travis failing on npm install of geojs

@jbeezley
This just started showing up.  Travis is failing, but in a way that you can't even get to the build from the PR--on the PR page the build looks like it is running forever.
https://travis-ci.org/Kitware/minerva/builds/84422719

39.53s$ npm install
npm WARN engine<EMAIL_ADDRESS>wanted: {"node":">=0.10.40"} (current: {"node":"0.10.36","npm":"3.3.7"})
npm WARN engine<EMAIL_ADDRESS>wanted: {"node":">=0.10.40"} (current: {"node":"0.10.36","npm":"3.3.7"})
npm WARN engine<EMAIL_ADDRESS>wanted: {"node":">=0.10.40"} (current: {"node":"0.10.36","npm":"3.3.7"})
npm WARN prefer global<EMAIL_ADDRESS>should be installed with -g
npm WARN prefer global<EMAIL_ADDRESS>should be installed with -g
<EMAIL_ADDRESS>postinstall /home/travis/build/girder/plugins/minerva/node_modules/geojs
bower --quiet install
<EMAIL_ADDRESS>/home/travis/build/girder/plugins/minerva
└─┬<EMAIL_ADDRESS>└──<EMAIL_ADDRESS>npm WARN EPACKAGEJSON<EMAIL_ADDRESS>No repository field.
npm ERR! Linux 3.13.0-40-generic
npm ERR! argv "node" "/home/travis/.nvm/v0.10.36/bin/npm" "install"
npm ERR! node v0.10.36
npm ERR! npm  v3.3.7
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno Unknown system errno 7
npm ERR! syscall spawn
npm ERR<EMAIL_ADDRESS>postinstall: bower --quiet install
npm ERR! spawn Unknown system errno 7
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>postinstall script 'bower --quiet install'.
npm ERR! This is most likely a problem with the geojs package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     bower --quiet install
npm ERR! You can get their info via:
npm ERR!     npm owner ls geojs
npm ERR! There is likely additional logging output above.
<EMAIL_ADDRESS>/home/travis/build/girder/plugins/minerva
└─┬<EMAIL_ADDRESS>└──<EMAIL_ADDRESS>
I ran npm install on my dev machine (Ubuntu 14.04, and no doubt some other env differences from Travis), and got

bower bootswatch#~3.3     invalid-meta bootswatch is missing "main" entry in bower.json

though npm install completed successfully for me.
This is a known, but unresolved issue, and I can't tell if this is even the issue I'm facing on Travis.
Any advice?

I also get an error running locally.  I don't think it is related to bootswatch.  I'll look into today.


Rollback #1089 & #1141 unnecessary changes

Type of change

[x] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Other (updates to documentation, formatting, etc.)

Description
This PR rollback unnecessary changes & add the related tests.
Add XrmApp.IsTabVisible(string tabName) method (small useful feature)
Issues addressed
#1089 introduce a Bug, by adding a redundant condition. Please check comments in this PR
#1141 Fix the Bug introduced in PR #1089
I retest this logic, in different environments with & without MFA, also deactivating the Keep Signed-In Dialog. It works in all cases.
All submissions:

[x] My code follows the code style of this project.
[x] Do existing samples that are effected by this change still run?
[x] I have added samples for new functionality.
[x] I raise detailed error messages when possible.
[x] My code does not rely on labels that have the option to be hidden.

Which browsers was this tested on?

[x] Chrome
[ ] Firefox
[ ] IE
[ ] Edge

@imartinflores, @samadane, @tpalus, @ewingjm please consider review this PR, in case that you have some scenario to be revised, please contact me
I will try to find a way to make the Login faster, eventually try reuse the authentication inside the test class.

Hi @AngelRodriguez8008 , the change was needed because we did not use MFA, and for some reason, the validation was going through and the error message "Something went wrong entering the OTC" was thrown. With the change, if you just set it as "",  it does work. I have not checked your PR, but if it is just a rollback , it probably causes the issue with the validation again. You can check the last Comments on the previous PR.

@AngelRodriguez8008 dont remember exactly now, but either the "EnterOneTimeCode" or "ClickStaySignedIn" were not evaluating property, then the "OTC message was thrown". Im guessing with the rollback, it will start happening again. As for now, that PR resolves it just by using MFA as an empty string .

@imartinflores if you "resolves it just by using MFA as an empty string" than you condition  (mfaSecretKey != null) will be always true & is not required anyway.
I got this error too, in one scenario. I fixed it by Transform to Unsecure String and then comprare it if null or empty string.
private bool EnterOneTimeCode(IWebDriver driver, SecureString mfaSecretKey) {
    ...
    string key = mfaSecretKey?.ToUnsecureString(); // <- this 2FA secret key.
    if (string.IsNullOrWhiteSpace(key))
           throw new InvalidOperationException("The application is wait for the OTC but your MFA-SecretKey is not set. Please check your configuration.");
    ...

@AngelRodriguez8008 will be true if you specify some value, even an empty string. If you do not specify anything, it will be false, and will go through the validation. Anyways, happy to hear you've done that as you could reproduce the same issue seems like. So, I guess all sorted :)


Using React Native views in RecyclerView

We are trying to place React Native views (with initialprops) into recyclerview.
Everything seems to load but the react native view doesn't show unlless we force size, then get crash:
IllegalViewOperationException: ViewManager for tag 871 could not be found
and then when we add another one we get a crash:
com.facebook.react.uimanager.IllegalViewOperationException: Trying to remove a view index above child count 0 view tag: 1
detail: View tag:11
children(0): [
],
indicesToRemove(1): [
0,
],
tagsToDelete(1): [
3,
]
We are using RN version 0.23.1 - would upgrading the version help? We use a similar approach on iOS and it is flawless.

Not sure exactly what RecyclerView is, but I'm experiencing this error message as well on an Android device.

Me too on Android, without using RecyclerView. It happens always when the app is brought back from the background. Using RN 0.33.0 atm

Same error on android, RN 0.38.1

Closing this issue because it has been inactive for a while. If you think it should still be opened let us know why.

I'm on 0.49.5 and it still happens on my android

0.49.5, have the same problem

0.52.0,have the same problem. open app crash  quick.


indentExistsSubqueries is throwing error when i try to add to Arbori program in Custom Format of the Preferences

When i try to add the code for indentExistsSubqueries i get the following error:

Please note that i use SQL developer  Version <IP_ADDRESS>

Thank you @rthangam.
As mentioned in the introduction chapter, the provided settings require a specific version of SQL Developer.
19.4.0*
The reason for this is that we use JavaScript callbacks which are not supported in 19.1.0. As a result, this error is expected.
I strongly recommend to use the latest version of SQL Developer and import the settings as described.
I'm closing this issue as we do not plan to support old versions of SQL Developer. However, we do plan to support newer versions as they become available.

Thanks Philipp let me try using latest version

I tried using trivadis_advanced_format.xml that works fine but i am unable to use trivadis_custom_format.arbori because of the above error? Does that mean i can't use the settings or something is wrong with the way i am doing it ?

Are you using version 19.4.0?  - This is a mandatory prerequisite. This error will not occur in this version.

Sorry_ for the trouble i will try in 19.4.0 and confirm

No problem. Please let me know, if it works. Thanks.

@PhilippSalvisberg works great!! thanks for the excellent writeup :)


Sporadic SyntaxException w/ Python3.11

We use mako for rendering CICD Pipeline Definitions (YAML files). It is a rather complex template w/ a lot of Mako-Function-Definitions and nesting + multithreading. The resulting documents vary in size (depending on input-parameters), and are typically between ~300 kiB and ~1.2 MiB.
The template was used w/ Python-versions 3.6 .. 3.10. When upgrading to 3.11, we saw (and still see) sporadic SyntaxExceptions, which roughly occur in about 5% of the time (w/ unchanged template-parameters, of course!). I started working on a minimalised reproducer. If instantiating the same template w/ same parameters 64 times using 2 threads, I almost always see at least one exception stacktrace. The incriminated lines vary, whereas the Mako-part of the stacktrace seems to be always the same.
The error does not seem to occur when limiting concurrency to just one thread. Thus, I suspect a race-condition, probably within Mako's codebase.
The error occurs for latest versions of python3 alpine (3.11.3-r11) when running inside a virtualisation container, and archlinux (3.11.3-1) when running natively.
Example Stacktrace
Traceback (most recent call last):
  File "/home/redacted/.local/lib/python3.11/site-packages/mako/pyparser.py", line 36, in parse
    return _ast_util.parse(code, "<unknown>", mode)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/redacted/.local/lib/python3.11/site-packages/mako/_ast_util.py", line 91, in parse
    return compile(expr, filename, mode, PyCF_ONLY_AST)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
SystemError: AST constructor recursion depth mismatch (before=63, after=65)

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/mnt/shared_profile/src/sap/makobug-reproducer/concourse/replicator.py", line 140, in render
    definition_descriptor = self._render(definition_descriptor)
                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/mnt/shared_profile/src/sap/makobug-reproducer/concourse/replicator.py", line 211, in _render
    t = mako.template.Template(template_contents, lookup=self.lookup)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/redacted/.local/lib/python3.11/site-packages/mako/template.py", line 300, in __init__
    (code, module) = _compile_text(self, text, filename)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/redacted/.local/lib/python3.11/site-packages/mako/template.py", line 677, in _compile_text
    source, lexer = _compile(
                    ^^^^^^^^^
  File "/home/redacted/.local/lib/python3.11/site-packages/mako/template.py", line 657, in _compile
    node = lexer.parse()
           ^^^^^^^^^^^^^
  File "/home/redacted/.local/lib/python3.11/site-packages/mako/lexer.py", line 248, in parse
    if self.match_python_block():
       ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/redacted/.local/lib/python3.11/site-packages/mako/lexer.py", line 392, in match_python_block
    self.append_node(
  File "/home/redacted/.local/lib/python3.11/site-packages/mako/lexer.py", line 129, in append_node
    node = nodecls(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/redacted/.local/lib/python3.11/site-packages/mako/parsetree.py", line 158, in __init__
    self.code = ast.PythonCode(text, **self.exception_kwargs)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/redacted/.local/lib/python3.11/site-packages/mako/ast.py", line 42, in __init__
    expr = pyparser.parse(code.lstrip(), "exec", **exception_kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/redacted/.local/lib/python3.11/site-packages/mako/pyparser.py", line 38, in parse
    raise exceptions.SyntaxException(
mako.exceptions.SyntaxException: (SystemError) AST constructor recursion depth mismatch (before=63, after=65) ('import os\n\nimport oci.auth as oa\nimport model.cont') at line: 2 char: 1

It is probably worth mentioning that by decreasing the template's output size, the likelihood of this error seems to become smaller.
I could share a copy of my somewhat slimmed-down reproducer; it still contains most of the code from the repository I referenced above, if this is considered helpful.

it could be a bug in py3.11 itself.   I haven't dealt with that code in probably more than 10 years so, sure, a real reproducer, as small as possible (it really should just be a single template) is an absolute minimum to do anything here.

I created a reproducer (makobug-reproducer.tar.gz).
To use, you need (obviously) python3.11 + install packages from requirements.txt.
To run, simply execute run-me.py
For your convenience, I also built an OCI Container Image (aka Docker Image); Dockerfile is included in uploaded tar-file. So as an alternative to installing and running locally, you might run:

docker pull eu.gcr.io/gardener-project/cc/makobug-reproducer:1
docker run eu.gcr.io/gardener-project/cc/makobug-reproducer:1 cc-utils/run-me.py

I hard-coded parameters such as amount of worker-threads (line 106, max_workers) and the amount of renderings to do (line 124, range).
To my experience, this script will yield exceptions as the one I pasted above almost always; I did see occasional runs were no stacktraces were printed. Re-running at most twice always gave stacktraces again.

hi that .tar.gz is 283 source files.  it's an entire application.
unfortunately I can't  run an unknown application of enormous complexity and unknown origin within my own environment; instead, please supply a single, self contained  mako template that reproduces the problem when compiled.
if this is not feasible, I'm sure if this issue is widespread it will soon enough be reported in other forms as python 3.11 gains adoption.

or print statements, or dump to a file, etc...

The best option is probably to try a custom version of mako that has
try:
  t = mako.template.Template(template_contents, lookup=self.lookup)
except SyntaxException:
  print(template_contents)
  raise

@zzzeek maybe doing something like this, probably logging to a logger, may make sense regardless of this issue though

Mako already does this, poster could also turn this on, see https://docs.makotemplates.org/en/latest/usage.html#handling-exceptions

@zzzeek : sorry for replying thus late. I dumped the contents of template_contents into a (gzipped) file
I created this using (as suggested) the following code-block:
 try:
     t = mako.template.Template(template_contents, lookup=self.lookup)
 except:
     with open('/src/sap/makobug-reproducer/template_contents.dump', 'w') as f:
         f.write(template_contents)

it is probably worth mentioning that using a bare except was the only way I could actually handle this exception. Neither of SystemError, mako.exceptions.SyntaxException, SyntaxError worked.

hi and thanks for this.
Unfortunately no error is reproduced, I can load this template under Python 3.11.3 and compile it without issue.
what happens if you use the given template in a program like this (assume you put the content into foo.mako)?

from mako.template import Template

t = Template(filename="foo.mako")
print(t.code)

what's the exact Python 3.11 version you are using?

Unfortunately no error is reproduced, I can load this template under Python 3.11.3 and compile it without issue.

did you try this w/ multithreading (at least two threads) and multiple executions? As I explained initially, this error occurs sporadically, and only (according to my observations) when concurrency is involved.
If using e.g. four threads, the issue occurs almost always at least once if doing the template-instantiation ~256 times
As stated above, I can reproduce this error in the following environments:

python3 alpine (3.11.3-r11) - running within a virtualisation container (aka docker container)
python (3.11.3-2 and 3.11.3-2) from arch linux (no virtualisation involved)

If running this just a couple of times, or running it hundreds / thousands of times, but single-threaded, this error never occurs. However, it occurs quite frequently if doing multithreading (but only as of python3.11).
I will try whether I can reproduce the error using the approach you shared and will write another update to this issue.

you can try adding threads to the POC but I can't see any way that threads would have an effect here, the Mako compilation process works on a local datastructure that is not accessible to other functions.  I had assumed the error was sporadic only because this particular template was not getting compiled every time.

it's also not clear why, if you are using a file-based TemplateLookup, that this template would be getting recompiled at all.  Mako writes a module file to disk and reuses that.

@zzzeek : originally, it was planned to have a multitude of templates. considering that we actually have just one (and might do some caching anyhow), I might change this and cache the template.
In the reproducer I uploaded the multithreading is done in the run-me.py script

Mako writes a module file to disk and reuses that.

@zzzeek : would you be so kind as to give me a hint to the code doing that? That might be a very good explanation for the race-condition I assume. Although not a good explanation of why this seems to only affect python3.11, admittedly.

hi -
You use a TemplateLookup and give it a file path to store modules, and then use the TemplateLookup to retrieve .mako files from the filesystem as compiled templates.
This works best when you have .mako files that you are loading and rendering in your application.
the second example at https://docs.makotemplates.org/en/latest/usage.html#using-templatelookup illustrates how to configure TemplateLookup with a file path.
The module caching thing is not readily available for on-the-fly templates, what you could do for on-the-fly templates is write them out to .mako files, then use TemplateLookup to access them.
Otherwise for local in-memory Template objects, Mako does not make use of global state when compiling, although there is a global set of compiled template modules (after the compilation is done) that are indirectly linked to template URLs or in-memory identifiers; I can see here there is a potential for key conflicts if you have anonymously-identified Template objects but this map isn't used when compilation proceeds.

The only thing I can see that could conceivably be some kind of "global" would be when we use the compile() Python builtin we pass a module identifier to it, and for an anonymous Template like you have, that identifer will be hash(id(template)), so there could be re-use of the same id with different template contents.    That would be very unusual if compile() somehow held onto state from a previous call.
There are many ways to fix your code here.  One is to put the lock in your code:
template_mutex = threading.Lock()

def step_template(name):
     step_file = ci.util.existing_file(os.path.join(steps_dir, name + '.mako'))

     with template_mutex:
         return mako.template.Template(filename=step_file)

Another, better and much more idiomatic way is to use TemplateLookup as mentioned, since these are file based templates:
lookup = TemplateLookup(directories=[steps_dir])

def step_template(name):
     step_file = ci.util.existing_file(os.path.join(steps_dir, name + '.mako'))

     return lookup.get_template(name + ".mako")

TemplateLookup uses a mutex for its compilation, so that would eliminate the problem.     Then, you will get a lot less compile calls if you give your lookup a module directory:
lookup = TemplateLookup(directories=[steps_dir], module_directory='/tmp/mako_modules')

def step_template(name):
     step_file = ci.util.existing_file(os.path.join(steps_dir, name + '.mako'))

     return lookup.get_template(name + ".mako")

your program will put .py files into /tmp/mako_modules that get reused.

I could further narrow the issue down. If I add just lock Template._compile_text and Template._compile_from_file from parallel execution, the issue also does not appear.
300         # if plain text, compile code in memory only
301         if text is not None:
302             with lock:
303                 (code, module) = _compile_text(self, text, filename)
304             self._code = code
305             self._source = text
306             ModuleInfo(module, None, self, filename, code, text, uri)
307         elif filename is not None:
308             # if template filename and a module directory, load
309             # a filesystem-based module file, generating if needed
310             if module_filename is not None:
311                 path = module_filename
312                 print(f'{module_filename=}')
313             elif module_directory is not None:
314                 print(f'{module_directory=}')
315                 path = os.path.abspath(
316                     os.path.join(
317                         os.path.normpath(module_directory), u_norm + ".py"
318                     )
319                 )
320             else:
321                 path = None
322             with lock:
323                 module = self._compile_from_file(path, filename)
324         else:
325             raise exceptions.RuntimeException(
326                 "Template requires text or filename"
327             )

_compile_from_file() calls _compile_text() so that code would deadlock if _compile_from_file() does not have a path

well I just successfully executed it w/o issues :-)

@zzzeek : switching to TemplateLookup sounds like a good idea, too. However, I still think there is a bug in template.Template. Instantiating multiple instances of a class and calling their methods should not run into race-conditions I think

At this point you should have enough information to create a single short script that demonstrates the problem, take my script at https://github.com/sqlalchemy/mako/issues/378#issuecomment-1600811371 and adjust

well I just successfully executed it w/o issues :-)

which means it's being called with a path, which seems to indicate there are other calls to TemplateLookup against the same file with different arguments

as far as I understand the code, _compile_from_file calls _compile_module_file, so no deadlock :-)
yeah, I think this should be feasible
My code calls Template at two locations. one time using a fpath, one time passing a string.
I also changed it to always pass a string (in this case, the race-condition still occurs - so I think there is a race-condition involved in the "_compile" method

technically, you sometimes do raise an exception already ;-)

as far as I understand the code, _compile_from_file calls _compile_module_file, so no deadlock :-)

take a look.  there's a conditional, so it can go either way

in my case, path is always None (I checked this by adding a print..)

I am not saying adding a lock is a good idea for a fix. this is how far I came in finding the root-cause

OK in your code you are locking outside _compile_text() , so that's why that's OK

I started (after observing that adding some caching will reduce likelihood of the error) to add lock to full __init__, then started to reduce the lines of code I had to lock and still not get an error

anyhow: using this knowledge, I can certainly fix my code. Still, I think this is a bug in mako - albeit one that might not affect many users besides me

it may very well be a bug in py3.11 itself.   since you can reproduce, work to iteratively reduce your program one step at a time, ensuring reproduction each time, down to a script that looks like this one

@zzzeek : interestingly, switching to mako.lookup.TemplateLookup as you suggested did seem to fix the issue (after removing the caching I added earlier, and of course, after removing again the lock I added to mako's code).
It will still be an interesting task to add a reproducer for sure.

I have also been encountering the same issue in my app. It also occurs intermittently and only with Python 3.11.
https://www.reddit.com/r/Tautulli/comments/1042t13/error_syntaxexception_systemerror_ast_constructor/
I am already using TemplateLookup.
https://github.com/Tautulli/Tautulli/blob/ea6c6078df410f333a060016dfce18c21ad134c9/plexpy/webserve.py#L126

I think I solved my issue. I was initializing a new TemplateLookup every single time I served a template. Re-factoring my code so that I only initialize it once seems to have fixed it.

OK but we want to figure out why concurrent calls to compile() is causing this problem (And also why my test script above does not seem to have this problem)

I have been trying to reproduce the error with a small test script but have been unsuccessful.

I thus far also did not succeed in creating a minified reproducer. Will update the issue once I do find some more time.

I am also seeing this occasionally pop up in a production application since updating to python 3.11. It's very rare, relative to the number of template renders.
We are using a customised TemplateLookup that inherits from the mako TemplateLookup. Thanks for all the information provided on this issue - I think that will really help narrow this down for us.

Just chiming in that I've also seen this behavior sporadically with Python 3.11
It occurs when using TemplateLookup.get_template. It's happening very rarely, I'd say about once a week in a nightly job that calls hundreds of renders via an API that uses mako.
Each API call handles a single render, the lookup looks roughly like:
lookup = TemplateLookup(directories=[templates_path])
try:
    template = lookup.get_template(specific_template)
except TemplateLookupException:
    template = lookup.get_template(common_template)
return template

Exception observed is:
API Exception: SyntaxException('(SystemError) AST constructor recursion depth mismatch (before=93, after=85) (\'if <condition>:pass\') in file <file_path>

This seems more an issue with python: this pytest issue reports the same problem without mako involvement https://github.com/pytest-dev/pytest/issues/10874

wow howd you find that?

someone in that pytest issue actually linked this one, and github links it if you scroll up


Add IRequestContextAccessor or equivalent

Product
Hot Chocolate
Is your feature request related to a problem?
I need to access the ClaimsPrincipal in a DI context. To do so, I've used:
builder.Services.AddScoped<IActiveUser>(serviceProvider => new ActiveUser(
    serviceProvider.GetRequiredService<IHttpContextAccessor>().HttpContext!.User));

However, this will not work in a testing environment, where there is no HttpContext. I need to access the ClaimsPrincipal that is set via global state.
From what I understand, this was possible using IRequestContextAccessor in previous versions of Hot Chocolate, but this interface is no longer available.
The solution you'd like
Bring back IRequestContextAccessor, or some equivalent means of accessing global state within a DI context.

We will not bring back IRequestContextAccessor. If you need such a functionality you can implement it on your own by using the IRequestContextEnricher.


Add return types to comply with noImplicitAny rule

When using this library, tsc (with the noImplicitAny rule enabled) gives errors due to these functions not having a return type.  This commit adds the return type void to the functions and their declarations in the .d.ts file.
Thanks!

@oneeman,
Thanks for your contribution.
To ensure that the project team has proper rights to use your work, please complete the Contribution License Agreement at https://cla.microsoft.com.
It will cover your contributions to all Microsoft-managed open source projects.
Thanks,
Microsoft Pull Request Bot

@oneeman, thanks for signing the contribution license agreement. We will now validate the agreement and then the pull request.
Thanks, Microsoft Pull Request Bot


3/65 detections on virus total.

https://www.virustotal.com/gui/file/930db8abacaecf81ac3d9f549ed90b37810f21943eacdc9edefb4c5e37d7a9ec
Artemis and Trojan.Generic, probably false positives, but what is concerning is the Trojan[PSW]/Python.Disco reported by Antiy-AVL
I dont know much about that company, but still make me a little uneasy? Is this all normal operation?

Version 2.0.0

Thank you for bringing the issue to my attention. I understand your concern and would like to reassure you that I take the security of my software seriously.
They detected us as vurus, the major reason is we don't have code signing certificate. (Publisher not verified)
False positive detections are not uncommon, especially for software that is not digitally signed or does not have a publisher certificate. However, I will investigate the issue to ensure that the software is indeed safe to use.
In the meantime, please let me know if you have any further questions or concerns. Thank you for your patience and understanding.

https://www.virustotal.com/gui/file/930db8abacaecf81ac3d9f549ed90b37810f21943eacdc9edefb4c5e37d7a9ec
Artemis and Trojan.Generic, probably false positives, but what is concerning is the Trojan[PSW]/Python.Disco reported by Antiy-AVL
I dont know much about that company, but still make me a little uneasy? Is this all normal operation?
Same detections tested on 2.0.0 , 1.1.2 , and 1.1.0 (windows)

https://www.virustotal.com/gui/url/4e030c48f314e5d9f662f67cac85110bad541744105ee6bf82171a759e014763/details

Thanks for the update. I did get less detentions on the setup file. The virustotal results were based on the installed exe file, and not the setup file.


ScaleTransform doesn't work

Describe the bug
ScaleTransform (and probably other transforms) doesn't work now.
To Reproduce
Launch Render demo and hover abode two first borders in the Animations page - nothing happens.
Expected behavior
It should change size, rotate, etc.

Version: 11.0.0-rc1.1

I wanted to open a more general issue about this: the problem is that the animator isn't registered.
Fortunately the workaround is quite simple so it isn't blocking: add _ = new TranslateTransform(); in the window's constructor, before InitializeComponent and animations will work fine. (You can instantiate any transform type - the base class Transform is what's registering the animator for all kind of transforms).
I encountered the same problem with animating a simple Border.Background from one color to another: most theme resources are compiled to ImmutableSolidColorBrush: the mutable SolidColorBrush is never instantiated, and the brush animator never registered. Note that in this case, an exception "no animator registered" occurs, which doesn't happen for the transforms.
More generally, I think the animator registration should be reworked: static constructors aren't guaranteed to be called, and last I checked they aren't IL trimmable at all.

@kekekeks also binding RotateTransform (and, i suppose, other transforms) to a value doesn't work.
E.g. this works:
<Animation Duration="0:0:1.2" IterationCount="INFINITE">
  <KeyFrame Cue="0%">
    <Setter Property="RotateTransform.Angle" Value="0" />
  </KeyFrame>
  <KeyFrame Cue="50%">
    <Setter Property="RotateTransform.Angle" Value="100" />
  </KeyFrame>
  <KeyFrame Cue="60%">
    <Setter Property="RotateTransform.Angle" Value="200" />
  </KeyFrame>
  <KeyFrame Cue="100%">
    <Setter Property="RotateTransform.Angle" Value="300" />
  </KeyFrame>
</Animation>

But this doesn't work (MyValue is actually changing, i can confirm it it dev tools):
<Setter Property="RotateTransform.Angle" Value="{TemplateBinding MyValue}" />

Fixed


Improve UI for "Not Found" Page

"Not Found" page needs to be updated with a new UI.
Ideas

Not Found Image or Icon in between
LinkStack Logo Branding at Bottom
Link to LinkStack for new user account creation.

Please assign this issue to my name

pls assign this issue to me

I can work on this....

Hello @siddhantdixit can you please assign me this issue, I would like to design it


Update distribution/install scripts & info

Main changes here are from going through instructions on http://packaging.python.org/


1.10.3 version causing dependency issues for  com.google.common.collect package

Updating to the latest version of this library 1.10.3 from 1.3.0 causes issues importing the google collect packages when a maven build is run on a project using this library. The build wouldnt work unless an com.google.guava dependency is added to the parent pom.
Some dev notes incase it is useful. There is a difference in pom between the two versions where 1.3.0 included a com.google.guava compile dependency while 1.10.3 is missing that dependency.

com.google.guava
guava
23.0
compile

org.spockframework
spock-core
1.1-groovy-2.4
test

Thank you for pointing out the issue. It turns out it was present since 1.9.0 (and until 1.10.3) because of changes in the publishing task.
As of 1.10.4 the issue is fixed and the dependency (com.google.guava:guava) is included in the jar.


Port foo_openlyrics to DeaDBeeF

https://en.wikipedia.org/wiki/DeaDBeeF

No. Openlyrics is specifically an fb2k plugin. I don't use deadbeef and I don't expect to any time soon.


Feature Request

Can you guys please add something that will output the response in a structured format?
Something like OpenAI Function calling. That feature will help developers get structured responses to build on top of the output received from LLM.

Thanks for the idea, we'll be sure to take it into consideration!


NameError: name 'unicode' is not defined

$ elyzer --es foo --index bar --analyzer my_analizer 'xxx'
Traceback (most recent call last):
  File "/usr/bin/elyzer", line 9, in <module>
    load_entry_point('elyzer==1.1.0', 'console_scripts', 'elyzer')()
  File "/usr/lib/python3.4/site-packages/elyzer/__main__.py", line 42, in main
    es=es))
  File "/usr/lib/python3.4/site-packages/elyzer/elyzer.py", line 36, in getAnalyzer
    normalizeAnalyzer(analyzer)
  File "/usr/lib/python3.4/site-packages/elyzer/elyzer.py", line 19, in normalizeAnalyzer
    if (isinstance(analyzer['char_filter'], str) or isinstance(analyzer['char_filter'], unicode)):
NameError: name 'unicode' is not defined

Do not you have people of the same problem?

My patch... Is it right thing?
def normalizeAnalyzer(analyzer):
    try:
-        if (isinstance(analyzer['char_filter'], str) or isinstance(analyzer['char_filter'], unicode)):
+        if (isinstance(analyzer['char_filter'], str)):
            analyzer['char_filter'] = [analyzer['char_filter']]
    except KeyError:
        analyzer['char_filter'] = []

Having same issue. Is this a python 3.5 or 3.6 thing?

Fixed in v1.2.0


API data is flawed at best, misleading at worst

Before I start, I'll preface by saying that I use HERE Maps on a near daily basis for enterprise development, so I have a fairly decent working knowledge of the platform.
This project is using a flawed data philosophy to try and track speeds on certain roads or sections of roads, and the use of "a vehicle was detected" in tweet text is tricking a lot of people into thinking that this is tracking individual speeding drivers, when this is not the case.
HERE Maps' traffic flow API is not tracking individual drivers speeds down certain roads, but rather appears to be doing some kind of aggregation to determine the speed that traffic can flow on a small section of a particular road, regardless of the speed limit. The speed values aren't very well documented on HERE Maps, so I can't claim this is the case with 100% certainty, but regardless it's essentially the same type of system that turns road sections from green to red in the traffic layer on Google Maps, and not a means of tracking the speeds that drivers are actually traveling down a section of road.
Worse, this project is doing this without taking HERE Maps' confidence rating (CN) into consideration, where > 0.7 && <= 1.0  is (close to) real-time data, > 0.5 && <= 0.7 is historical data over an undetermined period of time, and <= 0.5 is whatever HERE Maps thinks the speed limit is on that road section. So in most cases, this is tweeting a speed that HERE Maps pulled out of thin air which it thinks you can travel right now, and in the worst case it's tweeting whatever HERE Maps thinks the speed limit is.
According to HERE Maps:

To only report speeds where real time data is available, we recommend that you include speeds with a confidence greater than 0.7 CN and include road closures with a value = -1.0 CN

Thank you @UmbyUmbreon it was never the intention to mislead - we have posted a pined tweet on twitter and will research further.  if you or anyone else have recommendations on how to update the flows please do raise a pull request.

@UmbyUmbreon I've updated the 4 blueprints to reflect these comments and add in filters for realtime, thanks again for taking the time to document this and share.  Please let me know if you feel more changes should be made before I close this issue.

Further research documentation and background (Work in Progress)
Ref: Here Traffic API
Ref: StackOverflow
The XML schema has descriptions of the field acronyms, which is proving to be somewhat useful: https://traffic.ls.hereapi.com/traffic/6.0/xsd/flow3.1.xsd?apiKey=<your_api_key_here>
<xs:attribute name="SU" type="speed" use="optional">
xs:annotation
xs:documentationSpeed (based on UNITS) not capped by speed limit</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="FF" type="speed" use="required">
xs:annotation
xs:documentationThe free flow speed on this stretch of road.</xs:documentation>
</xs:annotation>
</xs:attribute>

Filters have been added on the CN object to only include real time data.
Twitter Output uses SU (Uncapped Speed) object not FF (FreeFlow)

I'm still looking into this myself. I would love to be able to provide a plain English explanation to anyone who questions the data from my local speederbot.
Assuming we've updated filters to include only real time data and uncapped speed, is it fair to say that the output is based on realtime GPS data from within that last x minutes?

I'm still looking into this myself. I would love to be able to provide a plain English explanation to anyone who questions the data from my local speederbot.
Assuming we've updated filters to include only real time data and uncapped speed, is it fair to say that the output is based on realtime GPS data from within that last x minutes?

I'm trying to raised a paid support ticket with HERE developer support to confirm. Will post here if/when received.

After talking with HERE support on slack, to question the SU data validity and using this dataset below for context.

They have confirmed that it is safe to assume that at least one vehicle was traveling at the SU uncapped speed.
In this example I specifically questioned the 43.83mph
This also assumes that the CN filtering is enabled to ensure Realtime data.

SGTM and LGTM! Good to finally get some clarity from HERE on what exactly the speed measures mean. Would be nice if this was actually covered in their documentation!

Here is a summary of the information I received from support regarding the source of SU data for reference.
The uncapped speed (SU) is derived from data gathered along that particular section of roadway. This could be probe data from vehicles and/or sensor data, it's not just taken from a single vehicle, but rather multiple over a period of time.  It is safe to say that there was at least 1 vehicle travelling at the uncapped speed.

Probe data is from vehicles.
Sensor Data means from fixed sensors built into roads that detect traffic moving across it.

"Sensor Data means from fixed sensors built into roads that detect traffic moving across it."
That's quite interesting; I'm wondering if this includes the sensors that are linked up to traffic signal junctions, or if they are specific sensors independent from traffic signal junctions, or a hybrid.

This is very interesting. I would assume that the sensors built into the road would not include traffic signal detectors, as these are induction loops that check for the presence of a lump of metal and I don't think detect or record speed. I would have thought this means those temporary pneumatic cables with a box at the side of the road, often used for surveys, that can detect speed and direction.
It is great to get proper confirmation from HERE devs. Equally disheartening to see that these are AVERAGE speeds of AT LEAST ONE vehicle. I have updated my tweet template to reflect this. But then, exposing this road danger is exactly what the project is about, right? Thanks again for your efforts.

It's entirely possible there are induction loops in the ground, similar to those used for traffic signal junctions.
I've done an liitle bit of investigating for the roads around the Tyne Tunnel.
A187

A19

[A193]
(https://www.google.com/maps/@54.9991095,-1.488049,3a,75y,66.57h,52.68t/data=!3m6!1e1!3m4!1sLoz-Y3ITImNvR3ji7HZqTA!2e0!7i16384!8i8192)

These are two-way loops and there is a small box close to these as well.
If you look at the Google Maps links, you'll see that it's implausible that these are being used for traffic signals, due to the lack of traffic signals within fixed points of the exact locations.
It's knowing roughly how close the output relates to the area you're looking at, and where to find them, for accurate reporting.
In the absence of HERE confirmation, I think it's a reasonable ascertion to make.

In that case, I think you're right. I don't recall ever noticing them in that situation but your example makes perfect sense. In the area I'm monitoring, I only see the ones at traffic signals, but then it is an entirely different scenario (20mph residential area).

HERE API Developer support could not be more specific about the source of the data other than the details in my post above I'm afraid.   The project was simply setup to highlight concerns with speeding hope it's useful to others.

That's fine. Explaining that at least one vehicle was travelling at that speed is sufficient. 👍

Support have just confirmed "Probe Data" could be sourced from Apple and Google phone GPS data.  Hope this helps.