DEFAULT_ETAG_TIMEOUT

cannot import name 'DEFAULT_ETAG_TIMEOUT' from 'huggingface_hub.constants' (/usr/local/lib/python3.9/dist-packages/huggingface_hub/constants.py)

And now i get this Traceback (most recent call last):
File "/notebooks/ComfyUI/nodes.py", line 1893, in load_custom_node
module_spec.loader.exec_module(module)
File "", line 850, in exec_module
File "", line 228, in _call_with_frames_removed
File "/notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/init.py", line 45, in
imported_module = importlib.import_module(f".nodes.{module_name}", name)
File "/usr/lib/python3.9/importlib/init.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 1030, in _gcd_import
File "", line 1007, in _find_and_load
File "", line 986, in _find_and_load_unlocked
File "", line 680, in _load_unlocked
File "", line 850, in exec_module
File "", line 228, in _call_with_frames_removed
File "/notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/nodes/moondream_script.py", line 1, in
from .moondream import VisionEncoder, TextModel
File "/notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/nodes/moondream/init.py", line 1, in
from .vision_encoder import VisionEncoder
File "/notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/nodes/moondream/vision_encoder.py", line 4, in
from torchvision.transforms.v2 import (
File "/usr/local/lib/python3.9/dist-packages/torchvision/transforms/v2/init.py", line 3, in
from . import functional  # usort: skip
File "/usr/local/lib/python3.9/dist-packages/torchvision/transforms/v2/functional/init.py", line 3, in
from ._utils import is_pure_tensor, register_kernel  # usort: skip
File "/usr/local/lib/python3.9/dist-packages/torchvision/transforms/v2/functional/_utils.py", line 5, in
from torchvision import tv_tensors
File "/usr/local/lib/python3.9/dist-packages/torchvision/tv_tensors/init.py", line 3, in
from ._bounding_boxes import BoundingBoxes, BoundingBoxFormat
File "/usr/local/lib/python3.9/dist-packages/torchvision/tv_tensors/_bounding_boxes.py", line 9, in
from ._tv_tensor import TVTensor
File "/usr/local/lib/python3.9/dist-packages/torchvision/tv_tensors/_tv_tensor.py", line 6, in
from torch._C import DisableTorchFunctionSubclass
ImportError: cannot import name 'DisableTorchFunctionSubclass' from 'torch._C' (/usr/local/lib/python3.9/dist-packages/torch/_C.cpython-39-x86_64-linux-gnu.so)
Cannot import /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes module for custom nodes: cannot import name 'DisableTorchFunctionSubclass' from 'torch._C' (/usr/local/lib/python3.9/dist-packages/torch/_C.cpython-39-x86_64-linux-gnu.so)

can you update your python dependencies and try again

I'm on jupyter lab, is there a code i should type to update py depndencies?

cd update
..\python_embeded\python.exe .\update.py
..\python_embeded\python.exe -s -m pip install -r ../ComfyUI/requirements.txt

i tryed starting comfyUI and it says that: ```
** ComfyUI startup time: 2024-02-07 20:58:03.335040
** Platform: Linux
** Python version: 3.9.16 (main, Dec  7 2022, 01:11:51)
[GCC 9.4.0]
** Python executable: /usr/local/bin/python
** Log path: /notebooks/comfyui.log
Prestartup times for custom nodes:
0.0 seconds: /notebooks/ComfyUI/custom_nodes/rgthree-comfy
0.0 seconds: /notebooks/ComfyUI/custom_nodes/ComfyUI-Manager
Total VRAM 48677 MB, total RAM 45140 MB
xformers version: 0.0.24
Set vram state to: HIGH_VRAM
Device: cuda:0 NVIDIA RTX A6000 : native
VAE dtype: torch.bfloat16
Using xformers cross attention
Traceback (most recent call last):
File "/notebooks/ComfyUI/main.py", line 76, in
import execution
File "/notebooks/ComfyUI/execution.py", line 11, in
import nodes
File "/notebooks/ComfyUI/nodes.py", line 20, in
import comfy.diffusers_load
File "/notebooks/ComfyUI/comfy/diffusers_load.py", line 3, in
import comfy.sd
File "/notebooks/ComfyUI/comfy/sd.py", line 13, in
from . import model_detection
File "/notebooks/ComfyUI/comfy/model_detection.py", line 1, in
import comfy.supported_models
File "/notebooks/ComfyUI/comfy/supported_models.py", line 5, in
from . import sd1_clip
File "/notebooks/ComfyUI/comfy/sd1_clip.py", line 3, in
from transformers import CLIPTokenizer
File "/usr/local/lib/python3.9/dist-packages/transformers/init.py", line 26, in
from . import dependency_versions_check
File "/usr/local/lib/python3.9/dist-packages/transformers/dependency_versions_check.py", line 57, in
require_version_core(deps[pkg])
File "/usr/local/lib/python3.9/dist-packages/transformers/utils/versions.py", line 117, in require_version_core
return require_version(requirement, hint)
File "/usr/local/lib/python3.9/dist-packages/transformers/utils/versions.py", line 111, in require_version
_compare_versions(op, got_ver, want_ver, requirement, pkg, hint)
File "/usr/local/lib/python3.9/dist-packages/transformers/utils/versions.py", line 44, in _compare_versions
raise ImportError(
ImportError: huggingface-hub>=0.19.3,<1.0 is required for a normal functioning of this module, but found huggingface-hub==0.10.0.
Try: pip install transformers -U or pip install -e '.[dev]' if you're working with git main

i Tryed uninstalling the requirment package and install them freshlky with !pip install -r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt
and it give me this error: Collecting openai>=0.27.8
Downloading openai-1.11.1-py3-none-any.whl (226 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 226.1/226.1 kB 27.5 MB/s eta 0:00:00
Collecting accelerate>=0.25.0
Downloading accelerate-0.26.1-py3-none-any.whl (270 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 270.9/270.9 kB 73.4 MB/s eta 0:00:00
Collecting huggingface-hub==0.20.1
Downloading huggingface_hub-0.20.1-py3-none-any.whl (330 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 330.1/330.1 kB 71.3 MB/s eta 0:00:00
Collecting Pillow>=10.1.0
Downloading pillow-10.2.0-cp39-cp39-manylinux_2_28_x86_64.whl (4.5 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.5/4.5 MB 111.3 MB/s eta 0:00:0000:01
Collecting transformers>=4.36.2
Downloading transformers-4.37.2-py3-none-any.whl (8.4 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 8.4/8.4 MB 129.7 MB/s eta 0:00:0000:01
Collecting torch<3.0.0,>=2.0.1
Downloading torch-2.2.0-cp39-cp39-manylinux1_x86_64.whl (755.5 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 755.5/755.5 MB 3.6 MB/s eta 0:00:0000:0100:01
Collecting torchvision>=0.15.2
Downloading torchvision-0.17.0-cp39-cp39-manylinux1_x86_64.whl (6.9 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 6.9/6.9 MB 113.4 MB/s eta 0:00:00a 0:00:01
Collecting einops>=0.7.0
Downloading einops-0.7.0-py3-none-any.whl (44 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 44.6/44.6 kB 17.8 MB/s eta 0:00:00
Collecting safetensors>=0.4.1
Downloading safetensors-0.4.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.3 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.3/1.3 MB 26.3 MB/s eta 0:00:00ta 0:00:01
Collecting py-cpuinfo
Downloading py_cpuinfo-9.0.0-py3-none-any.whl (22 kB)
Collecting gitpython
Downloading GitPython-3.1.41-py3-none-any.whl (196 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 196.4/196.4 kB 58.2 MB/s eta 0:00:00
Collecting moviepy
Downloading moviepy-1.0.3.tar.gz (388 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 388.3/388.3 kB 78.3 MB/s eta 0:00:00
Preparing metadata (setup.py) ... done
Collecting opencv-python
Downloading opencv_python-<IP_ADDRESS>-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (62.2 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 62.2/62.2 MB 33.9 MB/s eta 0:00:0000:0100:01
Collecting scikit-build
Downloading scikit_build-0.17.6-py3-none-any.whl (84 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 84.3/84.3 kB 28.4 MB/s eta 0:00:00
Collecting typing
Downloading typing-<IP_ADDRESS>.tar.gz (78 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 78.6/78.6 kB 23.3 MB/s eta 0:00:00
Preparing metadata (setup.py) ... done
Collecting diskcache
Downloading diskcache-5.6.3-py3-none-any.whl (45 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 45.5/45.5 kB 13.7 MB/s eta 0:00:00
Requirement already satisfied: filelock in /usr/local/lib/python3.9/dist-packages (from huggingface-hub==0.20.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 3)) (3.9.0)
Requirement already satisfied: requests in /usr/local/lib/python3.9/dist-packages (from huggingface-hub==0.20.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 3)) (2.28.2)
Requirement already satisfied: tqdm>=4.42.1 in /usr/local/lib/python3.9/dist-packages (from huggingface-hub==0.20.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 3)) (4.64.1)
Requirement already satisfied: typing-extensions>=<IP_ADDRESS> in /usr/local/lib/python3.9/dist-packages (from huggingface-hub==0.20.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 3)) (4.9.0)
Requirement already satisfied: fsspec>=2023.5.0 in /usr/local/lib/python3.9/dist-packages (from huggingface-hub==0.20.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 3)) (2024.2.0)
Requirement already satisfied: pyyaml>=5.1 in /usr/local/lib/python3.9/dist-packages (from huggingface-hub==0.20.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 3)) (5.4.1)
Requirement already satisfied: packaging>=20.9 in /usr/local/lib/python3.9/dist-packages (from huggingface-hub==0.20.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 3)) (23.0)
Requirement already satisfied: distro<2,>=1.7.0 in /usr/local/lib/python3.9/dist-packages (from openai>=0.27.8->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 1)) (1.9.0)
Requirement already satisfied: sniffio in /usr/local/lib/python3.9/dist-packages (from openai>=0.27.8->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 1)) (1.3.0)
Requirement already satisfied: httpx<1,>=0.23.0 in /usr/local/lib/python3.9/dist-packages (from openai>=0.27.8->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 1)) (0.23.1)
Requirement already satisfied: anyio<5,>=3.5.0 in /usr/local/lib/python3.9/dist-packages (from openai>=0.27.8->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 1)) (3.6.2)
Requirement already satisfied: pydantic<3,>=1.9.0 in /usr/local/lib/python3.9/dist-packages (from openai>=0.27.8->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 1)) (1.9.2)
Requirement already satisfied: numpy>=1.17 in /usr/local/lib/python3.9/dist-packages (from accelerate>=0.25.0->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 2)) (1.23.5)
Requirement already satisfied: psutil in /usr/local/lib/python3.9/dist-packages (from accelerate>=0.25.0->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 2)) (5.9.4)
Requirement already satisfied: tokenizers<0.19,>=0.14 in /usr/local/lib/python3.9/dist-packages (from transformers>=4.36.2->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 5)) (0.15.1)
Requirement already satisfied: regex!=2019.12.17 in /usr/local/lib/python3.9/dist-packages (from transformers>=4.36.2->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 5)) (2022.10.31)
Requirement already satisfied: jinja2 in /usr/local/lib/python3.9/dist-packages (from torch<3.0.0,>=2.0.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 6)) (3.1.2)
Requirement already satisfied: nvidia-cublas-cu12==<IP_ADDRESS> in /usr/local/lib/python3.9/dist-packages (from torch<3.0.0,>=2.0.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 6)) (<IP_ADDRESS>)
Requirement already satisfied: nvidia-nccl-cu12==2.19.3 in /usr/local/lib/python3.9/dist-packages (from torch<3.0.0,>=2.0.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 6)) (2.19.3)
Requirement already satisfied: nvidia-cuda-cupti-cu12==12.1.105 in /usr/local/lib/python3.9/dist-packages (from torch<3.0.0,>=2.0.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 6)) (12.1.105)
Requirement already satisfied: nvidia-cufft-cu12==<IP_ADDRESS> in /usr/local/lib/python3.9/dist-packages (from torch<3.0.0,>=2.0.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 6)) (<IP_ADDRESS>)
Requirement already satisfied: networkx in /usr/local/lib/python3.9/dist-packages (from torch<3.0.0,>=2.0.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 6)) (3.0)
Requirement already satisfied: nvidia-curand-cu12==<IP_ADDRESS> in /usr/local/lib/python3.9/dist-packages (from torch<3.0.0,>=2.0.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 6)) (<IP_ADDRESS>)
Requirement already satisfied: nvidia-cusolver-cu12==<IP_ADDRESS> in /usr/local/lib/python3.9/dist-packages (from torch<3.0.0,>=2.0.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 6)) (<IP_ADDRESS>)
Requirement already satisfied: nvidia-cuda-runtime-cu12==12.1.105 in /usr/local/lib/python3.9/dist-packages (from torch<3.0.0,>=2.0.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 6)) (12.1.105)
Requirement already satisfied: nvidia-cusparse-cu12==<IP_ADDRESS> in /usr/local/lib/python3.9/dist-packages (from torch<3.0.0,>=2.0.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 6)) (<IP_ADDRESS>)
Requirement already satisfied: nvidia-nvtx-cu12==12.1.105 in /usr/local/lib/python3.9/dist-packages (from torch<3.0.0,>=2.0.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 6)) (12.1.105)
Requirement already satisfied: triton==2.2.0 in /usr/local/lib/python3.9/dist-packages (from torch<3.0.0,>=2.0.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 6)) (2.2.0)
Requirement already satisfied: nvidia-cuda-nvrtc-cu12==12.1.105 in /usr/local/lib/python3.9/dist-packages (from torch<3.0.0,>=2.0.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 6)) (12.1.105)
Requirement already satisfied: sympy in /usr/local/lib/python3.9/dist-packages (from torch<3.0.0,>=2.0.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 6)) (1.11.1)
Requirement already satisfied: nvidia-cudnn-cu12==<IP_ADDRESS> in /usr/local/lib/python3.9/dist-packages (from torch<3.0.0,>=2.0.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 6)) (<IP_ADDRESS>)
Requirement already satisfied: nvidia-nvjitlink-cu12 in /usr/local/lib/python3.9/dist-packages (from nvidia-cusolver-cu12==<IP_ADDRESS>->torch<3.0.0,>=2.0.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 6)) (12.3.101)
Requirement already satisfied: gitdb<5,>=4.0.1 in /usr/local/lib/python3.9/dist-packages (from gitpython->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 12)) (4.0.10)
Requirement already satisfied: decorator<5.0,>=4.0.2 in /usr/local/lib/python3.9/dist-packages (from moviepy->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 13)) (4.4.2)
Requirement already satisfied: proglog<=1.0.0 in /usr/local/lib/python3.9/dist-packages (from moviepy->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 13)) (0.1.10)
Requirement already satisfied: imageio<3.0,>=2.5 in /usr/local/lib/python3.9/dist-packages (from moviepy->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 13)) (2.25.0)
Requirement already satisfied: imageio_ffmpeg>=0.2.0 in /usr/local/lib/python3.9/dist-packages (from moviepy->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 13)) (0.4.8)
Requirement already satisfied: setuptools>=42.0.0 in /usr/local/lib/python3.9/dist-packages (from scikit-build->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 15)) (66.1.1)
Requirement already satisfied: wheel>=0.32.0 in /usr/local/lib/python3.9/dist-packages (from scikit-build->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 15)) (0.35.1)
Requirement already satisfied: tomli in /usr/local/lib/python3.9/dist-packages (from scikit-build->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 15)) (2.0.1)
Requirement already satisfied: idna>=2.8 in /usr/lib/python3/dist-packages (from anyio<5,>=3.5.0->openai>=0.27.8->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 1)) (2.8)
Requirement already satisfied: smmap<6,>=3.0.1 in /usr/local/lib/python3.9/dist-packages (from gitdb<5,>=4.0.1->gitpython->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 12)) (5.0.0)
Requirement already satisfied: httpcore<0.17.0,>=0.15.0 in /usr/local/lib/python3.9/dist-packages (from httpx<1,>=0.23.0->openai>=0.27.8->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 1)) (0.15.0)
Requirement already satisfied: certifi in /usr/lib/python3/dist-packages (from httpx<1,>=0.23.0->openai>=0.27.8->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 1)) (2019.11.28)
Requirement already satisfied: rfc3986[idna2008]<2,>=1.3 in /usr/local/lib/python3.9/dist-packages (from httpx<1,>=0.23.0->openai>=0.27.8->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 1)) (1.5.0)
Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.9/dist-packages (from requests->huggingface-hub==0.20.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 3)) (2.1.1)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in /usr/local/lib/python3.9/dist-packages (from requests->huggingface-hub==0.20.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 3)) (1.26.14)
Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.9/dist-packages (from jinja2->torch<3.0.0,>=2.0.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 6)) (2.1.2)
Requirement already satisfied: mpmath>=0.19 in /usr/local/lib/python3.9/dist-packages (from sympy->torch<3.0.0,>=2.0.1->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 6)) (1.2.1)
Requirement already satisfied: h11<0.13,>=0.11 in /usr/local/lib/python3.9/dist-packages (from httpcore<0.17.0,>=0.15.0->httpx<1,>=0.23.0->openai>=0.27.8->-r /notebooks/ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt (line 1)) (0.12.0)
Building wheels for collected packages: moviepy, typing
Building wheel for moviepy (setup.py) ... done
Created wheel for moviepy: filename=moviepy-1.0.3-py3-none-any.whl size=110728 sha256=3d9fcff966031556118986e756789f40bc801b1764eb988f159a3ff46593f6a0
Stored in directory: /root/.cache/pip/wheels/f0/23/29/c6379bde05643dcb1cd56f5ad432f26acb3ca7db075dc0c35f
Building wheel for typing (setup.py) ... done
Created wheel for typing: filename=typing-<IP_ADDRESS>-py3-none-any.whl size=26305 sha256=ca4bef5fd4b5e3bdd7c8d0394cc57808d70ae8c98d12014b6047c6a8690fc0e2
Stored in directory: /root/.cache/pip/wheels/bf/97/61/e3c9316da01340cf1585f1f5a1c52d873f5023fb9f635385f2
Successfully built moviepy typing
Installing collected packages: py-cpuinfo, typing, scikit-build, safetensors, Pillow, opencv-python, einops, diskcache, huggingface-hub, gitpython, torch, moviepy, transformers, torchvision, openai, accelerate
Attempting uninstall: huggingface-hub
Found existing installation: huggingface-hub 0.11.1
Uninstalling huggingface-hub-0.11.1:
Successfully uninstalled huggingface-hub-0.11.1
ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
img2texture 1.0.6 requires pillow<10,>=9.2, but you have pillow 10.2.0 which is incompatible.
clean-fid 0.1.31 requires requests==2.25.1, but you have requests 2.28.2 which is incompatible.
blendmodes 2022 requires Pillow<10,>=9.0.0, but you have pillow 10.2.0 which is incompatible.
Successfully installed Pillow-10.2.0 accelerate-0.26.1 diskcache-5.6.3 einops-0.7.0 gitpython-3.1.41 huggingface-hub-0.20.1 moviepy-1.0.3 openai-1.11.1 opencv-python-<IP_ADDRESS> py-cpuinfo-9.0.0 safetensors-0.4.2 scikit-build-0.17.6 torch-2.2.0 torchvision-0.17.0 transformers-4.37.2 typing-<IP_ADDRESS>
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
I don't understeand it's saying found huggingface-hub==0.10.0 but i have installed huggingface-hub-0.20.1


Update apexcharts and react-apexcharts

Resolves #324
Overview
This was an Apexcharts issue fixed in 3.54.1. I just went ahead and updated to 4.0.0
What Changed
Updated Apexcharts with npm install apexcharts@latest react-apexcharts@latest

Tested on Safari, works.


Non Aggregate query support

In this PR we have done the following changes

Added support for Log non aggregate with full range logs volume histogram support.
Added UTs for fetch logs query

https://github.com/SumoLogic-Labs/sumologic-grafana-datasource/assets/97428361/73ef09c8-0d31-41ec-a83a-b75c0ee39559

please run yarn lint and ensure that there is no errors

please ensure that ./node_modules/.bin/prettier --check . also does not produce warnings.

please ensure that ./node_modules/.bin/prettier --check . also does not produce warnings.

@akononenko-sumo  Yes... there are warning throughout the code base. i will raise the separate PR with prettier formatting changes


how use fetch api

When I use fetch Api, I don't know how to use it, can somebody help me?
I use like this:
curl -XGET 'http://localhost:7101/api/v2/fetch?q=name,anwserToEverything,:eq,(,name,),:by'
The response is this:
data: {"type":"info","message":"100.0% of data complete"}
data: {"type":"close","message":"operation complete"}

I'm assuming you are running with the sample memory config and publish-test.sh is being used to send data.
Based on the response, it isn't matching any data, note that the metric name is misspelled ( s/anwser/answer/) in your example. Form a local run I did:
$ curl -s 'http://localhost:7101/api/v2/fetch?q=name,answerToEverything,:eq,(,name,),:by&s=e-5m'
data: {"type":"timeseries","id":"b16bd3e7143dae969a9b9051059d31fb4d01031f","query":"name,answerToEverything,:eq,:sum,(,name,),:by","groupByKeys":["name"],"label":"(name=answerToEverything)","tags":{"nf.node":"***","atlas.dstype":"gauge","name":"answerToEverything"},"start":1551364860000,"end":1551365160000,"step":60000,"data":{"type":"array","values":[42.0,42.0,42.0,42.0,42.0]}}

data: {"type":"close","message":"operation complete"}

Note, in general the docs around the fetch API are pretty sparse. We are working on revamping some of the docs (see atlas-docs repo) and moving off of github wiki due to some of its limitations. Fetch API docs are on the todo list, but I have a pretty big back log and it is a lower priority right now, so it will likely be a while.

Thank you @brharrington that worked! Looking forward to the new doc.


Support for @JsonTypeInfo in generated classes

Jackson 2 has a @JsonTypeInfo annotation available so that (de)serialization of classes that extend abstract classes works correctly.
Adding this annotation to an abstract POJO will (during serialization) add a top-level property to the schema that specifies a fully qualified class name that specifies the type that a particular json object should be deserialized to.
This PR allows for an "abstractJavaTypeProperty" that specifies the name of the property that will contain the fully qualified name in the serialized object.
For example, if your schema contains node with:
"abstractJavaTypeProperty" : "className"

The generated POJO will be an abstract class, and will have this annotation:
@JsonTypeInfo(use = JsonTypeInfo.Id.CLASS, include = JsonTypeInfo.As.PROPERTY, property = "className")

This seems a very good feature, yet I could not see it being mentioned in the release logs (using latest version). I'm working with a POJO A that contains POJO B as its field and B is abstract (or having multiple child), so that I wish to deserialize A using different children class definition of B in run time.
Is there any ETA for actual merges of this? Thanks!

@MonkeyLeeT Yes, this has been merged and is present in 0.4.6 and later releases. Thanks for mentioning this though as the issue hadn't been tagged correctly and hence didn't show in the release notes.

@joelittlejohn thanks for the update. I did try it out yesterday yet I could not get the abstract keyword added to POJO. I'm gonna try it again.
What I'm trying to achieve is to be able to define like 20 fields in one base json, then make some of them required in different json by referencing the base one.
I tried to use ref or extends to base one and add required list in the new one, but to no avail since fields are not brought to the new class, only the builder method.
Do you have some idea if this is supported in any PR? Thanks a lot!

I'm not sure I understand what you mean. The the fields are inherited by the children since the child classes inherit getters & setters from the parent. There's no need for the fields to be 'brought to the new class' (?).
What are you expecting required to actually do to the child classes?
The builders are brought into the children because Java allows covariant return, hence the child can return a more narrow type than the parent (the child type instead of the parent type). This makes the builder method more useful, as you can chain calls and still keep operating on the child type (see #455).

Sorry for any confusions.
This is the base.json
{   "$schema": "http://json-schema.org/draft-04/schema",   "type": "object",   "properties": {     "a": {       "type": "integer"     },     "b": {       "type": "integer"     }   } }
And this is the child.json
{   "$schema": "http://json-schema.org/draft-04/schema",   "type": "object",   "additionalProperties": false,   "extends": {     "$ref": "base.json"   },   "required": ["a"] }
As you can see, I wish to be able to do so for other children who might want different fields inherited to be required, yet @Notnull will only be added on the actual field declaration, which is in parent class base.json.

@joelittlejohn Do you have more wisdom to share with me on these? Thanks a lot!


python37Packages.django-storages: 1.11 -> 1.11.1

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for python37Packages.django-storages is: "Collection of custom storage backends for Django"
meta.homepage for python37Packages.django-storages is: "https://django-storages.readthedocs.io"
meta.changelog for python37Packages.django-storages is: ""
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact

Checks done (click to expand)

built on NixOS

Warning: a test defined in passthru.tests did not pass

0 of 0 passed binary check by having a zero exit code.

0 of 0 passed binary check by having the new version present in output.

found 1.11.1 with grep in /nix/store/h7jiy6dsfd069asayk82hb8pjlmvbjxq-python3.7-django-storages-1.11.1

directory tree listing: https://gist.github.com/d0a417720f9168b60218f196e4641c2b

du listing: https://gist.github.com/96ffc5414eb759411b94fc193d6cad66

Rebuild report (if merged into master) (click to expand)

12 total rebuild path(s)

3 package rebuild(s)

3 x86_64-linux rebuild(s)
3 i686-linux rebuild(s)
3 x86_64-darwin rebuild(s)
3 aarch64-linux rebuild(s)

First fifty rebuilds by attrpath
python37Packages.django-storages
python38Packages.django-storages
python39Packages.django-storages

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/h7jiy6dsfd069asayk82hb8pjlmvbjxq-python3.7-django-storages-1.11.1 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A python37Packages.django-storages https://github.com/r-ryantm/nixpkgs/archive/28f5b0852b123ffceb365dbe072833f61397ab5f.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/h7jiy6dsfd069asayk82hb8pjlmvbjxq-python3.7-django-storages-1.11.1
ls -la /nix/store/h7jiy6dsfd069asayk82hb8pjlmvbjxq-python3.7-django-storages-1.11.1/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

3 packages built:

python37Packages.django-storages
python38Packages.django-storages
python39Packages.django-storages

Maintainer pings
cc @mmai for testing.

Result of nixpkgs-review pr 107690 run on x86_64-darwin 1

3 packages built:

python37Packages.django-storages
python38Packages.django-storages
python39Packages.django-storages


ipdOffset value doesn't work well

The actual IPD used for rendering would be "ipd + ipdOffset". If I increase the ipdOffset value in file steamvr.vrsettings, the image did changed a bit. It seems work. But when I change the ipdOffset to make the final ipd goes to -0.063, steamvr didn't display the left-eye-image in front of the right eye. I should see an inverse image when the ipd is negative, but I didn't.
So, does the ipdOffset work as a real offset? It seems just like a scale to the virtual world, and it's not a real IPD offset.

To make the difference noticeable, I even set the ipdOffset to an exaggerated value like 10.0 or 20.0. These extreme values should make the two eye cameras too far to stay in a small room, but I can still get a normal view of SteamVR Home, with the scene just in a different perspective than the 0.063 ipd.


Stylesheet escape hatch

What's the easiest way to add CSS rules the parent of the Slide component, for example? Or add a <style> tag to the document head?

aaaaaand clearly it's the <Head> component. My b.

I'd recommend using the built in theming API if possible, or Emotion's Global component if absolutely necessary


Monitoring appears under wrong cell

When I use shortcut Shift + Enter to run the current cell (C0) and select below one (C1), monitoring appears under currently selected cell (C1), but I expect to see it under C0.

Seems that using shift+enter does an execution followed by immediately selecting the next cell as active. I'll look into changing how the extension can attach to cells based one execution instead of using the 'active' cell.

I've forked this repo and fixed the issue here. My implementation also supports multiple spark sessions. If you'd like to merge just let me know :)

@Ben-Epstein for sure! Please make a PR and I’ll do a quick test/review and merge it in. I love open source :)

@itsjafer  Me too! https://github.com/itsjafer/jupyterlab-sparkmonitor/pull/21


Change sgx-sdk to sgx-ssl for Cryptographic Functionalities APIs

these restful API will be adjusted:
POST <ehsm_srv_address>/ehsm?Action=
CreateKey
Encrypt
Decrypt
AsymmetricEncrypt
AsymmetricDecrypt
Sign
Verify
GenerateDataKey
GenerateDataKeyWithoutPlaintext
ExportDataKey
test: passed the unittest
Signed-off-by: wanghouqi<EMAIL_ADDRESS>

https://github.com/intel/ehsm/pull/171


unknown error

Hello,
I keep getting errors like this http://pastebin.com/meTc2U0i in the console.
I don't know what it means.

I forgot, here is the version info http://pastebin.com/zKdARtcu

This is not a Multiverse-Core issue. It's with Multiverse-Inventories. I'd recommend giving PWI a look as we're not supporting Multiverse-Inventories at this time due to time constraints of the developers.
PWI supports importing your Multiverse-Inventories settings.
I would only suggest using another plugin if it was open source, and PWI is.


[PDI-14971] (part 2) Purge-utility throws ERROR java.lang.reflect.Und…

…eclaredThrowableException
The fix itself is verified against QAT-119.
This is additional.
Whether it should be done within this issue?
@brosander , could you review it, please?

Base build failed with return code 1

@ivanpogodin not familiar with purge utility, maybe someone from r2d2 would be a better candidate for review
about wingman, it still doesn't support assemblies in ant

@bmorrise , @mdamour1976, could you review this, please?

@bmorrise , @mdamour1976
I'm closing this PR now.
If this issue is not reported, it may be not a problem.
Anyway, it would be better processed as a separate issue.


tests: net: arp: Increase network buffer counts

In some hw like Atmel SAM-E70, the original amount of network
buffers is too small so increasing it slightly.
Also generate proper error if this happens in the test so it
is easier to figure out.
Fixes #8866
Signed-off-by: Jukka Rissanen<EMAIL_ADDRESS>

Codecov Report

Merging #8885 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #8885   +/-   ##
=======================================
  Coverage   52.31%   52.31%
=======================================
  Files         195      195
  Lines       24732    24732
  Branches     5141     5141
=======================================
  Hits        12939    12939
  Misses       9719     9719
  Partials     2074     2074

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 6b836d6...3abe968. Read the comment docs.


Feature Request: add support for GitHub-Issue-Based Comments on both Posts and Pages

Summary
I'd like to see support in your Jekyll themes for Github-Issue-based comments. That means that you open up a GitHub issue as the means of posting comments on any given page or post. See here for a demo: https://jekyllcodex.org/blog/gdpr-compliant-comment/, and here for more setup info: https://jekyllcodex.org/without-plugin/comments/.
Motivation

I'd like to see this supported because it has some tremendous advantages over other comment systems:

No cost. Anyone can create a GitHub account and comment for free, and there's not cost to opening up an issue to be used for comments on your already-no-cost blog or website using GitHub pages.
Easy editing of comments and markdown support: the GitHub issue editor has markdown support while also supporting basic formatting buttons for those not familiar with markdown. For those who ARE familiar with markdown, however, it allows beautiful code discussion by placing code blocks right into the comment!
Easy moderation: as the owner of a repo, you can easily go in and modify, delete, or moderate comments as needed.
Traceable. Since you can easily quote comments, add links, etc, the comment page (a GitHub Issue) is nicely traceable to see the full comment history and gain a better understanding of what's going on.

Drawbacks

You have to leave the blog page to edit or add your comment.
There may be a limit on number of queries to the issue as people refresh the comments on the site?
Requires a github account. If your site is about programming (many are) and caters to other developers, this is great, not bad! But, if your user is the average person, they won't know what GitHub is and may prefer to use a Facebook login or something instead of creating a GitHub account to comment.
It looks like the visitor has to manually click a refresh link to show new comments, even after new ones are written.

Have a look at the comments documentation for the theme. It supports Utterances which does what you want by using your repo's Issues as a place to store post comments.
https://mmistakes.github.io/minimal-mistakes/docs/configuration/#utterances-comments


trying to access A: drive with no reason

when i installed it in my friend's pc (he knew that, nothing illegal) he reported to me seeing errors from trying to access  A: drive nothing was connected there.

P.S sorry its in greek

Thanks for reporting, Will fix next version


[Patient Intake Sample] [Part 3] Add medical history and smoking status to the questionnaire

Description

Partial work #4999 - Add the following fields to the patient intake questionnaire:

Medical History
Family Member History
Smoking Status

Steps to test

[ ] Build the bots: npm run build:bots
[ ] Upload core data
[ ] Upload example bots
[ ] Check if the changes are reflected in the questionnaire

Screencast from 07-08-2024 17:46:49.webm
Screencast from 07-08-2024 18:39:38.webm

@rahul1 Thanks! I'll fix that in the PR https://github.com/medplum/medplum/pull/5059


Rewrite Graph Merge Service to improve performance

The Graph Merge Service performs tons of separate requests to dgraph. Instead it could just build up the queries at once, send a single request, and perform only subsequent requests as necessary.
It should be possible to reduce the volume of requests quite a lot.

Also, the code for this service is probably the worst code I've got right now, at least if you forget about the analytics services, which are hot garbage because I intend to throw them away.
A rewrite that improves code quality would be :100:


sharding-jdbc4 scan some tables in all_tab_columns.but the current user does not have permission.then throws the Exception:Table or view does not exist

Question
For English only, other languages will not accept.
Before asking a question, make sure you have:

Googled your question.
Searched open and closed GitHub issues.
Read documentation: ShardingSphere Doc.

Please pay attention on issues you submitted, because we maybe need more details.
If no response more than 7 days and we cannot reproduce it on current information, we will close it.

can you try it directly by oracle-jdbc driver?

We've been using ojdbc6.jar (in jboss7). There was no error when using the sharding3 version, but there was an error when using the sharding4 version

@yuxuejimo @yexufeijun
Is this error block your usage?

yes. So we had to change the source code to make our application work. In addition to this exception, there is another exception. When there are too many business tables, analyzing the metadata of the business table can cause an application to get stuck. We also modified the source here the logic

Can you provide the sharding rule configuration and full stake trace?

Closed because no response anymore.


Feat: add text streaming support

This change allows you to stream text from the API to the console word-by-word similar to what the official WebUI does.

Thank you for your contributions!
I've often considered this feature, but haven't had the free time recently for implementing it. Your efforts have made it a reality. :+1:

I will merge it after reviewing your commits later.

I add a vertical_overflow="visible" option for the streaming method Live so that it will automatically scroll the terminal if the maximum height is reached when streaming.
However, there is still a tiny problem if I fixed it in this way - the earlier message history on the terminal would be awful with too many duplicated lines. A simple solution to this could be typing !show command to redisplay the current conversation, but I think it might be better if this can be performed automatically after each time of the streaming (I guess). Would you like to add this feature to this thread if you have time @vahlgren ?
Anyway, I will merge this PR tomorrow morning regardless of my updated request as the earlier feature you added was truly useful enough and you can revert my commit if you think the fix here is not appropriate (maybe you once tried this method but discarded it finally). You can drop my commits and force-push to update the remote.
Again, thanks for your contributions!

I add a vertical_overflow="visible" option for the streaming method Live so that it will automatically scroll the terminal if the maximum height is reached when streaming.

Nice, I think that is better than just displaying three the dots when the vertical space runs out, even with the messed up scroll history.

However, there is still a tiny problem if I fixed it in this way - the earlier message history on the terminal would be awful with too many duplicated lines. A simple solution to this could be typing !show command to redisplay the current conversation, but I think it might be better if this can be performed automatically after each time of the streaming (I guess). Would you like to add this feature to this thread if you have time @vahlgren ?

I could not immediately figure out a good way to make this work nicely. One option would have been using Live(screen=True) while the text is being streamed, and when complete, the alternative screen would disappear with all intermediate content, making it possible to do a clean print of the whole message leaving the scroll back history nice and clean. Sadly this did not seem to work well in practice because the Live view in screen=True mode is stuck following the top of the screen only.
I'll create another pull request later if I manage to figure out how to deal with this.

Again, thanks for your contributions!

Thank you for the cli app! I like it a lot more than using the WebUI :smile:

I fixed it by adding a show_history() in the main loop function, and the issue was resolved.


Identifiers validation failed for dataset Caracterización fenólica y de actividades biológicas de maíces con pigmentos antociano entre razas mexicanas

Identifier validation failed for the dataset Caracterización fenólica y de actividades biológicas de maíces con pigmentos antociano entre razas mexicanas:

Crawler attempt: 143
Publishing organization: Comisión nacional para el conocimiento y uso de la biodiversidad
Publishing country: MEXICO
Installation: IPTCONABIO
Number of occurrences indexed for this dataset at the time of the issue: 328
Cause: GBIF ID problems exceed 50% threshold: 100% duplicates; 327 total records; 327 absent records
Pipelines execution steps: http://api.gbif.org/v1/pipelines/history/execution/3740154/step

New IDs sample:

Old IDs sample:

d9f0cbc7a4d81eeac904d87cef907382
eb2d11b55caa94dab4b8103afa98e591
f3b354a7ca88937f1dcad3d5fd72bfd3
abb6070512aab3b57447b9ebb618b12b
e035abff54bce7df32b36dad7548e49f
33b4f732aeef0dac44f9dbb4be1d24af
646ca0228bfb2789a358753f5692301c
b1e1546762ea5e9b13c228401d31e6ad
f389e5cd797564f96358c466a61a61b8
07ee3373252835c870a607190b9181ff

Publisher email
Hello,
I am contacting you from the GBIF Secretariat about a dataset published by the Caracterización fenólica y de actividades biológicas de maíces con pigmentos antociano entre razas mexicanas : https://doi.org/10.15468/n3mbwx.
We noticed that the occurrenceIDs were changed. We have temporarily paused the ingestions of this dataset.
As you might already know, when an occurrence record has a new occurrenceID for a given dataset, our system considers it to be a new occurrence.
This means that it will be given a new gbifid and a new occurrence URL (like this one: https://www.gbif.org/occurrence/1252968762) and the old gbifid and URL will be deprecated.
In this case, this means that the occurrence URLs would be deprecated when ingesting the newest versions of these datasets.
We would like to check with you if those changes were intentional. Do you know if this is the case?
Please let us know, thanks! We are happy to resume the dataset ingestion.
Note that some users rely on those occurrence URLs and gbifids (like https://bionomia.net for example). In an attempt to improve
the stability of the occurrence URLs and gbifids, we have implemented a warning system to detect these type of changes in datasets (see this news item).
If the data publisher can provide us with a list of old and new occurrenceIDs per record, we can avoid the identifier and URL changes. Could that be an option?
Please let us know if you have any question. Thanks!
All the best,

You can skip/fix identifier validation using the registry UI.

Identifier validation still  failing for the dataset Caracterización fenólica y de actividades biológicas de maíces con pigmentos antociano entre razas mexicanas:

Crawler attempt: 144
Publishing organization: Comisión nacional para el conocimiento y uso de la biodiversidad
Publishing country: MEXICO
Installation: IPTCONABIO
Number of occurrences indexed for this dataset at the time of the issue: 328
Cause: GBIF ID problems exceed 50% threshold: 100% duplicates; 327 total records; 327 absent records
Pipelines execution steps: http://api.gbif.org/v1/pipelines/history/execution/3741090/step

New IDs sample:

Old IDs sample:

d9f0cbc7a4d81eeac904d87cef907382
eb2d11b55caa94dab4b8103afa98e591
f3b354a7ca88937f1dcad3d5fd72bfd3
abb6070512aab3b57447b9ebb618b12b
e035abff54bce7df32b36dad7548e49f
33b4f732aeef0dac44f9dbb4be1d24af
646ca0228bfb2789a358753f5692301c
b1e1546762ea5e9b13c228401d31e6ad
f389e5cd797564f96358c466a61a61b8
07ee3373252835c870a607190b9181ff

Publisher email
Hello,
I am contacting you from the GBIF Secretariat about a dataset published by the Caracterización fenólica y de actividades biológicas de maíces con pigmentos antociano entre razas mexicanas : https://doi.org/10.15468/n3mbwx.
We noticed that the occurrenceIDs were changed. We have temporarily paused the ingestions of this dataset.
As you might already know, when an occurrence record has a new occurrenceID for a given dataset, our system considers it to be a new occurrence.
This means that it will be given a new gbifid and a new occurrence URL (like this one: https://www.gbif.org/occurrence/1252968762) and the old gbifid and URL will be deprecated.
In this case, this means that the occurrence URLs would be deprecated when ingesting the newest versions of these datasets.
We would like to check with you if those changes were intentional. Do you know if this is the case?
Please let us know, thanks! We are happy to resume the dataset ingestion.
Note that some users rely on those occurrence URLs and gbifids (like https://bionomia.net for example). In an attempt to improve
the stability of the occurrence URLs and gbifids, we have implemented a warning system to detect these type of changes in datasets (see this news item).
If the data publisher can provide us with a list of old and new occurrenceIDs per record, we can avoid the identifier and URL changes. Could that be an option?
Please let us know if you have any question. Thanks!
All the best,

You can skip/fix identifier validation using the registry UI.

Identifier validation still  failing for the dataset Caracterización fenólica y de actividades biológicas de maíces con pigmentos antociano entre razas mexicanas:

Crawler attempt: 146
Publishing organization: Comisión nacional para el conocimiento y uso de la biodiversidad
Publishing country: MEXICO
Installation: IPTCONABIO
Number of occurrences indexed for this dataset at the time of the issue: 328
Cause: GBIF ID problems exceed 50% threshold: 100% duplicates; 327 total records; 327 absent records
Pipelines execution steps: http://api.gbif.org/v1/pipelines/history/execution/3741707/step

New IDs sample:

Old IDs sample:

d9f0cbc7a4d81eeac904d87cef907382
eb2d11b55caa94dab4b8103afa98e591
f3b354a7ca88937f1dcad3d5fd72bfd3
abb6070512aab3b57447b9ebb618b12b
e035abff54bce7df32b36dad7548e49f
33b4f732aeef0dac44f9dbb4be1d24af
646ca0228bfb2789a358753f5692301c
b1e1546762ea5e9b13c228401d31e6ad
f389e5cd797564f96358c466a61a61b8
07ee3373252835c870a607190b9181ff

Publisher email
Hello,
I am contacting you from the GBIF Secretariat about a dataset published by the Caracterización fenólica y de actividades biológicas de maíces con pigmentos antociano entre razas mexicanas : https://doi.org/10.15468/n3mbwx.
We noticed that the occurrenceIDs were changed. We have temporarily paused the ingestions of this dataset.
As you might already know, when an occurrence record has a new occurrenceID for a given dataset, our system considers it to be a new occurrence.
This means that it will be given a new gbifid and a new occurrence URL (like this one: https://www.gbif.org/occurrence/1252968762) and the old gbifid and URL will be deprecated.
In this case, this means that the occurrence URLs would be deprecated when ingesting the newest versions of these datasets.
We would like to check with you if those changes were intentional. Do you know if this is the case?
Please let us know, thanks! We are happy to resume the dataset ingestion.
Note that some users rely on those occurrence URLs and gbifids (like https://bionomia.net for example). In an attempt to improve
the stability of the occurrence URLs and gbifids, we have implemented a warning system to detect these type of changes in datasets (see this news item).
If the data publisher can provide us with a list of old and new occurrenceIDs per record, we can avoid the identifier and URL changes. Could that be an option?
Please let us know if you have any question. Thanks!
All the best,

You can skip/fix identifier validation using the registry UI.


[consensus] Add metric counter for safety rules waypoint version update.

Motivation
Currently we have limited observability into the current waypoint version stored in persistent (secure) storage, which makes it inconvenient to tell the current waypoint version (except by printing logs) [Issue #9176] To improve the observability of the waypoint in persistent secure storage, we introduce a new metric counter to keep track the waypoint version whenever it is initialized or updated.
Have you read the Contributing Guidelines on pull requests?
Yes.
Test Plan
We first create and initialize a persistent storage and verify that the metric counter of waypoint version is the same as the default/initialized value. We then update the waypoint a few times. After each update, we verify the metric counter of waypoint version is the same as the updated version.

Related PRs
(If this PR adds or changes functionality, please take some time to update the docs at https://github.com/diem/diem/tree/main/developers.diem.com, and link to your PR here.)
If targeting a release branch, please fill the below out as well

Justification and breaking nature (who does it affect? validators, full nodes, tooling, operators, AOS, etc.)
Comprehensive test results that demonstrate the fix working and not breaking existing workflows.
Why we must have it for V1 launch.
What workarounds and alternative we have if we do not push the PR.

/land


Does not work on DeNo 1.2

Describe the bug
Hello i'm using
deno 1.2.0
v8 8.5.216
typescript 3.9.2
To Reproduce
Steps to reproduce the behavior:
When I call just the imports
// @ts-ignore`
import { jwtMiddlewareRouter } from "https://raw.githubusercontent.com/halvardssm/oak-middleware-jwt/master/mod.ts"
// @ts-ignore
import { Router,RouterMiddleware } from 'https://deno.land/x/oak/mod.ts';`

Go to '...'
Click on '....'
Scroll down to '....'
See error

`error: TS2345 [ERROR]: Argument of type 'string | URL' is not assignable to parameter of type 'string'.
Type 'URL' is not assignable to type 'string'.
return new URL(url).pathname
~~~
at https://deno.land/std@0.51.0/path/win32.ts:911:18
TS2345 [ERROR]: Argument of type 'string | URL' is not assignable to parameter of type 'string'.
Type 'URL' is not assignable to type 'string'.
return new URL(url).pathname;
~~~
at https://deno.land/std@0.51.0/path/posix.ts:433:18
TS2305 [ERROR]: Module '"https://raw.githubusercontent.com/halvardssm/oak-middleware-jwt/master/mod"' has no exported member 'jwtMiddlewareRouter'.
import { jwtMiddlewareRouter } from "https://raw.githubusercontent.com/halvardssm/oak-middleware-jwt/master/mod.ts"
~~~~~~~~~~~~~~~~~~~
at file:///Users/omar/DeNo/sec25DeNo/routes/feed.ts:1:10
Found 3 errors.`
Expected behavior
A clear and concise description of what you expected to happen.
I just want to use jwt with oak to validate the token sent from the front end to make sure it's a valid user.
Screenshots or error log
If applicable, add screenshots or error log to help explain your problem.
System (please complete the following information):

OS: Mac OSX Catalina
10.15.6
Deno version [e.g. 1.0.0]
1.2.0
Module version [e.g. 1.0.0]

deno 1.2.0
v8 8.5.216
typescript 3.9.2
Additional context
Add any other context about the problem here.

Hi @osorito ! Great that you caught this bug! I just made a release (v4.0.0) could you let me know if using this version fixed your issue?

Just with the headers and --reload option the code compiles.
The arguments for onSuccess they don't have a type so you get this error.
error: TS2344 [ERROR]: Type 'RouterMiddleware<Record<string | number, string | undefined>, Record<string, any>>' does not satisfy the constraint 'RouterMiddleware<Record<string | number, string | undefined>, Record<string, any>> | Middleware<Record<string, any>, Context<Record<string, any>>>'.   Type 'import("https://deno.land/x/oak/router").RouterMiddleware<Record<string | number, string | undefined>, Record<string, any>>' is not assignable to type 'import("https://deno.land/x/oak@v6.0.1/router").RouterMiddleware<Record<string | number, string | undefined>, Record<string, any>>'.     Types of parameters 'context' and 'context' are incompatible.       Type 'import("https://deno.land/x/oak@v6.0.1/router").RouterContext<Record<string | number, string | undefined>, Record<string, any>>' is not assignable to type 'import("https://deno.land/x/oak/router").RouterContext<Record<string | number, string | undefined>, Record<string, any>>'.         Types of property 'matched' are incompatible.           Type 'Layer<Record<string | number, string | undefined>, Record<string, any>>[] | undefined' is not assignable to type 'Layer<Record<string | number, string | undefined>, Record<string, any>>[] | undefined'. Two different types with this name exist, but they are unrelated.             Type 'Layer<Record<string | number, string | undefined>, Record<string, any>>[]' is not assignable to type 'Layer<Record<string | number, string | undefined>, Record<string, any>>[]'. Two different types with this name exist, but they are unrelated.               Type 'Layer<Record<string | number, string | undefined>, Record<string, any>>' is not assignable to type 'Layer<Record<string | number, string | undefined>, Record<string, any>>'. Two different types with this name exist, but they are unrelated.                 Property '#opts' in type 'Layer' refers to a different member that cannot be accessed from within type 'Layer'. router.get('/feed/posts',jwtMiddleware<RouterMiddleware>({ key:JWT_KEY as string, onSuccess }),getPost);
If I try to manually set them manually like this
const onSuccess: OnSuccessHandler = (ctx:any, token:any) => {     ctx.state.userId = token     console.log(this test ${token});   }
I get this error
 error: TS2344 [ERROR]: Type 'RouterMiddleware<Record<string | number, string | undefined>, Record<string, any>>' does not satisfy the constraint 'RouterMiddleware<Record<string | number, string | undefined>, Record<string, any>> | Middleware<Record<string, any>, Context<Record<string, any>>>'.   Type 'import("https://deno.land/x/oak/router").RouterMiddleware<Record<string | number, string | undefined>, Record<string, any>>' is not assignable to type 'import("https://deno.land/x/oak@v6.0.1/router").RouterMiddleware<Record<string | number, string | undefined>, Record<string, any>>'.     Types of parameters 'context' and 'context' are incompatible.       Type 'import("https://deno.land/x/oak@v6.0.1/router").RouterContext<Record<string | number, string | undefined>, Record<string, any>>' is not assignable to type 'import("https://deno.land/x/oak/router").RouterContext<Record<string | number, string | undefined>, Record<string, any>>'.         Types of property 'matched' are incompatible.           Type 'Layer<Record<string | number, string | undefined>, Record<string, any>>[] | undefined' is not assignable to type 'Layer<Record<string | number, string | undefined>, Record<string, any>>[] | undefined'. Two different types with this name exist, but they are unrelated.             Type 'Layer<Record<string | number, string | undefined>, Record<string, any>>[]' is not assignable to type 'Layer<Record<string | number, string | undefined>, Record<string, any>>[]'. Two different types with this name exist, but they are unrelated.               Type 'Layer<Record<string | number, string | undefined>, Record<string, any>>' is not assignable to type 'Layer<Record<string | number, string | undefined>, Record<string, any>>'. Two different types with this name exist, but they are unrelated.                 Property '#opts' in type 'Layer' refers to a different member that cannot be accessed from within type 'Layer'. router.get('/feed/posts',jwtMiddleware<RouterMiddleware>({ key:JWT_KEY as string, onSuccess }),getPost);

Sorry that I haven't gotten back to you in some days, I am in the middle of a vacation at the moment 😄
I will have a closer look on Thursday, do you have a repo I can look at?

@osorito Did your issue get solved?

Yes, I used the djwt directly.


kubeone apply stops with SIGSEGV

What happened?
After starting kubeone -v apply -m kubeone/kubeone.yaml the Porgram runs until
this happens:
INFO[14:14:29 UTC] Running cluster probes...
E0519 14:14:29.961918   10934 runtime.go:78] Observed a panic: "invalid memory address or nil pointer dereference" (runtime error: invalid memory address or nil pointer dereference)
goroutine 1 [running]:
k8s.io/apimachinery/pkg/util/runtime.logPanic({0x195ec80?, 0x2ce98e0})
k8s.io/apimachinery@v0.22.2/pkg/util/runtime/runtime.go:74 +0x99
k8s.io/apimachinery/pkg/util/runtime.HandleCrash({0x0, 0x0, 0xc000002340?})
k8s.io/apimachinery@v0.22.2/pkg/util/runtime/runtime.go:48 +0x75
panic({0x195ec80, 0x2ce98e0})
runtime/panic.go:838 +0x207
sigs.k8s.io/controller-runtime/pkg/client.(*client).List(0x2?, {0x1f75580?, 0xc00003c058?}, {0x1f7af50?, 0xc0002f24d0?}, {0xc0004a2340?, 0xc00051de80?, 0x9?})
sigs.k8s.io/controller-runtime@v0.10.2/pkg/client/client.go:287 +0x3c9
k8c.io/kubeone/pkg/tasks.investigateCluster(0xc0003260f0)
k8c.io/kubeone/pkg/tasks/probes.go:344 +0x7ee
k8c.io/kubeone/pkg/tasks.runProbes(0xc0003260f0)
k8c.io/kubeone/pkg/tasks/probes.go:159 +0x494
k8c.io/kubeone/pkg/tasks.(*Task).Run.func1()
k8c.io/kubeone/pkg/tasks/task.go:60 +0x94
k8s.io/apimachinery/pkg/util/wait.ConditionFunc.WithContext.func1({0x19cf480, 0x436d01})
k8s.io/apimachinery@v0.22.2/pkg/util/wait/wait.go:217 +0x1b
k8s.io/apimachinery/pkg/util/wait.runConditionWithCrashProtectionWithContext({0x1f75580?, 0xc00003c060?}, 0xc000118230?)
k8s.io/apimachinery@v0.22.2/pkg/util/wait/wait.go:230 +0x57
k8s.io/apimachinery/pkg/util/wait.runConditionWithCrashProtection(0x12a05f200?)
k8s.io/apimachinery@v0.22.2/pkg/util/wait/wait.go:223 +0x39
k8s.io/apimachinery/pkg/util/wait.ExponentialBackoff({0x2540be400, 0x4000000000000000, 0x0, 0x9, 0x0}, 0x2d18c40?)
k8s.io/apimachinery@v0.22.2/pkg/util/wait/wait.go:418 +0x5f
k8c.io/kubeone/pkg/tasks.(*Task).Run(0xc000420980, 0xc0003260f0)
k8c.io/kubeone/pkg/tasks/task.go:55 +0x11c
k8c.io/kubeone/pkg/tasks.Tasks.Run({0xc0001a2460, 0x4, 0x0?}, 0xc0003ff970?)
k8c.io/kubeone/pkg/tasks/tasks.go:41 +0xfd
k8c.io/kubeone/pkg/cmd.runApply(0xc00007ea80)
k8c.io/kubeone/pkg/cmd/apply.go:183 +0x207
k8c.io/kubeone/pkg/cmd.applyCmd.func1(0xc000654a00?, {0x1bbe2e7?, 0x3?, 0x3?})
k8c.io/kubeone/pkg/cmd/apply.go:111 +0x7e
github.com/spf13/cobra.(*Command).execute(0xc000654a00, {0xc0002ed350, 0x3, 0x3})
github.com/spf13/cobra@v1.1.3/command.go:852 +0x67c
github.com/spf13/cobra.(*Command).ExecuteC(0xc000654280)
github.com/spf13/cobra@v1.1.3/command.go:960 +0x39c
github.com/spf13/cobra.(*Command).Execute(...)
github.com/spf13/cobra@v1.1.3/command.go:897
k8c.io/kubeone/pkg/cmd.Execute()
k8c.io/kubeone/pkg/cmd/root.go:52 +0x89
main.main()
k8c.io/kubeone/main.go:24 +0x17
panic: runtime error: invalid memory address or nil pointer dereference [recovered]
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x11d8c09]
goroutine 1 [running]:
k8s.io/apimachinery/pkg/util/runtime.HandleCrash({0x0, 0x0, 0xc000002340?})
k8s.io/apimachinery@v0.22.2/pkg/util/runtime/runtime.go:55 +0xd8
panic({0x195ec80, 0x2ce98e0})
runtime/panic.go:838 +0x207
sigs.k8s.io/controller-runtime/pkg/client.(*client).List(0x2?, {0x1f75580?, 0xc00003c058?}, {0x1f7af50?, 0xc0002f24d0?}, {0xc0004a2340?, 0xc00051de80?, 0x9?})
sigs.k8s.io/controller-runtime@v0.10.2/pkg/client/client.go:287 +0x3c9
k8c.io/kubeone/pkg/tasks.investigateCluster(0xc0003260f0)
k8c.io/kubeone/pkg/tasks/probes.go:344 +0x7ee
k8c.io/kubeone/pkg/tasks.runProbes(0xc0003260f0)
k8c.io/kubeone/pkg/tasks/probes.go:159 +0x494
k8c.io/kubeone/pkg/tasks.(*Task).Run.func1()
k8c.io/kubeone/pkg/tasks/task.go:60 +0x94
k8s.io/apimachinery/pkg/util/wait.ConditionFunc.WithContext.func1({0x19cf480, 0x436d01})
k8s.io/apimachinery@v0.22.2/pkg/util/wait/wait.go:217 +0x1b
k8s.io/apimachinery/pkg/util/wait.runConditionWithCrashProtectionWithContext({0x1f75580?, 0xc00003c060?}, 0xc000118230?)
k8s.io/apimachinery@v0.22.2/pkg/util/wait/wait.go:230 +0x57
k8s.io/apimachinery/pkg/util/wait.runConditionWithCrashProtection(0x12a05f200?)
k8s.io/apimachinery@v0.22.2/pkg/util/wait/wait.go:223 +0x39
k8s.io/apimachinery/pkg/util/wait.ExponentialBackoff({0x2540be400, 0x4000000000000000, 0x0, 0x9, 0x0}, 0x2d18c40?)
k8s.io/apimachinery@v0.22.2/pkg/util/wait/wait.go:418 +0x5f
k8c.io/kubeone/pkg/tasks.(*Task).Run(0xc000420980, 0xc0003260f0)
k8c.io/kubeone/pkg/tasks/task.go:55 +0x11c
k8c.io/kubeone/pkg/tasks.Tasks.Run({0xc0001a2460, 0x4, 0x0?}, 0xc0003ff970?)
k8c.io/kubeone/pkg/tasks/tasks.go:41 +0xfd
k8c.io/kubeone/pkg/cmd.runApply(0xc00007ea80)
k8c.io/kubeone/pkg/cmd/apply.go:183 +0x207
k8c.io/kubeone/pkg/cmd.applyCmd.func1(0xc000654a00?, {0x1bbe2e7?, 0x3?, 0x3?})
k8c.io/kubeone/pkg/cmd/apply.go:111 +0x7e
github.com/spf13/cobra.(*Command).execute(0xc000654a00, {0xc0002ed350, 0x3, 0x3})
github.com/spf13/cobra@v1.1.3/command.go:852 +0x67c
github.com/spf13/cobra.(*Command).ExecuteC(0xc000654280)
github.com/spf13/cobra@v1.1.3/command.go:960 +0x39c
github.com/spf13/cobra.(*Command).Execute(...)
github.com/spf13/cobra@v1.1.3/command.go:897
k8c.io/kubeone/pkg/cmd.Execute()
k8c.io/kubeone/pkg/cmd/root.go:52 +0x89
main.main()
k8c.io/kubeone/main.go:24 +0x17
Expected behavior
The Program should not run into SIGSERV and terminate with a clean cluster Install
How to reproduce the issue?
Install kubeone via the link in Getting started on Ubuntu 20. And try to install a cluster
What KubeOne version are you using?

$ kubeone version
{
  "kubeone": {
    "major": "1",
    "minor": "4",
    "gitVersion": "1.4.3",
    "gitCommit": "717787f2287964e5793d80ec8ca2c2169936b0ac",
    "gitTreeState": "",
    "buildDate": "2022-05-11T14:18:03Z",
    "goVersion": "go1.18.1",
    "compiler": "gc",
    "platform": "linux/amd64"
  },
  "machine_controller": {
    "major": "1",
    "minor": "43",
    "gitVersion": "v1.43.2",
    "gitCommit": "",
    "gitTreeState": "",
    "buildDate": "",
    "goVersion": "",
    "compiler": "",
    "platform": "linux/amd64"
  }
}

Provide your KubeOneCluster manifest here (if applicable)

apiVersion: kubeone.k8c.io/v1beta2
kind: KubeOneCluster
name: demo-cluster

versions:
  kubernetes: "1.22.3"

clusterNetwork:
  # the subnet used for pods (default: <IP_ADDRESS>/16)
  podSubnet: ""
  # the subnet used for services (default: <IP_ADDRESS>/12)
  serviceSubnet: ""
  # the domain name used for services (default: cluster.local)
  serviceDomainName: ""
  # a nodePort range to reserve for services (default: 30000-32767)
  nodePortRange: ""
  # kube-proxy configurations
  kubeProxy:
    # skipInstallation will skip the installation of kube-proxy
    skipInstallation: false
    # if this set, kube-proxy mode will be set to ipvs
    ipvs:
      # different schedulers can be configured:
      # * rr: round-robin
      # * lc: least connection (smallest number of open connections)
      # * dh: destination hashing
      # * sh: source hashing
      # * sed: shortest expected delay
      # * nq: never queue
      scheduler: rr
      #strictArp: false
      tcpTimeout: "0"
      tcpFinTimeout: "0"
      udpTimeout: "0"
      excludeCIDRs: []
    # if mode is by default
    # iptables: {}
  # CNI plugin of choice. CNI can not be changed later at upgrade time.
  cni:
    # Only one CNI plugin can be defined at the same time
    # Supported CNI plugins:
    # * canal
    # * weave-net
    # * cilium
    # * external - The CNI plugin can be installed as an addon or manually
    canal:
      # MTU represents the maximum transmission unit.
      # Default MTU value depends on the specified provider:
      # * AWS - 8951 (9001 AWS Jumbo Frame - 50 VXLAN bytes)
      # * GCE - 1410 (GCE specific 1460 bytes - 50 VXLAN bytes)
      # * Hetzner - 1400 (Hetzner specific 1450 bytes - 50 VXLAN bytes)
      # * OpenStack - 1400 (OpenStack specific 1450 bytes - 50 VXLAN bytes)
      # * Default - 1450
      mtu: 1450
    # cilium:
    #   # enableHubble to deploy Hubble relay and UI
    #   enableHubble: true
    #   # kubeProxyReplacement defines weather cilium relies on underlying Kernel support to replace kube-proxy functionality by eBPF (strict),
    #   # or disables a subset of those features so cilium does not bail out if the kernel support is missing (disabled).
    #   kubeProxyReplacement: "disabled"
    # weaveNet:
    #   # When true is set, secret will be automatically generated and
    #   # referenced in appropriate manifests. Currently only weave-net
    #   # supports encryption.
    #   encrypted: true
    # external: {}

cloudProvider:
  # Only one cloud provider can be defined at the same time.
  # Possible values:
  # aws: {}
  # azure: {}
  # digitalocean: {}
  # gce: {}
  # hetzner:
  #   networkID: ""
  # openstack: {}
  # equinixmetal: {}
  # vsphere: {}
  none: {}
  # aws: {}
  # Set the kubelet flag '--cloud-provider=external' and deploy the external CCM for supported providers
  #external: false
  # Path to file that will be uploaded and used as custom '--cloud-config' file.
  #cloudConfig: ""
  # CSIConfig is configuration passed to the CSI driver.
  # This is currently used only for vSphere clusters.
  #csiConfig: ""

# Controls which container runtime will be installed on instances.
# By default:
# * Docker will be installed for Kubernetes clusters up to 1.20
# * containerd will be installed for Kubernetes clusters 1.21+
# Currently, it's not possible to migrate existing clusters from one to another
# container runtime, however, migration from Docker to containerd is planned
# for one of the upcoming KubeOne releases.
# Only one container runtime can be present at the time.
#
# Note: Kubernetes has announced deprecation of Docker (dockershim) support.
# It's expected that the Docker support will be removed in Kubernetes 1.24.
# It's highly advised to use containerd for all newly created clusters.
containerRuntime:
  # Installs containerd container runtime.
  # Default for 1.21+ Kubernetes clusters.
  # containerd:
  #   registries:
  #     k8s.gcr.io:
  #       mirrors:
  #       - https://self-signed.pull-through.cache.tld
  #       tlsConfig:
  #         insecureSkipVerify: true
  #     docker.io:
  #       mirrors:
  #       - http://plain-text2.tld
  #       auth:
  #         # all of the following fields are optional
  #         username: "u5er"
  #         password: "myc00lp455w0rd"
  #         auth: "base64(user:password)"
  #         identityToken: ""
  #     "*":
  #       mirrors:
  #       - https://secure.tld
  # Installs Docker container runtime.
  # Default for Kubernetes clusters up to 1.20.
  # This option will be removed once Kubernetes 1.23 reaches EOL.
  # docker: {}

features:
  # Enable the PodNodeSelector admission plugin in API server.
  # More info: https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/#podnodeselector
  podNodeSelector:
    enable: false
    config:
      # configFilePath is a path on a local file system to the podNodeSelector
      # plugin config, which defines default and allowed node selectors.
      # configFilePath is is a required field.
      # More info: https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/#configuration-file-format-1
      configFilePath: ""
  # Enables PodSecurityPolicy admission plugin in API server, as well as creates
  # default 'privileged' PodSecurityPolicy, plus RBAC rules to authorize
  # 'kube-system' namespace pods to 'use' it.
  podSecurityPolicy:
    enable: false
  # Enables and configures audit log backend.
  # More info: https://kubernetes.io/docs/tasks/debug-application-cluster/audit/#log-backend
  staticAuditLog:
    enable: false
    config:
      # PolicyFilePath is a path on local file system to the audit policy manifest
      # which defines what events should be recorded and what data they should include.
      # PolicyFilePath is a required field.
      # More info: https://kubernetes.io/docs/tasks/debug-application-cluster/audit/#audit-policy
      policyFilePath: ""
      # LogPath is path on control plane instances where audit log files are stored
      logPath: "/var/log/kubernetes/audit.log"
      # LogMaxAge is maximum number of days to retain old audit log files
      logMaxAge: 30
      # LogMaxBackup is maximum number of audit log files to retain
      logMaxBackup: 3
      # LogMaxSize is maximum size in megabytes of audit log file before it gets rotated
      logMaxSize: 100
  # Enables dynamic audit logs.
  # After enablig this, operator should create auditregistration.k8s.io/v1alpha1
  # AuditSink object.
  # More info: https://kubernetes.io/docs/tasks/debug-application-cluster/audit/#dynamic-backend
  dynamicAuditLog:
    enable: false
  # Opt-out from deploying metrics-server
  # more info: https://github.com/kubernetes-incubator/metrics-server
  metricsServer:
    # enabled by default
    enable: true
  # Enable OpenID-Connect support in API server
  # More info: https://kubernetes.io/docs/reference/access-authn-authz/authentication/#openid-connect-tokens
  openidConnect:
    enable: false
    config:
      # The URL of the OpenID issuer, only HTTPS scheme will be accepted. If
      # set, it will be used to verify the OIDC JSON Web Token (JWT).
      issuerUrl: ""
      # The client ID for the OpenID Connect client, must be set if
      # issuer_url is set.
      clientId: "kubernetes"
      # The OpenID claim to use as the user name. Note that claims other than
      # the default ('sub') is not guaranteed to be unique and immutable. This
      # flag is experimental in kubernetes, please see the kubernetes
      # authentication documentation for further details.
      usernameClaim: "sub"
      # If provided, all usernames will be prefixed with this value. If not
      # provided, username claims other than 'email' are prefixed by the issuer
      # URL to avoid clashes. To skip any prefixing, provide the value '-'.
      usernamePrefix: "oidc:"
      # If provided, the name of a custom OpenID Connect claim for specifying
      # user groups. The claim value is expected to be a string or array of
      # strings. This flag is experimental in kubernetes, please see the
      # kubernetes authentication documentation for further details.
      groupsClaim: "groups"
      # If provided, all groups will be prefixed with this value to prevent
      # conflicts with other authentication strategies.
      groupsPrefix: "oidc:"
      # Comma-separated list of allowed JOSE asymmetric signing algorithms. JWTs
      # with a 'alg' header value not in this list will be rejected. Values are
      # defined by RFC 7518 https://tools.ietf.org/html/rfc7518#section-3.1.
      signingAlgs: "RS256"
      # A key=value pair that describes a required claim in the ID Token. If
      # set, the claim is verified to be present in the ID Token with a matching
      # value. Only single pair is currently supported.
      requiredClaim: ""
      # If set, the OpenID server's certificate will be verified by one of the
      # authorities in the oidc-ca-file, otherwise the host's root CA set will
      # be used.
      caFile: ""

  # Enable Kubernetes Encryption Providers
  # For more information: https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/
  encryptionProviders:
    # disabled by default
    enable: false
    # inline string
    customEncryptionConfiguration: ""

## Bundle of Root CA Certificates extracted from Mozilla
## can be found here: https://curl.se/ca/cacert.pem
## caBundle should be empty for default root CAs to be used
caBundle: ""

systemPackages:
  # will add Docker and Kubernetes repositories to OS package manager
  configureRepositories: true # it's true by default

# registryConfiguration controls how images used for components deployed by
# KubeOne and kubeadm are pulled from an image registry
registryConfiguration:
  # overwriteRegistry specifies a custom Docker registry which will be used
  # for all images required for KubeOne and kubeadm. This also applies to
  # addons deployed by KubeOne.
  # This field doesn't modify the user/organization part of the image. For example,
  # if overwriteRegistry is set to <IP_ADDRESS>:5000/example, image called
  # calico/cni would translate to <IP_ADDRESS>:5000/example/calico/cni.
  overwriteRegistry: ""
  # InsecureRegistry configures Docker to threat the registry specified
  # in OverwriteRegistry as an insecure registry. This is also propagated
  # to the worker nodes managed by machine-controller and/or KubeOne.
  insecureRegistry: false

# Addons are Kubernetes manifests to be deployed after provisioning the cluster
addons:
  enable: false
  # In case when the relative path is provided, the path is relative
  # to the KubeOne configuration file.
  # This path is required only if you want to provide custom addons or override
  # embedded addons.
  path: "./addons"
  # globalParams is a key-value map of values passed to the addons templating engine,
  # to be used in the addons' manifests. The values defined here are passed to all
  # addons.
  globalParams:
    key: value
  # addons is used to enable addons embedded in the KubeOne binary.
  # Currently backups-restic, default-storage-class, and unattended-upgrades are
  # available addons.
  # Check out the documentation to find more information about what are embedded
  # addons and how to use them:
  # https://docs.kubermatic.com/kubeone/v1.4/guides/addons/
  addons:
    # name of the addon to be enabled/deployed (e.g. backups-restic)
    - name: ""
      # delete triggers deletion of the deployed addon
      delete: false
      # params is a key-value map of values passed to the addons templating engine,
      # to be used in the addon's manifests. Values defined here override the values
      # defined in globalParams.
      params:
        key: value

# The list of nodes can be overwritten by providing Terraform output.
# You are strongly encouraged to provide an odd number of nodes and
# have at least three of them.
# Remember to only specify your *master* nodes.
controlPlane:
   hosts:
   - publicAddress: ''
     privateAddress: '10.XX.XX.61'
#     bastion: '<IP_ADDRESS>'
#     bastionPort: 22  # can be left out if using the default (22)
#     bastionUser: 'root'  # can be left out if using the default ('root')
     sshPort: 22 # can be left out if using the default (22)
     sshUsername: <myUser>
#     # You usually want to configure either a private key OR an
#     # agent socket, but never both. The socket value can be
#     # prefixed with "env:" to refer to an environment variable.
#     sshPrivateKeyFile: '~/.ssh/id_rsa'
     sshAgentSocket: '/tmp/ssh-XXXXXX5BZFMa/agent.8277'
#     # Taints is used to apply taints to the node.
#     # If not provided defaults to TaintEffectNoSchedule, with key
#     # node-role.kubernetes.io/master for control plane nodes.
#     # Explicitly empty (i.e. taints: {}) means no taints will be applied.
     operatingSystem: ubuntu
     taints:
       - key: "node-role.kubernetes.io/master"
         effect: "NoSchedule"
   - publicAddress: '10.XX.XX.62'
     privateAddress: '10.XX.XX.62'
#     bastion: '<IP_ADDRESS>'
#     bastionPort: 22  # can be left out if using the default (22)
#     bastionUser: 'root'  # can be left out if using the default ('root')
     sshPort: 22 # can be left out if using the default (22)
     sshUsername: <myUser>
#     # You usually want to configure either a private key OR an
#     # agent socket, but never both. The socket value can be
#     # prefixed with "env:" to refer to an environment variable.
#     sshPrivateKeyFile: '/home/<myUser>/.ssh/id_rsa'
     sshAgentSocket: '/tmp/ssh-XXXXXX5BZFMa/agent.8277'
#     # Taints is used to apply taints to the node.
#     # If not provided defaults to TaintEffectNoSchedule, with key
#     # node-role.kubernetes.io/master for control plane nodes.
#     # Explicitly empty (i.e. taints: {}) means no taints will be applied.
     operatingSystem: ubuntu
     taints:
     - key: "node-role.kubernetes.io/master"
       effect: "NoSchedule"
   - publicAddress: '10.XX.XX.63'
     privateAddress: '10.XX.XX.63'
#     bastion: '<IP_ADDRESS>'
#     bastionPort: 22  # can be left out if using the default (22)
#     bastionUser: 'root'  # can be left out if using the default ('root')
     sshPort: 22 # can be left out if using the default (22)
     sshUsername: <myUser>
#     # You usually want to configure either a private key OR an
#     # agent socket, but never both. The socket value can be
#     # prefixed with "env:" to refer to an environment variable.
#     sshPrivateKeyFile: '/home/<myUser>/.ssh/id_rsa'
     sshAgentSocket: '/tmp/ssh-XXXXXX5BZFMa/agent.8277'
#     # Taints is used to apply taints to the node.
#     # If not provided defaults to TaintEffectNoSchedule, with key
#     # node-role.kubernetes.io/master for control plane nodes.
#     # Explicitly empty (i.e. taints: {}) means no taints will be applied.
     operatingSystem: ubuntu
     taints:
       - key: "node-role.kubernetes.io/master"
         effect: "NoSchedule"

# A list of static workers, not managed by MachineController.
# The list of nodes can be overwritten by providing Terraform output.
staticWorkers:
   hosts:
   - publicAddress: ''
     privateAddress: '10.XX.XX.71'
#     bastion: '<IP_ADDRESS>'
#     bastionPort: 22  # can be left out if using the default (22)
#     bastionUser: 'root'  # can be left out if using the default ('root')
     sshPort: 22 # can be left out if using the default (22)
     sshUsername: <myUser>
#     # You usually want to configure either a private key OR an
#     # agent socket, but never both. The socket value can be
#     # prefixed with "env:" to refer to an environment variable.
#     sshPrivateKeyFile: '/home/<myUser>/.ssh/id_rsa'
     sshAgentSocket: 'env:SSH_AUTH_SOCK'
#     # Taints is used to apply taints to the node.
#     # Explicitly empty (i.e. taints: {}) means no taints will be applied.
#     # taints:
#     # - key: ""
#     #   effect: ""
     operatingSystem: ubuntu
   - publicAddress: ''
     privateAddress: '10.XX.XX.72'
#     bastion: '<IP_ADDRESS>'
#     bastionPort: 22  # can be left out if using the default (22)
#     bastionUser: 'root'  # can be left out if using the default ('root')
     sshPort: 22 # can be left out if using the default (22)
     sshUsername: <myUser>
#     # You usually want to configure either a private key OR an
#     # agent socket, but never both. The socket value can be
#     # prefixed with "env:" to refer to an environment variable.
#     sshPrivateKeyFile: '/home/<myUser>/.ssh/id_rsa'
     sshAgentSocket: 'env:SSH_AUTH_SOCK'
#     # Taints is used to apply taints to the node.
#     # Explicitly empty (i.e. taints: {}) means no taints will be applied.
#     # taints:
#     # - key: ""
#     #   effect: ""
     operatingSystem: ubuntu
   - publicAddress: ''
     privateAddress: '10.XX.XX.73'
#     bastion: '<IP_ADDRESS>'
#     bastionPort: 22  # can be left out if using the default (22)
#     bastionUser: 'root'  # can be left out if using the default ('root')
     sshPort: 22 # can be left out if using the default (22)
     sshUsername: <myUser>
#     # You usually want to configure either a private key OR an
#     # agent socket, but never both. The socket value can be
#     # prefixed with "env:" to refer to an environment variable.
#     sshPrivateKeyFile: '/home/<myUser>/.ssh/id_rsa'
     sshAgentSocket: 'env:SSH_AUTH_SOCK'
#     # Taints is used to apply taints to the node.
#     # Explicitly empty (i.e. taints: {}) means no taints will be applied.
#     # taints:
#     # - key: ""
#     #   effect: ""
     operatingSystem: ubuntu
   - publicAddress: ''
     privateAddress: '10.XX.XX.74'
#     bastion: '<IP_ADDRESS>'
#     bastionPort: 22  # can be left out if using the default (22)
#     bastionUser: 'root'  # can be left out if using the default ('root')
     sshPort: 22 # can be left out if using the default (22)
     sshUsername: <myUser>
#     # You usually want to configure either a private key OR an
#     # agent socket, but never both. The socket value can be
#     # prefixed with "env:" to refer to an environment variable.
#     sshPrivateKeyFile: '/home/<myUser>/.ssh/id_rsa'
     sshAgentSocket: 'env:SSH_AUTH_SOCK'
#     # Taints is used to apply taints to the node.
#     # Explicitly empty (i.e. taints: {}) means no taints will be applied.
#     # taints:
#     # - key: ""
#     #   effect: ""
     operatingSystem: ubuntu
   - publicAddress: ''
     privateAddress: '10.XX.XX.75'
#     bastion: '<IP_ADDRESS>'
#     bastionPort: 22  # can be left out if using the default (22)
#     bastionUser: 'root'  # can be left out if using the default ('root')
     sshPort: 22 # can be left out if using the default (22)
     sshUsername: <myUser>
#     # You usually want to configure either a private key OR an
#     # agent socket, but never both. The socket value can be
#     # prefixed with "env:" to refer to an environment variable.
#     sshPrivateKeyFile: '/home/<myUser>/.ssh/id_rsa'
     sshAgentSocket: 'env:SSH_AUTH_SOCK'
#     # Taints is used to apply taints to the node.
#     # Explicitly empty (i.e. taints: {}) means no taints will be applied.
#     # taints:
#     # - key: ""
#     #   effect: ""
     operatingSystem: ubuntu
   - publicAddress: ''
     privateAddress: '10.XX.XX.76'
#     bastion: '<IP_ADDRESS>'
#     bastionPort: 22  # can be left out if using the default (22)
#     bastionUser: 'root'  # can be left out if using the default ('root')
     sshPort: 22 # can be left out if using the default (22)
     sshUsername: <myUser>
#     # You usually want to configure either a private key OR an
#     # agent socket, but never both. The socket value can be
#     # prefixed with "env:" to refer to an environment variable.
#     sshPrivateKeyFile: '/home/<myUser>/.ssh/id_rsa'
     sshAgentSocket: 'env:SSH_AUTH_SOCK'
#     # Taints is used to apply taints to the node.
#     # Explicitly empty (i.e. taints: {}) means no taints will be applied.
#     # taints:
#     # - key: ""
#     #   effect: ""
     operatingSystem: ubuntu
# The API server can also be overwritten by Terraform. Provide the
# external address of your load balancer or the public addresses of
# the first control plane nodes.
apiEndpoint:
   host: '10.XX.XX.66'
   port: 6443
#   alternativeNames: []

# If the cluster runs on bare metal or an unsupported cloud provider,
# you can disable the machine-controller deployment entirely. In this
# case, anything you configure in your "workers" sections is ignored.
machineController:
  deploy: false

# Proxy is used to configure HTTP_PROXY, HTTPS_PROXY and NO_PROXY
# for Docker daemon and kubelet, and to be used when provisioning cluster
# (e.g. for curl, apt-get..).
# Also worker nodes managed by machine-controller will be configred according to
# proxy settings here. The caveat is that only proxy.http and proxy.noProxy will
# be used on worker machines.
# proxy:
#  http: ''
#  https: ''
#  noProxy: ''

# KubeOne can automatically create MachineDeployments to create
# worker nodes in your cluster. Each element in this "workers"
# list is a single deployment and must have a unique name.
# dynamicWorkers:
# - name: fra1-a
#   replicas: 1
#   providerSpec:
#     labels:
#       mylabel: 'fra1-a'
#     # SSH keys can be inferred from Terraform if this list is empty
#     # and your tf output contains a "ssh_public_keys" field.
#     # sshPublicKeys:
#     # - 'ssh-rsa ......'
#     # cloudProviderSpec corresponds 'provider.name' config
#     cloudProviderSpec:
#       ### the following params could be inferred by kubeone from terraform
#       ### output JSON:
#       # ami: 'ami-0332a5c40cf835528',
#       # availabilityZone: 'eu-central-1a',
#       # instanceProfile: 'mycool-profile',
#       # region: 'eu-central-1',
#       # securityGroupIDs: ['sg-01f34ffd8447e70c0']
#       # subnetId: 'subnet-2bff4f43',
#       # vpcId: 'vpc-819f62e9'
#       ### end of terraform inferred kubeone params
#       instanceType: 't3.medium'
#       diskSize: 50
#       diskType: 'gp2'
#     operatingSystem: 'ubuntu'
#     operatingSystemSpec:
#       distUpgradeOnBoot: true
# - name: fra1-b
#   replicas: 1
#   providerSpec:
#     labels:
#       mylabel: 'fra1-b'
#     cloudProviderSpec:
#       instanceType: 't3.medium'
#       diskSize: 50
#       diskType: 'gp2'
#     operatingSystem: 'ubuntu'
#     operatingSystemSpec:
#       distUpgradeOnBoot: true
# - name: fra1-c
#   replicas: 1
#   providerSpec:
#     labels:
#       mylabel: 'fra1-c'
#     cloudProviderSpec:
#       instanceType: 't3.medium'
#       diskSize: 50
#       diskType: 'gp2'
#     operatingSystem: 'ubuntu'
#     operatingSystemSpec:
#       distUpgradeOnBoot: true

loggingConfig:
  containerLogMaxSize: "100Mi"
  containerLogMaxFiles: 5

What cloud provider are you running on?
Running on Baremetal with out Teraform
What operating system are you running in your cluster?
Ubuntu 20.04

@DerPate please paste the full log.

There ist not more to it realy but I will paste it tomorrow. Worked around it with using version 1.3

INFO[05:15:02 UTC] Determine hostname...
INFO[05:15:04 UTC] Determine operating system...
these two lines are missing from the log. @kron4eg

@DerPate Is your API server working at all? Can you do anything with kubectl, like kubectl get nodes?

No not realy, The cluster wouldn't start or any thing it chrashes hard when using 1.4. It will work when using 1.3

@kron4eg  The go sub process kubeone spawns to configure the cluster exits with signal 11 SIGSEGV the crash log for this "hard chrash" i called it is in the first post. Kubeone is not able to spin up the cluster because it chrases before even starting to building the first node, so i'm not able to provide any pod node logs as there is no active cluster. I hoipe this makes it more clear to you

But can you ssh to the control plane instance and take a look directly to the container logs?

I have encountered the same panic issue on the already built cluster.  I can access the cluster via kubectl but there is nothing out of the ordinary that would stand out. All pods are running, some had a restart, however, I cannot confirm that the restarts happened during the panic. The nodes are also healthy in the Ready state.
Kubeone version 1.4.3
Deployed via kubeone apply without terraform

@MiroslavRepka a way to reproduce would help to debug this case.

I deployed a cluster on VMs in Hetzner cloud I created. The cluster was composed from 3 Master/2 Worker nodes.
Here is the kubeone.yaml
apiVersion: kubeone.k8c.io/v1beta2
kind: KubeOneCluster
name: cluster

versions:
  kubernetes: 'v1.21.0'

clusterNetwork:
  cni:
    external: {}

cloudProvider:
  none: {}
  external: false

addons:
  enable: true
  path: "../addons"

apiEndpoint:
  host: 'my.fancy.url'
  port: 6443

controlPlane:
  hosts:
  - publicAddress: 'x.x.x.x'
    privateAddress: 'x.x.x.x'
    sshUsername: root
    sshPrivateKeyFile: './private.pem'
    taints:
    - key: "node-role.kubernetes.io/master"
      effect: "NoSchedule"
  - publicAddress: 'x.x.x.x'
    privateAddress: 'x.x.x.x'
    sshUsername: root
    sshPrivateKeyFile: './private.pem'
    taints:
    - key: "node-role.kubernetes.io/master"
      effect: "NoSchedule"
  - publicAddress: 'x.x.x.x'
    privateAddress: 'x.x.x.x'
    sshUsername: root
    sshPrivateKeyFile: './private.pem'
    taints:
    - key: "node-role.kubernetes.io/master"
      effect: "NoSchedule"

staticWorkers:
  hosts:
  - publicAddress: 'x.x.x.x'
    privateAddress: 'x.x.x.x'
    sshUsername: root
    sshPrivateKeyFile: './private.pem'
  - publicAddress: 'x.x.x.x'
    privateAddress: 'x.x.x.x'
    sshUsername: root
    sshPrivateKeyFile: './private.pem'

machineController:
  deploy: false

The addons are defining calico CNI.
The cluster was created via kubeone apply -m kubeone.yaml with no errors. After some small changes to the external Loadbalancer, I ran kubeone apply again, which threw a panic.
The cluster was still accessible with kubectl, as I mentioned before.

/remove-lifecycle stale

@MiroslavRepka can I ask why cloudProvider.none is used?

@DerPate We've upgraded few times kubernetes dependencies since initial issue open data, including controller-runtime. Please try to reproduce again.

can I ask why cloudProvider.none is used?

If I remember correctly, the machines used in the cluster were from multiple cloud providers.

machines used in the cluster were from multiple cloud providers.

This is definitely not recommended nether supported and is a perfect recipe to break the cluster.

This is definitely not recommended nether supported and is a perfect recipe to break the cluster.

I agree that a multi-cloud cluster that depends on solely kubeOne would probably fail. However, a few adjustments, like installing a VPN before running kubeOne, installing and configuring some block storage solution like Longhorn, etc., should do the trick.

/remove-lifecycle stale


SDK Design

While I was trying to test google APIs via ruby SDK, I found it VERY VERY difficult to get something up and running even after going through the various online documentations. Obviously the services provided are indeed complex and done by various teams. However still getting something done via the Ruby SDK is not as sweet as other Ruby SDKs naturally are! I am under the impression that this was NOT done by ruby developers but rather via a very talented team whose language of choice for day to day operations is NOT ruby! (smells like Java)
Kindly please be aware that more syntactic sugar is indeed needed to make those amazing services actually usable by the community at a larger scale. In my opinion more emphasis on the SDK's interfaces design is urgently needed.
Please share your thoughts...

An example of a Ruby developer normal expectation
 myfile = Google::Apis::DriveV3::File.new do  original_filename = "originalnamemyfile" description = "mydescription" name = "myfilename" end
This doesn't work!

Happy to add additional sugar to make things easier where needed. Yielding in the initializer is easy enough to do.
FYI, there is some sugar in there already for the example you provided - e.g. you can just pass properties in as keyword args:
myfile = Google::Apis::DriveV3::File.new(
  original_filename : "originalnamemyfile"
  description:  "mydescription"
  name:  "myfilename"
)

And can just use vanilla hashes instead of using the actual types too..
If you have specific things you'd like, please file issues or send PRs. Have to be careful about things that break the API, but small bits of sugar are fine.
Anyway, I'm going to close this as it's a little too broad of an issue and not really actionable.

@sqrrrl Thank you for the hints.
I beg to differ regarding being careful about breaking the SDK interface, as I find that is exactly what is needed here (bundler would takecare of older versions). I can't think of a better way of collecting some opinions about what "should" the SDK design be. And as ruby has no unified style of doing things, to avoid going on circles it would be better to get a taste of what other like\dislike too.

To clarify, the short term goal right now is to get to a stable 1.0 release. Significant design changes that break compatibility outside what is planned for 0.10 are off the table right now. After that, if there are ideas on what a 2.0 should look like I'm happy to entertain them.


Error

Tried many times, and every time gives error. .(
Script failed to scan birthdays.
Error message: eyJ0eXBlIjoiU0NBTl9FUlJPUl9USU1FT1VUIn0=

The issue is solved in https://github.com/zagushka/birthday-calendar-extractor/pull/94


.net 6.0 NativeReference does not build

In my csproj I have a native reference like...
  <ItemGroup>
    <NativeReference Include="NativeSimple">
      <Kind>Framework</Kind>
      <Frameworks>ExternalAccessory CoreLocation AVFoundation AudioToolbox CoreBluetooth</Frameworks>
      <ForceLoad>true</ForceLoad>
      <IsCxx>true</IsCxx>
      <SmartLink>false</SmartLink>
    </NativeReference>
  </ItemGroup>

But any attempt to build on mac errors..

dotnet build

/usr/local/share/dotnet/sdk/6.0.402/Microsoft.Common.CurrentVersion.targets(2193,5): error MSB4062: The "Microsoft.Build.Tasks.ResolveNativeReference" task could not be loaded from the assembly Microsoft.Build.Tasks.Core, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=b0
3f5f7f11d50a3a.  Confirm that the <UsingTask> declaration is correct, that the assembly and all its dependencies are available, and that the task contains a public class that implements Microsoft.Build.Framework.ITask.

What's going on?

Error:
The "Microsoft.Build.Tasks.ResolveNativeReference" task could not be loaded from the assembly Microsoft.Build.Tasks.Core, Version=<IP_ADDRESS>

cc @rainersigwald


Add monitoring for extension and skins modifications (patch by @gitmapd)

His attempts to get this patch through kept failing due to 403 errors during validation, so we're seeing if I can get it through instead.

Fixes #159.

apparently this patch requires a follow up to be done in some future to support for extensions requiring either update.php script to be ran and/or having Composer dependencies

Why is it overkill to run update.php and composer update both each time?

You're right that it might not be overkill at all - but on the other hand, thinking about it again now, I might have been correct, but for the wrong reason, that these calls should be avoided. The problem with update.php, if I'm thinking about it correctly, is not that it would be too costly to call, but that it actually wouldn't work at all: it will only make the relevant DB changes once the extension is enabled - but at the time this script runs, the extension has only been added, not enabled, so update.php will do nothing.
As for "composer update" - I don't know if it requires enabling the extension, but even if it does, the code could instead just go into the extension's directory and call "composer install", so that part is fine. However, it doesn't seem that useful: this would only be relevant for extensions that are installed via a two-step method (Git or download, then Composer), which I think is a relatively small number; and it would just save calling one command, which presumably the admin knows they need to call anyway, if they're following the installation instructions. Plus, maybe there's a chance that this extension requires calling something other than a plain "composer install" (or "composer install --no-dev"), so calling it automatically could potentially even mess up the installation. (I'm just speculating - maybe that's not possible.) Anyway, I think it would be only minimally useful.