[Bug]: InternVL bounding box prediction does not work

Your current environment

The output of `python collect_env.py`
```text
python collect_env.py
Collecting environment information...
PyTorch version: 2.4.0+cu121
Is debug build: False
CUDA used to build PyTorch: 12.1
ROCM used to build PyTorch: N/A
OS: Ubuntu 20.04.6 LTS (x86_64)
GCC version: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0
Clang version: Could not collect
CMake version: Could not collect
Libc version: glibc-2.31
Python version: 3.9.5 (default, Jun  4 2021, 12:28:51)  [GCC 7.5.0] (64-bit runtime)
Python platform: Linux-5.10.192-183.736.amzn2.x86_64-x86_64-with-glibc2.31
Is CUDA available: True
CUDA runtime version: 12.5.82
CUDA_MODULE_LOADING set to: LAZY
GPU models and configuration: GPU 0: NVIDIA A10G
Nvidia driver version: 535.161.07
cuDNN version: Probably one of the following:
/usr/lib/x86_64-linux-gnu/libcudnn.so.9.2.1
/usr/lib/x86_64-linux-gnu/libcudnn_adv.so.9.2.1
/usr/lib/x86_64-linux-gnu/libcudnn_cnn.so.9.2.1
/usr/lib/x86_64-linux-gnu/libcudnn_engines_precompiled.so.9.2.1
/usr/lib/x86_64-linux-gnu/libcudnn_engines_runtime_compiled.so.9.2.1
/usr/lib/x86_64-linux-gnu/libcudnn_graph.so.9.2.1
/usr/lib/x86_64-linux-gnu/libcudnn_heuristic.so.9.2.1
/usr/lib/x86_64-linux-gnu/libcudnn_ops.so.9.2.1
HIP runtime version: N/A
MIOpen runtime version: N/A
Is XNNPACK available: True
CPU:
Architecture:                       x86_64
CPU op-mode(s):                     32-bit, 64-bit
Byte Order:                         Little Endian
Address sizes:                      48 bits physical, 48 bits virtual
CPU(s):                             48
On-line CPU(s) list:                0-47
Thread(s) per core:                 2
Core(s) per socket:                 24
Socket(s):                          1
NUMA node(s):                       1
Vendor ID:                          AuthenticAMD
CPU family:                         23
Model:                              49
Model name:                         AMD EPYC 7R32
Stepping:                           0
CPU MHz:                            3110.497
BogoMIPS:                           5599.58
Hypervisor vendor:                  KVM
Virtualization type:                full
L1d cache:                          768 KiB
L1i cache:                          768 KiB
L2 cache:                           12 MiB
L3 cache:                           96 MiB
NUMA node0 CPU(s):                  0-47
Vulnerability Gather data sampling: Not affected
Vulnerability Itlb multihit:        Not affected
Vulnerability L1tf:                 Not affected
Vulnerability Mds:                  Not affected
Vulnerability Meltdown:             Not affected
Vulnerability Mmio stale data:      Not affected
Vulnerability Retbleed:             Mitigation; untrained return thunk; SMT enabled with STIBP protection
Vulnerability Spec rstack overflow: Mitigation; safe RET
Vulnerability Spec store bypass:    Mitigation; Speculative Store Bypass disabled via prctl and seccomp
Vulnerability Spectre v1:           Mitigation; usercopy/swapgs barriers and __user pointer sanitization
Vulnerability Spectre v2:           Mitigation; Retpolines, IBPB conditional, STIBP always-on, RSB filling
Vulnerability Srbds:                Not affected
Vulnerability Tsx async abort:      Not affected
Flags:                              fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc cpuid extd_apicid aperfmperf tsc_known_freq pni pclmulqdq ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand hypervisor lahf_lm cmp_legacy cr8_legacy abm sse4a misalignsse 3dnowprefetch topoext ssbd ibrs ibpb stibp vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 clzero xsaveerptr rdpru wbnoinvd arat npt nrip_save rdpid
Versions of relevant libraries:
[pip3] numpy==1.26.4
[pip3] nvidia-cublas-cu12==<IP_ADDRESS>
[pip3] nvidia-cuda-cupti-cu12==12.1.105
[pip3] nvidia-cuda-nvrtc-cu12==12.1.105
[pip3] nvidia-cuda-runtime-cu12==12.1.105
[pip3] nvidia-cudnn-cu12==<IP_ADDRESS>
[pip3] nvidia-cufft-cu12==<IP_ADDRESS>
[pip3] nvidia-curand-cu12==<IP_ADDRESS>
[pip3] nvidia-cusolver-cu12==<IP_ADDRESS>
[pip3] nvidia-cusparse-cu12==<IP_ADDRESS>
[pip3] nvidia-ml-py==12.560.30
[pip3] nvidia-nccl-cu12==2.20.5
[pip3] nvidia-nvjitlink-cu12==12.6.77
[pip3] nvidia-nvtx-cu12==12.1.105
[pip3] pyzmq==26.2.0
[pip3] torch==2.4.0
[pip3] torchvision==0.19.0
[pip3] transformers==4.45.2
[pip3] triton==3.0.0
[conda] numpy                     1.26.4                   pypi_0    pypi
[conda] nvidia-cublas-cu12        <IP_ADDRESS>                 pypi_0    pypi
[conda] nvidia-cuda-cupti-cu12    12.1.105                 pypi_0    pypi
[conda] nvidia-cuda-nvrtc-cu12    12.1.105                 pypi_0    pypi
[conda] nvidia-cuda-runtime-cu12  12.1.105                 pypi_0    pypi
[conda] nvidia-cudnn-cu12         <IP_ADDRESS>                 pypi_0    pypi
[conda] nvidia-cufft-cu12         <IP_ADDRESS>                pypi_0    pypi
[conda] nvidia-curand-cu12        <IP_ADDRESS>               pypi_0    pypi
[conda] nvidia-cusolver-cu12      <IP_ADDRESS>               pypi_0    pypi
[conda] nvidia-cusparse-cu12      <IP_ADDRESS>               pypi_0    pypi
[conda] nvidia-ml-py              12.560.30                pypi_0    pypi
[conda] nvidia-nccl-cu12          2.20.5                   pypi_0    pypi
[conda] nvidia-nvjitlink-cu12     12.6.77                  pypi_0    pypi
[conda] nvidia-nvtx-cu12          12.1.105                 pypi_0    pypi
[conda] pyzmq                     26.2.0                   pypi_0    pypi
[conda] torch                     2.4.0                    pypi_0    pypi
[conda] torchvision               0.19.0                   pypi_0    pypi
[conda] transformers              4.45.2                   pypi_0    pypi
[conda] triton                    3.0.0                    pypi_0    pypi
ROCM Version: Could not collect
Neuron SDK Version: N/A
vLLM Version: 0.6.1.dev238+ge2c6e0a82
vLLM Build Flags:
CUDA Archs: Not Set; ROCm: Disabled; Neuron: Disabled
GPU Topology:
GPU0    CPU Affinity    NUMA Affinity   GPU NUMA ID
GPU0     X      0-47    0               N/A
Legend:
X    = Self
SYS  = Connection traversing PCIe as well as the SMP interconnect between NUMA nodes (e.g., QPI/UPI)
NODE = Connection traversing PCIe as well as the interconnect between PCIe Host Bridges within a NUMA node
PHB  = Connection traversing PCIe as well as a PCIe Host Bridge (typically the CPU)
PXB  = Connection traversing multiple PCIe bridges (without traversing the PCIe Host Bridge)
PIX  = Connection traversing at most a single PCIe bridge
NV#  = Connection traversing a bonded set of # NVLinks```

Model Input Dumps
No response
🐛 Describe the bug
I'm starting a vllm container with OpenGVLab/InternVL2 and vLLM version 0.6.2 with
vllm serve OpenGVLab/InternVL2-1B --trust-remote-code
As a prompt, I'm specifically using the object detection prompt: Please provide the bounding box coordinates of the region this sentence describes: <ref>{}</ref>. This prompt is documented here, here, or here. This prompt is designed to make the model output bounding box coordinates.
This prompt works correctly when used in transformers:
path = 'OpenGVLab/InternVL2-1B'
model = AutoModel.from_pretrained(
    path,
    torch_dtype=torch.bfloat16,
    low_cpu_mem_usage=True,
    use_flash_attn=True,
    trust_remote_code=True
).eval().cuda()

tokenizer = AutoTokenizer.from_pretrained(path, trust_remote_code=True, use_fast=False)

# set the max number of tiles in `max_num`
pixel_values = load_image('./data/image.png', max_num=12).to(torch.bfloat16).cuda()
generation_config = dict(max_new_tokens=1024, do_sample=True)

# single-image single-round conversation (单图单轮对话)
question = "<image>\nPlease provide the bounding box coordinate of the region this sentence describes: <ref>the top right cloud</ref>"
response = model.chat(tokenizer, pixel_values, question, generation_config)
print(f'User: {question}\nAssistant: {response}')

#output:
User: <image>
Please provide the bounding box coordinate of the region this sentence describes: <ref>the top right cloud</ref>
Assistant: the top right cloud[[619, 165, 958, 412]]

When I use the same standard bounding box prompt with vLLM and the OAI client, however, the output is gibberish:
from openai import OpenAI
import os
from time import time

# initialize the client but point it to TGI
client = OpenAI(
    base_url="http://localhost:8000/v1",
    api_key="EMPTY"
)

generation_parameters = {
    "temperature": 0.2,
    "max_tokens": 128,
    "top_p": 0.7,
    #"max_input_tiles": 12,
    #"repetition_penalty": 1.2,
    "stream": False,
}

def predict(messages):
    return client.chat.completions.create(
        model="OpenGVLab/InternVL2-1B", # needs to be /repository since there are the model artifacts stored
        messages=messages,
        **generation_parameters
    ).choices[0].message.content

messages = [
    {"role": "system",
     "content": "You are a helpful assistant",
    },
    {"role": "user",
     "content": [
        {
            "type": "image_url",
            "image_url": {
                "url": "https://unsplash.com/photos/ZVw3HmHRhv0/download?ixid=M3wxMjA3fDB8MXxhbGx8NHx8fHx8fDJ8fDE3MjQ1NjAzNjl8&force=true&w=1920"
            }
        },
        {
            "type": "text",
            #"text": "What type of animal is in the image above? What color does it have?"
            "text": "\nPlease provide the bounding box coordinate of the region this sentence describes: <ref>the bird</ref>"
        }
    ]},
]

response = predict(messages)
print(f"LLM output: {response}")

LLM output:  erótka exilis

The expected output would be something like the bird[[123, 234, 123, 234]] with bounding box coordinates for the object specified in the prompt.
The vLLM container does successfully generate text when prompted without this bounding-box prompt. e.g. the prompt "What type of animal is in the image above? What color does it have?" leads to this output with this image:
The animal in the image is a species of bird. The bird in the image is a Blue Tit. The bird has a distinctive and colorful plumage, with a blue head and a yellow and a bit of a red or orange throat.
I have tested this with several images and prompt variants and generation parameters. The bounding box prompt always outputs some form of gibberish, while other prompts output correct text. I also noticed that non-bounding box prompts produce correct text, but it also seems a bit suboptimal with repetitions and small errors.
I have a suspicion that there is something wrong in the chat template application done by vLLM for OpenGVLab/InternVL2. My assumption is that, because the model has only been trained with this bounding box prompt with the very specific chat template, it fully fails when there is a small deviation from the chat template. For normal prompts, the negative effect of the chat template issue might be less visible, because it probably has seen a wider variety of input formats, so it still produces correct, but suboptimal outputs. But this is just an assumption and the issue might come from somewhere else. Optimal InternVL outputs can also be created via this official HF Space demo for comparison.
I found the PR that added InternVL to vLLM, but I'm not sure which part of the code implements the preprocessor with the chat template.
Before submitting a new issue...

[X] Make sure you already searched for relevant issues, and asked the chatbot living at the bottom right corner of the documentation page, which can answer lots of frequently asked questions.

Your current environment
The output of python collect_env.py
Model Input Dumps
No response
🐛 Describe the bug
I'm starting a vllm container with OpenGVLab/InternVL2 and vLLM version 0.6.2 with vllm serve OpenGVLab/InternVL2-1B --trust-remote-code
As a prompt, I'm specifically using the object detection prompt: Please provide the bounding box coordinates of the region this sentence describes: <ref>{}</ref>. This prompt is documented here, here, or here. This prompt is designed to make the model output bounding box coordinates.
This prompt works correctly when used in transformers:
path = 'OpenGVLab/InternVL2-1B'
model = AutoModel.from_pretrained(
    path,
    torch_dtype=torch.bfloat16,
    low_cpu_mem_usage=True,
    use_flash_attn=True,
    trust_remote_code=True
).eval().cuda()

tokenizer = AutoTokenizer.from_pretrained(path, trust_remote_code=True, use_fast=False)

# set the max number of tiles in `max_num`
pixel_values = load_image('./data/image.png', max_num=12).to(torch.bfloat16).cuda()
generation_config = dict(max_new_tokens=1024, do_sample=True)

# single-image single-round conversation (单图单轮对话)
question = "<image>\nPlease provide the bounding box coordinate of the region this sentence describes: <ref>the top right cloud</ref>"
response = model.chat(tokenizer, pixel_values, question, generation_config)
print(f'User: {question}\nAssistant: {response}')

#output:
User: <image>
Please provide the bounding box coordinate of the region this sentence describes: <ref>the top right cloud</ref>
Assistant: the top right cloud[[619, 165, 958, 412]]

When I use the same standard bounding box prompt with vLLM and the OAI client, however, the output is gibberish:
from openai import OpenAI
import os
from time import time

# initialize the client but point it to TGI
client = OpenAI(
    base_url="http://localhost:8000/v1",
    api_key="EMPTY"
)

generation_parameters = {
    "temperature": 0.2,
    "max_tokens": 128,
    "top_p": 0.7,
    #"max_input_tiles": 12,
    #"repetition_penalty": 1.2,
    "stream": False,
}

def predict(messages):
    return client.chat.completions.create(
        model="OpenGVLab/InternVL2-1B", # needs to be /repository since there are the model artifacts stored
        messages=messages,
        **generation_parameters
    ).choices[0].message.content

messages = [
    {"role": "system",
     "content": "You are a helpful assistant",
    },
    {"role": "user",
     "content": [
        {
            "type": "image_url",
            "image_url": {
                "url": "https://unsplash.com/photos/ZVw3HmHRhv0/download?ixid=M3wxMjA3fDB8MXxhbGx8NHx8fHx8fDJ8fDE3MjQ1NjAzNjl8&force=true&w=1920"
            }
        },
        {
            "type": "text",
            #"text": "What type of animal is in the image above? What color does it have?"
            "text": "\nPlease provide the bounding box coordinate of the region this sentence describes: <ref>the bird</ref>"
        }
    ]},
]

response = predict(messages)
print(f"LLM output: {response}")

LLM output:  erótka exilis

The expected output would be something like the bird[[123, 234, 123, 234]] with bounding box coordinates for the object specified in the prompt.
The vLLM container does successfully generate text when prompted without this bounding-box prompt. e.g. the prompt "What type of animal is in the image above? What color does it have?" leads to this output with this image: The animal in the image is a species of bird. The bird in the image is a Blue Tit. The bird has a distinctive and colorful plumage, with a blue head and a yellow and a bit of a red or orange throat.
I have tested this with several images and prompt variants and generation parameters. The bounding box prompt always outputs some form of gibberish, while other prompts output correct text. I also noticed that non-bounding box prompts produce correct text, but it also seems a bit suboptimal with repetitions and small errors.
I have a suspicion that there is something wrong in the chat template application done by vLLM for OpenGVLab/InternVL2. My assumption is that, because the model has only been trained with this bounding box prompt with the very specific chat template, it fully fails when there is a small deviation from the chat template. For normal prompts, the negative effect of the chat template issue might be less visible, because it probably has seen a wider variety of input formats, so it still produces correct, but suboptimal outputs. But this is just an assumption and the issue might come from somewhere else. Optimal InternVL outputs can also be created via this official HF Space demo for comparison. I found the PR that added InternVL to vLLM, but I'm not sure which part of the code implements the preprocessor with the chat template.
Before submitting a new issue...

[x]  Make sure you already searched for relevant issues, and asked the chatbot living at the bottom right corner of the documentation page, which can answer lots of frequently asked questions.

You may need to use a custom chat template to transform the OpenAI API messages into the prompt format you need. The default one inserts image tokens which is different from the prompt format used to predict bounding boxes.

@ywang96 together with https://github.com/vllm-project/vllm/pull/7905#issuecomment-2399659561, this is another use case where we need to override how the image tokens are inserted per image input. We may have to work on this soon.

This is odd, because InternVL2-2B can create correct bounding box result:
$ python examples/offline_inference_vision_language.py -m internvl_chat --num-prompts 1
WARNING 10-09 16:50:14 config.py:352] Async output processing is only supported for CUDA or TPU. Disabling it for other platforms.
INFO 10-09 16:50:14 llm_engine.py:237] Initializing an LLM engine (v0.6.1.post3.dev210+g83caf35e.d20241003) with config: model='/data/LLM-model/InternVL2-2B', speculative_config=None, tokenizer='/data/LLM-model/InternVL2-2B', skip_tokenizer_init=False, tokenizer_mode=auto, revision=None, override_neuron_config=None, rope_scaling=None, rope_theta=None, tokenizer_revision=None, trust_remote_code=True, dtype=torch.bfloat16, max_seq_len=4096, download_dir=None, load_format=LoadFormat.AUTO, tensor_parallel_size=1, pipeline_parallel_size=1, disable_custom_all_reduce=False, quantization=None, enforce_eager=False, kv_cache_dtype=auto, quantization_param_path=None, device_config=cpu, decoding_config=DecodingConfig(guided_decoding_backend='outlines'), observability_config=ObservabilityConfig(otlp_traces_endpoint=None, collect_model_forward_time=False, collect_model_execute_time=False), seed=0, served_model_name=/data/LLM-model/InternVL2-2B, use_v2_block_manager=True, num_scheduler_steps=1, chunked_prefill_enabled=False multi_step_stream_outputs=True, enable_prefix_caching=False, use_async_output_proc=False, use_cached_outputs=False, mm_processor_kwargs={'max_dynamic_patch': 1})
WARNING 10-09 16:50:14 tokenizer.py:166] Using a slow tokenizer. This might cause a significant slowdown. Consider using a fast tokenizer instead.
WARNING 10-09 16:50:14 cpu_executor.py:328] CUDA graph is not supported on CPU, fallback to the eager mode.
WARNING 10-09 16:50:14 cpu_executor.py:354] Environment variable VLLM_CPU_KVCACHE_SPACE (GB) for CPU backend is not set, using 4 by default.
INFO 10-09 16:50:14 selector.py:183] Cannot use _Backend.FLASH_ATTN backend on CPU.
INFO 10-09 16:50:14 selector.py:128] Using Torch SDPA backend.
INFO 10-09 16:50:17 selector.py:183] Cannot use _Backend.FLASH_ATTN backend on CPU.
INFO 10-09 16:50:17 selector.py:128] Using Torch SDPA backend.
Loading safetensors checkpoint shards:   0% Completed | 0/2 [00:00<?, ?it/s]
Loading safetensors checkpoint shards: 100% Completed | 2/2 [00:00<00:00, 71.83it/s]

INFO 10-09 16:50:19 cpu_executor.py:212] # CPU blocks: 2730
<s><|im_start|>user
<image>
Please provide the bounding box coordinate of the region this sentence describes: <ref>the bird</ref><|im_end|>
<|im_start|>assistant

WARNING 10-09 16:50:21 tokenizer.py:166] Using a slow tokenizer. This might cause a significant slowdown. Consider using a fast tokenizer instead.
Processed prompts: 100%|███████████████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:12<00:00, 12.95s/it, est. speed input: 22.63 toks/s, output: 1.47 toks/s]
the bird[[44, 409, 474, 936]]

However, both InternVL-1B and InternVL-4B indeed create gibberish outputs for box bounding.

Thanks for your quick responses!
@DarkLight1337 , does

Thanks for your quick responses!
@DarkLight1337  , I'm not sure if this really requires a special logic/implementation. The prompt Please provide the bounding box coordinate of the region this sentence describes: <ref>the bird</ref> is just a string and these <ref> tokens are just special tokens which the the tokenizer can handle. So as long as these string are inputted in the same way the model has seen them during training, it should just work natively afaik (but maybe I'm wrong, I lack knowledge of the internals of vLLM).
@Isotr0py , that's very interesting. I had only tried InternVL-1B, because deploying 2B gave me this error:
Exit code: 1. Reason:         ^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/dist-packages/vllm/config.py", line 207, in __init__
    self.max_model_len = _get_and_verify_max_len(
                         ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/dist-packages/vllm/config.py", line 1738, in _get_and_verify_max_len
    raise NotImplementedError(
NotImplementedError: Disabling sliding window is not supported for models with rope_scaling. Please raise an issue so we can investigate.
Process SpawnProcess-1:
Traceback (most recent call last):
  File "/usr/lib/python3.12/multiprocessing/process.py", line 314, in _bootstrap
    self.run()
  File "/usr/lib/python3.12/multiprocessing/process.py", line 108, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/local/lib/python3.12/dist-packages/vllm/engine/multiprocessing/engine.py", line 388, in run_mp_engine
    engine = MQLLMEngine.from_engine_args(engine_args=engine_args,
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/dist-packages/vllm/engine/multiprocessing/engine.py", line 134, in from_engine_args
    engine_config = engine_args.create_engine_config()
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/dist-packages/vllm/engine/arg_utils.py", line 874, in create_engine_config
    model_config = self.create_model_config()
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/dist-packages/vllm/engine/arg_utils.py", line 811, in create_model_config
    return ModelConfig(
           ^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/dist-packages/vllm/config.py", line 207, in __init__
    self.max_model_len = _get_and_verify_max_len(
                         ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/dist-packages/vllm/config.py", line 1738, in _get_and_verify_max_len
    raise NotImplementedError(
NotImplementedError: Disabling sliding window is not supported for models with rope_scaling. Please raise an issue so we can investigate.

Interesting, I confirm that I also get bounding boxes with the 2B model.

I tested whether the issue comes from DISABLE_SLIDING_WINDOW, but I still get gibberish with the 1B model when changing to DISABLE_SLIDING_WINDOW=false

Seems that InternVL2-4B can also output the correct bounding box on GPU, previous gibberish outputs may relate to the ipex on CPU backend:
$ python examples/offline_inference_vision_language.py -m internvl_chat
WARNING 10-09 11:04:13 config.py:1646] Casting torch.bfloat16 to torch.float16.
INFO 10-09 11:04:24 llm_engine.py:237] Initializing an LLM engine (v0.1.dev2938+gdc4aea6) with config: model='OpenGVLab/InternVL2-4B', speculative_config=None, tokenizer='OpenGVLab/InternVL2-4B', skip_tokenizer_init=False, tokenizer_mode=auto, revision=None, override_neuron_config=None, rope_scaling=None, rope_theta=None, tokenizer_revision=None, trust_remote_code=True, dtype=torch.float16, max_seq_len=4096, download_dir=None, load_format=LoadFormat.AUTO, tensor_parallel_size=1, pipeline_parallel_size=1, disable_custom_all_reduce=False, quantization=None, enforce_eager=False, kv_cache_dtype=auto, quantization_param_path=None, device_config=cuda, decoding_config=DecodingConfig(guided_decoding_backend='outlines'), observability_config=ObservabilityConfig(otlp_traces_endpoint=None, collect_model_forward_time=False, collect_model_execute_time=False), seed=0, served_model_name=OpenGVLab/InternVL2-4B, use_v2_block_manager=True, num_scheduler_steps=1, chunked_prefill_enabled=False multi_step_stream_outputs=True, enable_prefix_caching=False, use_async_output_proc=True, use_cached_outputs=False, mm_processor_kwargs=None)
INFO 10-09 11:04:25 selector.py:217] Cannot use FlashAttention-2 backend for Volta and Turing GPUs.
INFO 10-09 11:04:25 selector.py:116] Using XFormers backend.
/opt/conda/envs/vllm/lib/python3.10/site-packages/xformers/ops/fmha/flash.py:211: FutureWarning: `torch.library.impl_abstract` was renamed to `torch.library.register_fake`. Please use that instead; we will remove `torch.library.impl_abstract` in a future version of PyTorch.
  @torch.library.impl_abstract("xformers_flash::flash_fwd")
/opt/conda/envs/vllm/lib/python3.10/site-packages/xformers/ops/fmha/flash.py:344: FutureWarning: `torch.library.impl_abstract` was renamed to `torch.library.register_fake`. Please use that instead; we will remove `torch.library.impl_abstract` in a future version of PyTorch.
  @torch.library.impl_abstract("xformers_flash::flash_bwd")
INFO 10-09 11:04:26 model_runner.py:1051] Starting to load model OpenGVLab/InternVL2-4B...
INFO 10-09 11:04:26 selector.py:217] Cannot use FlashAttention-2 backend for Volta and Turing GPUs.
INFO 10-09 11:04:26 selector.py:116] Using XFormers backend.
INFO 10-09 11:04:26 weight_utils.py:242] Using model weights format ['*.safetensors']
Loading safetensors checkpoint shards:   0% Completed | 0/2 [00:00<?, ?it/s]
Loading safetensors checkpoint shards:  50% Completed | 1/2 [00:03<00:03,  3.96s/it]
Loading safetensors checkpoint shards: 100% Completed | 2/2 [00:07<00:00,  3.50s/it]
Loading safetensors checkpoint shards: 100% Completed | 2/2 [00:07<00:00,  3.57s/it]

INFO 10-09 11:04:34 model_runner.py:1062] Loading model weights took 7.7740 GB
INFO 10-09 11:04:38 gpu_executor.py:122] # GPU blocks: 810, # CPU blocks: 682
INFO 10-09 11:04:38 gpu_executor.py:126] Maximum concurrency for 4096 tokens per request: 3.16x
INFO 10-09 11:04:40 model_runner.py:1385] Capturing the model for CUDA graphs. This may lead to unexpected consequences if the model is not static. To run the model in eager mode, set 'enforce_eager=True' or use '--enforce-eager' in the CLI.
INFO 10-09 11:04:40 model_runner.py:1389] CUDA graphs can take additional 1~3 GiB memory per GPU. If you are running out of memory, consider decreasing `gpu_memory_utilization` or enforcing eager mode. You can also reduce the `max_num_seqs` as needed to decrease memory usage.
INFO 10-09 11:04:55 model_runner.py:1513] Graph capturing finished in 14 secs.
Processed prompts: 100%|███████████████████████████████████████████████| 4/4 [00:10<00:00,  2.56s/it, est. speed input: 1312.32 toks/s, output: 10.15 toks/s]
the bird[[39, 407, 497, 909]]
the bird[[46, 411, 503, 914]]
the bird[[42, 406, 497, 935]]
the bird[[41, 408, 495, 935]]

I have tryied to use OpenGVLab/InternVL2-Llama3-76B-AWQ for bbox prediction. I use image 1920x1080. It correctly answers in json format, but bbox coordinates are bad.

Description:
I am experiencing an issue with the VLLM + InternVL models when attempting to extract titles from images （OCR task）. Specifically:

Model: VLLM + InternVL 1B

Expected Behavior: Should accurately identify the title in the image.
Observed Behavior: Incorrect results are returned.

Model: VLLM + InternVL 8B

Expected Behavior: Should accurately identify the title in the image.
Observed Behavior: Correct results are returned.

Model: Transformers (loading the 1B model directly)

Expected Behavior: Should accurately identify the title in the image.
Observed Behavior: Correct results are returned.

Steps to Reproduce:

Load the VLLM + InternVL 1B model and provide an image containing a title.
Observe the output.
Repeat the process with the VLLM + InternVL 8B model and the Transformers 1B model.

Expected Outcome: The 1B model should provide results consistent with the Transformers model and the 8B model.
Actual Outcome: The 1B model in the VLLM + InternVL setup produces incorrect results.

Description:
I am experiencing an issue with the VLLM + InternVL models when attempting to extract titles from images （OCR task）. Specifically:

Model: VLLM + InternVL 1B

Expected Behavior: Should accurately identify the title in the image.
Observed Behavior: Incorrect results are returned.

Model: VLLM + InternVL 8B

Expected Behavior: Should accurately identify the title in the image.
Observed Behavior: Correct results are returned.

Model: Transformers (loading the 1B model directly)

Expected Behavior: Should accurately identify the title in the image.
Observed Behavior: Correct results are returned.

Steps to Reproduce:

Load the VLLM + InternVL 1B model and provide an image containing a title.
Observe the output.
Repeat the process with the VLLM + InternVL 8B model and the Transformers 1B model.

Expected Outcome: The 1B model should provide results consistent with the Transformers model and the 8B model.
Actual Outcome: The 1B model in the VLLM + InternVL setup produces incorrect results.

Can you provide an example of how you passed the prompt text and image to the model?

got it. thank you so much.


minor clean ups: use time.Second instead of 1e9

Also do not reference ns in comments: it is an implementation detail of time.Duration, users should use time constants (time.Nanosecond, time.Microsecond, time.Millisecond, time.Second, etc.)
Just aesthetic :)

agreed


Upgrade to ESLint 9

Resolves https://github.com/tchajed/botc-tools/issues/13

Also fixes two lint warnings that I got after upgrading.

This looks great, thanks for doing that migration!


Don't subscript intensity_arr when None

Codecov Report

Merging #5 (c16fcf4) into main (0c09027) will decrease coverage by 1.07%.
The diff coverage is 71.42%.

@@            Coverage Diff             @@
##             main       #5      +/-   ##
==========================================
- Coverage   68.75%   67.67%   -1.08%
==========================================
  Files           3        3
  Lines          96       99       +3
==========================================
+ Hits           66       67       +1
- Misses         30       32       +2

Impacted Files
Coverage Δ

dask_regionprops/regionprops.py
72.61% <71.42%> (-1.46%)
:arrow_down:

Continue to review full report at Codecov.

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


[spdlog] Use external fmt header

Describe the pull request

What does your PR fix? Fixes #17134

Since we have used external fmt, the headers should also be the external one instead of the bundled one . Currently. include/spdlog/fmt/ostr.h and include/spdlog/fmt/fmt.h has been changed, include/spdlog/fmt/chrono.h should be updated as the same way.
vcpkg_replace_string(${CURRENT_PACKAGES_DIR}/include/spdlog/fmt/chrono.h
    "#if !defined(SPDLOG_FMT_EXTERNAL)"
    "#if 0 // !defined(SPDLOG_FMT_EXTERNAL)"
)

Note: No need to test features.

If this is still a problem for you, please provide the details about your problem here #17134.


[AutoRelease] t2-scheduler-2022-11-16-33502(can only be merged by SDK owner)

https://github.com/Azure/sdk-release-request/issues/2985
Live test success
https://dev.azure.com/azure-sdk/internal/_build?definitionId=1031

issue link:https://github.com/Azure/sdk-release-request/issues/2985


"*" Not working as a landing command, changed text accordingly

Hope I got this all right... Issue #330 brought to attention that the "*" command is not a valid command for the ILS approach. I changed the tutorial to show both the "Land" command and its abbreviation, "l" to use for getting an aircraft locked on the ILS.

The asterisk key works, but doing shift+8 doesn't, because the asterisk key actually enters a more appealing star (Unicode 2B50) instead of a normal asterisk symbol.
To make shift+8 also work the same way, copy lines 234-238 from input.js and add another case "56" and an "if(e.shiftKey)" before the rest of the stuff. Or, just remove the case that creates the star, but that will also require changes to aircraft.js as well.
However, I'm pretty sure that "l28r" as amended will not work, as runLanding() probably splices by spaces. Unless that's not true, it should be "l 28r" instead of "l28r".
Sidenote: If we wanted to add 'i' and 'ils' to the runLanding synonyms, then it would be okay to have a tutorial direct them to use 'i 28r', but honestly we are clearing them for the ils approach, NOT clearing them to land, which is a distinction that has always irked me somewhat, so in my opinion, because of that issue, I'd really recommend against telling people to use 'land' at all, since we aren't clearing them to land, but rather clearing them for an approach. My thoughts anyway.

Yeah, you are definitely right, I added the space.
I think we should keep the tutorial to show the "land" command (or rather the "l" command) because of the problem you addressed. My asterisk (on a QWERTZ keyboard) is on the same button as the + Symbol. To use it, [Shift] + "+" needs to be pressed which results in zooming in and no input to the text field. Thus I tried copying a asterisk from somewhere else, and past it in the text box. I tried both, "* 28L" and "*28L", but neither command was accepted.
Maybe using "keys" is the wrong approach on for this? Why not use symbols instead?
As for the landing clearances... I brought this issue to attention in #262 but we came to the conclusion to leave it the way it is it would increase the workload for the controller a lot!

I reviewed #262, and while I agree with everything you were saying in it, I also have to also agree with what everyone else said there: requiring separate approach clearance and then landing clearance commands adds more workload than it's worth. I'm all for realism, but as far as using the sim for practice, making me enter both commands doesn't add value.
What I'm suggesting is that we continue with a single command, but we add 'ils' as a synonym for runLanding(), so from the user's perspective, they don't clear a/c to "land", but instead clear it for "ils". And the tutorial should guide people to then use 'i 28r' instead of 'l 28r' (as an alternative to the * key). Since we are descending and vectoring our arrivals in an attempt to get them onto the localizer, it makes much more sense to present it this way, and ignore the need to explicitly give a landing clearance (as opposed to giving a landing clearance and ignoring the need to explicitly give an approach clearance). Based on what you were saying in #262, this should probably sound like an attractive resolution to you too I would think.
One more note: Now that I think of it, laptops almost never have a numpad, so its crazy to expect everybody to use the asterisk by the numpad. Thus, we definitely need to make shift+8 have the same behavior. I could get to that tomorrow at the earliest though as I am out of town for a funeral.

Okay, I'll look into that code later and see if I can add/change the "l" to an "i".
As for the Shift+8 thing: If it type Shift + 8 I get a "(", not an Asterisks, as the symbols are layouted different on a QWERTZ Keyboard, and I'm assuming French Keyboards are different then QWERTY and QWERTZ and so on. So what I'm suggesting is that either instead of the actual key to be detected (Shift + 8) the program detects the symbol that is put (Asterisk) when it is pressed.
That way, when I do Shift + "+", I get the same behavior you get when pressing Shift + 8.
Or we create a smart tutorial, that knows what symbol is typed when pressing Shift + 8 on the keyboard the user is using, and displays it, for example so the text would go: "In order for a plane to align with the ILS, you have to type the command "(28L" " for me and "In order for a plane to align with the ILS, you have to type the command "*28L" " for you...

Alright, I'm with ya now. in that case, we will have to remove the fancy Unicode star, which is totally fine because its only cosmetic. I honestly just didn't know there were such differences in keyboard layouts.
I made the changes so I know where all this stuff is already; I can just remove the fancy star and add 'i'/'ils'. It'll be a super quick fix, and then I'll post a link here to to see if its working for you and montypython

I made a new branch "fix-asterisk" and merged them into my gh-pages.
@Maverick283 @montypython112 Could you have a look at http://erikquinn.github.io/atc/ and verify the "*28r" command works on your keyboard layout now?

@erikquinn, it works if I use my external keyboard, that has a numpad, yet when I use my laptop, it will still zoom in rather then writing a Asterisk. Because the + is on the same key. Pressing Shift + "+" results in zooming in, because it is the key that is detected.

Did you also implement the "i 28r" to work as an addition to the "l 28r"? If so, I'll rechange the tutorial and finally contribute some (very little) code to this whole thing rather then just my usual blablabla xD

@Maverick283 yeah, I added 'i 28r' up there. Now that I think about it though, it probably would be nice to get rid of the darn space and make it 'i28r'... regardless, there are bigger problems.

Assuming this is the keyboard layout you use, I see what you're talking about, and I don't see an easy way to make it play nice with non-qwerty layouts. I thought maybe it could be fixed by stopping all use of e.which, and instead using e.key, which references the content of the key (ie '*') instead of the key code (ie '106'), because the latter is different on different layouts, BUT it turns out Chrome doesn't like e.key anyway.
Apparently, according to the internet, the inability to deal well with multiple keyboard layouts with key events is a pretty common problem that doesn't have an attractive solution... which I find really surprising.
Note: the reason it doesn't work on the German QWERTZ layout (pictured above), is that the * / + / ~ key (left of enter) has a code 187 returned by e.which. While the US QWERTY layout, the key in that location shows } / ] and returns code 221, and the + / = key (left of backspace) returns code 187. Thus, since the code is set to reset zoom on [code 187] and zoom in on [shift + code 187], it is actually on the german qwertz layout resetting the zoom when the key labeled "+" is pressed, and zooming in shift + "+" (aka the * symbol) is pressed. Thus, the attempt to make the asterisk from the keypad (not numpad) work as well is impossible, since it is placed elsewhere in different layouts.

I'm like a little chihuahua... But what if we don't use the Asterisk but another character that would work instead? For example the "@" symbol? (Think it is not used yet). As far as I know, it is [Shift] + [2] for QWERTY, and it is [Alt Gr] + [q] for QWERTZ. For QWERTY I think it is great since it is right next to the 1 & 3, so the numbers used most as the first digit when assigning a runway. Also it makes sense to have a aircraft land "at" a runway ;)
If the [Alt Gr] gives you trouble (I know this is unique to QWERTZ Layouts), then maybe the "@" isn't the best solution. Then "#" comes to mind, and so on...

@ would still have the same problem. Though we can both enter an "@" symbol, the code only cares about the "keyboard event", which will tell you the "code" of the key pressed.

on qwerty: [shift] + [2] --> code 50
on qwertz: [alt gr] + [q] --> code 81
Since we differentiate by the key code in input.js (line 171), the two @ entries are not the same. We could add both, but then my "q" key would enter an "@" symbol... it just gets messy. That's why we would want to be able to differentiate not by key codes but by the character that the key would type, but there doesn't seem to be a way to do so. We just haven't run into this problem yet because up to this point, we never used many designated keys.

Of course, this is all only a problem because I'm trying to eliminate the need to hit the spacebar (as it is way out of the way when using arrow-key controls, which I still strongly believe are the way to go). The idea is that you could type fh250 and then strike the "" key (wherever it may be), and the preceding space would be entered for you. Thus, to type fh250 *28r, you go [f] [h] [2] [5] [0] [] [2] [8] [r] [enter], and the command goes in properly. If there's no good solution to this problem, maybe I would just have to deal with entering the space manually. It just seems insane that we can't get it to work this way.

Okay, so we are basically looking for a key that has no usage at all at the moment...? What about "/"? It is on the numpad, a key that I don't believe is yet used on QWERTY, and would be Shift + 7 for QWERTZ. As I don't want to be egoistic, I started looking where the "/" is on other keyboards (AZERTY has it where  the QWERTY ">" is), and it gets worse the more keyboards there are to add...
Two solutions come to mind:

Let the user select his layout and execute commands based on his selection
Find a way to detect not the key but the symbol pressed

For the user selection, that could go hand in hand with a translation as suggested in #232.
And I will now create a new issue as this is getting out of hand here...


Simple flow

Fixes #622 .
Changes proposed in this PR:

refactor datatokens-flow.md;
implement in Ocean class create_erc721_token function to be able to call in README
integrated name view function from contract into ERC721Token model.

Simple flow on ganache

Creation of the ERC20 token

@mariacarmina I added some changes, this PR LGTM right now, but please review my changes before I give my final approve.


Fixing gitignore to ignore images directory

This fixes #22

Coverage remained the same at 55.357% when pulling 7064d61de753b62487f9fc1d03479d276cdadaea on mtlynch:ignore-image-folder into 25e3d9888cb8d6ffd1c9c8f20870c2fbda4ea4eb on JeetShetty:master.


Upgrade to latest js-stellar libs and fix deprecations

Done in https://github.com/stellar/laboratory/pull/83


Infallible immutable tree hash

There's a long-standing issue that calculating a milhouse tree hash properly requires mutable access to the List/Vector so that pending updates can be flushed to the underlying binary tree.
That's the topic of this FIXME:
https://github.com/sigp/milhouse/blob/6347db6a8e5a292befe9da9c565bd3ad70a165ad/src/list.rs#L358-L364
One way to fix this would be to use interior mutability to flush the updates through the & reference. I had a go at doing this using RwLock for the updates and ArcSwap for the tree on this branch: https://github.com/sigp/milhouse/tree/interior-mutability. I got bogged down by the number of changes that had to be, in particular dealing with references becomes really annoying when you need to punch through a lock/atomic. It's impossible to have methods like fn get(&self, i: usize) -> Option<&T> because the &T outlives the lock guard that you had to take to get it. There may still be a way to do it, by changing all return types to smart references, but it seems like it will be a pain.
Race conditions are also a potential issue if using ArcSwap as concurrent mutations could occur between each access. Doing .load() and then .store() is not safe in general through a & reference.
Another option to remove the panic would be to make TreeHash fallible so that it errors in case of pending updates. This is not ideal, and makes hashing somewhat user unfriendly.
A third option would be to make another version of the TreeHash trait (or another method on the same trait?) which takes &mut self. It's not clear that this would provide improved UX either.

Another option is to drop the update map. That might have the best UX, but probably the worst performance.

Another option is to drop the update map as a concept entirely. That might have the best UX, but probably the worst performance.

That may wreck epoch transition's performance. We probably need to build something like the update map to register balances somewhere and then apply.


Sending notifications to multiple services

I recently started using *push again as my primary phone is going to repair and I had to get another phone temporarily which happens to be Windows Phone 8.1 which IRC client doesn't stay up in the background so I use *push with supertoasty.
As Supertoasty is only available for WP, I am unable to get notifications with any other service, so it would help me if I could use multiple services at the same time like Supertoasty and Pushover for example.
_My primary phone is Jolla running Sailfish and it's currently missing all native push services, so I wasn't using _push with it, but those will surely come at some point.

This is a great idea, just need to figure a good way to work this into the configuration.

+1

This is a great idea, just need to figure a good way to work this into the configuration.

Did you figure it out?
Thanks, I would like to use this on two services.

Any chance this could be revisited?


Fix incorrect parsing of nested nodes when generating the POT

Fixes #95357.

Thanks!

Cherry-picked for 4.3.1.


When click swap button, lead to increment

https://app.increment.fi/swap

Testnet: https://demo.increment.fi/swap

Swap is hided by firebase config, need test after app launched

This feature added in IOS prod version 2.1.13(1)


Update words.json

Updated 13 words in syllable category in 5.
I made a previous pull request but because i am new to github i don't know much about github. So i made this as my new pull request and closed the old one
Words:-
"8":
[
"acrimonious",
"biological",
"congratulations",
"diagonally",
"evolutionist",
"figuratively",
"geometrical",
"hippopotamus",
"ideology",
"justifiable",
"kaleidoscopic",
"laparoscopy",
"monopolistic"

Thankyou


🐛 no-multiple-empty-lines is not working

What happened?
hello, how can i make no-multiple-empty-lines work? because a I have a lot of empty lines in my project and the linter its not working
Expected result
remove multiple lines empty
Code of Conduct

[X] I agree to follow Biome's Code of Conduct

This rule doesn't exist at the moment. I don't understand what you mean.

I'm coming from eslint and was surprised that it wasn't included.  This would be very nice to have!


Updated sub regions (AS923_1C+, AU915_SB1, EU868_B+)

Issue
(https://nebraltd.atlassian.net/browse/NEBD-71) (Closes #118)
New sub region plans has been added. Some of the existing ones has been updated with notes.
Checklist

[ ] Tests added
[ ] Cleaned up commit history (rebase!)
[ ] Documentation added
[ ] Thought about variable and method names

@pritamghanghas Yep!

@MuratUrsavas we need to remove all the comments from the JSON files or it will break things.
We ran into this issue before... ref https://github.com/NebraLtd/hm-pktfwd/pull/106

Also @MuratUrsavas you need to add them to here https://github.com/NebraLtd/hm-pktfwd/blob/master/pktfwd/config/region_config_filenames.py

@shawaj Thanks for pointing them out.

Done with #139


Cropped image is rotated

@DAIHUISENNB Can you describe your issue in English please?

After using NativeImageCropper.cropRect on some Android phones, the image will rotate counterclockwise by 90 degrees。
I checked and found out that the problem lies in the getCroppedRectBitmap method

This piece of code！

need to determine the Exif information of the image, that's how I solved it

@quoc-huynh-cosee

Great catch! Didn't know about that, I'll fix this asap.

@DAIHUISENNB Can you please check if your issue resolves by adding this to your pubspec.yaml?
native_image_cropper:
  git:
    url: https://github.com/cosee/native_image_cropper.git
    path: native_image_cropper
    ref: fix/wrong-rotation-after-crop

@quoc-huynh-cosee  Add unsuccessful

@quoc-huynh-cosee
I copied your getCroppedRectBitmap method and ran it with the error "PlatformException (IllegalArgumentException, y+height must be<=bitmap. height(), null, null)"
The problem is here

Changing it this way can solve the problem：
“val rotatedBitmap = Bitmap.createBitmap(bitmap, 0, 0, bitmap.width, bitmap.height, matrix, false)”

When obtaining the bitmap, the image has already been rotated. At this time, the width and height of the bitmap, as well as X: 0 and Y: 0, should be used

@DAIHUISENNB I've updated my code. If it is working, I'll merge the PR and publish a new version. Thanks for your feedback and help!

@DAIHUISENNB Please check out version 0.6.0.


Python version

Which python version should we use for this repo ? I'm not able to install the packages with python 3.9 nor 3.12

For the Dunk City Dynasty environment, only Python 3.8 is supported, while for Flappy Bird, only Python 3.9 and higher versions are supported. Therefore, it is generally recommended to use Python 3.9


Manifest fixes

Motivation and context

Resolves #3119

Fixed missed force flag for preparing video meta
Fixed image filtering
Added reverse function for migration

How has this been tested?

In development environment, docker
Checklist

[x] I submit my changes into the develop branch
[x] I have added description of my changes into CHANGELOG file
- [ ] I have updated the documentation accordingly
[ ] I have added tests to cover my changes
[x] I have linked related issues (read github docs)
- [ ] I have increased versions of npm packages if it is necessary (cvat-canvas,
cvat-core, cvat-data and cvat-ui)

License

[x] I submit my code changes under the same MIT License that covers the project.
Feel free to contact the maintainers if that's a concern.
- [ ] I have updated the license header for each file (see an example below)

# Copyright (C) 2021 Intel Corporation
#
# SPDX-License-Identifier: MIT

@Marishka17 , I believe the PR is good. It is a good idea to use logging inside some migrations. Better to move the initialization code into a common place. Please fix and after that I'm OK with the PR. Great job!

I will merge the PR now to unblock release of CVAT 1.4.0. Please prepare a separate PR with improved logging.


navigation_2d: 0.3.1-0 in 'kinetic/distribution.yaml' [bloom]

Increasing version of package(s) in repository navigation_2d to 0.3.1-0:

upstream repository: https://github.com/skasperski/navigation_2d.git
release repository: https://github.com/skasperski/navigation_2d-release.git
distro file: kinetic/distribution.yaml
bloom version: 0.5.23
previous version for package: null

Holding for sync...


Update naming convention to use Web instead of Js

We currently use the Js suffix to indicate the recipe is framework-free and runs in the browser, but not on node.js. Since node is also "JS", let's use a less confusing suffix, such as Web.
Also, we should rename BigIntJs to BigInt, since it works on node too.

I agree with this change.

I agree with this change.


Support for invoking multiple package managers for java

Prior to this PR, maven would always get invoked first and the rest would get skipped. With this PR, all java package managers would get invoked to collect a comprehensive list. Support for invoking for a specific package manager type is also retained.

@cerrussell any ideas what the differences in the metadata are?

Thanks @cerrussell. Another great catch by the snapshot tests!


TS-4939: Print the debug tag in diagnostic messages.

FreeBSD build successful! See https://ci.trafficserver.apache.org/job/Github-FreeBSD/942/ for details.

Linux build successful! See https://ci.trafficserver.apache.org/job/Github-Linux/834/ for details.

👍  - code looks good and tested!


About the results in Table 2

Hi, I am just wondering how to get the results in your paper. Since there are multiple steps, I am a little confused about how to get the result in Table 2.
I train the model with the default setting and inference with the 'test_model_state_dict.pth'. I thought I would get a similar result with the M7 model (default setting). However, I didn't find any numbers in Table 2 similar.
Could you please tell me the correct steps? In addition, will the regression and classification task get the same result in the metrics from 'Latency' to 'BRAM'? Does the 'All' in Table 2 represents the result of RMSE in the regression task? Does the 'perf' in the log file mean the latency?

The current database included here has more than 2x kernels and more than 3x points compared to when the paper was written. As the training/validation/test set will be different, it's expected to see different accuracy results than in the paper. The current database will actually give you better HLS results in the end.
The final test is more reliable if you use the val_model_state_dict.pth for inference. The val model hasn't seen the test set yet so it makes a more realistic case for checking the performance on the test set. The test model is the model that would have the highest accuracy on the test as it has seen the test set.
The classification model outputs probabilities of the design belonging to two classes (valid and invalid). However, the regression model predicts latency (perf) and resource utilization. 'All' is the RMSE of all the objectives in the regression task.


HTTP Requests logs for rules

Hello everyone.
There is some option to follow on streaming events of the type CREATE, DELETE, PUT, etc for a rule, by pointing to.. /stream/v1/stream? I mean, some options for listening into HTTP Requests that affect rules such as a rule has been created or updated or deleted.
What I would like is to see something similar to what you can see with /stream/v1/stream/events=st2.executions... but with any events relative to rules.
Thanks in advance.

Not that I'm aware of, you'll need to poll the api https://api.stackstorm.com/api/v1/ruleenforcements/

Agreed. I was looking for a way to push from the stackstorm API any HTTP Request instead of doing periodic pulls, so as not to overload the system.
In any case, I'll take a look at it.
Thank you very much :)


Fix valid user error when both OIDC and SAML federation are enabled

Fixes Defect: 230926
This fixes an error when both OIDC and SAML federation are enabled. The
Shibboleth causes a problem for other auth types in Apache unless
this variable is enabled.

Can we remove the defect number from the commit message and add exactly what the change fixes

Ok I removed the defect #.

This will be merged, but leaving it open to diagnose why github thinks that the status hasn't been reported.


Set urls from env + cleanup

Set user facing environment-specific urls based on the MESHDB_ENVIRONMENT env var. Also, make Willard more happy.

I want to look at this please. Cool idea but I don’t want to loose functionality


Extracting void asyncrhonous functions should cast Future<void>

The "Extract function" option for the following code:
void g(void Function() s) {}

void bar() {
  g(() async {
    print('some code here');
  });
}

Extracts a new function correctly, but in cases like the above, we have a void return with an async function. I propose that in these cases we change the return type for Future<void>.
Current output:
void newFn() async {
  print('some code here');
}

Proposal:
Future<void> newFn() async {
  print('some code here');
}

Related to:

https://github.com/dart-lang/sdk/issues/56854
https://github.com/dart-lang/sdk/issues/56852


push packages/ into realm/ in prep for ejson/

We will go with
packages/
  realm/
  realm_common/
  realm_dart/
  realm_generator/
  ejson/
  ejson_lint/
  ejson_generator/
     ...

Hence, I will close this PR


No field for AccessibilityManager

Pixi JS documentation has a field for object.accessibility = true/false. We no example of how to use this haxe externs AccessibilityManager it doesn't seem to work as expected.
My setup, Create renderer, create AccessibilityManager, set objects interactive to true and add some mouse events.
I can see mouse events working but tabbing is not.

I haven't used AccessibilityManager before but noticed that the properties like accessible, accessibleTitle, tabIndex, etc are missing.

Available in v4.2.4, let me know if it works or not.


Update for Voice 3.0.0-preview1

This pull request is to apply updates to accommodate API changes in Voice SDK 3.0.0-preview1. For more details, checkout the changelog of the Programmable Voice iOS SDK.
Update for Voice iOS 3.0.0-preview1

[TwilioVoice version] is now [TwilioVoice sdkVersion] to avoid method ambiguity with NSObject.
Update log level.
Use TwilioVoice.audioDevice and TVODefaultAudioDevice for AVAudioSession configuration and audio start/stop for CallKit integration.
In pushRegistry:didReceiveIncomingPushWithPayload:forType:withCompletionHandler: callback, fulfill the completion in the main queue to ensure the incoming call can be reported to CallKit and show the system call UI if the app was previously terminated.
Use new connect/accept methods for connecting calls.

Quick comment on the branch. I would call it 3.X so that we can continue to use it for preview and beta period


While linking undefined reference to functions from dl_lib_matrix3d.h and dl_lib_matrix3dq.h

For example:
/.espressif/tools/xtensa-esp32-elf/esp32-2019r1-8.2.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.2.0/../../../../xtensa-esp32-elf/bin/ld: /<MY_ESP_HOME>/esp-who/components/esp-face/lib/libod.a(sparse_mn_5_q.c.obj):(.literal.sparse_mn_5_q_without_landmark+0x40c): undefined reference to `dl_matrix3dqq_mobilenet'
Could you please suggest a solution?

In what situation did you meet that ? Please add more information, or is there a problem with the default esp-who example ?

Thank you for prompt reply
Yes, it's a problem with the default esp-who example (Should I open this issue at esp-who git repo?).
When ESP-WHO Face Detection is enable in Camera Web Server config, it fails to build at linkage (otherwise it's ok).
I guess libdl_lib.a misses something.
BTW, I use esp-idf previously installed to my esp root dir (not the one attached to esp-who git) but without face detection all builds well

Hi, thanks for finding the bug, please update the esp-who with 27e8cde. It may solve your problem.

steps.txt
Did not helped, see my steps.txt attached
Did I make git update wrong?

call git submodule update

thanks you for being supportive
the issue was that I used the latest extensa toolchain (which is installed with latest esp-idf)
so to build successfully it is not enough to switch to esp-who/esp-idf
but one also needs to switch to previous toolchain
I succeeded with https://dl.espressif.com/dl/xtensa-esp32-elf-osx-1.22.0-80-g6c4433a-5.2.0.tar.gz


String list erases entered data when saved

Whenever I have a list widget with no fields, so a string list, and I type anything in that field when creating an item and save, the CMS loses that data and saves it as [], an empty array. I see this happening locally, using Chrome. I didn't test it online.
Below a configuration for one of those fields (the problem happens with 4 different fields with same config, but 2 of them have required: false):
label:  Categorias
name:   categories
widget: list
i18n:   duplicate
required: true

Will check.

Fixed in v0.34.7 🙇🏼

Thank you!


Update ItemMe/ItemCommon methods to use item id/resource id and path

For most API requests you can either use a ids or a path. The ItemCommon and ItemMe traits should have methods for both ids and path where appropriate. Currently some methods take a DriveItem struct which should be removed since you can just get the ids or path from the DriveItem.

Fixed in e5d2906


Use Material 3 AlertDialogs for open and create AlertDialogs

This would replace the current custom AlertDialogs used for those with the Material 3 ones.

They were already material 3, oops.


Add PublicHoliday Service and Tests

In this PR, we add a service that wraps the Location API from
"https://date.nager.at/api/v2/publicholidays/{year}/{countryCode}";
Closes #38

LGTM


[neovim] FZF command always reuses same window

When the fzf terminal window is closed, it always reuses the bottom right window, not the last one.

Not reproducible for me. You might want to try again with a minimal vimrc with no other plugins or sophisticated configs.

@azure-satellite can you also try the neovim/neovim#3309 branch with your current config? That PR fixes some problems with termopen() and could fix yours too.

Sorry yeah @tarruda @junegunn it was my config


Adonis Version 3.2 does not work (cannot follow set up instructions)

Brief Description
Following the latest instructions from the adonis documentation, I should be able to install version 3.2.  Following the instructions I do seem to have an adonis project created - however running the project (npm run serve:dev) presents the following error message.

ℹ Follow below instructions to get started
$ cd yardstick
$ npm run serve:dev

➜  Code cd yardstick
➜  yardstick npm run serve:dev

><EMAIL_ADDRESS>serve:dev /Users/mikehingley/Code/yardstick
> nodemon --watch app --watch bootstrap --watch config --watch .env -x node server.js

[nodemon] 1.12.1
[nodemon] to restart at any time, enter `rs`
[nodemon] watching: /Users/mikehingley/Code/yardstick/app/**/* /Users/mikehingley/Code/yardstick/bootstrap/**/* /Users/mikehingley/Code/yardstick/config/**/* .env
[nodemon] starting `node server.js`
module.js:529
    throw err;
    ^

Error: Cannot find module 'adonis-fold'
    at Function.Module._resolveFilename (module.js:527:15)
    at Function.Module._load (module.js:476:23)
    at Module.require (module.js:568:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (/Users/mikehingley/Code/yardstick/bootstrap/http.js:14:14)
    at Module._compile (module.js:624:30)
    at Object.Module._extensions..js (module.js:635:10)
    at Module.load (module.js:545:32)
    at tryModuleLoad (module.js:508:12)
    at Function.Module._load (module.js:500:3)
[nodemon] app crashed - waiting for file changes before starting...

Speaking with @RomainLanz on gitter - it seems that I should have run npm install.  This step is missing from the documentation, and indeed from the output from the CLI itself.

This might be better solved as a documentation update, or alteration to the output from the 3.2 cli.  I was pointed out the the version 4 framework (which is still in dev?) has this issue fixed?  Maybe this fix could be ported to the 3.2 version?

The 4.0 is 100% ready to be used in production and the API is stable too. So I recommend using that over 3.2 and yes will add the npm install step to the docs

Closing since no response from the issue reporter and not actionable as well


Windows-friendly install via curl

I'm on Windows (using git bash) so this doesn't work

I can alter the command so the reference is correct but it turns out the curl install just isn't formatted for windows:
'/c/Users/John Vandivier/.local/bin/deno' --help -> Exec format err

If the intent is windows users shouldn't install via curl and must use chocolatey, plz clarify that on the website which currently implies that either would work:
https://deno.land/

related to bad windows install instructions is PowerShell failing, where PowerShell is the only explicit Windows option presented on the site today: https://github.com/denoland/deno_install/issues/103

By way of recommendation, I've had a really great time using Windows Subsystem for Linux today. I was able to install via curl in a Ubuntu distro using WSL2.
Tons of details here -> https://www.afterecon.com/programming/deno-grammarly-and-windows/

Closing this now that PowerShell has working instructions.
As a side note if you install via PowerShell then git bash doesn't seem to have access to deno help.


cmake: Fix CI jobs

This PR amends CI only with two improvements:

Fixes deprecation warnings.
Fixes the "No space left on device" error.

Going to merge this to fix the CI. None of this code is to go to the main branch.


How does io_uring_prep_timeout_remove know what to remove?

I'm having a hard time deciphering the io_uring_prep_timeout_remove man page.
If I create a new timer like so:
auto *sqe = io_uring_get_sqe(ring);
io_uring_sqe_set_data(sqe, new SomeInternalStructWithCallback{...});
io_uring_prep_timeout(sqe, &_timespec, 0, 0); //_timespec is some long-lived variable in my class

How do I then remove the timeout?

See the man page for io_uring_prep_cancel() and related helpers, you can cancel any request based on a number of criteria. You don't need to use timeout_remove helpers, though you can.

Aaah, gotcha. Thanks!


Unset variables

closes #2

Thanks, this change looks good. I left one comment about the type annotation, which is just FYI, it doesn't prevent merging this pull request. So feel free to merge.
I personally prefer having a clean commit history, so I'd probably squash merge this commit. But again, I leave it up to you, it's fine either way.

thanks! I did as you suggested. I was wondering if you have any recommendations on code-autoformatting setup. My IDE IntelliJ Ultimate is frequently screwing things up, apparently, but when I run cargo fmt --all -- --check locally it doesn't complain. In the pipeline it does though, which confuses me a bit

I sadly don't have any recommendations. I usually run cargo fmt from command line and it does the right thing.


Can't create multiple Browsers in parallel, and see some Process exceptions

Before you file a bug, have you:

Tried upgrading to newest version of PuppeteerSharp, to see if your issue has already been resolved and released? - Yes
Checked existing open and closed issues, to see if the issue has already been reported? - Yes
Tried reproducing your problem in a new isolated project? - Yes
Considered if this is a general question and not a bug?. For general questions please use StackOverflow. - Yes

Description
I am trying to crawl a couple of URLs in parallel with puppeteer sharp. I do it with Parallel Tasks. In each task I launch a Browser and create a page. Theoretically the browsers and pages created by different Tasks should not impact each other.
However, it seems only one browser is created, and it is always seized by the second task. As the result, the first task can never send its call and get a response in the browser, and the Parallel Tasks timeout.
In the code piece below, I can see the code reach "Browser browser = await Puppeteer.LaunchAsync(options);" twice, while it only executes the code after this statement once. I saw the exception of "Process must exit before requested information can be determined", seems the second LaunchAsync forcefully terminated the first LaunchAsync.
I also tried the solution mentioned in https://stackoverflow.com/a/54785518/2177408, that is, create new pages from the same browser, it gets the same issue.
Wondering if someone can help. Thanks in advance.
Complete minimal example reproducing the issue
Complete means the code snippet can be copied into a unit test method in a fresh C# project and run.
Minimal means it is stripped from code not related to reproducing the issue.
E.g.
// Paralle Tasks
            Parallel.Invoke(() =>
                {
                    someActions1();
                    crawlInfo1 = CrawlUrl(url1).Result;
                },
                () =>
                {
                    someActions2();
                    crawlInfo2 = CrawlUrl(url2).Result;
                }
            );

// CrawlUrl
        public static async Task<CrawlInfo> CrawlUrl(string input)
        {
            var uri = ProcessUri(input);
            CrawlInfo crawlInfo = new CrawlInfo();
            var options = new LaunchOptions
            {
                Headless = true,
                ExecutablePath = @"C:\chromium-win_x64\615183.0.0\tools\chromium\chrome.exe",
                Args = new string[] { "--no-zygote", "--no-sandbox" }
            };
            Browser browser = await Puppeteer.LaunchAsync(options);
            Page page = await browser.NewPageAsync();

            Response response = await page.GoToAsync(uri);

            crawlInfo.HttpStatus = (UInt32)response.Status;
            crawlInfo.CrawledUrl = response.Url;

            await page.CloseAsync();
            await browser.CloseAsync();

            return crawlInfo;

Expected behavior:
Browsers created by different thread should not impact each other
Actual behavior:
The browser only works for the second call of the two calls, and the first LaunchAsync is terminated by the second.
Versions

Which version of PuppeteerSharp are you using?
Which .NET runtime and version are you targeting? E.g. .NET framework 4.6.1 or .NET Core 2.0. -  .NET framework 4.6.1

Additional Information
Any additional information, configuration or data that might be necessary to reproduce the issue.

Not sure why, but seems Parallel.Invoke and .Result doesn't work for puppeteer sharp.
After I rewrite the parallel tasks with Task.WhenAll, it works with crawling with multiple puppeteer pages in paralle.


how's the quality compar e with other audio tokenizer?

how's the quality compar e with other audio tokenizer?

how's the quality compar e with other audio tokenizer?

Thank you for your attention. There are various dimensions to evaluating a codec; could you please clarify which specific baselines you are referring to?

thanks fot the reply. Specifically the human emotional style in generation

thanks fot the reply. Specifically the human emotional style in generation

Thank you, I think acoustic codec is good about the human emotional style in generation.


option  to set async false in service call options.

I cannot see asycn parameter in listrequest
You can simply call Service2 on success callback of first service call. Another option is to set async false in service call options.
Originally posted by @volkanceylan in https://github.com/volkanceylan/Serenity/issues/105#issuecomment-171452540

Async is in third parameter (opt parameter)
xyzService.List(
    { your request parameters },
    response => response,
    {
       async: false
    })


Pascal VOC,YOLO naming issue

Describe the bug
Any labelled image will be appended "_extension" to the file name.
Which is inconvenient to user.
Example: 1.jpg -> 1_jpg.xml
To Reproduce
Steps to reproduce the behavior:

Open any projects with labelled image.
export with option Pascal Voc, YOLO.

Expected behavior
The output name shouldn't contain the extension
Example: 1.jpg ->1.xml
Screenshots

Desktop (please complete the following information):

OS: N/A
Browser N/A
Version V1.1.0

Additional context
Extra feature: allow user to make decision when having name overlapping.(overwrite either one, or keep both)

@BobbyLCW
Suggest to only append extensions when there is same file name

image1.jpg

image1.png

image1_jpg.xml

image1_png.xml

and the rest stick to being same as file name (not append)
training with dl4j fails with current setup, users have to manually remove the extension
image1_jpg.xml -> image1.xml
before start training

@BobbyLCW
Suggest to only append extensions when there is same file name

image1.jpg

image1.png

image1_jpg.xml

image1_png.xml

and the rest stick to being same as file name (not append)
training with dl4j fails with current setup, users have to manually remove the extension
image1_jpg.xml -> image1.xml
before start training

@YCCertifai can you check if the similar scenario happens to other saving types?

@YCCertifai can you check if the similar scenario happens to other saving types?

Same Issue for YOLO.
Others are fine

Same Issue for YOLO.
Others are fine

@BobbyLCW
Suggest to only append extensions when there is same file name

image1.jpg
image1.png
image1_jpg.xml
image1_png.xml

and the rest stick to being same as file name (not append)
training with dl4j fails with current setup, users have to manually remove the extension
image1_jpg.xml -> image1.xml
before start training

@codenamewei I will either not append it. If user have the similar file name. They should rename it before import to project. Will lower the priority of this issue.

@BobbyLCW
Suggest to only append extensions when there is same file name

image1.jpg
image1.png
image1_jpg.xml
image1_png.xml

and the rest stick to being same as file name (not append)
training with dl4j fails with current setup, users have to manually remove the extension
image1_jpg.xml -> image1.xml
before start training

@codenamewei I will either not append it. If user have the similar file name. They should rename it before import to project. Will lower the priority of this issue.

solve in latest 522cabc commit in main branch

solve in latest 522cabc commit in main branch


Update 404.md

This is a bug fix.

Summary
Removed Google Search script which no longer worked.
Context
https://github.com/mmistakes/minimal-mistakes/issues/2597

This is just a suggestion, but why dont we use theme's search feature ? Add a button that open search modal, or add a form to 404 page ?


Support multiple tabs

This could be achieved through the notion enhancer extensions: https://notion-enhancer.github.io/


Fix typo: betch -> batch

@devlb1024 Why is it closed?

@devlb1024 Why is it closed?

Thank you for your feedback, we have corrected it and will update it in the next version


Executable Jupyter notebook

We can set up Binder to make the example machine learning pipeline Jupyter notebook executable in a browser.  See the example that uses a conda environment.  We would need to customize this because our environment yml file is not in the root directory.
If we extend the workshop (#24), we could also demonstrate the notebook in person.
Colaboratory is an alternative from Google.

This worked.  See the launch binder button at the top of the readme.  I'm closing the issue, but we should think about how to incorporate this into our workshop (if at all).
I was able to use a symbolic link to reuse our existing conda environment file.


"fault" with device

copied from log:
[02/06/2024, 09:57:49] [B-Hyve] Unknown sprinker device message received: fault
running about 12 identical devices with identical firmware and hardware
F/W: 0041
H/W: HT25-0000
split between two identical hubs:
F/W: 0030
H/W: BH1-0001
plugin is running on a child bridge, have restarted both child bridge and parent bridge.
Thoughts?

I am seeing the same message, I am not sure what it means. the message event is just "fault" and seems like something new.   If the plugin gets a message that it does not take action on it displays this warning. I will try and figure out what it is actually doing.

[6/3/2024, 6:59:17 AM] [B-Hyve-Dev] incoming message {
event: 'fault',
stations: [],
timestamp: '2024-06-03T12:59:15.000Z',
'stream-id': 'e95f4b6c-176d-4aba-94e2-4d83f93683b3',
'client-topics': null,
device_id: '62030b544f0c6f063b8a0b4f'
}
[6/3/2024, 6:59:17 AM] [B-Hyve-Dev] Unknown sprinker device message received: fault
This is the actual message, there is nothing there, I can see if goes away or I can update this to ignore a message with no stations. I assume this is filling your log with 12 of these devices?
I do need to fix the  spelling of  sprinkler :)

I don't know if this helps or not, but I have three HT25-0000 timers, two of them running firmware 0032 and one running firmware 0041. The 0032 devices are showing up fine in Homebridge and HomeKit, but the 0041 is not. Here's the log I'm seeing (Family Room is the 0041 device; Back Porch Hub and Garden Timer are not currently connected):
[6/17/2024, 12:02:46 AM] [B-Hyve] Found account for Toby Rush
[6/17/2024, 12:02:46 AM] [B-Hyve] Skipping device BH1-0001 Back Porch Hub at 8916  Deep Forest Ln, not found at the configured location address: 8916 Deep Forest Lane
[6/17/2024, 12:02:46 AM] [B-Hyve] Online device BH1G2-0000 Kitchen Hub found at the configured location address: 8916 Deep Forest Lane
[6/17/2024, 12:02:46 AM] [B-Hyve] Skipping device HT25-0000 Garden Timer at 8916  Deep Forest Ln, not found at the configured location address: 8916 Deep Forest Lane
[6/17/2024, 12:02:46 AM] [B-Hyve] Online device HT25-0000 Kitchen Bed found at the configured location address: 8916 Deep Forest Lane
[6/17/2024, 12:02:46 AM] [B-Hyve] Online device HT25-0000 Garage Bed found at the configured location address: 8916 Deep Forest Lane
[6/17/2024, 12:02:46 AM] [B-Hyve] Skipping device HT25-0000 Family Room Bed at 8916  Deep Forest Ln, not found at the configured location address: 8916 Deep Forest Lane
[6/17/2024, 12:02:47 AM] [B-Hyve] Skipping Bridge BH1G2-0000 Kitchen Hub based on config
[6/17/2024, 12:02:47 AM] [homebridge-orbit-irrigation] This plugin generated a warning from the characteristic 'Model': characteristic value expected string and received undefined. See https://homebridge.io/w/JtMGR for more info.
[6/17/2024, 12:02:47 AM] [B-Hyve] Configured zone-1 for Garage Bed with 1 min runtime
[6/17/2024, 12:02:47 AM] [B-Hyve] Adding Battery status for Garage Bed
[6/17/2024, 12:02:47 AM] [B-Hyve] Orbit Platform finished loading
[6/17/2024, 12:02:47 AM] [B-Hyve] Configured zone-1 for Kitchen Bed with 1 min runtime
[6/17/2024, 12:02:47 AM] [B-Hyve] Adding Battery status for Kitchen Bed
[6/17/2024, 12:02:48 AM] [B-Hyve] WebSocket connected
[6/17/2024, 12:02:51 AM] [B-Hyve] Device Kitchen Bed idle
[6/17/2024, 12:02:51 AM] [B-Hyve] Unknown faucet device message received: fault
[6/17/2024, 12:02:52 AM] [B-Hyve] Device Garage Bed idle
[6/17/2024, 12:02:52 AM] [B-Hyve] Unknown faucet device message received: fault

unknown messages were moved to debug and will not show as a warning.

That fixed it for me.


Waltz 5082 dep update

Updates to js libs.  Notable ones are:

webpack (minor code changes needed)
d3 (lots of code changes needed as d3.event was removed an is now passed as first arg to handlers)
babel new compiler found some errors|warnings which have been cleaned up

#5802

Looks like mocha tests need some work.


Don't store broken file collections to the configuration cache

Instead, let any exceptions bubble up and fail the storing build immediatelly.
See https://github.com/gradle/gradle/issues/23141

@bot-gradle test ACC

OK, I've already triggered the following builds for you:

AllConfigCacheTestsPullRequestFeedback build

@bot-gradle test RFN

OK, I've already triggered the following builds for you:

ReadyForNightly build

@bot-gradle test and merge

OK, I've already triggered a build for you.


Consider removing unused types from block data

We do not have plans to use certain types currently in the block data.
https://github.com/celestiaorg/celestia-core/blob/86b292b620b34a360fe3fc754ec55d0b42bec400/types/block.go#L1010-L1038
We could get rid of ISRs, as we are not planning on implementing state fraud proofs until after mainnet. We can of course add them back in when we do. Might be able to safely get rid of Evidence as well.

If we do this we might simply skip the field number in protobuf to reserve the current position. Everywhere else we can just remove them.

besides ISRs is there anything else we plan to remove?


chore: display debug info for reverse image screen

Description
Display some debug info to try to understand the cause of this error

This PR resolves []
QA Testing

Acceptance Criteria

Setup Instructions

PR Checklist

[ ] I tested my changes on iOS / Android.
[ ] I added screenshots or videos to illustrate my changes.
[ ] I added Tests and Stories for my changes.
[ ] I added an app state migration.
[x] I hid my changes behind a feature flag.
[ ] I have prefixed changes that need to be tested during a release QA with [NEEDS EXTERNAL QA] on the changelog.

To the reviewers 👀

[ ] I would like at least one of the reviewers to run this PR on the simulator or device.

Changelog updates
Changelog updates

Cross-platform user-facing changes

iOS user-facing changes

Android user-facing changes

Dev changes

Need help with something? Have a look at our docs, or get in touch with us.

this is something temporary right?

Yes, that's right. this will be deleted

we could consider adding it as a DevToggle instead of a feature flag here and then use it like this.

Oh, I think it's better to use DevToggle instead of FeatureFlag. Thanks!


Maintain version.minor tags

TL;DR
Create & maintain minor release tags such as v0.8, v0.9, etc. to prevent breaking changes from breaking deployments when pinned to the major release, which is the only tag available.
Detailed design
While pinning to the latest major version works (There's a v0 tag), the same is not available for each minor version - No v0.8 tag.
Given that newer minor version releases might contain breaking changes - such as the v0.9.0 release, pinning to the major version will cause broken deploys at some point.
This is a request to maintain minor release tags such as  v0.8, v0.9, so that we get bug fixes and other non-breaking changes, without the risk of our build breaking due to updates.
Additional information
No response

Hi @vovimayhem
Thank you for opening an issue. We have a note in the README of some of the other actions, but we must have missed this one. I opened https://github.com/google-github-actions/deploy-cloudrun/pull/318 to add it.
In short, we're only going to maintain major and major.minor.patch versions. Most actions, including GitHub-owned ones, don't follow semantic versioning because it doesn't really make sense for these kinds of projects.
If you have really specific concerns, I'd recommend pinning to a specific SHA, since all Git tags are ultimately immutable.

I'm seeing the suggested changes in the PR... and i think following the suggestion in the read me WILL CONTINUE BREAKING builds...
I'd suggest dropping the suggested edits, and instead put what you have just suggested to me in this Issue instead.


Consolidates the common headers used across http requests

Currently in java SDK, there are different places default headers will be populated:
populateHeaders()
defaultRequestHeaders in GatewayAddressCache
It would be nice to have a centralized place to keep the default headers.

@jeet1995  - can you please take care of this, thanks!


fix(deps): dependency update

:tada: This PR is included in version 1.8.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Add BeCoolStockNuke.netkan

KerbalStuff's auto-submit failed - Needed installation instructions.

Not sure why this is failing. I thought I had the schema pretty much worked out, but I guess not!


Addition of InternshipDiary methods to Model

New methods are added to:

Interface Model
ModelManager
UserPrefs
ReadOnlyUserPrefs

Note: AB3 methods are left alone, so that program build will succeed
ModelManager.equals() test cases are removed to allow build success
Refactored JavaDocs in:

InternshipDiary
ReadOnlyInternshipDiary

Good job


community[patch]: Instantiate Chroma client properly

Fixes: Properly instantiate Chroma client based on chromadb v1.8.1.
Context:

In LangChainAI, it is possible to pass in a ChromaClient when working with chromadb.
In LangChainJS, this is not listed in our documentation.
Once I instantiated the client and passed it in, it worked.
This change corrects the issues that LangChainJS has when instantiating a ChromaClient

Mainly, Chroma would throw when executing getOrCreateCollection()
throw new Error(`Chroma getOrCreateCollection error: ${err}`);

This was my workaround:
        const chromaClient = new (await Chroma.imports()).ChromaClient;
        const vectorStore = new Chroma(embeddings, {
            collectionName: "code_base",
            url: process.env.VECTOR_STORE_URL,
            index: chromaClient
        });

@Doug-Bowen thank you! I will take a look deeper this afternoon <3

Thank you!

@Doug-Bowen thank you Doug!


new learner willing to document the process and contribute

Hi just found this gem on my learning on zephyr os API.
The official documentation has good tutorials for the kernel API. Not so much for devices...
Would you be interested in using Gitbook format?

i've modified into the book format and uploaded here: https://github.com/ntn888/zephyr-tutorial
viewable on: https://ntn888.github.io/zephyr-tutorial/
let me know what you think... thanks

basically the procedure is easy... basically we supply a summary.md file leaving the other files intact... the use the book command to build a user accessible format. finally i used git to push to github pages you see above link

Funny enough I didn't see this until now... I actually also started work on turning this into a better format here

ha ha... looks good.
On Tue, Feb 22, 2022 at 3:26 PM Michael Riegert @.***>
wrote:

Funny enough I didn't see this until now... I actually also started work
on turning this into a better format here
https://blog.eowyn.net/zephyr-rtos-tutorial/
—
Reply to this email directly, view it on GitHub
https://github.com/maksimdrachov/zephyr-rtos-tutorial/issues/3#issuecomment-1047413872,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AJ2RFF5M5KEYXH52CNOSMEDU4MF7ZANCNFSM5KZRUXFA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you authored the thread.Message ID:
@.***>

ha ha... looks good.

As does yours!


Push Notifications from Server

Hi,
I'm trying to send a Notification from a Controller or Service in my Symfony 5 app to clients. I'm trying hard to use your docs but all I could figure out is that the pusher was deprecated and we should use Ratchet/Pawl and Symfony/Messenger instead, but it's pretty hard to figure out how to do that.
I finally stumbled across another issue asking pretty much the same thing, and there was an example there so I tried implementing it. See here : https://github.com/GeniusesOfSymfony/WebSocketBundle/issues/405
I cannot try anything about this right now because I get DI errors triggered :
Cannot autowire service "App\Websocket\Client\WebsocketClient": argument "$router" of method "__construct()" references class "Gos\Bundle\WebSocketBundle\Router\WampRouter" but no such service exists. You should maybe alias thi     s class to the existing "gos_web_socket.router.wamp" service.
Then I define the service in the yaml file, and another error occurs :
Cannot autowire service "Gos\Bundle\WebSocketBundle\Router\WampRouter": argument "$router" of method "__construct()" references interface "Gos\Bundle\PubSubRouterBundle\Router\RouterInterface" but no such service exists. You sh     ould maybe alias this interface to the existing "Gos\Bundle\PubSubRouterBundle\Router\Router" service.
Then again I define that service aswell in the yaml file, and again, another error occurs :
Cannot autowire service "Gos\Bundle\PubSubRouterBundle\Router\Router": argument "$name" of method "__construct()" is type-hinted "string", you should configure its value explicitly.
I tried defining RouterInterface service as a Router object that implements this iterface, because with the interface itself it couldn't know what object to create. But I cannot define every single construtor argument for this service as I don't know the internals of the bundle.
Anyone can help ? I've been struggling with that for 2 days now I'd like to have this working. Thanks in advance !

Nevermind, I finally managed with the example shown in the other issue. I was actually not wiring my services properly, trying to create aliases as the Symfony error message suggested me to.

Hello, you have any code example to send from a controller ?  That would be really appreciated !


Special Fields - APIs

Overview

Refer to the current project_special_field
New table should be called special_fields ( enable versioning)
Columns

id
entity ( can be enum, eg, Project, Proponent, Work)
entity_id
field_name
field_value
time_range


Entrypoint rewriting logic is ignoring cmd

Expected Behavior
I'm a bit confused about this to tell you the truth, but I think think that when we are wrapping a container, we should be respecting both the entrypoint and the cmd
Actual Behavior
When we retrieve an image's entrypoint we do just that - we get the entrypoint only and ignore the cmd. So if an image is relying on the cmd to do the right thing, we wipe it out and completely ignore it.
Steps to Reproduce the Problem

Create a Task with a step that tries to rely on an image's cmd, e.g. in this case the cmd for the golang image is go, so we shouldn't need to specify that explicitly,:

  - name: install-ko
    image: golang
    args:
    - "get"
    - "github.com/google/go-containerregistry/cmd/ko"

Create a TaskRun that uses the above. It will fail with an error like:

could not start the process: exec: \"get\": executable file not found in $PATH

If you update the step to use go explicitly, it will work:

  - name: install-ko
    image: golang
    command: ["go"]
    args:
    - "get"
    - "github.com/google/go-containerregistry/cmd/ko"

Additional Info

For reference: https://stackoverflow.com/questions/21553353/what-is-the-difference-between-cmd-and-entrypoint-in-a-dockerfile
Note that in #564 @pivotal-nader-ziada is updating this logic

/assign

in pr #564, I have logic that will check the remote image entrypoint and if there isn't one, will check the cmd
would that cover the problem you ran into?

Oh boy, this is always a fun area - we've flip-flopped on how the Jenkins/Docker integration works from using entrypoint vs cmd...well, multiple times. The lesson I've taken away from our pain there is that if you try to handle every particular permutation of entrypoint vs cmd as default behavior, you're going to have a bad time. My opinion is that it's best to settle on one expected/required behavior, and just accept that this means some images will require a bit more configuration to use. Our situation here seems to be much simpler than the Jenkins/Docker concerns, though, so I may just be paranoid. =)

@bobcatfish I think this should be closed as part of the changes in PR #564

Fixed with #564


Upgrade Microsoft.AspNet.WebApi.WebHost version to resolve dependencies on prerelease version of packages. This is causing operatonal risk during static code analysis.

VERSION:
5.6.0
STEPS TO REPRODUCE:
Install the latest version of Swashbuckle nuget ie. 5.6.0
EXPECTED RESULT:
Microsoft.AspNet.WebApi.WebHost should be referred the version 5.2.7 or the latest.
ACTUAL RESULT:
Microsoft.AspNet.WebApi.WebHost version used in project is 4.0.20710.
ADDITIONAL DETAILS
The Microsoft.AspNet.WebApi.WebHost with version 4.0.20710 has some operational risks associated on black duck hub scan. Below transient dependencies of Microsoft.AspNet.WebApi.WebHost were reported as these versions were outdated.
Microsoft ASP.NET Web API Client Libraries  v4.0.20710 |
Microsoft ASP.NET Web API Core Libraries  v4.0.20710
Microsoft ASP.NET Web API Web Host v4.0.20710
Microsoft HTTP Client Libraries v2.0.20710
These packages are reporting operational risks due to very old package referenced.
Can the package Microsoft.AspNet.WebApi.WebHost be upgraded to latest?
Thanks in advance.

#1416 PR addresses this.


SOCA build fails on discover

Description
SOCA build fails on discover. I was able to build this morning without any problem.
Provide a clear and concise description of what the bug is.

To Reproduce:
What compilers/machines are you seeing this with?
Give explicit steps to reproduce the behavior.
I tried to build on discover using both gnu and intel modules
Output
[ 81%] Built target ioda
[ 93%] Built target ufo
[ 93%] Building Fortran object soca/src/soca/CMakeFiles/soca.dir/Geometry/soca_geom_mod.F90.o
ifort: command line warning #10121: overriding '-qopenmp-stubs' with '-qopenmp'
/gpfsm/dnb55/projects/p01/s2127/hebrahi1/experiments/soca-science/bundle/soca/src/soca/Geometry/soca_geom_mod.F90(313): error #6784: The number of actual arguments cannot be greater than the number of dummy arguments.   [DIAG_REMAP_INIT]
  call diag_remap_init(remap_ctrl, coord_tuple='ZSTAR, ZSTAR, ZSTAR', answers_2018=answers_2018)
-------^
/gpfsm/dnb55/projects/p01/s2127/hebrahi1/experiments/soca-science/bundle/soca/src/soca/Geometry/soca_geom_mod.F90(320): error #6784: The number of actual arguments cannot be greater than the number of dummy arguments.   [DIAG_REMAP_UPDATE]
  call diag_remap_update(remap_ctrl, &
-------^
compilation aborted for /gpfsm/dnb55/projects/p01/s2127/hebrahi1/experiments/soca-science/bundle/soca/src/soca/Geometry/soca_geom_mod.F90 (code 1)
soca/src/soca/CMakeFiles/soca.dir/build.make:157: recipe for target 'soca/src/soca/CMakeFiles/soca.dir/Geometry/soca_geom_mod.F90.o' failed
make[2]: *** [soca/src/soca/CMakeFiles/soca.dir/Geometry/soca_geom_mod.F90.o] Error 1
CMakeFiles/Makefile2:31699: recipe for target 'soca/src/soca/CMakeFiles/soca.dir/all' failed
make[1]: *** [soca/src/soca/CMakeFiles/soca.dir/all] Error 2

@HamidehGMAO : make update

Thanks. I did make update, but I just saw you've modified the bundle CMakeList, I neede to do a git pull on bungle! Thanks


[v16] SDK v47 Cleanup branch

Clean up minor nits from the review session & some CI things.
Features

Removed Unused FeeShare functions
Improves the test_node.sh script
Upgrades from v15 namespace to v16
Adds 2 new stargate queries
Adds the NFT module

sims will fail due to the old runsim / style of using it in Makefile, can ref the v0.47.x branch of sdk for updated sim testing Makefile goodness

Hmm simtest still fails despite the 'failed' test actually passing for me locally. Github cache my be acting up
go test ./app -run TestFullAppSimulation -Enabled=true -NumBlocks=50 -Genesis= -Verbose=true -Commit=true -Seed=3012 -Period=10 -ExportParamsPath /tmp/sim-logs-4228633406/sim_params-3012.json -ExportStatePath /tmp/sim-logs-4228633406/sim_state-3012.json -v -timeout 24h


Physics client closed during environment destruction

Describe the bug
I am trying to do a one-step lookahead on the environment's action space by calling deepcopy() on the environment to try out different actions. In pseudo-code, it would look something like this:
actions = [env.action_space.sample() for _ in range(10)]
for action in actions:
  env_copy = deepcopy(env)
  obs, rew, done, info = env_copy.step(action)
  # do stuff with the one step lookahead for each action

However, I cannot quite do this because env_copy gets garbage collected after the first iteration of the loop. The garbage collector closes the physics_client._client in the PyBullet object, which is shared by env and env_copy. As a result, the second iteration of the loop fails at env_copy.step(action) because env_copy was copied from env which has lost its connection to the physics client.
To verify this, you may use the following code on any panda_gym environment.
import deepcopy

env_copy = deepcopy(env)
assert(id(env.sim.physics_client._client) == id(env_copy.sim.physics_client._client))
del env_copy
env.reset() # error: Not connected to physics server.

Is it possible to close the connection based on a reference count implementation? Or would you recommend any other way to do this one-step lookahead?

Gym environment are, generally speaking, not resettable to a particular state (see https://github.com/openai/gym/issues/402).
But I agree it could be a good enhancement to make panda_gym resettable. It could work like:
actions = [env.action_space.sample() for _ in range(10)]
sim_state = env.save_state()
for action in actions:
  env.load_state(state)
  obs, rew, done, info = env.step(action)
  # do stuff with the one step lookahead for each action

I don't know precisely how to do it, but the question has already been adresse here: https://pybullet.org/Bullet/phpBB3/viewtopic.php?t=11972
I don't have time to work on this improvement, but if you do, I would welcome a PR.

Thanks for the pointer. They are very helpful! I have created a PR to address this: https://github.com/qgallouedec/panda-gym/pull/33


Made changes to raise error if model fails to load

What this PR does / why we need it:
When the model is loaded from a local directory and when there is an error while loading it, the isvc becomes ready though the model failed to load. Made changes to raise Error when the model is not loaded.
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #1791
Special notes for your reviewer:

Please confirm that if this PR changes any image versions, then that's the sole change this PR makes.

Release note:

NONE

/test kubeflow-kserve-presubmit

/retest


add two schools

@joitay Thank you for your patience while waiting for a review and processing your request. Pull request merged. Please start applying for JetBrains educational subscription at https://www.jetbrains.com/shop/eform/students in an hour, to allow the changes to propagate through JetBrains systems.


Fix off by one error in channelz

This is a leftover from when the index has a mapping to uuids (before we implemented the squish operation)

****************************************************************

libgrpc.so

     VM SIZE                                                                FILE SIZE
 ++++++++++++++ GROWING                                                  ++++++++++++++

 -------------- SHRINKING                                                --------------
  -0.0%     -16 [None]                                                       -16  -0.0%
  -0.4%     -16 src/core/lib/channel/channelz.cc                             -16  -0.4%
      -4.2%     -16 grpc_core::channelz::ServerNode::RenderServerSockets         -16  -4.2%

  -0.0%     -32 TOTAL                                                        -32  -0.0%

****************************************************************

libgrpc++.so

     VM SIZE        FILE SIZE
 ++++++++++++++  ++++++++++++++

  [ = ]       0        0  [ = ]

[trickle] No significant performance differences

Objective-C binary sizes
*****************STATIC******************
  New size                      Old size
 2,019,735      Total (=)      2,019,735

 No significant differences in binary sizes

***************FRAMEWORKS****************
  New size                      Old size
11,154,122      Total (=)     11,154,122

 No significant differences in binary sizes

Corrupt JSON data (indicates timeout or crash):
    bm_call_create.BM_IsolatedFilter_ClientChannelFilter_NoOp_.counters.new: 10
    bm_call_create.BM_IsolatedFilter_ClientChannelFilter_NoOp_.counters.old: 10

[microbenchmarks] No significant performance differences


Overlap with Channel Tabs plugin, the status is in wrong position for own profile

Hi I use channel tabs plugin and I see that there is a lot of overlap between buttons with that plugin
screenshot

another issue that I noticed is that for own profile my status is coming in wrong position

Should be fixed by now

yes it seems to be fixed now

thanks I'll be closing the issue then