CL_INVALID_KERNEL_ARGS

Before you open an issue, please make sure you have tried the following steps:

Make sure your environment is the same with (https://mace.readthedocs.io/en/latest/installation/env_requirement.html).
Have you ever read the document for your usage?
Check if your issue appears in HOW-TO-DEBUG or FAQ.
The form below must be filled.

System information

OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Ubuntu 16.04
NDK version(e.g., 15c): 18b
GCC version(if compiling for host, e.g., 5.4.0): 5.4.0
MACE version (Use the command: git describe --long --tags): 0.13.0
Python version(2.7): 3.6
Bazel version (e.g., 0.13.0): 0.16.0
CMake version: 3.16.0

Model deploy file (*.yml)
# The name of library
library_name: FD
target_abis: [arm64-v8a]
model_graph_format: file
model_data_format: file
models:
  RF: # model tag, which will be used in model loading and must be specific.
    platform: caffe
    # path to your tensorflow model's pb file. Support local path, http:// and https://
    model_file_path: /models/model.prototxt
    weight_file_path: /models/model.caffemodel
    # sha256_checksum of your model's pb file.
    # use this command to get the sha256_checksum --> sha256sum path/to/your/pb/file
    model_sha256_checksum: 98f9b69a085e7d8f40704ac6b2fedae0fda876fff4658509dde3d74d883a9684
    weight_sha256_checksum: a9f5d4dfe944315511c6070e8556790409ae0f0bd9005c5db66b4fdd5c38b716
    subgraphs:
      - input_tensors:
          - data
        input_shapes:
          - 1,3,112,112
        input_data_formats:
          - NCHW
        output_tensors:
          - fc1
        output_shapes:
          - 1,1,1,512
    obfuscate: 0
    limit_opencl_kernel_time: 1
    runtime: gpu
    winograd: 4

Describe the problem

When integrating compiled mace library and model into and android app, I get CL_INVALID_KERNEL_ARGS error at runtime, followed by some Out of resources errors.

Any clue about what can cause this kind of error?
To Reproduce
Steps to reproduce the problem:
1. cd /path/to/mace
2. python tools/converter.py convert --config_file=/path/to/your/model_deployment_file
2. python tools/converter.py run --validate --disable_tuning --config_file=/path/to/your/model_deployment_file
3. run android app

Error information / logs
Please include the full log and/or traceback here.
E/MACE: helper.cc:201 error: CL_INVALID_KERNEL_ARGS
E/MACE: helper.cc:246 error: CL_INVALID_KERNEL_ARGS
I/MACE: activation.cc:113 TuningOrRun3DKernel(runtime, kernel_, tuning_key, gws, lws, context->future()) failed with error: Out of resources
I/MACE: net.cc:152 op->Run(&context) failed with error: Out of resources
I/MACE: mace.cc:890 net_->Run(run_metadata) failed with error: Out of resources

Additional context
Model to reproduce the issue can be found here

@gasgallo Have you modified the code? for example this file mace/ops/opencl/image/activation.cc, this error is caused by the args in c++ code does not match the args in cl code.

@lu229 No I'm using original MACE code at tag v0.13.0.
Also the error doesn't always happen. In my application I built multiple models into one library and:

when only the above model is actually used, I get no error
when I use the above model in combination with other models, then I get the error

Is it possible to have memory collision when multiple models run on GPU?

@gasgallo This is no memory collision when multiple modes run on GPU, we've never had a problem like this before， it seems that the model use the mismatched cl cache. Could you upload the yml file include multi models?

@lu229 sure. I'll also update first post:
# The name of library
library_name: test
target_abis: [arm64-v8a]
model_graph_format: code
model_data_format: code
models:
  FE: # model tag, which will be used in model loading and must be specific.
    platform: caffe
    # path to your tensorflow model's pb file. Support local path, http:// and https://
    model_file_path: /models/FE.prototxt
    weight_file_path: /models/FE.caffemodel
    # sha256_checksum of your model's pb file.
    # use this command to get the sha256_checksum --> sha256sum path/to/your/pb/file
    model_sha256_checksum: 98f9b69a085e7d8f40704ac6b2fedae0fda876fff4658509dde3d74d883a9684
    weight_sha256_checksum: a9f5d4dfe944315511c6070e8556790409ae0f0bd9005c5db66b4fdd5c38b716
    subgraphs:
      - input_tensors:
          - data
        input_shapes:
          - 1,3,112,112
        input_data_formats:
          - NCHW
        output_tensors:
          - fc1
        output_shapes:
          - 1,1,1,512
    obfuscate: 0
    limit_opencl_kernel_time: 1
    runtime: cpu+gpu
    winograd: 4

  FD:
    platform: caffe
    model_file_path: /models/rFD.prototxt
    weight_file_path: /models/FD.caffemodel
    model_sha256_checksum: 213d764bd605d02b1630740969ab7110a2ee0111e3f8200ce02304cf72fbd42a
    weight_sha256_checksum: c83d575645daf8541867a63197de6bfd44a7fb3bf9bf4c876cde8165c23fac0c
    subgraphs:
      - input_tensors:
          - data
        input_shapes:
          - 1,3,160,160
        input_data_formats:
          - NCHW
        output_tensors:
          - face_rpn_cls_prob_reshape_stride32
          - face_rpn_bbox_pred_stride32
          - face_rpn_landmark_pred_stride32
          - face_rpn_cls_prob_reshape_stride16
          - face_rpn_bbox_pred_stride16
          - face_rpn_landmark_pred_stride16
          - face_rpn_cls_prob_reshape_stride8
          - face_rpn_bbox_pred_stride8
          - face_rpn_landmark_pred_stride8
        output_shapes:
          - 1,4,5,5
          - 1,8,5,5
          - 1,20,5,5
          - 1,4,10,10
          - 1,8,10,10
          - 1,20,10,10
          - 1,4,20,20
          - 1,8,20,20
          - 1,20,20,20
        output_data_formats:
          - NCHW
          - NCHW
          - NCHW
          - NCHW
          - NCHW
          - NCHW
          - NCHW
          - NCHW
          - NCHW
    obfuscate: 0
    runtime: cpu+gpu
    winograd: 0

@gasgallo It seems that there is nothing error. Is there a same error in the mace run? If so I want to debug this problem. By the way, can you use the command git status to ensure that you haven't modified the code?

@lu229 yes, I'm 100% sure the code is the original from this repo because I use docker and get source code like:
ARG MACE_VERSION="v0.13.0"
WORKDIR /mace
RUN git clone -b "${MACE_VERSION}" https://github.com/XiaoMi/mace.git .

I will try to reproduce it in mace run and let you know.

OK, Thanks! I will analyze the code and try to find the problem.

@lu229 mace run works fine:
root@ds017:/mace# python tools/converter.py run --config /models/test.yml
CMD> bazel version
WARNING: --batch mode is deprecated. Please instead explicitly shut down your Bazel server using the command "bazel shutdown".
Build label: 0.16.0
Build target: bazel-out/k8-opt/bin/src/main/java/com/google/devtools/build/lib/bazel/BazelServer_deploy.jar
Build time: Tue Jul 31 17:01:24 2018<PHONE_NUMBER>)
Build timestamp:<PHONE_NUMBER>
Build timestamp as int:<PHONE_NUMBER>

CMD> bazel build //mace/proto:mace_py
WARNING: --batch mode is deprecated. Please instead explicitly shut down your Bazel server using the command "bazel shutdown".
Loading:
Loading: 0 packages loaded
Analyzing: target //mace/proto:mace_py (5 packages loaded)
INFO: Analysed target //mace/proto:mace_py (17 packages loaded).
INFO: Found 1 target...
Building: no action
[2 / 8] [-----] BazelWorkspaceStatusAction stable-status.txt
Target //mace/proto:mace_py up-to-date:
bazel-genfiles/mace/proto/mace_pb2.py
INFO: Elapsed time: 3.774s, Critical Path: 0.04s
INFO: 0 processes.
INFO: Build completed successfully, 1 total action
INFO: Build completed successfully, 1 total action

CMD> cp -f bazel-genfiles/mace/proto/mace_pb2.py tools/python/py_proto

CMD> bazel build //mace/proto:micro_mem_py
WARNING: --batch mode is deprecated. Please instead explicitly shut down your Bazel server using the command "bazel shutdown".
Loading:
Loading: 0 packages loaded
Analyzing: target //mace/proto:micro_mem_py (5 packages loaded)
INFO: Analysed target //mace/proto:micro_mem_py (17 packages loaded).
INFO: Found 1 target...
[2 / 8] [-----] BazelWorkspaceStatusAction stable-status.txt
Target //mace/proto:micro_mem_py up-to-date:
bazel-genfiles/mace/proto/micro_mem_pb2.py
INFO: Elapsed time: 2.412s, Critical Path: 0.05s
INFO: 0 processes.
INFO: Build completed successfully, 1 total action
INFO: Build completed successfully, 1 total action

CMD> cp -f bazel-genfiles/mace/proto/micro_mem_pb2.py tools/python/py_proto

CMD> bazel build //third_party/caffe:caffe_py
WARNING: --batch mode is deprecated. Please instead explicitly shut down your Bazel server using the command "bazel shutdown".
Loading:
Loading: 0 packages loaded
Analyzing: target //third_party/caffe:caffe_py (5 packages loaded)
INFO: Analysed target //third_party/caffe:caffe_py (17 packages loaded).
INFO: Found 1 target...
[0 / 5] [-----] BazelWorkspaceStatusAction stable-status.txt
Target //third_party/caffe:caffe_py up-to-date:
bazel-genfiles/third_party/caffe/caffe_pb2.py
INFO: Elapsed time: 2.268s, Critical Path: 0.04s
INFO: 0 processes.
 Please instead explicitly shut down your Bazel server using the command "bazel shutdown".
WARNING: The major revision of the Android NDK referenced by android_ndk_repository rule 'androidndk' is 19. The major revisions supported by Bazel are [10, 11, 12, 13, 14, 15, 16]. Bazel will attempt to treat the NDK as if it was r16. This may cause compilation and linkage problems. Please download a supported NDK version.
INFO: Analysed target //mace/tools:mace_run_static (33 packages loaded).
INFO: Found 1 target...
Target //mace/tools:mace_run_static up-to-date:
  bazel-bin/mace/tools/mace_run_static
INFO: Elapsed time: 17.480s, Critical Path: 2.11s
INFO: 1 process: 1 local.
INFO: Build completed successfully, 2 total actions
('build', '//mace/tools:mace_run_static', '--config', 'android', '--cpu=arm64-v8a', '--define', 'neon=true', '--define', 'openmp=false', '--define', 'opencl=true', '--define', 'quantize=false', '--define', 'rpcmem=true', '--define', 'hexagon=false', '--define', 'hta=false', '--define', 'apu=false', '--config', 'optimization', '--config', 'symbol_hidden', '--per_file_copt=mace/tools/mace_run.cc@-DMODEL_GRAPH_FORMAT_CODE')
Build done!

***************************************************
          Run model FD on POCOF1
***************************************************

Generate input file:  build/test/_tmp/FD/ff8ca0d5edb943c867518c604a0c575d/POCOF1_sdm845/arm64-v8a/model_input_data
Generate input file done.
* Run 'FD' with round=1, restart_round=1, tuning=False, out_of_range_check=False, omp_num_threads=(-1,), cpu_affinity_policy=(1,), gpu_perf_hint=(3,), gpu_priority_hint=(3,)
Push build/test/_tmp/FD/ff8ca0d5edb943c867518c604a0c575d/POCOF1_sdm845/arm64-v8a/model_input_data to /data/local/tmp/mace_run
Push build/test/_tmp/arm64-v8a/mace_run_static to /data/local/tmp/mace_run
Push /tmp/cmd_file-FD-1590134041.93 to /data/local/tmp/mace_run/cmd_file-FD-1590134041.93
I mace/tools/mace_run.cc:530] model name: FD
I mace/tools/mace_run.cc:531] mace version: v0.13.0-0-g9a06864
I mace/tools/mace_run.cc:532] input node: data
I mace/tools/mace_run.cc:533] input shape: 1,3,160,160
I mace/tools/mace_run.cc:534] output node: face_rpn_cls_prob_reshape_stride32,face_rpn_bbox_pred_stride32,face_rpn_landmark_pred_stride32,face_rpn_cls_prob_reshape_stride16,face_rpn_bbox_pred_stride16,face_rpn_landmark_pred_stride16,face_rpn_cls_prob_reshape_stride8,face_rpn_bbox_pred_stride8,face_rpn_landmark_pred_stride8
I mace/tools/mace_run.cc:535] output shape: 1,4,5,5:1,8,5,5:1,20,5,5:1,4,10,10:1,8,10,10:1,20,10,10:1,4,20,20:1,8,20,20:1,20,20,20
I mace/tools/mace_run.cc:536] input_file: /data/local/tmp/mace_run/model_input
I mace/tools/mace_run.cc:537] output_file: /data/local/tmp/mace_run/model_out
I mace/tools/mace_run.cc:538] input dir:
I mace/tools/mace_run.cc:539] output dir:
I mace/tools/mace_run.cc:540] model_data_file:
I mace/tools/mace_run.cc:541] model_file:
I mace/tools/mace_run.cc:542] device: GPU
I mace/tools/mace_run.cc:543] round: 1
I mace/tools/mace_run.cc:544] restart_round: 1
I mace/tools/mace_run.cc:545] gpu_perf_hint: 3
I mace/tools/mace_run.cc:546] gpu_priority_hint: 3
I mace/tools/mace_run.cc:547] omp_num_threads: -1
I mace/tools/mace_run.cc:548] cpu_affinity_policy: 1
I mace/tools/mace_run.cc:551] limit_opencl_kernel_time: 0
I mace/tools/mace_run.cc:556] opencl_queue_window_size: 0
I mace/libmace/mace.cc:500] Creating MaceEngine, MACE version: v0.13.0-0-g9a06864
I mace/libmace/mace.cc:539] Initializing MaceEngine
I mace/libmace/mace.cc:682] Destroying MaceEngine
I mace/tools/mace_run.cc:599] restart round 0
W ./mace/utils/tuner.h:201] Failed to read tuned param file: /data/local/tmp/mace_run/test_tuned_opencl_parameter.POCOF1.sdm845.bin
I mace/libmace/mace.cc:500] Creating MaceEngine, MACE version: v0.13.0-0-g9a06864
W mace/core/kv_storage.cc:109] Failed to read kv store file: /data/local/tmp/mace_run/interior//mace_cl_compiled_program.bin
W mace/core/runtime/opencl/opencl_runtime.cc:442] Load OpenCL cached compiled kernel file failed. Please make sure the storage directory exist and you have Write&Read permission
I mace/libmace/mace.cc:539] Initializing MaceEngine
I mace/core/net_def_adapter.cc:348] Op face_rpn_cls_score_reshape_stride16 fall back to CPU
I mace/core/net_def_adapter.cc:348] Op face_rpn_cls_prob_stride16 fall back to CPU
I mace/core/net_def_adapter.cc:348] Op face_rpn_cls_prob_reshape_stride16 fall back to CPU
I mace/core/net_def_adapter.cc:348] Op face_rpn_cls_score_reshape_stride32 fall back to CPU
I mace/core/net_def_adapter.cc:348] Op face_rpn_cls_prob_stride32 fall back to CPU
I mace/core/net_def_adapter.cc:348] Op face_rpn_cls_prob_reshape_stride32 fall back to CPU
I mace/core/net_def_adapter.cc:348] Op face_rpn_cls_score_reshape_stride8 fall back to CPU
I mace/core/net_def_adapter.cc:348] Op face_rpn_cls_prob_stride8 fall back to CPU
I mace/core/net_def_adapter.cc:348] Op face_rpn_cls_prob_reshape_stride8 fall back to CPU
I mace/tools/mace_run.cc:272] Create Mace Engine latency: 1252.51 ms
I mace/tools/mace_run.cc:279] Total init latency: 1252.67 ms
I mace/tools/mace_run.cc:373] Warm up run
I mace/tools/mace_run.cc:409] 1st warm up run latency: 1648 ms
I mace/tools/mace_run.cc:417] Run model
I mace/tools/mace_run.cc:479] Average latency: 16.055 ms
I mace/tools/mace_run.cc:494] Write output file /data/local/tmp/mace_run/model_out_face_rpn_cls_prob_reshape_stride32 with size 400 done.
I mace/tools/mace_run.cc:494] Write output file /data/local/tmp/mace_run/model_out_face_rpn_bbox_pred_stride32 with size 800 done.
I mace/tools/mace_run.cc:494] Write output file /data/local/tmp/mace_run/model_out_face_rpn_landmark_pred_stride32 with size 2000 done.
I mace/tools/mace_run.cc:494] Write output file /data/local/tmp/mace_run/model_out_face_rpn_cls_prob_reshape_stride16 with size 1600 done.
I mace/tools/mace_run.cc:494] Write output file /data/local/tmp/mace_run/model_out_face_rpn_bbox_pred_stride16 with size 3200 done.
I mace/tools/mace_run.cc:494] Write output file /data/local/tmp/mace_run/model_out_face_rpn_landmark_pred_stride16 with size 8000 done.
I mace/tools/mace_run.cc:494] Write output file /data/local/tmp/mace_run/model_out_face_rpn_cls_prob_reshape_stride8 with size 6400 done.
I mace/tools/mace_run.cc:494] Write output file /data/local/tmp/mace_run/model_out_face_rpn_bbox_pred_stride8 with size 12800 done.
I mace/tools/mace_run.cc:494] Write output file /data/local/tmp/mace_run/model_out_face_rpn_landmark_pred_stride8 with size 32000 done.
========================================================
     capability(CPU)        init      warmup     run_avg
========================================================
time          22.686    1252.672    1647.996      16.055
I mace/libmace/mace.cc:682] Destroying MaceEngine
Running finished!

Dana service is not available.
************************************************
          Run model FR on POCOF1
************************************************

Generate input file:  build/test/_tmp/FR/99db22d0b7ac3c58eb583284e384f174/POCOF1_sdm845/arm64-v8a/model_input_data
Generate input file done.
* Run 'FR' with round=1, restart_round=1, tuning=False, out_of_range_check=False, omp_num_threads=(-1,), cpu_affinity_policy=(1,), gpu_perf_hint=(3,), gpu_priority_hint=(3,)
Push build/test/_tmp/FR/99db22d0b7ac3c58eb583284e384f174/POCOF1_sdm845/arm64-v8a/model_input_data to /data/local/tmp/mace_run
Push build/test/_tmp/arm64-v8a/mace_run_static to /data/local/tmp/mace_run
Push /tmp/cmd_file-FR-1590134062.05 to /data/local/tmp/mace_run/cmd_file-FR-1590134062.05
I mace/tools/mace_run.cc:530] model name: FR
I mace/tools/mace_run.cc:531] mace version: v0.13.0-0-g9a06864
I mace/tools/mace_run.cc:532] input node: data
I mace/tools/mace_run.cc:533] input shape: 1,3,112,112
I mace/tools/mace_run.cc:534] output node: fc1
I mace/tools/mace_run.cc:535] output shape: 1,1,1,512
I mace/tools/mace_run.cc:536] input_file: /data/local/tmp/mace_run/model_input
I mace/tools/mace_run.cc:537] output_file: /data/local/tmp/mace_run/model_out
I mace/tools/mace_run.cc:538] input dir:
I mace/tools/mace_run.cc:539] output dir:
I mace/tools/mace_run.cc:540] model_data_file:
I mace/tools/mace_run.cc:541] model_file:
I mace/tools/mace_run.cc:542] device: GPU
I mace/tools/mace_run.cc:543] round: 1
I mace/tools/mace_run.cc:544] restart_round: 1
I mace/tools/mace_run.cc:545] gpu_perf_hint: 3
I mace/tools/mace_run.cc:546] gpu_priority_hint: 3
I mace/tools/mace_run.cc:547] omp_num_threads: -1
I mace/tools/mace_run.cc:548] cpu_affinity_policy: 1
I mace/tools/mace_run.cc:551] limit_opencl_kernel_time: 1
I mace/tools/mace_run.cc:556] opencl_queue_window_size: 0
I mace/libmace/mace.cc:500] Creating MaceEngine, MACE version: v0.13.0-0-g9a06864
I mace/libmace/mace.cc:539] Initializing MaceEngine
I mace/libmace/mace.cc:682] Destroying MaceEngine
I mace/tools/mace_run.cc:599] restart round 0
W ./mace/utils/tuner.h:201] Failed to read tuned param file: /data/local/tmp/mace_run/test_tuned_opencl_parameter.POCOF1.sdm845.bin
I mace/libmace/mace.cc:500] Creating MaceEngine, MACE version: v0.13.0-0-g9a06864
W mace/core/kv_storage.cc:109] Failed to read kv store file: /data/local/tmp/mace_run/interior//mace_cl_compiled_program.bin
W mace/core/runtime/opencl/opencl_runtime.cc:442] Load OpenCL cached compiled kernel file failed. Please make sure the storage directory exist and you have Write&Read permission
I mace/libmace/mace.cc:539] Initializing MaceEngine
I mace/tools/mace_run.cc:272] Create Mace Engine latency: 2086.91 ms
I mace/tools/mace_run.cc:279] Total init latency: 2087.07 ms
I mace/tools/mace_run.cc:373] Warm up run
I mace/tools/mace_run.cc:409] 1st warm up run latency: 2475.05 ms
I mace/tools/mace_run.cc:417] Run model
I mace/tools/mace_run.cc:479] Average latency: 47.123 ms
I mace/tools/mace_run.cc:494] Write output file /data/local/tmp/mace_run/model_out_fc1 with size 2048 done.
========================================================
     capability(CPU)        init      warmup     run_avg
========================================================
time          22.727    2087.065    2475.045      47.123
I mace/libmace/mace.cc:682] Destroying MaceEngine
Running finished!

Elapse time: 0.692448 minutes.
* Package libs for test
Start packaging 'test' libs into build/test/libmace_test.tar.gz
build/test/model/
build/test/model/arm64-v8a/
build/test/model/arm64-v8a/test.a
build/test/model/gpu/
build/test/include/
build/test/include/mace/
build/test/include/mace/public/
build/test/include/mace/public/mace_engine_factory.h
build/test/include/mace/public/FD.h
build/test/include/mace/public/FR.h
Packaging Done!

--------------------------------------------------------------------------
                                 Library
--------------------------------------------------------------------------
|          key           |                     value                     |
==========================================================================
| MACE Model package Path| build/test/libmace_test.tar.gz|
--------------------------------------------------------------------------

@gasgallo Thanks for your test.
You say there are more than one engine coexist in your app, I also think this is the cause of the problem. When you invoke SetStoragePath, have you set a different path for the different engines? If the engines have the same path, it may produce this type of error.

@lu229 yes, storage path is different for each model.

@gasgallo OK, I can not debug this problem, Is it convenient for you to upload your app's code? In that case I can debug for this problem.

@lu229 sorry for delay, I was busy debugging and looking for a solution.
The app it's kind of messy and it's an overcomplicated example to reproduce this issue. Though thanks to your hint, I've further investigated about the openCL binaries that MACE creates during warmup run and realized that something could be wrong with those.
My clue is that binaries compilation fails or is interrupted because multiple models run concurrently (in different threads). I'm currently testing a fix for this and update this topic as soon as I'll have news.

@gasgallo MACE does not support multi-threads invoke, If you need to use MACE in multi-threads, perhaps you need to create a mace engine every thread.

@lu229 That's not my case. I'm using multiple threads and I have 1 thread per model and each model has a separate engine, so it should be fine.
What I've tried so far is to mutex lock the method that creates the GPU context and runs warmup, so that only one model can access it and other models from other threads have to wait for the mutex to be released before getting initialized. This fix seems to work, but I wanna test it more.

The issue seems to be solved using the above fix. Thanks @lu229


How to get access to a child's template scope from parent?

// Child component

  <ng-content select="search-result-template"></ng-content>

// Parent component

<search-result-template>

{{ data.title }}

ID: {{ data.id }}

</search-result-template>

But obviously this won't work because parent doesn't have access to the data object that is defined within template. How do I do this?

Hi,
If you want to do it properly: NgTemplateOutlet. You can send a templateRef to another component and render it there with the proper context. I haven't try it yet, but sounds great.
As a simple workaround use an @Input variable to set the template in the children:
@Input templateVariable

{{ data.title }}

ID: {{ data.id }}

GREAT: {{ data.title }}

....

Also you can set the HTML template as a variable to the children and generate the dom elements dynamically (DynamicComponentLoader).
Hope it Helps!

@davidalee Is the issue still relevant? If so, would you please provide us with a sample using our Plunker template? It's not quite clear in what context the issue takes place.


Prevent slideout if touchY changes more than 40 pixels

This is a revision of https://github.com/Mango/slideout/pull/73, following from https://github.com/Mango/slideout/issues/225.
The intention is to detect scroll intent and prevent triggering the slideout when the touchX changes 20px, even when the body element does not scroll.

Coverage decreased (-0.3%) to 7.143% when pulling 5266c1c87e1d5bf9232bdaa938cdead0ea6d92bd on michaek:scroll-detection into 26fca6053a22026feab6f2907f996b204f2299ed on Mango:new-features.


Move style tools config to pyproject.toml

Partially solves for #50.

Migrated tools: black, isort and pydocstyle
Lacking of PEP 518 support: flake8, codespell

It looks like there are some problems between the hook and isort. This is becase isort api is being used in the hook. Not sure why it complains about the configuration...

I got delayed because variables in pyproject.toml for isor configuration are using underscores instead of hyphens... 😓


Update testsuites management package to adapt with jsonpreprocessor

Hello Thomas,
This pull-request do small update to make testsuites-management package works fine your change in JsonPreprocessor package.
I had done the atest of testsuites-management package, and the result is good.

Thanks you,
Son

Must me tested and then merged together with
https://github.com/test-fullautomation/python-jsonpreprocessor/pull/13


Remove validation step for HTTPS JWT URLs, allowing HTTP URLs as well

Description
Changes proposed in this pull request:

Remove validation step for HTTPS JWT URLs, allowing HTTP URLs as well

Related issue(s)

https://github.tools.sap/kyma/backlog/issues/3229

/test pull-api-gateway-integration-aws

/test pull-api-gateway-integration-aws

Looks like CRD also needs an update (if I remember correctly, it was manually added)

Yes, we need this for trusted_issuers and jwks_uris.

/test pull-api-gateway-integration-aws


Downloads stuck if app is force closed

I've managed to repro this with the horologist app, for instance, and it also happens with my own app:
If I start a couple downloads, and force stop the app before they finish (either with adb force stop or in the Android task manager), the downloads wont resume when the app is restarted.
I know this is due to the DownloadService not being started, because once I start another download those pending downloads start downloading again. I can start the service manually with:
    DownloadService.start(context, SxmDownloadService::class.java)

But is this the right way to achieve what i need? or should i be calling resumeDownloads?

Hi @kelmer44,
Yes, you can start the service with DownloadService.start method that you referred to. As an example, the demo app starts the download service when the SampleChooserActivity is created.
The reason being this is, the service is created after Context.startService and onCreate() is called. The DownloadService calls DownloadManager.resumeDownloads in onCreate(), which resumes any ongoing downloads.

Thanks @tianyif  I have a follow up question.
My app has a periodic Worker that checks against a backedn service and triggers a few downloads if needed. This can obviously happen in the background.
My worker will eventually call:
  DownloadService.sendAddDownload(
            context,
            MyDownload::class.java,
            downloadRequest,
            false
        )

but this errors when the app is in the background with:
failed because it threw an exception/error as starting services is not allowed from the background:
                                                                 ```

java.util.concurrent.ExecutionException: java.lang.IllegalStateException: Not allowed to start service Intent { act=androidx.media3.exoplayer.downloadService.action.ADD_DOWNLOAD cmp=com.sirius/com.sxmp.downloads.downloader.asset.manager.SxmDownloadService (has extras) }: app is in background uid UidRecord{12c6aa7 u0a641 TRNB bg:+14m9s172ms idle change:uncached procs:1 seq(0,0,0)}
at androidx.work.impl.utils.futures.AbstractFuture.getDoneValue(AbstractFuture.java:516)
at androidx.work.impl.utils.futures.AbstractFuture.get(AbstractFuture.java:475)
at androidx.work.impl.WorkerWrapper$2.run(WorkerWrapper.java:317)
at androidx.work.impl.utils.SerialExecutorImpl$Task.run(SerialExecutorImpl.java:96)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)

When I try to set foreground to true like:

        DownloadService.sendAddDownload(
            context,
            SxmDownloadService::class.java,
            downloadRequest,
            true
        )

then I get the dreaded:

                                                                     ```
 java.util.concurrent.ExecutionException: android.app.ForegroundServiceStartNotAllowedException: startForegroundService() not allowed due to mAllowStartForeground false: service com.sirius/com.sxmp.downloads.downloader.asset.manager.SxmDownloadService
                                                                      	at androidx.work.impl.utils.futures.AbstractFuture.getDoneValue(AbstractFuture.java:516)
                                                                      	at androidx.work.impl.utils.futures.AbstractFuture.get(AbstractFuture.java:475)
                                                                      	at androidx.work.impl.WorkerWrapper$2.run(WorkerWrapper.java:317)
                                                                      	at androidx.work.impl.utils.SerialExecutorImpl$Task.run(SerialExecutorImpl.java:96)
                                                                      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
                                                                      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)
                                                                      	at java.lang.Thread.run(Thread.java:1012)

So im really not sure how to solve this, is it even possible to trigger download starts from the background with media3?

Ill rephrase my question to:
the DownloadService is technically not needed right? If one creates his own notifications and triggers download actions through the DownloadManager (injecting it for instance) one should not have any need for the Service. Am i correct in this assumption @tianyif ?


Better leap example: DRY up displaying error

Make usage into a function
This outputs to stderr and avoid repeating exit(1)

That's lovely, thanks!


swift-api-digester: keep track of reference ownership attributes, the change of which can be source-breaking.

@swift-ci Please smoke test and merge


developers.eos.io search issues

Start at https://developers.eos.io/
Search for "install"
Switch "welcome" left of search input box to "eos"
Search for "install"
Nothing is reported.

In general switching the Doc Search Dropdown seems to not work most of the time. It doesn't seem to allow you to actually switch to difference document types.
Also "eos" should be "eosio".

this was fixed by https://github.com/EOSIO/eosio-docs-gatsby/commit/06a5d593783070c6e279b3584a5e1f0fe278c4a8


Update to Kubernetes v1.18.2

Signed-off-by: Tamal Saha<EMAIL_ADDRESS>

@nan-yu, can you please help me fix these test failures. We would like to see client-go updated to v1.18.x .

Nan Yu, can you please help me fix these test failures. We would like to see client-go updated to v1.18.x .

There're a couple of issues need to be fixed. I addressed them in my fork: https://github.com/nan-yu/application/commit/fb9cca9591b38f83e6fab8b960dc734c911147d8. Please take a look.
Here is the summary:

merge app.k8s.io_applications.yaml with app.k8s.io_applications.v1.yaml to get rid of the v1beta1 version of CRD
replace the deprecated apiextensions.k8s.io/v1beta1 version with apiextensions.k8s.io/v1beta1
add kubectl to the PATH as the latest controller-gen depends on kubectl
remove kind get kubeconfig-path --name="kind" as kubeconfig-path was depracated in kind v0.8.1
delete an empty file
update customerreource.go to use the v1 API instead of v1beta1 add license to the generated resources
remove the extra type field from the test application.yaml file
add the version field to the test GVK

And a successful travis build: https://travis-ci.com/github/nan-yu/application/builds/189108875

Thanks @nan-yu ! If you want to open a pr, you are most welcome. I can close this one in that case.

Thanks Nan Yu ! If you want to open a pr, you are most welcome. I can close this one in that case.

Sure. The fixes, along with your original changes, are in https://github.com/kubernetes-sigs/application/pull/207.
Thanks again for the update!


Observing Mismatch in mailboxbox dataout when we are sending the first DWORD other than 32'h00000000

Hi ,
In smoke_test_mbox test observing testfailure with datamismatch when the input mailbox data in is changed to a non zero value for first DWORD. Please find the snippets attached.

Thanks,
Navya

Can you please confirm when the correct testcase will be available.
Thanks,
Navya

I've pushed a branch that updates the read back from the mailbox to utilize firmwares direct access.
user/dev/michnorris/mbox_smoke_test_upd

Hi,
Can you please explain as to why are we reading the mailbox dataout content starting from soc_ifc base address, i do not see the addressess defined in caliptra_reg_defines.
Thanks,
Navya

Caliptra uC has direct access into mailbox sram for debug. Smoke tests are very basic tests for gating PRs, thorough testing of mailbox protocols are done in our UVM environment. This was a quick workaround provided to fix the behavior of the test.

Thank you


Fix Changelog Action

Type of PR
Bug Fix
Description
As noted in the README of ad-m/github-push-action it seems that the actions/checkout action needs the following params:
    - uses: actions/checkout@v2
      with:
        persist-credentials: false # otherwise, the token used is the GITHUB_TOKEN, instead of your personal token
        fetch-depth: 0 # otherwise, it will fail to push refs to dest repo

(It now also uses the built-in bundler cache provided by the ruby/setup-ruby action)
Why should this be added
The Changelog Actions currently doesn't work
Checklist

[x] My code follows the style guidelines of this project
[x] Checks (StandardRB & Prettier-Standard) are passing
[x] This is not a documentation update

Let's give it a shot!


Order updates

Show only offers with value in the main block, special (free) offers should be described on another page
Order can be canceled in the cart
Show order states on the result page
Cart should be cleaned after checkout

Order still cannot be cancelled


"add_custom_fact" creates String-Facts instead of Symbol-Facts

Hello,
I am using rspec-puppet-facts 2.0.5 and facterdb 1.19.0 on ruby 2.7.6 and Puppet 7.19.0.
When I try to add or override a Fact in my spec_helper.rb like so…:
add_custom_fact :blubb, 'blobb'

… then it appears in the Facts-Hash as String "blubb" => "blobb" instead of as a Symbol :blubb => "blobb".
This leads to the Problem, that I cannot override Facts from Facter-DB, because f.e. add_custom_fact :ipaddress => '<IP_ADDRESS>' happens to create the String-Fact "ipaddress" => '<IP_ADDRESS>' besides the previously existing :ipaddress => '<IP_ADDRESS>' instead of overriding it.  The same goes for the nested Hash :network versus "network".
Actually it seems to be even worse:
My Rspec-Test throws…:
expected that the catalogue would contain Service_monitoring::Monitor::Host[foo.example.com]
with address set to "<IP_ADDRESS>" but it is set to "<IP_ADDRESS>"

… because the Rspec-Test picks up the Symbol-Fact…
        it 'should export itself as monitoring::host' do
          expect(exported_resources).to contain_service_monitoring__monitor__host(node)
            .with_address(facts[:networking]['ip'])
        end

… and the Puppet-Code picks up the String-Fact:
  $agent_ip_address                     = $::facts['networking']['ip']

I tried to find the Source of this Misbehaviour (IMHO), but even in rspec-puppet-facts.rb the Symbols stay untouched:
  def add_custom_fact(name, value, options = {})
    options[:confine] = [options[:confine]] if options[:confine].is_a?(String)
    options[:exclude] = [options[:exclude]] if options[:exclude].is_a?(String)
    RspecPuppetFacts.register_custom_fact(name, value, options)
  end

  def self.register_custom_fact(name, value, options)
    @custom_facts ||= {}
    @custom_facts[name] = {:options => options, :value => value}
  end

So I guess either I need some Help about what I am doing wrong, or I spotted kind of a Bug.

There's some additional messyness if you use let(:node) and IP addresses. https://github.com/puppetlabs/rspec-puppet/issues/15 is also open for that and I wonder if you're running into that now.


.Net: Added support for BinaryData for ImageContent.

Added Tests
Motivation and Context
As Described in #4781 right now there is no possibility  in SK to add Images as DataUris to ChatCompletion APIs, although the Azure OpenAI API and the Open AI API both support this.
Fixes #4781
Description
As per Discussion added overload to the ImageContent ctor that takes BinaryData.
For backward Compat we kept the ctor that takes an URI.
Also the new ctor throws, if the BinaryData is null, empty or if there is not MediaType provided.
I thought about allowing plain, non base64 encoded DataUris with BinaryData.
The Idea was to not encode to base64, if the MediaType is set to "text/plain", but then I decided, that this is not needed, since Uri in general allows for DataUris like new Uri("data:text/plain;http://exmpaledomain.com") just not for DataUris that are longer than 65520 bytes. I feel like that is ok, for plain DataUris.
We can still add this if needed.
Also as per discussion in the issue, I did not add additional overloads for direct Streams support.
Contribution Checklist

[x] The code builds clean without any errors or warnings
[x] The PR follows the SK Contribution Guidelines and the pre-submission formatting script raises no violations
[x] All unit tests pass, and I have added new tests where possible
[x] I didn't break anyone :smile:

@microsoft-github-policy-service agree [company="Sia Consulting GmbH"]

@microsoft-github-policy-service agree company="Sia Consulting GmbH"

In general I don't think this is a good solution. If we were to introduce base64 support it would probably be better to create a new class like ImageBinaryContent. I doubt the SK team would agree to this change. By the way, if you make any changes create a new branch instead working on a copy of the main. And to implement this, a fix in the implementation of the openai connector would be required....

I usually create branches for features, I am not sure, why this happend this time. My Fault, Sorry.
I will push the changes, once they're confirmed, I will close this PR and create a new one from the other branch.
Regarding the issue with the OpenAI Connector, you are totally correct, I thought that it would use the ToString() method and use that for the SDK.
I have commented on an open issue regarding this and also referenced this issue. Once this is fixed, I will adjust the implementation to the Connectors.

@dersia You can leave this PR with main branch as is. It doesn't matter for PR, only for your convenience.

@dersia btw. new class was introduced to kernel BinaryContent
I know this news may not be relevant to this PR, but it is worth taking a view.

I didn't mean to close this PR. I will open a new one and reference this PR


Synchronizing the Brightness of Built-in and External Displays - Design Issue

Before opening the issue, have you...?

[X] Searched for existing issues

Discussion
This design is excellent, but in my usage scenario, I have discovered an area for improvement:
I am using two external displays: 1) an iPad (which has automatic brightness adjustment) and 2) a non-automatic brightness-adjusting display. In this situation, if I enable synchronization of the built-in display's brightness, it will cause the iPad to further adjust its brightness through software, resulting in a dimmer display.
The brightness of different displays is not consistent. Currently, the brightness percentage is synchronized, but it would be better if the brightness adjustment percentage could be calculated based on the difference in brightness settings between multiple screens.

这个设计非常优秀，但是在我的使用情况中，发现了一个可以优化的点

我使用了两个扩展显示器：1: ipad（显示器本身具有自动调光功能） 2: 不具有自动调光的显示器；在这样的情况下，我如果开启同步内置显示器亮度，会导致ipad进一步使用软件调光，会很暗
不同显示器亮度是不一致的，目前是同步亮度百分比设置亮度值，如果可以根据多个屏幕目前设置的亮度差值再累加亮度调整百分比会更棒

The feature set of the app is now considered final by the team, no more feature additions are planned. I advise you to try Lunar by @alin23 as that app has various advanced syncing features. I plan implementing advanced syncing in BetterDisplay as well.


Issues with read performance

I'm not sure if I'm missing something but I'm only able to pull somewhere between 10-50 messages/second from my RMQ source but I'm able to get in the range of several thousand per second by pulling directly from RMQ or using other RMQ plugins. Any thoughts? Thanks.

I'm finding the same issue.  Is there any effort underway to consider batchSize parameter?

@eoglethorpe and @samlane
The issue is that the source is synchronous and polling. Right when I looked at the code I knew it was going to be a problem and it was.
I fixed it in my own fork. The reason I haven't pushed a pull request @jcustenborder is that the code is rather sloppy albeit we are using it in production.
https://github.com/agentgt/flume-ng-rabbitmq
Particularly you want to look at / copy:
https://github.com/agentgt/flume-ng-rabbitmq/blob/master/src/main/java/org/apache/flume/source/rabbitmq/RabbitMQConsumerSource.java
With my consumer we get about 150 msg/sec with spikes of  it easily handling 1500 msg/sec. I don't know if it can go faster because we don't have the load yet and sadly haven't had the time to set up some cloud images to test its max.
We use the file channel. You do not want to use the memory channel and or the spillover channel. I know its shocking but the file channel on a modern SSD is faster than the memory channel when dealing with bursts.

Awesome, thanks for posting - I ended up switching to another RMQ plugin which had much better read performance 'out of the box': https://github.com/stampy88/flume-ng-amqp-plugin

Yeah that plugin should be even faster than mine because it does batching.
I didn't implement batching but was going to (this is so that you only have to send one ACK for the entire prefetch).
However it looks like I don't now and I can just use that plugin :)

@eoglethorpe when i use the plugin(https://github.com/stampy88/flume-ng-amqp-plugin) as a test, i found it only can pass the string under 2byte，then i had read the source but got nothing.
do you have any idea?
thx


Add support to 'listen' for tags

I found that when using the library as it is, it is not possible to avoid a slight delay while trying to read tags, due to read_passive_target needing to have a timeout. This is problematic if you are also trying to simultaneously perform another task, like updating neopixels. This delay prevents the neopixels from looking as smooth as they otherwise could.
I worked on tweaking the library slightly to allow, if needed, the ability to separate sending the listen command to the PN532, from reading a tag. None of the other functions are affected and the read_passive_target function is also still available and would still be the 'normal' way to read a tag. This additional functionality could be an option if you wanted a way to listen for a tag, while also avoiding any delay.
The idea would be:

Start listening
Check if a tag is present (by checking IRQ for instance)
If no tag is found, perform other tasks
Repeat 2 & 3 until a tag is found
Read the UID of the tag

It would be similar to how it is currently done, but since checking IRQ is quite quick, you avoid any delay. This would allow other tasks to be run, basically uninterrupted while you wait for a tag.
Any questions or suggestions are welcome! Let me know what you think!

@ladyada Have you had a chance to take a look at this?

nope been super super busy!

Okay, no worries!


Update init.py

Changed CDN_PREFIX to the https Version of the url, since browsers send a Mixed Content errors if using Pure on a https site.

Thank you.


Add probing cone to vehicle geometry app

cc: @jackparmer @dgibbon-plotly

closed in https://github.com/plotly/dash-sample-apps/pull/626


clearOnSubmit prop

If the form should clear when you submit, OR just do nothing (default)

@stolinski Is this in now?


Update speedtest extension

Description

Updated command title.
Improved overall appearance.
Improved UX for the Clear CLI Cache action.

Screencast

Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

Keep the colors please. Looks like dead icons to the eyes.

Keep the colors please. Looks like dead icons to the eyes.

@tonka3000 The problem I see in the previous implementation was not the colors but the lack of coherence among the distinct colors. It made the UI distracting without adding any visual information. Also, not all colors work well in the light theme because of the lack of contrast. What do you think about using a single blue color?

@tonka3000 any comments here?

Colored icons are much better to me

Agree, I like the colored ones better too.  Tbh, I find super ugly the version with different colors, but you are the boss here. 😄
Here's the all blue version:

Here's the layout before this PR:

@xilopaint Add an preference to get both (no-color and color)? You can let the no color version. The default, so everyone can get the favorite version of it 😄

@xilopaint Add an preference to get both (no-color and color)? You can let the no color version. The default, so everyone can get the favorite version of it 😄

@tonka3000 I'm not advocating for no color. I am asking if you prefer a single color or multiple colors as before. Personally, I prefer a single color (tried with blue), but I will make it whatever you want. This PR has other changes.

@xilopaint Add an preference to get both (no-color and color)? You can let the no color version. The default, so everyone can get the favorite version of it 😄

@tonka3000 I'm not advocating for no color. I am asking if you prefer a single color or multiple colors as before. Personally, I prefer a single color (tried with blue), but I will make it whatever you want. This PR has other changes.

Go with single color. I will add an optional color preference in a couple of month.

It's ready @pernielsentikaer.


Retrigger signatureHelp on new signature selection

I'm working on better selecting an active parameter in the signature help for Python code. Python differs from many languages in that you can generally specify parameters in any order you'd like by naming them, or to have them be put into *args or **kwargs completely independently of their passed position. Since the LSP specification only lets you specify one active parameter for the entire signature help response (versus one active parameter per signature), this is difficult to model.
LSP 3.15 introduced the signature help context, where the active signature (what the user has selected) is passed back on a retrigger. I've used this to some success to update the active parameter to the selected signature in lieu of per-signature active parameters (which is awkward compared to just allowing an active boolean on each parameter, but it's too late).
The specification says:

The activeSignatureHelp has its SignatureHelp.activeSignature field updated based on the user navigating through available signatures.

Which I take to include movement up and down in the signature tooltip, as it's "the user navigating through available signatures". But, I only get sent a request with an updated context when moving left and right (the actual editor cursor) or when editing the file, which prevents me from changing the active parameter index when the user is just browsing the list. I've confirmed this by setting a breakpoint in the provideSignatureHelp function in the client and observing it is only called once.
I'm unsure if this is intended behavior, or just a bug. If the current behavior is as-designed, can this extra retrigger be done in addition to the current behavior? I would think that navigating the signature menu would be beneficial and be within specification.
I'm uncertain if I should be opening this on VS Code (since this library's just a passthrough to provideSignatureHelp and the implementation likely in VS Code proper), but figured I would try asking here first as it's the overlap between the specification and VS Code's behavior.

Since the LSP client doesn't do any filtering of user input I guess this is already a behavior in VS Code. Looping in @jrieken. Is there a reason why the arrow up / down key doesn't retrigger this.

@mjbvz made these changes

@jrieken thanks!
@mjbvz can you please comment.

activeSignatureHelp tracks the selected signature when the next retrigger occurs (such as when you continue typing). It does not track the live, currently selected signature in the UI. We do not retrigger when the user moves though signatures in the UI and I don't think this would be desirable behavior in general as it would allow the list of signatures to change as they navigate about that list
Also, the activeParameter is specific to the active signature, so you should not need to update it unless the document changes. Can you explain in more detail what you are trying to accomplish.

I don't think this would be desirable behavior in general as it would allow the list of signatures to change as they navigate about that list

Within the same parameter you should end up with the same result. A provider which is changing the list of signatures on retriggers that are pure navigation at the same cursor position would seem like a bad provider more than anything.

Also, the activeParameter is specific to the active signature, so you should not need to update it unless the document changes.

This is not entirely the case in Python, where the active parameter's index can be different per signature. You can largely specify parameters in any order you'd like so long as you're naming them, and different overloads can have different signatures with entirely different mappings.

Can you explain in more detail what you are trying to accomplish.

Sure. Take the following Python code, which uses typing annotations to hint the user on valid signatures (and for potential type checking in addition to a better editor experience):
from typing import Any, Optional, overload

@overload
def func(a: int) -> int: ...

@overload
def func(a: int, b: int, c: int = 1234, d: Optional[str] = None, **kwargs: Any) -> str: ...

def func(*args, **kwargs):
    # real implementation here

Assume the user is typing out a call, like:
func(1234|)

Where | is the cursor. For this, any of the three known signatures are reasonable candidates. In an ideal world, we'd mark each separately with their active parameter (which I'll highlight below with <>):
(<a: int>) -> int
(<a: int>, b: int, c: int = 1234, d: Optional[str] = None, **kwargs: Any) -> str
(<*args>, **kwargs)

There's no problem yet; they all have the same active parameter index, 0. Navigation without retrigger will appear to work; the first parameter is selected in all cases.
Now, change the user's code to:
func(1234, d=|)

The signatures should look like this:
(a: int) -> int
(a: int, b: int, c: int = 1234, <d: Optional[str] = None>, **kwargs: Any) -> str
(*args, <**kwargs>)

The active parameter indexes are different. d will go to the d=... of the second signature, but the **kwargs of the third. The first has no active parameter, as the call no longer fits.
Currently, we can only indicate a single active signature (index 1) and its active parameter (index 3). But if the user navigates down to the next signature, there's nothing we can do to change the parameter index and say the UI should be highlighting **kwargs instead.
If the client were to retrigger on this navigation, we'd see that the user is now selecting a different signature and be able to update the parameter index to work within this API's constraints.
This is not a problem in a language like TypeScript, where optional parameters are just syntactic sugar and you must provide them in order left to right. In that case, the index always works for every signature; signatures where the index goes out of range simply don't have their parameter highlighted and it all works out implicitly.
(Note that this all is working around the problem that we can't just mark for each signature its active parameter; if we could do that then the UI would have all of the information it needs without any queries.)

Thanks. So if you could set different active parameters for each signature, that would fix the issue? Can you please file an issue against VS Code for that?

Yes and no; we're in a language server and cannot use things that aren't in the LSP specification. Adding it to VS Code will sort of solve it, but we won't be able to make use of it, hence why I'm asking for the retriggering on navigation where the client resends the same request (the same trigger kind; Invoked) just with the context set. I believe this will still be in-spec, and very similar to the existing behavior where moving the cursor left and right retriggers and updates the UI when the request completes.
Also, if a per-parameter active property were added, I think the entire activeParameter property on the signature help could be ignored. I think that's great, since you can fully specify via the list of signatures and an active signature index, but I think this will also have implications for LSP users and VS Code users (as it's yet another way to mark things active). I'm not sure how that all works out.

VS Code is usually the best place to start since we often test new language API our extension API before it moves on to the LSP. Either that or file an issue against the LSP: https://github.com/Microsoft/language-server-protocol/issues
Again, having VS Code re-trigger sounds like a workaround that will impact all existing providers. We should have proper API to support your use case

I have opened microsoft/vscode#94637.

@jakebailey please ping me when this lands in VS Code and I can make a proposed version of it in the LSP which you then can consume.

I will do that, thanks. Should this issue be retitled to capture the new API, since my original focus was on adding more retriggering (and not a whole new API)?

I think it is fine until we know what the new API will look like.

See https://github.com/microsoft/vscode/issues/94637 for the new API.

Code and spec updated.


Add Basic Component - Code

Libraries for reference: Mozilla Ace, Google Prettier

Pending Discussion
Candidate library: https://github.com/highlightjs/highlight.js/
We might need to discuss about how many / which languages we would like to support.
Also, we need to import build tool like webpack for package management & css import.

Imported languages: 34

Applied theme: GitHub Dark

@nizniz187
Here is the conclusion of our meeting. It's the best choice to use GitHub Theme in the first version and then use an A11Y Theme when there is an A11Y version coming. (Dark & Light need to be able to correspond)

Close as the default theme set.
The further theme management will be tracked on issue #31 .


[Help] Dark overlay for a Selected/Highlighted media view

What I'm looking for is that with a long press, the media view has a dark overlay on it while the UIMenuController is shown, just like with a regular text message.
Does anybody have some pointers on where to start with this?

Well I found a hacky solution, I had a view with black background and alpha 0.5. Then have:
-(BOOL)collectionView:(UICollectionView *)collectionView shouldShowMenuForItemAtIndexPath:(NSIndexPath *)indexPath{
    [super collectionView:collectionView shouldShowMenuForItemAtIndexPath:indexPath];

    JSQMessage *currentMessage = [self.visibleMessagesArray objectAtIndex:indexPath.item];

    if ([currentMessage isMediaMessage]) {
        [((CustomMedia *)currentMessage.media).mediaView addSubview:self.overlayMedia];

        self.overlayMedia.frame = ((CustomMedia *)currentMessage.media).mediaView.frame;
        [((CustomMedia *)currentMessage.media).mediaView bringSubviewToFront:self.overlayMedia];
    }

    return YES;
}

Then called [self.overlayMedia removeFromSuperView] in different places like:

collectionView:performAction:forItemAtIndexPath:withSender
scrollViewWillBeginDragging:
collectionView:didTapCellAtIndexPath:touchLocation:
collectionView:didTapMessageBubbleAtIndexPath:

I know it's far from ideal, if somebody has some suggestions they would be much appreciated

Can we re-open this as a feature request? I think it's universally useful.

@michaelkirk 👍

Is anyone currently working on this? If not I'll look into it.

@jai - I don't think so

Hello everyone!
I'm sorry to inform the community that I'm officially deprecating this project. 😢 Please read my blog post for details:
http://www.jessesquires.com/blog/officially-deprecating-jsqmessagesviewcontroller/
Thus, I'm closing all issues and pull requests and making the necessary updates to formally deprecate the library. I'm sorry if this is unexpected or disappointing. Please know that this was an extremely difficult decision to make. I'd like to thank everyone here for contributing and making this project so great. It was a fun 4 years. 😊
Thanks for understanding,
— jsq


Documentation Site is Down

Hi trying to view the documentation at
http://projects.solaris.codes/erelajs/docs/gettingstarted.html
and it seems that the website is down https://www.isitdownrightnow.com/solaris.codes.html

Solaris' domain had expired, this is the new url: https://solaris-site.netlify.app/projects/erelajs/docs/gettingstarted.html

oh thanks :)

may apply for a .js.org domain
https://erela.js.org


Why don't add relu in inference network?

In paper, we find the authors use conv+relu in inference Network. Due to:

The recurrence relation is Hd = g(Hd−1) = max(0; W ∗ Hd−1 + b), Inference net f2 is equivalent to the composition of the same elementary function g: f2(H) = (g ◦ g ◦ · · · ◦)g(H) = gD(H)

But in your code, you have not use relu in the inference Network.
Your code: (the 200th-201th line in super_resolution.py file)
for i in range(0, self.inference_depth):
      self.H_conv[i+1] = util.conv2d_with_bias(self.H_conv[i], self.W_conv, 1, self.B_conv, name="H%d"%(i+1))

I think need to change like this:
for i in range(0, self.inference_depth):
      self.H_conv[i+1] = util.conv2d_with_bias(self.H_conv[i], self.W_conv, 1, self.B_conv, add_relu=True, name="H%d"%(i+1))

Is this a mistake? The reason you can't the achieve the performance like authors?
Looking forward to your reply

And in reconstruction Network, Why do relu operation related with residual Net?
      self.Y1_conv[i] = util.conv2d_with_bias(self.H_conv[i], self.WD1_conv, self.cnn_stride, self.BD1_conv, add_relu=not self.residual, name="Y%d_1"%i)
      self.Y2_conv[i] = util.conv2d_with_bias(self.Y1_conv[i], self.WD2_conv, self.cnn_stride, self.BD2_conv, add_relu=not self.residual, name="Y%d_2"%i)

Does residul means skip connetion?

Hi XiaotianM,
Thank you to point it out.
I'm not sure why I didn't add relu for inference net.
I believe originally I added relu. But later I replaced and refactored with util.conv2d_with_bias() and I might miss to put "add_relu=True" at that time.
You can add "add_relu=True". I will try with the modification later and will upload result and weights with that. For reconstruction Network, residual is an experimental option. Usually it's off so you will use relu for reconstruction.
Residual Network (ResNet) is from Microsoft Research. And It's very effective. :)

Thanks for your reply.
Although residual is off, I can use relu in reconstruction,
However, the authors use the skip connection in his experiment, isn't it?
if self.residual:       self.y_ = self.y_ + self.x
So, I think whether skip connection is used, self.y_ need to equal self.y_ + self.x
I am not sure.

Hi I don't think self.y_ need to equal self.y_ + self.x.
Residual is used to let the model learn the diff of output.
(Usually implemented with adding the input signal)
Skip connection (in this paper) is used to send a local (input image) features to the reconstruction net.
(Usually implemented with concatenating the input signal)
Actually, the same author of the DRCN proposed another SR model with using residual net at almost same time. (VDSR in CVPR 2016)
BTW, the point is, I'm also not sure about skip connection in their paper.
I implemented their model following their paper and Figure3. In this figure, (a) and (c) is different because there is no skip connection in (c). And if you look at skip connection in (a), I'm not sure what does input signal do.
In my understanding about the paper, I should concatenate input signal to every H1 to HD outputs and then put each output into reconstruction net. However, I was not 100% sure. So I implemented skip connection as like my code. Put input image to embed net and then just send it to reconstruction net.
I welcome you to think about it and modify my code.
Jin

Hi, jin
 I see. Your reply is really useful for me to comprehend this work. Thank you.

 So the flag of residual in your code is used to implement (a) and (c) respectively?
 But I still confused why we don't need relu operation in reconstruction phase when we adopt the residual option.

 Can you explain it?

Xiaotian

I was just trying to implement residual for DRCN.
(a) is using skip connection. Residual was not included in the paper.  But I believed residual would be effective, so I experimentally just add the structure to that paper to see what will happen.
And for reconstruction net, when you use relu, it means every outputs are >=0.
However, it must allow the outputs which is less than 0 on the last layer. So I just took relu off.
Of course you can add relu and check the result. :)

Thanks, you are really nice.
In fact, in that paper Figure 1. The authors add the relu in reconstruction.
Because I have no gpu recently, so I have troubled you so much.
And I will try, thanks.

Yes, because they don't use residual, every output should be >= 0.
BTW, thank you to let me know the bug (not adding relu on inference layers).
I will fix it and check the result later.

Emmmm, I think we have different comprehend for skip connection.

I think skip connection is just send input image to the reconstruction net.

In paper,

Now input image is directly fed into the reconstruction net
whenever it is used during recursions. Our skip-connection
has two advantages. First, network capacity to store the
input signal during recursions is saved. Second, the exact
copy of input signal can be used during target prediction

and I think the skip connection is the residual net you mean.

Sending a local  features to the reconstruction net may called Recursive-Supervision

No, adding the signal can be change the layer's output value.
But if you concatenate(skip connection), they can "store the input signal" and "the exact
copy of input signal can be used".
Also the authors know about residual well, so they would call it residual when they used it.
I'm not sure what you're calling Recursive-Supervision, but "Recursive" usually means applying same filter recursively?

Yeah, you are right. Thank you for patient explanation.
This issue can be closed.
And I expect your new results with relu in Inference  Net.

Thanks!
Now I'm trying another experiment on my GPU which will take 2-3 days. I will test it and upload the result after the experiment finished. Will keep open this issue until that. thx! ;)

Hi,
I got these results.
with normal yang91 dataset,
36.59 32.36 31.30 without relu
36.61 32.30 31.29 with rerlu
with yang91 x4 augmented dataset,
36.86 32.51 31.43 without relu
36.94 32.58 31.48 with relu
Results are for set5, set14, bsd100 datasets.
With small training dataset there are no difference, but with larger dataset it looks relu makes a better result. Result PSNR fluctuates because of it uses random values on their training, however, I fill there is a good difference.
I uploaded the new weights. Thank you so much, XiaotianM!
Later I will try with deeper model.
Jin


Test on Python 3.11, remove Windows

Removing Windows from the test matrix, until someone figures out #11.
Also removing Python 3.7 and adding Python 3.11 to the test matrix.

Pinning to numpy < 2 solves the runtime problems for Ubuntu. Still failing at build stage for MacOS, comments in #23

Working for MacOS now too!

The env files for linux, macos, and macos-arm64 are all identical now, which is nice.

Windows still failing at run time. I'll remove it again and merge this.

I'll merge this now and open another issue to track the necessary migration to a more modern build system. As things stand now, we cannot build for Python 3.12, and this band-aid solution will not last forever.


äöü characters breaks formatting

Hello
The auto-formatter is adding a space in front of an umlaut character (when the umlaut is not the first character in the name).
a <- c(1, 2, 3, 4)
testDataFrame <- data.frame(testü = a)
testDataFrame$testü

After formatting:
a <- c(1, 2, 3, 4)
testDataFrame <- data.frame(test ü = a)
testDataFrame$test ü

R Tools for Visual Studio   0.2.20304.1341

Thanks for reporting, will be fixed asap.

Also #1360


Jesse: Watch bestvcable.com

Jesse requests the watch of the watch_keyword bestvcable\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

bestvcable\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Makyen in Charcoal HQ


Save Luwdig Experiment in Google Colab

Hi guys,
So thanks to Hamlet Basista I finally got a grip of Ludwig and I love it.
However, in this article he uses the BERT encoder.
I have a laptop that does not have a GPU, so running the code takes me many hours. This is not a massive problem since the results are much more accurate.
I ran this code, but unfortunately I don't seem to be able to re-use my experiments. I can't seem to find it and after I close a Google Colab tab Ludwigmodel.load cant find the experiments I've run.
Can anyone give me advice on how to save experiments so I can use it for multiple predictions.
Thanks in advance!

I wasn't aware of that article, thanks for sharing!
There are a few ways you can persist the files in Colab.
Check this: https://colab.research.google.com/notebooks/io.ipynb
The one i usually use is mounting the hdrive and then work with that, but there's other options too.
Closing, let me know if this doesn't solve your issue.

Thanks for your response.
Colab has a weird thing that on the left side panel you can see the files and download them. But only the files. Not the folders.
Anyway, I just copied those, saved them in my Drive in a folder that I created just fir Python experiments and now I can reuse those.
Thanks!


question about class method usage

Hello.
After looking into the source code of ServerlessLLM,

I was just wondering where exactly SllmLocalStore(class defined in store_manager.py)'s method name loading_loop is used.
I think to use pinned memory feature is to by modifying pinned_memory_pool in above class.
And I see in loading_loop method of SllmLocalStore class is where the modification takes place, however I don't see any code section that actually uses the method.
Also, I couldn't exactly put my finger on how to used pinned memory from the provided Quickstart Guide.
could I maybe get exact time related information when you guys are planning to add "migration" feature to your source code?

I would appreciate your response in advance.

Hi! Thanks for your questions!

We've identified this as a bug in the current code, and we'll address it in the upcoming release.
The Ray-based live-migration feature is planned for release in the open-source repository in November.

Feel free to share any additional questions or feedback!


OGCLayer not respect tile size parameters

Problem Description
When using OGCLayer in a WMS service with tile size parameters the tile sizes returned from the server do not respect the requested tile size from the client. This manifests itself as "stretchy" tiles along the border of the source raster as the extent of the requested tile is outside the extent of the source raster and is thus clipped.
The screenshot below shows this problem - the RGB is a tiff rendered and QGIS and the other layer is WMS served from an adapted version of OGC Example for some NAIP imagery.

The response to window query should use PaddedTile in way similar to:
https://github.com/geotrellis/geotrellis-contrib/blob/94ccdebff8ce58f5f3d8e1f96046961bb6ba1a46/vlm/src/main/scala/geotrellis/contrib/vlm/LayoutTileSource.scala#L76-L85
One possible thing to watch out for, this is the second time this logic finds a reason to be called. Might mean we should have an apply that pads out a tile based on overlapping RasterExtents.

I'm having a difficult time reproducing this bug on master at the moment.


Env with DCsync got MessagesTypesAndExceptions Caused by EntityStreamException

In an environment with DCsync received over less than 24h (~15h) 370 times.
Retrieve TSVs failed due to HAProxy Shouts at the error that there is no body (unnecessarily) in the header.
That causes the BulkConsume/Consume to be restarted.
The env/system working in normal mode with no load or problems. (by dashboard)
Expected result: The number of times is high.
Actual result: The number of times will strive to be low to zero.

EntityStreamException is related to streams errors.
duplicate of #436

The problem is not DCsync but due to the communication is stuck/cut.
Streaming infotons fail #436
Moving to Done.


fix: replace action version with github.action_ref

https://docs.github.com/en/actions/learn-github-actions/contexts#github-context

Hmm... github can't be used here.
- uses: suzuki-shunsuke/tfaction/list-working-dirs@${{ github.action_ref }}

Unrecognized named-value: 'github'. Located at position 1 within expression: github.action_ref


invalid ASCII sequence

I have stumbled upon a bug I can't really explain. I'm trying out autodiff on the pdf for a MvNormal, so I have written a function which takes the parameters of a MvNormal distribution and returns a second function which is the pdf. Autodiff complains at an invalid ASCII-sequence?
using ReverseDiffSource
function fN( m, s)
    k = size(m,1)
    fpdf(x) = begin d = x-m; (sqrt((2*pi)^k*det(s))*exp(-0.5*d'*(inv(s)*d)))[1]; end
end
D = 2
fpdf = fN(zeros(D), eye(D))
dfN = rdiff(fpdf, (zeros(D), ))

julia> dfN = rdiff(fpdf, (zeros(D),))
ERROR: ArgumentError: invalid ASCII sequence
in convert at ./ascii.jl:107
in setindex! at array.jl:314
in show at /local/home/fredrikb/.julia/v0.4/ReverseDiffSource/src/graph.jl:55
in print at strings/io.jl:8
in print_to_string at ./strings/io.jl:36
in myeval at /local/home/fredrikb/.julia/v0.4/ReverseDiffSource/src/graph.jl:322
in evaluate at /local/home/fredrikb/.julia/v0.4/ReverseDiffSource/src/graph.jl:354
in calc! at /local/home/fredrikb/.julia/v0.4/ReverseDiffSource/src/graph.jl:410
in rdiff at /local/home/fredrikb/.julia/v0.4/ReverseDiffSource/src/rdiff.jl:34
in rdiff at /local/home/fredrikb/.julia/v0.4/ReverseDiffSource/src/frdiff.jl:23

I've discovered not one but several issues in ReverseDiffSource with your example ! I'll see if I can solve them.
In the meantime, here's a workaround :
	D = 2
	m, s = zeros(D), eye(D)

	function fpdf2(x)
		d = x - m
		dt = d'
		k = size(m,1)
		(sqrt((2*pi) ^ k * det(s)) * exp(-0.5 * (dt * (inv(s) * d))) )[1]
	end

        # new derivation rule needed
	@deriv_rule ctranspose(x::AbstractArray) x ctranspose(ds)
	dfN = rdiff(fpdf2, (zeros(D), ))

	dfN(2*ones(2)) # (value, gradient for x)

Variables m and s have to be defined as globals (not function-local varaibles) for derivation to work. This is a limitation of the package as it's designed currently.


Discover weekly on spotify not available for multiple accounts

What version of Music Assistant has the issue?
2.2.2
What version of the Home Assistant Integration have you got installed?
2024.8.4
Have you tried everything in the Troubleshooting FAQ and reviewed the Open and Closed Issues and Discussions to resolve this yourself?

[X] Yes

The problem
When using the spotify provider for multiple accounts, the special playlist discover weekly is only available from the first account. At the bottom of the playlist screen, both playlists are listed. Seems to be the same as #2206
How to reproduce
Add the discover weekly playlist from multiple spotify accounts, only the first spotify account will be used
Music Providers
Spotify
Player Providers
Sonos
Full log output
No response
Additional information
No response
What version of Home Assistant Core are your running
2024.8.4
What type of installation are you running?
Home Assistant OS
On what type of hardware are you running?
Generic x86-64 (e.g. Intel NUC)

At the bottom of the playlist screen, both playlists are listed

Please supply a screenshot of what you mean here

This is the discover weekly playlist which is generated for a user. Both playlists, mine and my wifes, are shown as sources at the bottom but the songs only come from the first playlist, the second is ignored.

please test if this is fixed in 2.3.0b18

You may have to remove the playlist from the library once to trigger the fix

Tested this, works well. Now the discover weekly appears twice with the correct songs for every account.
But a new issue appeared where both spotify accounts have the same playlist. This now appears two times.
This is the source for one playlist (the other has the same sources):

This is the same playlist that both accounts have.

tested using the dev release of music assistant

tested using the dev release of music assistant, like i said, the fix works well, both playlists are now seperated

ah ok that makes sense - thanks for testing it on the dev build then!


Set Gas Price scaling to 130% when submitting transactions

we're seeing feedback that transactions are seeing several minutes to process - we can scale the default gas price our RPC provider recommends, which should speed things up a bit by default.

Setting a higher priority fee might also be a good approach here

https://github.com/MetricsDAO/xyz/issues/575#issuecomment-1476932041


Duplicate analyser mappings produced

Category
[X] Bug
[ ] Enhancement
Problem Area
[ ] Page Transformation: Error during the setup/use of the Page Transformation UI solution (did you check our troubleshooting guide?)
[X] Page Transformation: Error during the use of page transformation from PnP PowerShell
[ ] Page Transformation: Error during the use of page transformation from .Net
[ ] Page Transformation: Page is not looking correct after transformation
[ ] Modernization Scanner: something went wrong...
Expected or Desired Behavior
Mappings should only be one per page layout
Observed Behaviour
Multiple mappings produced for the same page layout where there are multiple pages referring to the page layout.
Steps to Reproduce
Run the analyser against multiple pages referring to the SAME page layout (Custom).
Mappings file contains a mapping for each page

Related to this one...we're today also generating mappings for OOB uncustomized page layouts...these should also be skipped in my opinion

Tested this and only see on page layout entry, even if I do have multiple pages based upon that page layout.

Are you using AnalyseAll or AnalysePageLayoutFromPublishingPage?
This occurs in the AnalysePageLayoutFromPublishingPage method, which makes sense why this may generate duplicates because AnalyseAll directly looks at the page layouts, the other looks at referenced layouts in pages.

PS cmdlet uses AnalyzeAll

Fixed by @pkbullock in https://github.com/SharePoint/sp-dev-modernization/commit/f1c09befc018512e17a70f3573654834f76fa882


CUI-7387 Fix vertical navigation to first/last item in next/prev column and tests

Description
Fix variable declaration and unit tests to support vertical navigation to first/last item in next/prev column
Related Issue
https://jira.corp.adobe.com/browse/CUI-7387
Motivation and Context
Unit tests are failing in https://github.com/adobe/coral-spectrum/pull/79
Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.

@indra2gurjar Please review this fix for failing tests in https://github.com/adobe/coral-spectrum/pull/79.


feat(recommend): rename fallbackComponent into emptyComponent

This renames fallbackComponent into emptyComponent in Recommend widgets.
https://algolia.atlassian.net/browse/FX-2856

(we can fix bundlesize of the other packages in the base branch)


[edn/csrng] behavioral questions

while debugging #12966  today, i came across a few entropy complex behavioral questions and wanted to double check.

it appears that the command done interrupt may not assert for the very first time because there is a timing mismatch while in boot mode. The csrng_ack signal causes edn to set the interrupt gate, although a cycle later.  So when the test accidentally ran out of boot mode entropy, it appeared there was no interrupt set.

as a related question, should boot mode entropy just be maxed out?

due to user error, an invalid command was accidentally supplied to csrng. However, it does't look like PasrseCmd knows how to handle this, and it appeared like the entropy generation just hung. I admittedly did not check if there were other interrupts or alerts.

@mwbranstad these aren't necessarily bugs, just things i ran into while debugging a failed edn test.
If you have time, it'd be great if you can have a look. If not, i'll look at it later as well.

@senelson7 and I will review these as we have done a lot of unit testing in these areas.

@tjaychen we have some answers.

EDN cmd done status (csrng_ack)
There are three modes that EDN can operate in: boot_mode, auto_mode, and sw mode. We made an design choice to not set the cmd status when the hardware is in play. The idea is that you get SW status only when SW has issued a command. For boot mode, this will run until disabled with no status set. For auto mode, the instantiate is required to be set by SW, so a SW cmd done bit will be set. Once in HW auto mode, no status will be set because SW is out of the picture. For SW mode, all SW status is in play.

sounds good. The specific test in question basically exhausted all the entropy while in boot mode.
I guess my main point is that if we accidentally did this via bad software, at the moment we have no way of discovering what's happened (other than new entropy fetching just getting stuck).  So I feel like even in boot mode it may be good to allow the interrupt as a way to notify software "you did something wrong".
However, this is not a must fix in my opinion, could also be something where we enhance the documentation to point this out.

the default EDN BOOT_GEN_CMD is set to 0xfff003, which is the max size-1. Seems like that is ok, provided that SW does not come in and change it, which it can since a register value now.

I actually thought the default value can be set to much larger now. It looks like we allocate almost 20 bits?

the ParseCmd state is an interesting one. We have a pending PR to cover the case where if in the ParseCmd and the enable bit turns off, then the FSM will hang in that state forever (good coverage catch). I think this might be the solution for a bad command. The FSM will hang in this state (SW can debug their code by reading the FSM state value), and then turn off the enable bit to return back to Idle. Alternatively a  leg could be added to return to Idle for Illegal commands, but this lends itself to silent programming failures. There are different views on this, but I think I like the hang until disable solution.

I think using enable to revert sounds good (and probably ideal, silent transitions are probably bad).
But I think similar to the first point above, it might be good to notify software somehow.  Otherwise it's possible the way this manifests is that some entropy consumer eventually just hangs forever on entropy request and the system hangs. (for example if main sram is requesting entropy for a key rotation).

WDYT on any of these answers?

More responses:

Understand the debug concern. A debug mode bit could be added to allow any status to be updated, independent of mode. Not sure if that is useful or not.
Actually the max size should be 0x1FFF, as in 13 bits. The documentation reflects this in CSRNG, but I see that the RTL has the old (larger) value of 19 bits. Perhaps a PR of doubling the max size and right-sizing the counter? BTW, if this value is not big enough still, EDN can be programmed to request forever using the extension counter.
We may want to have a general purpose watchdog timer on the main FSM such that a hang in any state will set an interrupt base on some timer timeout. Would that be helpful?

More responses:

Understand the debug concern. A debug mode bit could be added to allow any status to be updated, independent of mode. Not sure if that is useful or not.

Ah I don't there's a need to add a debug mode. I honestly was thinking that either...
a. we allow the interrupt to occur
b. we document very explicitly this could be a problem and software needs to be careful about being in boot mode all the time, because if entropy runs out there is no recovery without disable.

Actually the max size should be 0x1FFF, as in 13 bits. The documentation reflects this in CSRNG, but I see that the RTL has the old (larger) value of 19 bits. Perhaps a PR of doubling the max size and right-sizing the counter? BTW, if this value is not big enough still, EDN can be programmed to request forever using the extension counter.

I think this was just an extension of the previous issue, and I happened to notice the request value was smaller than the count. I think just making the counter the right size is sufficient.  The rest probably falls into the same category as above.

We may want to have a general purpose watchdog timer on the main FSM such that a hang in any state will set an interrupt base on some timer timeout. Would that be helpful?

Wouldn't that be difficult on your end though? Because i'm sure some states at least are based on the potentially random collecting timing of entropy_src...  In this case I was wondering if you just wanted to spit out an "invalid command" error.

Thanks for the feedback @tjaychen, how about this plan:

PR to update EDN doc with the cautions in the programmable section
PR to trim the GLEN counter
PR to set a status bit when a valid command is not issued

that sounds great to me.

@andreaskurth since he's also looking into this area.


1.6.x release branch version changes

[trickle] No significant performance differences

[microbenchmarks] No significant performance differences


HTTPCLIENT-2159: Mitigating Issues with Charset Handling During Redirects

This PR is an attempt to mitigate the issues highlighted in HTTPCLIENT-2159,. The root problem stems from how we are incorrectly handling certain content types by attaching charset parameters when they shouldn't have one. This update adjusts the way the Content-Type header handles specific cases, ensuring compliance with relevant specifications.

This PR does not put the description on the MIME types into consideration pointed out in HTTPCLIENT-2159.

HI @michael-o
Please do another pass. I think we’ve covered all the cases now.

I think we should use a builder for ContenType instead of piling on constructors or factory methods.

HI @garydgregory
That seems like a massive change. Maybe we can consider a full refactor of the class in another ticket? I'm not sure if it's necessary right now compared to the charset ContentType parameter handling.

I think we should use a builder for ContenType instead of piling on constructors or factory methods.

HI @garydgregory That seems like a massive change. Maybe we can consider a full refactor of the class in another ticket? I'm not sure if it's necessary right now compared to the charset ContentType parameter handling.

Hi @arturobernalg
Whatever the scale of the change it kind of feels like the right time to do it IMO because we are taking of new factory methods/construction.
I do take your point that it could be done in a separate PR if that PR happens first. If we agree on implementing a builder, I can volunteer to do it unless you'd rather do it.

I think we should use a builder for ContenType instead of piling on constructors or factory methods.

HI @garydgregory That seems like a massive change. Maybe we can consider a full refactor of the class in another ticket? I'm not sure if it's necessary right now compared to the charset ContentType parameter handling.

Hi @arturobernalg Whatever the scale of the change it kind of feels like the right time to do it IMO because we are taking of new factory methods/construction.
I do take your point that it could be done in a separate PR if that PR happens first. If we agree on implementing a builder, I can volunteer to do it unless you'd rather do it.

HI @garydgregory
If we agree on implementing a builder, I will do it.
Thank you.

Code is fine for me now, but the title is wrong. The actual report does not relate to any redirects at all. Please change and we are good to merge.

done


IR printer tweaks

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://scala-webapps.epfl.ch/jenkins/job/scalajs-pr/1369/
https://scala-webapps.epfl.ch/jenkins/job/scalajs-matrix-build/1730/
Test PASSed.


Plugin: drop caps

Nice to have, but low prio

http://practicaltypography.com/first-line-indents.html
http://blogs.adobe.com/webplatform/2014/10/02/drop-caps-are-beautiful/
There are conflicting opinions. I'll greatly appreciate any feedback :)


Server <IP_ADDRESS> support

@segfaultxavi I've fixed the comments. Thanks. Are we happy to squash merge this PR @Wayonb @rg911?


test: const.go failing

With current gate head, test/const.go is failing for me (on Solaris amd64):
# go run run.go -- const.go
exit status 2
# command-line-arguments
./const.go:144: illegal constant expression: *int == interface {}
./const.go:146: illegal constant expression: interface {} == *int

FAIL    const.go        0.660s

Mea culpa; wrong go binary in $PATH.


Make filter on foreign keys works

Hi,
This very small modification, allows to filter on foreign key

To notice :
This work fix the issue on v1.8.11, but doesn't seem to fix the issue on 1.8.19, I didn't check why

I don't need any help


[flutter_tools] - Add queries section to Android manifest file

Description
This PR adds a new section to the Android manifest file.
This section is required for https://github.com/flutter/engine/pull/44579 (because it uses PackageManager.queryIntentActivities API ), see:

https://developer.android.com/training/package-visibility?hl=en
https://developer.android.com/reference/android/content/Intent#ACTION_PROCESS_TEXT
https://developer.android.com/reference/android/content/pm/PackageManager?hl=en#queryIntentActivities(android.content.Intent, android.content.pm.PackageManager.ResolveInfoFlags)

Related Issue
Android manifest update for https://github.com/flutter/flutter/issues/107603
Tests
TODO

This is WIP to get feedbacks:

does such template change require a test?
does this change should be applied to existing Android manifest files in the repo (for instance, /Users/bruno/Nevercode/flutter/dev/integration_tests/channels/android/app/src/main/AndroidManifest.xml)?
if it makes sense, is there a way to get this section being automatically to an existing Flutter project?

This is WIP to get feedbacks:

does such template change require a test?
does this change should be applied to existing Android manifest files in the repo (for instance, /Users/bruno/Nevercode/flutter/dev/integration_tests/channels/android/app/src/main/AndroidManifest.xml)?
if it makes sense, is there a way to get this change being automatically applied to an existing Flutter project?

I don't believe so! But:
It would be nice I think the add the new section to integration tests that we run in CI at least. @reidbaker do you have a strong opinion on this though?
I'm not sure that there would be besides asking folks to re-create (via flutter create) their project to get the effects of the updated template. But, hoping Reid may have some further insight here, as well.

This is WIP to get feedbacks:

does such template change require a test?
does this change should be applied to existing Android manifest files in the repo (for instance, /Users/bruno/Nevercode/flutter/dev/integration_tests/channels/android/app/src/main/AndroidManifest.xml)?
if it makes sense, is there a way to get this change being automatically applied to an existing Flutter project?

I don't believe so! But:
It would be nice I think the add the new section to integration tests that we run in CI at least. @reidbaker do you have a strong opinion on this though?
I'm not sure that there would be besides asking folks to re-create (via flutter create) their project to get the effects of the updated template. But, hoping Reid may have some further insight here, as well.

Yes I would like for this pr to modify at least one example app to have this permission and ensure it builds correctly and does not add any new android/lint warnings. Also if code is added later that would break we at least have a test to work off of.
The engine pr appears to have landed and seems to have a safe default. You could write a migration if you/we thought every app needed to update but I think this is more specialized. I would encourage you to add some documentation for developers that want the same functionality but already have an existing app so they know what parts they need to adopt or modify to get the new engine code working.

@camsim99 @reidbaker Thanks for the feedbacks.
I updated this PR:

added the <queries> element to integration tests and examples manifest files.
updated the documentation for DefaultProcessTextService to mention that the <queries> element is required to get a non-empty result.


zoom in: limited to level 17 ?

Cannot zoom in in iD
e.g. open just this one:
https://www.openstreetmap.org/edit?editor=id#map=17/49.57083/6.15879
trying to zoom in to level 18 seems to work and immediately returns to level 17 (independantly of the imagery layer selected). It seems that you limit the zoom level only to the default layer selected (here the Ortho for Luxembourg), even if we change it to another layer such as Bing imagery.
Anyway, even if a background imagery is limited to level 17, I don't see why we could not zoom in to higher levels to see details or edit them more precisely (and then avoid merging things that should not be merged). The background layer should have no influence at all (at worsty, it could just turn to all black if you can rescale it in the browser or if there are issues for transforming bitmap images in browsers, possibly because of memory or missing rendering components to do it)
Please allow us to zoom in at higher levels: it is especially important for fixing details such as unconnected ways, or to avoid merging two conflicting nodes (such as two shops positioned extremely near of each other as they cannot be ditincguished by position only, but need to be both present as separate nodes due to their incompatible tags) !

confirming (chrome & firefox, iD 2.1.3 on osm.org, but not https://openstreetmap.us/iD/release/). We don't restrict zooming in on any imagery layer. So, this is a bug.

First guess: It could be some upstream changes (as only the osm.org integrated version is affected), maybe a6fa8cc273017c2673d6d76dae7f5ac811c2027d. //cc @tomhughes

it works again now. thanks for the quick fix @tomhughes!

Hallo. Zoom in ID not working properly. I can't mapp in ID!

@Slawek234 can you please try again? For me it works now.

Thanks! Zoom now works:)

I confirm this is now fixed ! Thanks for this very fast correction !


typescript + node.js(koa)

Progress
[*] 🏁 Fork the starter repo & post the link in this issue
[  ] 🎨 Create logo for repo & update issue status (@EricSimons)
[  ] 🔨 Implement all of Conduit's functionality per the spec & API
[  ]  👀 Move repo to main org & Peer review final codebase by admins/community (RFC)
[  ]  🎉 Tag v1 release and officially list it on the README!
Current Status
Codebase (in progress):
LimarenkoDenis/typescript-node-koa-realworld-example-app

@LimarenkoDenis awesome!! Can't wait to see this one :D

Hello we are currently moving all work in progress to Github Discussions.
I'll close this issue by now, you can find instruction to open a discussion there : https://github.com/gothinkster/realworld/discussions/633
Thanks for your contribution !


What is the point of dev-requirements.txt

I thought that dev-requirements.txt would be used to install the dependencies needed for testing. In #78 I needed to add pytest-lazy-fixture, so I added it to dev-requirements.txt. But then I realized it needed to be added to the various CI conda envs instead.
What is the point of dev-requirements.txt if we don't actually use it for anything?

:smile: I had the same question. Or is it the CI conda envs we need to get rid of, and instead use a unique dev-requirements.txt for all Python versions?


Feature/adds new parser data for Anime, Manga, and Users

Anime

Adds streaming links under GET /anime/{id}/streaming
Adds streaming links under GET /anime/{id}/full as streaming
Adds approved boolean property
Adds titles array and deprecates title, titleEnglish, titleJapanese, and titleSynonyms

Manga

Adds approved boolean property
Adds titles array and deprecates title, titleEnglish, titleJapanese, and titleSynonyms

Users

Adds external links under GET /users/{username}/external
Adds external links under GET /users/{username}/full as external

Others

Updates OpenAPI Specs/docs

Related issues/PRs: https://github.com/jikan-me/jikan/pull/444 https://github.com/jikan-me/jikan/pull/426 https://github.com/jikan-me/jikan/issues/407 https://github.com/jikan-me/jikan/issues/373 https://github.com/jikan-me/jikan-rest/issues/254

I can't see any changes related to #254 .


archiveFromDisk: inline archives that are being ADDed

Remove the attempt to handle archives from ClientExecutor.Archive(), which couldn't handle sources specified using globbing patterns, and move that logic into archiveFromDisk(), which handles the globbing.
Fixes #194.

Added another conformance test.

LGTM

/lgtm


Icon looks kinda weird [relatively] when active in dark mode?

This probably slipped through the cracks since the Loom demo was in light mode lol

I am in dark mode, I think that's based on your background picture.
What's the right way to make this icon? Is there some monochrome approach that inverts appropriately?
Happy to make inverted versions of the status icons. do you know how to make theme specific icons?

My lazy approach is to normally just create two versions (inverted colors) and match them to the theme of the system.
There's a bunch of ways to detect whether the system is in dark or light mode: https://stackoverflow.com/questions/25207077/how-to-detect-if-os-x-is-in-dark-mode

Doesn't seem to have anything to do with light / dark mode
https://github.com/jasonjmcghee/rem/assets/1522149/7ae80d61-9d89-4939-9be8-b69d0cb748d7

Answer seems to be this: https://stackoverflow.com/a/64525038


Mutable context data for mutation

Description of the feature
If a query can have a context where you can retrieve a reference to some data, I'd love to have the ability to have something similar for a mutation, but where the data can be accessed with a mutable reference.
The reason being is that I have a context that maintains the program's list of open files to be able to query. The client needs to be able to tell the server to open a new file, which is where a mutation would come into play. I need to call a method like load_file(&mut self, path: impl AsRef<Path>) on the data within the context to do this.
Code example (if possible)
async fn load_page(&self, ctx: &mut async_graphql::Context<'_>, path: String) -> Option<Page> {
    let program: &mut Program = ctx.mut_data_unchecked::<Program>();
    program.load_file(&path)
}

You'd have to implement locking yourself. The client's mutations are executed in series, but the server can execute several mutations at once. We could add locks to Context but I think that's best left up to the user.

You'd have to implement locking yourself. The client's mutations are executed in series, but the server can execute several mutations at once. We could add locks to Context but I think that's best left up to the user.

Makes sense. That's what I'll do. Thanks!