macOS Sequoia 15.1.1 with MPS and PyTorch (BFloat16 Unsupported)

please check this issue
https://github.com/comfyanonymous/ComfyUI/issues/5829
I think the issue is due to the model weight being in bfloat16, and even after converting it, it still detects the weight as bfloat16.
https://github.com/city96/ComfyUI-GGUF/tree/main/tools
I used all the models i see bfloat16 error,
https://huggingface.co/city96/FLUX.1-schnell-gguf/tree/main
is it possible to convert for intel mac AMD
This is not working
% PYTORCH_ENABLE_MPS_FALLBACK=1 PYTORCH_MPS_HIGH_WATERMARK_RATIO=0.0 python main.py --use-split-cross-attention --force-fp16
Processor:
Model: Intel(R) Xeon(R) W-2140B CPU
Speed: 3.20 GHz
Cores: 8 cores (with Hyper-Threading enabled)
Memory (RAM):
Total RAM: 32 GB<PHONE_NUMBER>8 bytes)
GPU:
Model: Radeon Pro Vega 56
VRAM: 8 GB
Bus: PCIe (x16)
Metal Support: Metal 3 (supports Apple's graphics framework)

Hmmm, the actual weights for the model you linked are all in different quantized formats (the old flux ones use FP16 for the mixed weights because they're from before I had added BF16 support).
I believe FP16 might cause NaN issues with flux, which is why the forward pass is by default cast to bf16 in comfy (and it sort of looks like the fp16 flag isn't respected for flux for some reason).
Could you see if --force-fp32 works as a startup flag?

me too

@city96
% python main.py --force-fp32
[START] Security scan
[DONE] Security scan
ComfyUI-Manager: installing dependencies done.
** ComfyUI startup time: 2024-12-11 21:30:51.125370
** Platform: Darwin
** Python version: 3.10.12 (main, Jul  5 2023, 15:34:07) [Clang 14.0.6 ]
** Python executable: /Volumes/Spidy/VirtualEnvDir/comfyui/bin/python
** ComfyUI Path: /Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI
** Log path: /Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/comfyui.log
Prestartup times for custom nodes:
0.0 seconds: /Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/rgthree-comfy
6.3 seconds: /Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI-Manager
Total VRAM 32768 MB, total RAM 32768 MB
pytorch version: 2.2.2
Forcing FP32, if this improves things please report it.
Set vram state to: SHARED
Device: mps
Using sub quadratic optimization for cross attention, if you have memory or speed issues try using: --use-split-cross-attention
[Prompt Server] web root: /Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/web
[Crystools INFO] Crystools version: 1.21.0
[Crystools INFO] CPU: Intel(R) Xeon(R) W-2140B CPU @ 3.20GHz - Arch: x86_64 - OS: Darwin 24.1.0
[Crystools ERROR] Could not init pynvml (Nvidia).NVML Shared Library Not Found
[Crystools WARNING] No GPU with CUDA detected.
Loading: ComfyUI-Impact-Pack (V7.14)
Loading: ComfyUI-Impact-Pack (Subpack: V0.8)
[Impact Pack] Wildcards loading done.
Loading: ComfyUI-Manager (V2.55)
ComfyUI Version: v0.3.6-17-g8af9a91 | Released on '2024-12-06'
[ComfyUI-Manager] default cache updated: https://raw.githubusercontent.com/ltdrdata/ComfyUI-Manager/main/model-list.json
[ComfyUI-Manager] default cache updated: https://raw.githubusercontent.com/ltdrdata/ComfyUI-Manager/main/alter-list.json
[ComfyUI-Manager] default cache updated: https://raw.githubusercontent.com/ltdrdata/ComfyUI-Manager/main/custom-node-list.json
[ComfyUI-Manager] default cache updated: https://raw.githubusercontent.com/ltdrdata/ComfyUI-Manager/main/extension-node-map.json
[ComfyUI-Manager] default cache updated: https://raw.githubusercontent.com/ltdrdata/ComfyUI-Manager/main/github-stats.json
/Volumes/Spidy/VirtualEnvDir/comfyui/lib/python3.10/site-packages/timm/models/layers/init.py:48: FutureWarning: Importing from timm.models.layers is deprecated, please import via timm.layers
warnings.warn(f"Importing from {name} is deprecated, please import via timm.layers", FutureWarning)
Please 'pip install xformers'
Nvidia APEX normalization not installed, using PyTorch LayerNorm
[rvtools INFO] RvTools Version: 2.1.0
[rvtools INFO] RvTools v2 Version: 2.3.5
Comfyroll Studio v1.76 :  175 Nodes Loaded
** For changes, please see patch notes at https://github.com/Suzie1/ComfyUI_Comfyroll_CustomNodes/blob/main/Patch_Notes.md
** For help, please see the wiki at https://github.com/Suzie1/ComfyUI_Comfyroll_CustomNodes/wiki
[rgthree-comfy] Loaded 42 exciting nodes. 🎉
Import times for custom nodes:
0.0 seconds: /Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/websocket_image_save.py
0.0 seconds: /Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI_JPS-Nodes
0.0 seconds: /Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI_UltimateSDUpscale
0.0 seconds: /Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI-Custom-Scripts
0.0 seconds: /Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/Derfuu_ComfyUI_ModdedNodes
0.0 seconds: /Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI-GGUF
0.0 seconds: /Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/rgthree-comfy
0.0 seconds: /Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI_Comfyroll_CustomNodes
0.1 seconds: /Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/x-flux-comfyui
0.1 seconds: /Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI-RvTools_v2
0.1 seconds: /Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI-RvTools
0.1 seconds: /Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI-Long-CLIP
0.4 seconds: /Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI-Manager
0.5 seconds: /Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/comfyui-tensorops
0.9 seconds: /Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI-Florence2
1.2 seconds: /Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI-PuLID-Flux-Enhanced
2.3 seconds: /Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI-Crystools
4.9 seconds: /Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI-Impact-Pack
Starting server
To see the GUI go to: http://<IP_ADDRESS>:8188
FETCH DATA from: /Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI-Manager/extension-node-map.json [DONE]
[ERROR] An error occurred while retrieving information for the 'Florence2ModelLoader' node.
Traceback (most recent call last):
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/server.py", line 563, in get_object_info
out[x] = node_info(x)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/server.py", line 530, in node_info
info['input'] = obj_class.INPUT_TYPES()
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI-Florence2/nodes.py", line 150, in INPUT_TYPES
"model": ([item.name for item in Path(folder_paths.models_dir, "LLM").iterdir() if item.is_dir()], {"tooltip": "models are expected to be in Comfyui/models/LLM folder"}),
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI-Florence2/nodes.py", line 150, in
"model": ([item.name for item in Path(folder_paths.models_dir, "LLM").iterdir() if item.is_dir()], {"tooltip": "models are expected to be in Comfyui/models/LLM folder"}),
File "/Volumes/Spidy/VirtualEnvDir/comfyui/lib/python3.10/pathlib.py", line 1017, in iterdir
for name in self._accessor.listdir(self):
FileNotFoundError: [Errno 2] No such file or directory: '/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/models/LLM'
[]
[]
got prompt
Using split attention in VAE
Using split attention in VAE
Requested to load FluxClipModel_
loaded completely 9.5367431640625e+25 4777.53759765625 True
/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI-GGUF/nodes.py:79: UserWarning: The given NumPy array is not writable, and PyTorch does not support non-writable tensors. This means writing to this tensor will result in undefined behavior. You may want to copy the array to protect its data or make it writable before converting it to a tensor. This type of warning will be suppressed for the rest of this program. (Triggered internally at /Users/runner/work/pytorch/pytorch/pytorch/torch/csrc/utils/tensor_numpy.cpp:212.)
torch_tensor = torch.from_numpy(tensor.data) # mmap
ggml_sd_loader:
GGMLQuantizationType.F16      476
GGMLQuantizationType.Q4_0     304
model weight dtype torch.float32, manual cast: None
model_type FLUX
Requested to load FluxClipModel_
loaded completely 9.5367431640625e+25 4777.53759765625 True
Requested to load Flux
loaded completely 9.5367431640625e+25 6476.5469970703125 True
0%|                                                                                | 0/20 [00:01<?, ?it/s]
!!! Exception during processing !!! The operator 'aten::rshift.Tensor' is not currently implemented for the MPS device. If you want this op to be added in priority during the prototype phase of this feature, please comment on https://github.com/pytorch/pytorch/issues/77764. As a temporary fix, you can set the environment variable PYTORCH_ENABLE_MPS_FALLBACK=1 to use the CPU as a fallback for this op. WARNING: this will be slower than running natively on MPS.
Traceback (most recent call last):
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/execution.py", line 324, in execute
output_data, output_ui, has_subgraph = get_output_data(obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/execution.py", line 199, in get_output_data
return_values = _map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/execution.py", line 170, in _map_node_over_list
process_inputs(input_dict, i)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/execution.py", line 159, in process_inputs
results.append(getattr(obj, func)(**inputs))
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/nodes.py", line 1467, in sample
return common_ksampler(model, seed, steps, cfg, sampler_name, scheduler, positive, negative, latent_image, denoise=denoise)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/nodes.py", line 1434, in common_ksampler
samples = comfy.sample.sample(model, noise, steps, cfg, sampler_name, scheduler, positive, negative, latent_image,
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI-Impact-Pack/modules/impact/sample_error_enhancer.py", line 22, in informative_sample
raise e
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI-Impact-Pack/modules/impact/sample_error_enhancer.py", line 9, in informative_sample
return original_sample(*args, **kwargs)  # This code helps interpret error messages that occur within exceptions but does not have any impact on other operations.
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/comfy/sample.py", line 43, in sample
samples = sampler.sample(noise, positive, negative, cfg=cfg, latent_image=latent_image, start_step=start_step, last_step=last_step, force_full_denoise=force_full_denoise, denoise_mask=noise_mask, sigmas=sigmas, callback=callback, disable_pbar=disable_pbar, seed=seed)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/comfy/samplers.py", line 1020, in sample
return sample(self.model, noise, positive, negative, cfg, self.device, sampler, sigmas, self.model_options, latent_image=latent_image, denoise_mask=denoise_mask, callback=callback, disable_pbar=disable_pbar, seed=seed)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/comfy/samplers.py", line 918, in sample
return cfg_guider.sample(noise, latent_image, sampler, sigmas, denoise_mask, callback, disable_pbar, seed)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/comfy/samplers.py", line 904, in sample
output = executor.execute(noise, latent_image, sampler, sigmas, denoise_mask, callback, disable_pbar, seed)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/comfy/patcher_extension.py", line 110, in execute
return self.original(*args, **kwargs)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/comfy/samplers.py", line 873, in outer_sample
output = self.inner_sample(noise, latent_image, device, sampler, sigmas, denoise_mask, callback, disable_pbar, seed)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/comfy/samplers.py", line 857, in inner_sample
samples = executor.execute(self, sigmas, extra_args, callback, noise, latent_image, denoise_mask, disable_pbar)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/comfy/patcher_extension.py", line 110, in execute
return self.original(*args, **kwargs)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/comfy/samplers.py", line 714, in sample
samples = self.sampler_function(model_k, noise, sigmas, extra_args=extra_args, callback=k_callback, disable=disable_pbar, **self.extra_options)
File "/Volumes/Spidy/VirtualEnvDir/comfyui/lib/python3.10/site-packages/torch/utils/_contextlib.py", line 115, in decorate_context
return func(*args, **kwargs)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/comfy/k_diffusion/sampling.py", line 155, in sample_euler
denoised = model(x, sigma_hat * s_in, **extra_args)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/comfy/samplers.py", line 384, in call
out = self.inner_model(x, sigma, model_options=model_options, seed=seed)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/comfy/samplers.py", line 839, in call
return self.predict_noise(*args, **kwargs)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/comfy/samplers.py", line 842, in predict_noise
return sampling_function(self.inner_model, x, timestep, self.conds.get("negative", None), self.conds.get("positive", None), self.cfg, model_options=model_options, seed=seed)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/comfy/samplers.py", line 364, in sampling_function
out = calc_cond_batch(model, conds, x, timestep, model_options)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/comfy/samplers.py", line 200, in calc_cond_batch
return executor.execute(model, conds, x_in, timestep, model_options)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/comfy/patcher_extension.py", line 110, in execute
return self.original(*args, **kwargs)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/comfy/samplers.py", line 313, in calc_cond_batch
output = model.apply_model(input_x, timestep, **c).chunk(batch_chunks)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/comfy/model_base.py", line 128, in apply_model
return comfy.patcher_extension.WrapperExecutor.new_class_executor(
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/comfy/patcher_extension.py", line 110, in execute
return self.original(*args, **kwargs)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/comfy/model_base.py", line 157, in _apply_model
model_output = self.diffusion_model(xc, t, context=context, control=control, transformer_options=transformer_options, **extra_conds).float()
File "/Volumes/Spidy/VirtualEnvDir/comfyui/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1511, in _wrapped_call_impl
return self._call_impl(*args, **kwargs)
File "/Volumes/Spidy/VirtualEnvDir/comfyui/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1520, in _call_impl
return forward_call(*args, **kwargs)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/comfy/ldm/flux/model.py", line 184, in forward
out = self.forward_orig(img, img_ids, context, txt_ids, timestep, y, guidance, control, transformer_options)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/comfy/ldm/flux/model.py", line 134, in forward_orig
img, txt = block(img=img, txt=txt, vec=vec, pe=pe)
File "/Volumes/Spidy/VirtualEnvDir/comfyui/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1511, in _wrapped_call_impl
return self._call_impl(*args, **kwargs)
File "/Volumes/Spidy/VirtualEnvDir/comfyui/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1520, in _call_impl
return forward_call(*args, **kwargs)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/comfy/ldm/flux/layers.py", line 146, in forward
img_mod1, img_mod2 = self.img_mod(vec)
File "/Volumes/Spidy/VirtualEnvDir/comfyui/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1511, in _wrapped_call_impl
return self._call_impl(*args, **kwargs)
File "/Volumes/Spidy/VirtualEnvDir/comfyui/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1520, in _call_impl
return forward_call(*args, **kwargs)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/comfy/ldm/flux/layers.py", line 108, in forward
out = self.lin(nn.functional.silu(vec))[:, None, :].chunk(self.multiplier, dim=-1)
File "/Volumes/Spidy/VirtualEnvDir/comfyui/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1511, in _wrapped_call_impl
return self._call_impl(*args, **kwargs)
File "/Volumes/Spidy/VirtualEnvDir/comfyui/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1520, in _call_impl
return forward_call(*args, **kwargs)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/comfy/ops.py", line 68, in forward
return self.forward_comfy_cast_weights(*args, **kwargs)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI-GGUF/ops.py", line 152, in forward_comfy_cast_weights
return self.forward_ggml_cast_weights(input, *args, **kwargs)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI-GGUF/ops.py", line 174, in forward_ggml_cast_weights
weight, bias = self.cast_bias_weight(input)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI-GGUF/ops.py", line 146, in cast_bias_weight
weight = s.get_weight(s.weight.to(device), dtype)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI-GGUF/ops.py", line 119, in get_weight
weight = dequantize_tensor(tensor, dtype, self.dequant_dtype)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI-GGUF/dequant.py", line 23, in dequantize_tensor
return dequantize(tensor.data, qtype, oshape, dtype=dequant_dtype).to(dtype)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI-GGUF/dequant.py", line 43, in dequantize
blocks = dequantize_blocks(blocks, block_size, type_size, dtype)
File "/Volumes/Spidy/GitHub/AI/ComfyUIRoot/ComfyUI/custom_nodes/ComfyUI-GGUF/dequant.py", line 117, in dequantize_blocks_Q4_0
qs = qs.reshape((n_blocks, -1, 1, block_size // 2)) >> torch.tensor([0, 4], device=d.device, dtype=torch.uint8).reshape((1, 1, 2, 1))
File "/Volumes/Spidy/VirtualEnvDir/comfyui/lib/python3.10/site-packages/torch/_tensor.py", line 1418, in torch_function
ret = func(*args, **kwargs)
NotImplementedError: The operator 'aten::rshift.Tensor' is not currently implemented for the MPS device. If you want this op to be added in priority during the prototype phase of this feature, please comment on https://github.com/pytorch/pytorch/issues/77764. As a temporary fix, you can set the environment variable PYTORCH_ENABLE_MPS_FALLBACK=1 to use the CPU as a fallback for this op. WARNING: this will be slower than running natively on MPS.

@city96
if used PYTORCH_ENABLE_MPS_FALLBACK=1 then it work on CPU but very slow
%  PYTORCH_ENABLE_MPS_FALLBACK=1 python main.py --force-fp32
Requested to load FluxClipModel_
loaded completely 9.5367431640625e+25 4777.53759765625 True
Requested to load Flux
loaded completely 9.5367431640625e+25 6476.5469970703125 True
0%|                                                                                | 0/20 [00:00<?, ?it/s]/Volumes/Spidy/VirtualEnvDir/comfyui/lib/python3.10/site-packages/torch/_tensor.py:1418: UserWarning: The operator 'aten::rshift.Tensor' is not currently supported on the MPS backend and will fall back to run on the CPU. This may have performance implications. (Triggered internally at /Users/runner/work/pytorch/pytorch/pytorch/aten/src/ATen/mps/MPSFallback.mm:13.)
ret = func(*args, **kwargs)
50%|████████████████████████████████████████████████████████████████                                                                | 10/20 [02:35<02:35, 15.57s/it]

That error isn't about BFloat16 though, it's about rshift, which is a completely different issue. Based on this comment the rshift thing should work on latest pytorch: https://github.com/city96/ComfyUI-GGUF/issues/27#issuecomment-2354079885
You're using pytorch 2.2.2 which is probably why it's failing.


Support Redis 5 stream commands

Redis 5 added a new stream data type[1] and commands[2] to operate on one or multiple of them. Currently they are missing from envoy. I'm wondering if it's possible to support at least

xrange
xrevrange
xlen

and maybe xread. xread is slightly difference since it could take multiple keys that exist on different cluster. Do you think xread with keys being on different clusters could be handled?
I saw  #6563 that added support for additional commands. For 1-3 is it just a matter of adding to the set of supported commands?
First time contributing, guidance appreciated :) Thanks!
[1] https://redis.io/topics/streams-intro
[2] https://redis.io/commands#stream

cc @envoyproxy/redis-dev

Does Envoy proxy support Redis Streams?


@next make sass loader include node_modules

With the next branch, I'm using the built-in sass loader, works perfectly.
However

How can I configure it to include node_modules in the include path?
Why is this not the default configuration? It's the most typical use case, CSS/SCSS libs are always distributed via npm these days.

Putting ~ in front of module names makes it resolve to node_modules.

@Timer wanna get this into 2?

I need to understand the proposed PR more, sass-loader makes it very clear you shouldn't use includePaths like #5011.

Can you show us a specific case that doesn't work for you, but you'd like to?

Oh, I think this is a request for absolute imports.

Yes, exactly absolute imports. To make sure that we can bundle code from CSS frameworks, like:
@import "semantic-ui-css/semantic.css";
@import "perfect-scrollbar/css/perfect-scrollbar";
@import "primer-forms/index";

Also, you should read https://github.com/sass/node-sass/issues/2362. It is the most widely commented and community opposed change in the history of SASS.
Originally node-sass wanted to remove CSS import, but it's so important and so widely used in projects, that they finally changed their mind and it'll stay in 5.0.
So 4.8 had it 4.10 will have it and 5.x will have it, but early versions of 4.9 displayed a warning about it.

Yeah, this would be very bad. See bootstrap for example. What happens when one of those names are installed as a package.

I believe ~ is a perfect solution, I have no problem with that. I just wanted to make sure that:

~ stays supported in the final version
it's documented somewhere, at least in this issue


Fix npm publish workflow

due to an oversight on my behalf, (https://github.com/grafana/lezer-logql/pull/34) didn't actually fix the issue.
as you can see from the demo, without the second half of the script, if husky doesn't exist it still throws an error making the workflow fail. however, with the second half, if husky doesn't exist the command just runs echo and doesn't error
github is now throwing errors whilst trying to upload the demo (linked in slack thread):
https://raintank-corp.slack.com/archives/C03PMJLVC67/p1689594553023209?thread_ts=1689588697.351199&cid=C03PMJLVC67

➜  lezer-logql git:(main) test -d node_modules/husky && husky install || echo 'husky not installed... ignoring script'
zsh: command not found: husky
husky not installed... ignoring script

I'll recommend something shortly.

There's another thing that I don't like, which is that we use yarn to build the library, when we don't have a yarn.lock file, we use npm in this repo.

Btw, github actions can be tested with https://github.com/nektos/act


added usage to README.md

added usage for the first timers (as I was) how to start the debugger.

well english is not my native language .. thanks.
at least I learned to do pull request ;)
On Thu, Feb 28, 2019 at 9:26 AM Lukas Beranek<EMAIL_ADDRESS>wrote:

@lloiser requested changes on this pull request.
Thank you for your help. Just some minor typos :)
In README.md
https://github.com/lloiser/go-debug/pull/151#discussion_r261071495:

@@ -131,6 +136,7 @@ Start tests with verbose flag:

## Key bindings
+

there is no need to add this element here, you can use #key-bindings
above to link to this section
------------------------------

In README.md
<https://github.com/lloiser/go-debug/pull/151#discussion_r261071562>:

> @@ -14,6 +14,11 @@ Either `apm install go-debug` or search for `go-debug` in the settings.

If this fails you can still do it manually by using this guide: https://github.com/derekparker/delve/tree/master/Documentation/installation

+## Usage
+Use F5 to lauch the debug window (the one on the right).

s/lauch/launch
------------------------------

In README.md
<https://github.com/lloiser/go-debug/pull/151#discussion_r261071615>:

> @@ -14,6 +14,11 @@ Either `apm install go-debug` or search for `go-debug` in the settings.

If this fails you can still do it manually by using this guide: https://github.com/derekparker/delve/tree/master/Documentation/installation

+## Usage
+Use F5 to lauch the debug window (the one on the right).
+At selected line press F9 to set (or togle) break point.

s/togle/toggle

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<https://github.com/lloiser/go-debug/pull/151#pullrequestreview-208920833>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ATmkFK4BI8ts9umA10ZWPjcTzoPFwnhxks5vR4SZgaJpZM4bVUuP>
.

I hope I got it right now.

Thank you very much for your help :+1:

you are wellcome.
On Thu, Feb 28, 2019 at 9:16 PM Lukas Beranek<EMAIL_ADDRESS>wrote:

Thank you very much for your help 👍
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/lloiser/go-debug/pull/151#issuecomment-468400589, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ATmkFJ1HjWUmGQk_QPa7Xy9lt0QWc8Rwks5vSCr-gaJpZM4bVUuP
.


Masked tokens

Just a quick question. I was wondering if the masks which get passed to the model at inference are for the purposes of masked tokens for self-supervision or if they are a different mask? Thanks

@zankner Hi Zach! It's a different mask, for masking out attention to specific patches. It wouldn't matter at all if you always use the same sized image, but if you somehow have different sized images padded to be a full square, and they are a multiple of the patch size, you can selectively mask out the padding patches

@zankner Hi Zach! It's a different mask, for masking out attention to specific patches. It wouldn't matter at all if you always use the same sized image, but if you somehow have different sized images padded to be a full square, and they are a multiple of the patch size, you can selectively mask out the padding patches

@zankner I feel like I shouldn't have agreed to build it (some user requested it when the repo was still young) it's really not needed for the majority of the use-cases (same sized images), and just makes the repo more complicated than it needs to be

@zankner I feel like I shouldn't have agreed to build it (some user requested it when the repo was still young) it's really not needed for the majority of the use-cases (same sized images), and just makes the repo more complicated than it needs to be

@zankner the masked training you are thinking of won't work with ViT anyways

@zankner the masked training you are thinking of won't work with ViT anyways

I might be wrong, but in the original paper didn't they perform masked token prediction for self-supervision?

I might be wrong, but in the original paper didn't they perform masked token prediction for self-supervision?

"We employ the masked patch prediction objective for preliminary self-supervision experiments. To
do so we corrupt 50% of patch embeddings by either replacing their embeddings with a learnable
[mask] embedding (80%), a random other patch embedding (10%) or just keeping them as is
(10%)."

"We employ the masked patch prediction objective for preliminary self-supervision experiments. To
do so we corrupt 50% of patch embeddings by either replacing their embeddings with a learnable
[mask] embedding (80%), a random other patch embedding (10%) or just keeping them as is
(10%)."

@zankner I missed that section! Wow, so it can work, with 3 bit mean of the colors being enough

@zankner I missed that section! Wow, so it can work, with 3 bit mean of the colors being enough

Yeah I think so. I made an implementation of it already on my own mock of the vision transformer. Would there be any interest in a PR for that?

Yeah I think so. I made an implementation of it already on my own mock of the vision transformer. Would there be any interest in a PR for that?

@zankner I would gratefully accept! 💯

@zankner I would gratefully accept! 💯

I think the latest self supervised learning techniques will probably work better https://github.com/lucidrains/vit-pytorch#self-supervised-training

I think the latest self supervised learning techniques will probably work better https://github.com/lucidrains/vit-pytorch#self-supervised-training

That's probably true, but I think at least having the ability to do masked patch prediction allows for people to do different research or experiment with new things.

That's probably true, but I think at least having the ability to do masked patch prediction allows for people to do different research or experiment with new things.

@zankner I am also interested about the ability to do masked patch prediction using VIT. I do lots of experiments about VIT using BYOL for good transfering performance, but I think VIT can enhance itself using the tricks from BERT and GPT. So what is your plan for the feature?

@zankner I am also interested about the ability to do masked patch prediction using VIT. I do lots of experiments about VIT using BYOL for good transfering performance, but I think VIT can enhance itself using the tricks from BERT and GPT. So what is your plan for the feature?

@guanfuchen If people would want it I can start working on a PR for it. I don't have that much free time so would you be able to help at all in a PR? I have it all set up on my implementation of VIT, so the work would mostly be integrating it into this repo.

@guanfuchen If people would want it I can start working on a PR for it. I don't have that much free time so would you be able to help at all in a PR? I have it all set up on my implementation of VIT, so the work would mostly be integrating it into this repo.

@zankner yes, you can give the implementation, I will test and merge it.

@zankner yes, you can give the implementation, I will test and merge it.

@lucidrains @guanfuchen  -  Started PR for masked patch prediction. Currently is a PR draft. Still have work to do but wanted to post it in case anyone has suggestions or optimizations to be made.

@guanfuchen @zankner  merged here https://github.com/lucidrains/vit-pytorch#masked-patch-prediction


math/big: (*Float).Text always rounds

What version of Go are you using (go version)?
I'm using go.dev/play (2022-01-01 15:00)
Does this issue reproduce with the latest release?
https://go.dev/play/p/S-nYwa_t_uV
What operating system and processor architecture are you using (go env)?
I'm using go.dev/play (2022-01-01 15:00)
What did you do?
x =<PHONE_NUMBER>99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999 (150 digits)

I want to find the cubic root of x and need the exact number up to 10 decimal points. Thus the appropriate choice for the rounding is ToZero rounding mode, not ToNearestToEven.
The cubic root of x up to 600 decimal places is

99999999999999999999999999999999999999999999999999.999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999966666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666655555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555549382716049382716049382716049382716049382716049382716049382716049382716049382716049382716049382716049382716049382716049382716049382716049382716049383
What did you expect to see?
Edit: Let z be the cubic root of x and of type *big.Float.
I expect z.SetMode(big.ToZero).Text('f', 10) returns "99999999999999999999999999999999999999999999999999.9999999999"
What did you see instead?
(*Float).Text has no flexible rounding options. It just rounds with NearestEven.
z.SetMode(big.ToZero).Text('f', 10) returns "100000000000000000000000000000000000000000000000000.0000000000"
And z.Text('f', 550) returns the correct value because the digit after 550 decimal point do not affect.
It's the problem. (*Float).Text shall handle RoundingMode.

I think this is working as intended, and is essentially

a request for a specification change and
would modify the behavior of existing programs if implemented in this form.

@griesemer might also have opinions on this.

*big.Float supports many operations with various rounding options and .Text is an operation of it though it is somewhat different. It is not natural the .Text operation does not consider rounding options.
This issue could be regarded as a request for a specification change if the existing behaviour is intended. If intended, the documentation should mention how rouding issues is treated, but don't. It's a bug that is cheap to fix.

If this behaviour isn't intended, we might add .TextRounding() method. The issue is beyond a bug.

Rounding of textual output is not "cheap to fix" (it's subtle at the very least) as rounding happens in the output base (base 10) for which only one rounding mode (to nearest even) is implemented - and it is completely unrelated to RoundingMode.
Being able to provide a rounding mode would require a new method (as suggested). That requires a proposal. But read on.
The purpose of the Text function is to provide a decimal approximation (or exact hexadecimal representation) of a binary floating point value. That decimal value is supposed to be the the closest value (given precision limits in the number of digits) to the binary value. Rounding is needed when the digits past the precision are not all zero. Only if those digits are a 5 followed by all zeros (the 0.5 case), i.e. when we're exactly in the middle between two decimal numbers that would fit the desired precision and which both are equally far away from the actual binary floating-point number, makes the choice of rounding mode a difference - this is exceedingly rare. In all other cases we either round up or down no matter any rounding mode. Anything else would lead to a result that is not the closest possible to the binary floating point value. In the .5 case one might round up or down, and currently we round to nearest even, which seems the most sensible approach.
Being able to provide a rounding mode makes sense when one does (repeated) floating-point operations, but you're not making floating-point operations with the decimal number.
In summary, I don't see a bug here; but perhaps a misunderstanding of how floating-point operations are working.


A2DP and Hands-Free

Hi there,
I have a theoretical question...is it possible with your library to connect to a phone and make phone calls and stream music?
Do we simply need to connect to the service and the rest is supported by Windows or do we have to do the low-level work and open an audio channel?
Appreciate any advice here, since we would like to implement this but right now we have no idea about the complexity behind this
Cheers, André

For Windows 10 and above there are WinRT APIs for both hands free calling and audio. I've used these in my Thy Phone app but there isn't currently a wrapper API in 32feet.NET.

Hi Peter,
thank you very much for the info!!
Are you referring to these APIs  ?

Yes, that allows you to use a handsfree paired phone.


dattcore: Peers: ConnectionBrowserWebRTC can connect browser <-> browser with PeerJS

It should be possible to establish connections using PeerJS using a browser to itself with the (yet to exist) ConnectionBrowserWebRTC class.

Closed by https://github.com/dattnetwork/datt/commit/ff91ba87125d149e1c40ad2861f15ed9679302bb & https://github.com/dattnetwork/datt/commit/251ce5bff10b32b394b244de89d0fdb89ec71ac7 & https://github.com/dattnetwork/datt/commit/490261b6c598b36dd9db893d292df868dadaeff4 . Note that the interface you should use to make a connection is NetworkBrowserWebRTC, not ConnectionBrowserWebRTC. Actually, you should really use CorePeers dattcore once that exists.


Print more info in case of failing memory calculation

Just migrated from Dockerfileto Buildpacks via Spring Boot Maven Plugin, which was a rather smooth experience.
The only thing that surprised me was the container failing to start with memory limit applied (allocated memory is greater...).
While I was able to figure out that more memory was needed, I didn't know how to find out how much memory is actually needed.
After discussing with on twitter @nebhale I learned that ~630MB would be a good value to start and that Cloudfoundry has a default container size of 1G.
It would be helpful if the error message could point the user towards the right direction.

The new message:
required memory 394176K is greater than 256M available for allocation: -XX:MaxDirectMemorySize=10M, -XX:MaxMetaspaceSize=86976K, -XX:ReservedCodeCacheSize=240M, -Xss1M x 50 threads

Resolved by many different commits as the JVM buildpacks got the new version of the memory calculator but for the purposes of your usage, resolved by https://github.com/paketo-buildpacks/bellsoft-liberica/commit/775bd875484d24a76f8a982774f88812f8b3aa6b


Badge Frame Design of OctopOS Prime Teams

Designing and deciding on the colors of the different colored frames for each level of our 10-level badges to represent the OctopOs Prime 8 team.
The size of the frames should be 1080x1080 and the codes of the colors you choose should be added.

FRAMES FOR BADGES THAT I DESIGNED


#KYLIN-3684, HIVE_LIB is not set or not resolved correctly

Enhancement script for find-hive-dependency.sh

Can one of the admins verify this patch?

Pull Request Test Coverage Report for Build 3848

0 of 0   changed or added relevant lines in 0 files are covered.
2 unchanged lines in 1 file lost coverage.
Overall coverage decreased (-0.001%) to 23.622%

Files with Coverage Reduction
New Missed Lines
%

core-cube/src/main/java/org/apache/kylin/cube/cuboid/TreeCuboidScheduler.java
2
68.46%

Totals

Change from base Build 3845:
-0.001%

Covered Lines:
16818

Relevant Lines:
71195

💛  - Coveralls


Add lint configuration to prevent import "C"

wazero is by nature a tool that should never include import "C". When code accidentally includes this, it causes mysterious build failures. There's probably a linter that can fail the build on import "C" either by import name or preventing CGO another way.
Ex https://github.com/tetratelabs/wazero/actions/runs/1832310806
Run go list ./... | xargs -Ipkg go test pkg -c
  go list ./... | xargs -Ipkg go test pkg -c
  shell: /usr/bin/bash -e {0}
  env:
    GO_VERSION: 1.17
    GOROOT: /opt/hostedtoolcache/go/1.17.6/x64
    GOARCH: arm64
go: downloading github.com/twitchyliquid64/golang-asm v0.15.1
# github.com/tetratelabs/wazero/wasm/text
Error: wasm/text/abbreviation_parser.go:48:60: undefined: callbackPosition
Error: wasm/text/abbreviation_parser.go:78:6: undefined: parserPosition
Error: wasm/text/abbreviation_parser.go:106:9: undefined: callbackPositionUnhandledToken
Error: wasm/text/abbreviation_parser.go:107:10: undefined: positionInitial
Error: wasm/text/abbreviation_parser.go:287:38: undefined: callbackPosition

this was due to a spurious import "C" on my branch.

changed the title/desc. thanks for the look @mathetake!

Just curious how one would end up importing "C" accidentally :D

dude no idea, gremlins maybe

good point though. even if someone had a spurious "C" and managed to bomb CI, we'd quickly catch it in a code review. probably not worth finding lint over!


Add uppercase transformation

The documentation mentions an uppercase transformation (https://coraza.io/docs/seclang/transformations/#uppercase), but it's not actually implemented in coraza.
This PR adds it.

Thanks for your contribution!
LGTM. Unless @anuraaga has other opinions, it's good to merge.

LGTM, but to keep testing consistency, can you also add the tests to internal/transformations/testadata?
https://github.com/corazawaf/coraza/blob/main/internal/transformations/testdata/lowercase.json
Thank you very much for your contribution.


How can I disable fullscreen?

Any Idea how I can remove the fullscreen button?
Thank you

extends jzvdstd
override gatlayoutid{
//in the layout  invisiable the fullscreen button
}
---Original---
From<EMAIL_ADDRESS>Date: Fri, Mar 27, 2020 07:23 AM
To<EMAIL_ADDRESS>Cc<EMAIL_ADDRESS>Subject: [Jzvd/JiaoZiVideoPlayer] How can I disable fullscreen? (#85)
Any Idea how I can remove the fullscreen button?
Thank you
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.


Ctrl + S doesn't trigger 'download the code' in web IDE as per the docs

Describe the bug
The docs suggest that Ctrl + S will trigger 'download the code':

https://webcrack.netlify.app/docs/guide/web.html

Yet when I try that, it doesn't seem to do anything. I'm on macOS, so the default/equivalent would usually be Cmd + S; but that just triggers the browser's default 'save this page' feature.
Expected Behaviour
Pressing Ctrl + S would trigger downloading the code as per the docs; or alternatively, the docs are updated to represent how to do this properly.
Code
N/A

Logs
N/A

When searching keybinding, I don't see any references that seem to align with this Ctrl+S:

https://github.com/search?q=repo%3Aj4k0xb%2Fwebcrack+keybinding&type=code

Hmm got lost during the monorepo/ide PR, here it was:
https://github.com/j4k0xb/webcrack-ui/blob/e8dc1b43b138c759cc206db240e387bf4628665e/src/editor.ts#L116-L120

now it's back

@j4k0xb Awesome, thankyou! :)


bundle.js

When visiting localhost:5000 after running all the commands stated in the readme, bundle.js still is missing.
$ browserify static/main.js -o static/bundle.js

This issue is pretty ancient, and may not still be applicable (and lacks the detail necessary to debug). I'm going to close this, but @juliangruber please do re-open if you can still repro.


Do not update node-icp version

What problem does this feature solve?
New version of node-icp contains Malware for Russian programmers (checking by ip):
Proofs: https://github.com/RIAEvangelist/peacenotwar/issues
What does the proposed API look like?

Duplicate of #7051


How to implement seq2seq RNN?

http://papers.nips.cc/paper/5346-sequence-to-sequence-learning-with-neural-networks.pdf
It first maps a sequence into a vector, and then uses this vector to generate another sequence.

This is supported out of the box; see the return_sequences parameter in any recurrent layer: http://keras.io/layers/recurrent/

My understanding is that with the current LSTM layer is not possible to implement the seq2seq algorithm (the one reported in the cited paper). Some of the missing features are:
1- Ability to copy the hidden state of the last unit of the first LSTM to the second LSTM.
2- For the second LSTM, the ability of copying the output of each step to the input of the next step.
Therefore, you would have to implement your own seq2seq layer.

@melonista - Regarding your 2nd point - can we use solve this using Graph instead of Sequential? This way we'll have two inputs and one output. The first input will be used for the encoder. The second input and output will be used for the decoder?

@hujiewang  Check this out: https://github.com/farizrahman4u/seq2seq

@farizrahman4u  is there any reason on why the encoder-decoder architecture in your Sequence to Sequence Learning with Keras not compatible with Tensorflow?


1.20 support?

1.20 doesn't work cause of the API using NMS, would be nice if it got 1.20 support too.

WIP (NO ETA)
LightEngine has many changes in 1.20.

Eagerly awaiting for the update :)


Rework branch promotion functions

This pull request reworks our branch promotion functions to take into consideration the branch-level endpoint rather than the database-level one. It also implements a function for getting a branch promotion request for a database branch so we can see the status of it.

Gonna revisit the enum for promotion state in a separate PR!


[varLib.mutator] Support partial VF instances

The current fontTools.varlib.mutator module can fully instantiate a variable font into a static font at a given location along all the axes.
The Google Fonts team is interested in adding support for generating "partial" instances: i.e one wants to keep wght axis but pin the wdth axis to a specific location, either the default or a custom one,  dropping all the variation data relating to the pinned axes.
Or alternatively one may want to restrict the range (min and/or max) of an axis, producing a new VF with possibly smaller file size.
We have created a new branch partial-instancer in here where we pushed a new module called fontTools.varLib.partialInstancer (the name may change, I'm thinking just "instancer" sounds better). It's is based on the mutator module and has a similar interface. When it's complete, potentially it could subsume the functionality of mutator, since the partial instancing can be seen as a more general problem.
The module is still in early stages and can currently only pin-and-drop gvar variation data. Limiting axis ranges is not supported either. We shall probably focus on implementing the axis dropping and pinning first for the rest of the variation tables, as that appear to be a relatively easier problem than limiting ranges, and one that guarantees some size reduction.
Feel free to chime in with suggestions or comments. I'll keep you updated with the progress.

I suggest we break this operation down to separate operations that can be chained together.  That way the code would be much easier to reason about.  I suggest implementing the following:

Dropping an entire axis.  This is simplest: any deltaset that has a non-zero peak for the said axis is just dropped completely.

Instantiating an axis to a particular value.  The previous operation is a special-case of this one.  In this operation, any deltaset that interacts with the axis will get its deltas multiplied by the scalar support of the axis at the desired instantiation point for the deltaset's tent.  If the scalar is 0, drop the deltaset.  If it's 1, leave as is, otherwise multiply the values by it.

Limit min/max of an axis.  For each deltaset that participates in the axis, if the deltaset's tent is fully outside new min/max of axis, drop it.  If the tent is fully inside the new range, keep it (just scale the tent min/peak/max to the new normalized axis).  If the tent overlaps but also extends beyond new min/max, it becomes interesting.  I'll address that separately in the following comment.

Move the base location.  This is harder in the general case and to be done later, separately, if ever.

Imagine we want to change maximum of 'axis' from 1.0 (normalized, always 1.0) to X.  Now imagine we have a deltaset with min/peak/max of A<B<C such that A<=X<C.  Then do the following:
Divide A,B,C by X to get new normalized values.  We now expect that A<=1.0<C.  Now, two cases:

if the peak falls outside:  Ie. 1.0<B.  Then scale deltaset by (1-A)/(B-A) and then set B and C to 1.0.

if the peak falls inside: If C <= 2.0, keep everything.  The format allows for encoding coordinate values in the [-2,+2) range.  +2 is not supported but we can store +1.9999999 instead of it.  So, just keep the tent as is, extending beyond the axis maximum.

if the peak falls inside and C > 2, we need to chop the tent overlap shape into two deltas, because the shape of a triangle with part of one side cut off cannot be represented as a triangle itself.  It can be represented as sum of two triangles.  This increases font file but is doable.

Thanks Behdad.
About 2. "Instantiating an axis at a particular value", besides multiplying the deltas by the scalar support of the pinned axis at the desired instantiation point (and remove the pinned axis ie. set its peak to 0 for a that region); when a region's axes only contain the axis we want to pin, then we also need to apply (add) these scaled deltas to the default tables so that their contribution is reflected in the default instance after the pinned axis is removed from the font. Because I think you can't have a region where all axes at 0 peak (i.e. where deltas are "always on"). I actually tried that, and got weird results across implementations.
Does that make sense to you?

You are right.
Re 0 peak, they disable the axis indeed.  At design time we thought we made sure that at axis default locations, the contribution of all deltas is zero and as a result / design goal, the base instance is the same as the base font without variation tables.  HarfBuzz for example, short-circuits and avoid delta calculations if all axes are default.  However, as we discovered later (and you also did), if a deltaset has no participating axis, it should always be enabled.  That's something we did not consider, and is not widely tested currently.

So yeah.  If after removing some axes, no axis is left in the delta, it should be folded into the neutral.

After removing some axis in the partial instancing, there may be many regions whose "tents" are now exactly overlapping. For example, say we have two regions {"wght": (0, 1, 1)} and {"wght": (0, 1, 1), "wdth": (0, 1, 1)}, and we remove the 'wdth' axis; we are then left with two regions with exactly the same axis support (in this case {"wght": (0, 1, 1)}).
Naturally one would like to sum the deltas from such overlapping regions and only keep a single merged region.
However, in gvar's TupleVariation there can be inferred points (i.e. IUP deltas) therefore I cannot simply add potentially None deltas with the ones from another overlapping tuple; I first have to interpolate the inferred points (run the iup_delta function), sum the deltas from the overlapping tuples, finally re-run iup_delta_optimize on the merged tuple.
I wonder if there's a better solution?
I run some tests with and without merging these overlapping tuples after partial-instancing.
For example, these are the gvar table sizes of NotoSans-VF.ttf (that has both weight/width axes), partially instantiated at wght=300, when the resulting overlapping tuples are:

not merged: 284726 bytes
merged, not re-optimized: 172384 bytes
merged, re-optimized: 171222 bytes

The IUP delta optimization seems to make less of a difference than the merging of the overlapping tuples.

Since you already have code for it, do the whole thing?  Maybe only re-optimize if the originals had any None in them?  Ie. don't IUP-optimize if the original was (on purpose) not IUP-optimized.

Sgtm

i'm leaning towards have an option to re-optimize.
Simply checking in any None is in the deltas for a specific tuple in a specific glyph doesn't communicate well 'purpose' to me. Couldn't it be that for that specific tuple (before merging with overlapping tuples) it was more efficient to not do the IUP_delta but then after merging IUP_delta would be more efficient?

In theory yes. But as you need the IUP optimization is tiny anyway. I'm thinking about fonts made with IUP disabled. Didn't you add an option to fontmake for that?

I have a feelong that it somehow is related to https://github.com/fonttools/fonttools/issues/1570

The first batch of partial-instancer is merged into master (#1628), supports levels 1 and 2 only. Level 3 is planned later for Q3.
(for the 'level' definitons see https://github.com/fonttools/fonttools/issues/1537#issuecomment-474983825)

We can close this now that #1753 got merged. Perhaps we can open a separate issue for the level-4 (i.e. moving the default location) instancing.

Thanks for this. Here’s how I have made an instance of Bitter variable (available at https://fonts.google.com/specimen/Bitter )
fonttools varLib.instancer Bitter-VariableFont_wght.ttf wght=450

I then moved the created Bitter-VariableFont_wght-instance.ttf to Bitter-450.ttf

Chiming in here to ask if there’s already something in the pipe for Level 4 "Moving the default location"?
Not sure if it should try to find the location within the subset, closest to the original input default location. Or if it maybe rather just a need user parameter to determine where the new default should go. Or a combination of both.

it should try to find the location within the subset, closest to the original input default location.

By default it should do that, yes.

We haven't implemented Level 4 "Moving the default location" yet.
I don't understand what you mean by "it should try to find the location within the subset, closest to the original input default location".
Right now the instancer input is a dictionary keyed by axis tags and containing either single values or a (min, max) tuple for an axis range. I imagine in the future it could take a 3-tuple that also specifies a new default, i.e. (min, default, max).

To specify, I meant, if you subset a variable font that has 2 axes originally, but the subset will only have one of the axes, what will happen with the origin location if that one originally sits on the dropped axis? You know that the origin needs to be moved (you talked about it before) so this was just one thought about how/where to move it to.

With #2728 and recently #2886 , can this issue be closed?

yes.. isn't it already closed?


Don't execute the query twice

I found this while debugging why my sqlite-proxy isn't working. Am I missing something or are we executing the query twice here? We are executing the query in line 112 and 118 if no fields are selected:
https://github.com/drizzle-team/drizzle-orm/blob/2d865ee76f405de1e679f8126cc2fb071b32f2b1/drizzle-orm/src/sqlite-proxy/session.ts#L106-L119

Agree here, will merge it
Thanks a lot!


Update AccountLink.swift

Updated according to the last information from doc - https://stripe.com/docs/api/account_links/create

@Maxim-Inv  Will add this to the next major release since this is breaking, I just released a major version 8.0.0 and stripe still accepts the previous parameters.

@Andrewangeta Sorry, I have been little busy. But now I have fixed it.


how-to accessory a ADS1115?

Nick hi,
Is there an easy way to make an accessory and use my ADS1115 with homebridge server?

This is definitely doable, but would need a fair bit of effort.  Is their an existing plugin that is close to what you are attempting to monitor with ADS1115?   I’m using one to monitor open/close on my garage door.
My pattern is a bit complex though, as I’m using the ESP8266 to monitor the door and other things, and I have homebridge calling a web service to read the ADS1115 connected to the ESP.

On Jan 28, 2017, at 11:17 AM, diogenisd<EMAIL_ADDRESS>wrote:
Nick hi,
Is there an easy way to make an accessory and use my ADS1115 with homebridge server?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub https://github.com/nfarina/homebridge/issues/1091, or mute the thread https://github.com/notifications/unsubscribe-auth/AS5CmB10aLPYUC6qq_gtdSMst3FYA-UUks5rW2oDgaJpZM4LwixY.

well there is a guy that used have used it to read his soil sensor here: https://github.com/lucavb/homebridge-soil-moisture-sensor-digital


Add id on button + title

Add Id  and title on entities campagne / resultat / testeur
update english langage for campagne.

Codecov Report

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

@@           Coverage Diff           @@
##           master      #38   +/-   ##
=======================================
  Coverage   80.71%   80.71%
=======================================
  Files          71       71
  Lines        1799     1799
  Branches       92       92
=======================================
  Hits         1452     1452
  Misses        314      314
  Partials       33       33

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 8dcf6ab...8201dc2. Read the comment docs.


Using RxBinding with Nucleus

This is more of a general question than an issue.
I wanted to use RxView.clicks() from the RxBinding library inside an RxPresenter. Because the RxPresenter has the handy add(subscription) method, it seemed fitting to write something in onTakeView() like
add(RxView.clicks(getView().getActionReload()).subscribe(new ReloadSubscriber()));

But then i noticed the subscription will only get auto-destroyed if onDestroy() in RxPresenter is called. But this is not the case when you rotate the device, because the presenter is cached and so any subscriptions are not cancelled. This would leak the Activity through the listener which is added with RxView.click().
I would like to hear your input on how to use Nucleus with Observables that are tied to their Activities.

Hi,
you should not access View internals from Presenter (setup direct callback to View internal parts directly, read edittext values, etc). Always presume that you're dealing with a View interface which returns and accepts only raw data (POJOs, AutoParcel objects, basic values, etc).
Do all bindings inside of View. This is the idea behind MVP - View and Presenter should be separated. You can't obviously separate two things if they depend on each other's dependencies.

Forgot to close this, thank you for the answer!


Still show progress window even if the compilation fails

What
The progress window still shows even if the compilation fails.
How to reproduce
prerequisite

Wrong cfg file

[one-build] # Correct: [onecc]
...

Test

Open ONE container
right click in wrong cfg on One Explorer view
Run

Expect
When the compilation fails, the progress window closes.
Actual result
When the compilation fails, the progress window continues to show.

I will check this later.

Solved.


Give Redesign: Donations / Redeem

@0xJem Let me know when you get the chance to review this

Looks good.
@0xLienid I spotted one issue: when editing a donation, the balance does not change when toggling to/from gOHM. (It does in the initial donation modal)
https://user-images.githubusercontent.com/91760036/176665836-b5882d58-2f50-4bb1-8219-1d74a21ad8e6.mp4


Fix remote URL in README.md

I think this PR is worth to merge. Otherwise, I encountered the following error:
opam remote add multicore https://github.com/ocamllabs/multicore-opam
[ERROR] curl: code 404 while downloading https://github.com/ocamllabs/multicore-opam/urls.txt
[ERROR] Could not fetch repo


Windows

[Enter feedback here]

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

ID: 47692487-0a0b-3b1b-6d34-790046c7cbc3
Version Independent ID: 0f66cafe-2bff-4323-b3fc-01014b904b3a
Content: Windows Update log files - Windows Deployment
Content Source: windows/deployment/update/windows-update-logs.md
Product: windows-client
Technology: itpro-updates
GitHub Login: @mestew
Microsoft Alias: mstewart

Closing as there is no actionable docs feedback


Missed function in package

I got the error information as 'cannot import name 'resolve_local_source' from 'bioimageio.core.resource_io.utils' (/usr/local/lib/python3.10/dist-packages/bioimageio/core/resource_io/utils.py)'. I wonder which version of bioimageio.core contains this function.

The last bioimage.core version with this function is 0.4.7: https://github.com/bioimage-io/core-bioimage-io-python/blob/4fdbf4c3790712032046e4f533ada4a0cd614802/bioimageio/core/resource_io/utils.py#L225


[9.x] Enhance Container flush method

I did not find a precise definition for the flush method of the container.
But it seems that when we remove all the binding, we should also remove the contextual binding and the tags for its bindings as well because they are very close to each other.
These three properties are flushed nowhere. neither in the Container flush nor in the Application flush method.

Let me mention that this is important for swoole or road-runner style, since we may want to simulate a restart from scratch.

Either this is a bug fix or it's a breaking new feature. If this a bug fix, it needs to go to 6.x. If it's a breaking new feature, it needs to go to 10.x.

@GrahamCampbell 6.x doesn't receives big fixes anymore

I think this is an old edge case bug,
which is so rare that it had remained unreported up until now.

I think unless we are fixing a very specific bug or problem I'm not going to change this for now.


(Bug) background notifications

Description
update plist, fix android background
About #3847
Checklist:

[x] PR title matches follow: (Feature|Bug|Chore) Task Name
[x] My code follows the style guidelines of this project
[x] I have followed all the instructions described in the initial task (check Definitions of Done)
[x] I have performed a self-review of my own code
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[x] I have added reference to a related issue in the repository
[x] I have added a detailed description of the changes proposed in the pull request. I am as descriptive as possible, assisting reviewers as much as possible.
[ ] I have added screenshots related to my pull request (for frontend tasks)
[ ] I have pasted a gif showing the feature.
[ ] @mentions of the person or team responsible for reviewing proposed changes

@roma-hladilka
i removed isLoggedIn check because initBGFetch is called from Dashboard shown for authenticated users only


Create figures to assess baltrad pvol coverage

All time figure
To have a better idea of the pvol data coverage in BALTRAD and compare radars over years, create heatmap figure with:

rows: radars (164)
columns: weeks (8 years * 52 = 416 and growing)
values: colour gradient for % of expected data files (depends on sampling interval)

Year figures
For more in depth inspection (but still ability to compare radars), create heatmap figure with:

rows: radars (164)
columns: days (366)
values: colour gradient for % of expected data files (depends on sampling interval)

For both figures, we'll have to see if we should switch rows and columns. Figures could be created as RShiny and/or static.

I'm not sure yet. I think it makes sense to include them in the DMP: chapter 2 already discusses Eureopean pvol data, it would make them available online, and then we don't have to setup something separately, but the dmp has limited interactivity, so it would be a lot of figures to show.
As the figures can be static, maybe we just need a script to generate them all and just place the figures in the repo and link to those?

@CeciliaNilsson709 we could include each year figure as subsections somewhere in the DMP: the user would then be able to navigate through them with the arrow keys. 🤷♂See https://inbo.github.io/steenuil_gooik/8-1-akker-of-tuinbouw.html for a working example.

Sure, that could work. Making them into static figures will be easy. Is the file listing updated or is it just a static list from Günther?

I'd say "fairly static": I only received the file listing once, but it's possible we'll receive updates in the future, which is why I documented the procedure in #15 and baltrad_coverage.Rmd. I think the best option is to extend that file with the code to generate the figures. Figures can be placed in https://github.com/enram/globam-dmp/tree/master/images. We can name them baltrad_pvol_2019.png, baltrad_pvol_be.png, etc.
Let's focus on that first and figure out how to include them in the DMP later. The arrow keys has its disadvantages too, as it requires each chapter to be broken up into separate html files.

Ok, I can do that to start with 👌

Suggested to combine BALTRAD pvol coverage with ENRAM vp coverage. And rather than showing colour gradient for % of expected data files, show a 3 categories:

white: no pvol (and thus no vp data)
orange: pvol available, but no vp
blue: vp available (and thus also pvol)

I've create a dataframe coverage with this information:
https://github.com/enram/globam-dmp/blob/0352e8796f330aab9c242c4c5bdc5069d0ea48fe/src/data/baltrad_coverage.Rmd#L88-L94

Would it be possible to check the contents of the pvol, and indicate with separate colors the availability of VRAD and DBZH quantities?

I’d like to, but we currently don’t have access to the files themselves, just he file names (52 million), which contain radar and datetime information.
I hope to read the files at a later stage and process them to vp, but that will require much more computing power and space. 😅

Rmd to create figures are now included in separate directory: https://github.com/enram/globam-dmp/tree/master/baltrad


Create Shapes with Network Dataset gets stuck on loop, never creates the shapes.

When using network analyst to create GTFS steps , the tool appears to get stuck on one of the steps and never creates the completed shapes.  This issue has no occurred when trying to create the GTFS shapes with straight lines. My question: Is this a problem with the tool or the network dataset? My hunch is that the network dataset has flaws that are messing up the tool, as around 500 of the 11000 stops were not able to be used in service area analysis ("Warning: Location "Location 10618" in "Facilities" is on a non-traversable network element position."). Any help on this would be appreciated.

Yes, it sounds like the problem is related to the Network Analyst portion of the process.  If your network dataset is poorly connected, then sometimes what happens is for every route, it has to search the entire network only to determine that there is no route, and that takes a lot of time.  Have you been able to successfully use this network dataset for anything else?  Try creating some tests routes and service areas with the network manually, separate from this tool.  If you're uncertain of how to do that, check out the Network Analyst tutorials.

@Potatoroid Did you ever resolve this problem?

Closing this issue due to lack of response.  Please re-open if you're still having the problem and need more help.


OnKeyboardlistener on window

Can I add listener to keyboard. The task is to listen to the keyboard  in the background. Or how set autofocus to TextField in first launch.

How to listen key events for window is described here https://github.com/JetBrains/compose-jb/tree/master/tutorials/Keyboard

Feel free to ask general question on the Slack channel, see bottom of https://www.jetbrains.com/lp/compose/

Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks.


About Fused Latent Harmonization

Hello，thanks for your excited work. I have a question: what the implemented detail about Fused Latent Harmonization?

I'm sorry for replying to you so late. The Fused Latent Harmonization stage refers to the denoising process that diffusion performs on the fused latents in the final ~10 steps, without the need for additional operations.


INFO meta store storage HASN'T /some/path (com.datamountaineer.streamreactor.connect.ftp.ConnectFileMetaDataStore:49)

I am using CP3.2.1 and working with the kafka-connector-ftp to tail files on a remote server. I connect successfully , however  I get a lot of the following on read by the kafka-connector
INFO meta store storage HASN'T /tmp/1 (com.datamountaineer.streamreactor.connect.ftp.ConnectFileMetaDataStore:49)
I can't see the contents of the files in the topic and after a while , I get OOM errors. Where can I configure the meta store storage ? How do I solve this problem. I start my kaka-connector in distributed mode.

We aren't actively supporting this connect yet and it's not upto date with the original at Eneco, https://github.com/Eneco/kafka-connect-ftp please check with them

Thanks

we plan to bring it in and overhaul it soon

ok


[e2e]: maven workflow_dispatch main default slsa3

Repo: https://github.com/slsa-framework/example-package/tree/main
Run: https://github.com/slsa-framework/example-package/actions/runs/6918798557
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.maven.workflow_dispatch.main.default.slsa3.yml
Workflow runs: https://github.com/slsa-framework/example-package/actions/workflows/e2e.maven.workflow_dispatch.main.default.slsa3.yml
Trigger: schedule
Branch: main
Date: Sun Nov 19 06:15:49 UTC 2023

Repo: https://github.com/slsa-framework/example-package/tree/main
Run: https://github.com/slsa-framework/example-package/actions/runs/6926291180
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.maven.workflow_dispatch.main.default.slsa3.yml
Workflow runs: https://github.com/slsa-framework/example-package/actions/workflows/e2e.maven.workflow_dispatch.main.default.slsa3.yml
Trigger: workflow_dispatch
Branch: main
Date: Mon Nov 20 06:22:27 UTC 2023
Tests are passing now. Closing this issue.


Can't create object location

I want to create a location object like you can in java. example
Location location = new Location(world, x, y, z)
been searching for days with no luck please help me walter

// to create a new location x:1, y:2, z:3 at the server's main world...
var location = new org.bukkit.Location(server.worlds[0], 1, 2, 3);

Hope this helps

Thank you very much, I'm in love with your API, hopefully I'll help you maintain in it the future.


Tests: Code Coverage Output

This is cool. Not mocked but connecting to an actual staging github application using a personal access token and verifying the results. At some point would be useful to add coverage output.

Originally posted by @gitcoindev in https://github.com/ubiquity/ubiquibot/issues/640#issuecomment-1691092804

@gitcoindev perhaps you can add more details on what you envisioned? I can add to the spec and get it funded.

@pavlovcik after the tests are run (E2E or unit), code coverage metrics can be calculated and a code coverage report can be generated. From the coverage reports one can see the percentage of code executed and which source code lines were executed during test execution. This then is a base to add new tests to cover scenarios that are not tested yet.


Log and report operating project details when return permission denied error

Summary
By reporting the project ID the user is operating on, they may realize they have selected the wrong project and be able to fix the problem themselves.
Change Type
Mark the type of change your PR introduces:

[x] Bug fix (resolves an issue without affecting existing features)
[ ] Feature (adds new functionality without breaking changes)
[ ] Breaking change (may impact existing functionalities or require documentation updates)
[ ] Documentation (updates or additions to documentation)
[ ] Refactoring or test improvements (no bug fixes or new functionality)

Testing
N/A
Review Checklist:

[x] Reviewed my own code for quality and clarity.
[x] Added comments to complex or tricky code sections.
[x] Updated any affected documentation.
[ ] Included tests that validate the fix or feature.
[x] Checked that related changes are merged.

ugh linter is sad :/

And the tests caught me up, too.  Fixed!

coverage: 38.556% (-0.003%) from 38.559%
when pulling 5a4955624de402979fc8057e5671eed8d2720d47 on evankanderson:add-forbidden-project-details
into a3f611bb8f263712e11cd360589a3a8cdcf2b6c2 on stacklok:main.


Add GE history tracker

Closes #4377

What is the point of savedOffer exactly? And why are you storing price and everything with it when you are only looking at state?

Its not possible to tell upon a fresh login if an offer in state BOUGHT was bought when you were offline or was already bought before, has been logged before, and is just still in the GE
I thought maybe the website might want to display ge offers

Hmm, makes sense. Not sure how useful displaying current offers on website would be (as they would be very often just outdated if not completed already) but why not.


Question/doc: is there any tool I could pipe to adjust references in files?

Sorry about opening an issue for this question but in the README you mention that hashmark is meant to be piped:

The hashmark command will output some JSON to stdout with a map of filenames and their new hashes, meaning you can pipe the hash to other programs.

The most obvious program I would like to pipe to is one that would replace references to renamed files in some other files. I searched but couldn't find one.
Does it exists? If not, I think I'll implement it.

You could pipe it into a tool like json to extract the new filenames, which could then be turned into bash variables, or piped into another program - perhaps xargs.
However, the point of having pipe-able output is precisely for wonderful people like you to think up cool ways to take the output data and do some awesome things with it! So please, make some awesome things and by all means let me know what you've come up with and I'll proudly add it to the readme of this project.

I started working on it already, first version should be ready by tomorrow. I'm trying to do it using node but I'm pretty sure I'll end up using sed or equivalent.

If you need any help using node streams, let me know. You should be able to get the whole JSON map with a small amount of code, something like:
var json = '';
process.stdin.setEncoding('utf8');
process.stdin.on('readable', function() {
  var chunk = process.stdin.read();
  if (chunk !== null) {
    json += chunk;
  }
});
process.stdin.on('end', function() {
  json = JSON.parse(json);
  // here you put the code to that you want, given json[originalFilename] === newFilename
});

So, I just published the tool, replaceinfiles but it badly needs #12 to be merged to be fully usable (see reason in PR details).

Here is an integration example you probably want to link to.

I'm very happy to be able to close this. Thanks so much for all of your efforts @ArnaudRinquin!


Remove frequently-firing log line

During medium/long sessions this made it hard to read other console logs.

I just patched a new version without the log.


prepare_query/3 for Repo.insert_all()

Hello,
I just noticed that prepare_query/3 it is not invoked when I call a Repo.insert_all() or Repo.Insert.
I receive the callback for def default_options( operation) do but not for def prepare_query( operation, query, opts) do
It is ok when I face a SELECT query.
In addition I have updated ecto to version 3.6.0
Elixir version 1.11.2

Correct. Prepare_query is only invoked when we have a Ecto.Query struct and insert/insert_all do not.

@josevalim  is there a callback to identify if a query is an insert, update or select, before the execution?

default_options is the only way you can customize those without overriding them.

@josevalim ok but if I cannot intercept it on the prepare_query callback how can I read/interpreter what I have just set?

You can't do much in this case, besides setting existing options. You can always create higher-level abstractions around the Repo that does the normalization that you want/need.

@josevalim ok it makes sense :) thanks a lot for the quick replies! much appreciated


Subtract mean image or pixel in both training and inference

Thanks to Yuguang Lee for pointing this out to me on digits-users.
Problem
Currently, DIGITS subtracts the mean image during training (see here) and the mean pixel during inference (see here). That's both illogical and incorrect [but still works pretty well, which is why I hadn't noticed it].
Explanation
I moved to subtracting the mean pixel during inference because it simplifies the inference path. I'll give an example to explain:
Let's say you have 256x256 images in your dataset and your crop size is 227. During training, Caffe first subtracts the 256x256 mean image from the input image, and then takes a random 227x227 crop of the image before passing it to your network. But at inference time, the network only knows that images are supposed to be 227x227. So DIGITS resizes your test image to 227x227 and then subtracts the mean pixel across the whole image before passing it to the network.
Solution
DIGITS should allow you to do either mean pixel subtraction or mean image subtraction, but it shouldn't do this strange hybrid.
Mean pixel

For training - provide transform_param.mean_value (see here).
For inference -  resize test image to crop size and then subtract the mean pixel. DIGITS already does this.

Mean image

For training - provide transform_param.mean_file (see here). DIGITS already does this.
For inference - resize test image to the mean file size, subtract mean, resize again to the crop size.

Temporary fix for master in 3ea12e6 and for digits-2.0 in 7143260.
Still want to enable selection of either option in the UI.

Hi @lukeyeager
Dunno If this is the correct way of bringing this up but I stumbled upon this, when trying to figure out why my pycaffe implementation is giving different output than DIGITS at test time, and I had some thoughts I wanted to share:
Since the test image is being resized without cropping, I guess the assumption is that the test image has already been cropped to the proper scale. Wouldn't it then be more correct to crop the mean image before subtraction rather than resizing it and thus changing the scale of whatever "mean object" it depicts?
Probably won't have a very big impact either way but feels like this way should be closer to what happens during training.

Good question @andredubbel. I dug into it some more and learned a little more:
Training with caffe -train:

The crop window is calculated for each image (chosen randomly for TRAIN phase)
The same crop window is used to pull data from both the image and the mean file
So, during TRAIN the cropped mean image changes randomly with the crop window

That's interesting, but not particularly relevant for this discussion about what do do when deploying the model.

Using caffe.io.Transformer:

The mean that you provide must already be cropped

Again, not an issue for this discussion, but what do you do if you want to train with pycaffe? It seems you wouldn't be able to replicate the command-line results exactly without random crop windows for the mean image.

In order to match the VAL phase of training exactly when we test an image in DIGITS, we would need to do the following:

Crop the mean according to crop_size
Initialize the Transformer object with the cropped mean
Resize test images to the original dataset size (i.e. 256x256)
Crop test image to crop size (i.e. 227x227)

Can't let the Transformer do the 256->227 conversion because it resizes instead of crops

Use the Transformer to preprocess the image

Subtract the mean, etc.

Here's what we're currently doing instead:

Resize mean to crop_size
Initialize the Transformer with the resized mean
Resize test image to the original dataset size
Use the Transformer to preprocess the image

Resize to crop_size
Subtract the resized mean

Things we would need to change:

Crop the mean image instead of resizing to crop_size
Crop images before passing them to Transformer (then the resize within Transformer will be a noop)

Those seem like pretty reasonable changes to me.

Wow, thanks for a very thorough response @lukeyeager

Things we would need to change:

Crop the mean image instead of resizing to crop_size
Crop images before passing them to Transformer (then the resize within Transformer will be a noop)

I definitely agree with point 2, point 1 I think is a question of preference if not correctness.
I tend to think of the training data's crop size as it's "actual" size, and the input size that size plus padding. The question then is if you expect test images to have the same padding or not.
When deploying the model you most likely won't be doing any padding and if you wanted DIGITS to match a deployed system you might be better off just sticking to the squashing. That is, unless you want to have the option of oversampling in which case some padding might be needed :)
In the end I think I would be happy with either soluion as long as it's clear what's expected of the test images.

For inference - resize test image to the mean file size, subtract mean, resize again to the crop size.

@lukeyeager: I see that there is still no cropping in DIGITS and everything is done by just resizing. Wouldn't it be better if you do this:
For inference - resize test image to the mean file size, subtract mean, crop the image to match the network dimensions.

Looks like I have run into the mean pixel vs mean image problem comparing results from DIGITS 5.0 interface to method used in example.py. It appears to have a significant impact and based on searching the forum can only find a discussion with no solution.
I have already trained model with mean image subtraction which was the default and it took 3 days to train the model. In testing the model using the Digits web interface classify many very happy with the results in that for the primary target that I want to identify minimal false positives in other test images and near perfect on the primary image. Working on an April 1st deadline for a cancer tumor classification challenge so don't have time to do anything significantly different at this point.
The images that I am submitting to example.py are already 256x256 so they don't need to be resized. The images I submitted to Caffe for training were also 256x256 so shouldn't have been resized related to the potential of a resizing problem.
I am passing the mean file on the command line from the model via --mean mean.binaryproto which is triggering if mean_file in the get_transformer(deploy_file, mean_file=None)
The comment clearly indicates #set mean pixel as the method. In looking through the code where I have no familiarity with the API I don't see an obvious path to doing a mean of the image where the assumption it should be a trivial change.
Is it possible that someone who is familiar with the API could look at the code and provide the changes that are required to do mean image subtraction instead of mean pixel subtraction?
The results I am getting with test images using the model that appears to be very good using the DIGITS web interface is not performing well via the example.py approach. I am already setup with a pipeline that has been tested using example.py for many many many images so hoping for a one or two line code update to improve results.

@willishf were you able to fix the problem ? I have a model that was trained in digits gets 96 % validation in digits. Once i load it into  pycaffe, it gets 10 % on the same validation data

Wasn't that bad. I suspect you need to select a different epoch model.
On Wed, Aug 30, 2017, 8:11 AM karimhasebou<EMAIL_ADDRESS>wrote:

@willishf https://github.com/willishf were you able to fix the problem
? I have a model that was trained in digits gets 96 % validation in digits.
Once i load it into pycaffe, it gets 10 % on the same validation data
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/NVIDIA/DIGITS/issues/169#issuecomment-325971393, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AD3dnuskwtxPjmHfyNMaSTajpdlwYgZXks5sdVF9gaJpZM4FZg6W
.


Cannot setopt with empty string

While trying to use nngpp with a pub/sub protocol, I spent hours trying to diagnose why I never received anything, while the exact same sequence using nng calls worked.  The problem was this:
socket.set_opt( NNG_OPT_SUB_SUBSCRIBE, "" );
The problem is that the type translation results in this becoming:
nng_setopt( socket, NNG_OPT_SUB_SUBSCRIBE, "", 1 );
as a one-byte buffer (containing \0).  To succeed, the fourth parameter needs to be 0.  This can be force by using
socket.set_opt( NNG_OPT_SUB_SUBSCRIBE, nng:view("",0) );
but that seems to be a hack.
I cannot think of any situations where the zero-terminator should be included in a set_opt string.

This behaviour is consistent with nng, which by default will include the null terminator when setting string options (see here).
A couple of things that should work:

Use the generic setter with a default-constructed view: sock.set_opt( NNG_OPT_SUB_SUBSCRIBE, {} )
Use the string setter with a nullptr: sock.set_opt_string( NNG_OPT_SUB_SUBSCRIBE, nullptr )

Got it, thanks.

OMG, I was absolutely at a deadlock for a couple of days.
Thank you @cwzx, it's great!

Super helpful! Saved my day! 🤯🤯🤯
This issue should be pinned.
Do you think this should also be added in the docs?


Shade of northern-most row is not defined by the generated function

This issue is especially important for 3D maps: The shade of the first (northern-most) row is determined by the row directly north of it.
That row is not defined by the generated function. For a flat map, it simply must be the same height at the map itself and can be quickly added manually after creating the map art in a world.
For a 3D map, the desired shades determine which blocks in that row must be lower, higher, or same as the first map row. There's no way to manually construct that row based on information that is currently easily available.

This is a valid point - I assumed that in most cases the row would be higher than the one directly north of it, and displayed the preview accordingly in the fix for #15 - it avoids having to place an extra row of arbitrary blocks outside the map bounds.
Automating placing the extra row would be possible - if this seems like it impacts a number of maps; but if the differently shaded row isn't badly affecting the artwork (it's a small area on the edge), it seems neater to keep the map art structures within the volume that is actually mapped?
Example - sections of the top row stand out due to the height assumption:

I agree with the assumption that a map is likely to be placed on a flat surface and any elevated block in the first row will have its lighter shade.
I have no opinion (yet) about whether the additional row should be part of the generated function or survival guide, since I'm still busy building my flat map in survival. For my image which is a noisy picture already, the one wrongly shaded row would not make a difference. 👍
For the cat image from another issue, which has a plain background, it would likely be noticeable. But I am not building that, so... 🤷


Problem in setting up the json

Submit an Issue
Hi,
I have browser context called on my html, however it was not pulling the json from the folder(px-context-browser). I've also tried calling initialContext and directContext json through iron-ajax in the html still it didn't populate the json. Can please suggest how to set this up?
 - i've called like this, also clarify what is this last-response does?
Do we need to include below 2 dependency as well?
"px-tabs": "^0.6.0",
"px-api-viewer": "^0.1.0",

HI @anundinesh
It seems you have several issues you're dealing with, i'll try to answer them all:

example of connecting the json can be found here: https://github.com/PredixDev/px-context-browser/blob/ece4739e26820c7d2ef5176768509e4b4aa0d214/demo.html
last-response is iron-ajax's way of data binding the response it gets into a data bounded variable that can then be referenced anywhere within the template using is="dom-bind". You can read more about at the iron-ajax documentation: https://elements.polymer-project.org/elements/iron-ajax
the two bower entries you have up there are under the DEVdependencies section. this means you do NOT need them for production. we use them in our demo page. Here's a good stackOverflow answer to the difference between the two. http://stackoverflow.com/questions/19339227/bower-and-devdependencies-vs-dependencies

I'm going to close this, since this isn't an issue, so much as a question of how to. please feel free to re-open this if you find an issue.


Fix typo in tokenizers.js

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.


Working for NENAHC001

MRIQC anat
sub-NENAHC001_run-1_T1w :+1:
sub-NENAHC001_run-2_T1w :-1:
MRIQC func
sub-NENAHC001_task-rest_dir-AP_run-1_bold ?
sub-NENAHC001_task-rest_dir-AP_run-2_bold :-1:

Rawdata dwi
sub-NENAHC001_dir-AP_run-1_dwi.nii.gz :+1:
sub-NENAHC001_dir-PA_run-1_dwi.nii.gz :-1:
for dir-PA
mrinfo: [ERROR] bvecs and bvals files must have same number of diffusion directions as DW-image (gradients: 5, image: 1)

The log file preprocessing_logs/sub-NENAHC001/sub-NENAHC001_DcmSourcedata_to_NiftiRawdata.log suggested permission issue again. Ran chown for several folders within /NENAH_BIDS:
(base) [yz23e20@uos-15263 NENAH_BIDS]$ ls -l
total 20
drwxrwxr-x 3 yz23e20 neuropediatrics 4096 May  7 12:42 code
drwxrwxr-x 4 yz23e20 neuropediatrics 4096 May 12 08:52 derivatives
drwxrwxr-x 3 yz23e20 neuropediatrics 4096 Apr  1 11:55 dicomdir
drwxrwxr-x 4 yz23e20 neuropediatrics 4096 May 12 08:52 rawdata
drwxrwxr-x 3 yz23e20 neuropediatrics 4096 May 12 08:47 sourcedata

And then running
(base) [yz23e20@uos-15263 NENAH_BIDS]$ bash code/NENAH-BIDS/bids/DcmSourcedata_to_NiftiRawdata.sh NENAHC001

The issue is fixed. I will close this ticket.

rawdata/sub-NENAHC001/dwi/sub-NENAHC001_dir-AP_run-1_dwi.bval
      1      44     205
rawdata/sub-NENAHC001/dwi/sub-NENAHC001_dir-PA_run-1_dwi.bval
      1       5      19

mrinfo output for image series "ep2d_diff_b2600_iso2p3_phase_PA_42dir (*ep_b2600#9) [28] ORIGINAL PRIMARY DIFFUSION NONE ND":
From raw data - 2752 volumes
From Syngo - 424 volumes
See attached
for full outputs.
To do:
Try re-downloading this case from Syngo to see whether this issue persists.

Now finding keyval for sub-NENAHC001_dir-PA_run-1_dwi
mrinfo: [done] scanning DICOM folder "dicomdir/NENAHC001"
Select series ('q' to abort):
   0 -    6 MR images 09:26:26 localizer (*fl2d1) [3] ORIGINAL PRIMARY M ND NORM
   1 -  500 MR images 09:28:37 ep2d_bold_moco_p4_3mm_AP_2170 (?) [4] ORIGINAL PRIMARY FMRI NONE ND NORM MOSAIC
   2 -  500 MR images 09:28:37 MoCoSeries (?)  [7] DERIVED PRIMARY FMRI TTEST ND NORM MOCO MOSAIC GLM
   5 -    6 MR images 09:36:53 Mean_&_t-Maps (?)  [13] ORIGINAL PRIMARY FMRI NONE ND NORM MOSAIC
  11 -  500 MR images 09:47:57 MoCoSeries (?) [14] DERIVED PRIMARY FMRI ND NORM MOCO MOSAIC
  12 -    2 MR images 09:55:59 Design (*epfid2d1_82) [15] DERIVED PRIMARY FMRI DESIGN ND NORM MOCO
  13 -    2 MR images 09:55:59 EvaSeries_GLM (?) [16] DERIVED PRIMARY FMRI TTEST ND NORM MOCO MOSAIC GLM
  14 -    6 MR images 09:55:59 Mean_&_t-Maps (?)
To do:
Try re-downloading this case from Syngo to see whether this issue persists.

Pass DVD to Chris on 26th August. This case is no longer at Syngo and need to be pushed again.

Has done a re-scan (sMRI+dMRI+fMRI) because of bad first scan
The new scan has been replaced to old one in:

/dicomdir/NENAHC001
/sourcedata/sub-NENAHC001 (old one moved to /sourcedata/sub-NENAHC001firstscanBADdata
/rawdata/sub-NENAHC001


[Bug] Appsmith install script on EC2 errors out

Description
When install appsmith using the install.sh script, the script errors out with the following message:
+++++++++++ ERROR ++++++++++++++++++++++
Appsmith requires ports 80 & 443 to be open. Please shut down any other service(s) that may be running on these ports.
++++++++++++++++++++++++++++++++++++++++

No other services can be found to be running on these ports.

Closing since it looks like it was resolved on discord

Solution: Ports 80 and 443 must be added to security group of EC2 instance. This way I fixed my issue.


click_explore.py syntax error

  File "/Users/alexander/Code/python/zfsp/click_explore.py", line 54
    except Exception, e:
                    ^
SyntaxError: invalid syntax

That file was an experiment at using Click. Don't use it.

That file was an experiment at using Click. Don't use it.


Help about storage of prometheus

I want to open the file of Data under Prometheus , which tool can be used to open the DB file?

It makes more sense to ask questions like this on the prometheus-users mailing list rather than in a GitHub issue. On the mailing list, more people are available to potentially respond to your question, and the whole community can benefit from the answers provided.


Run cron job for insight collector only if it was enabled

What this PR does / why we need it:
Which issue(s) this PR fixes:
Fixes #
Does this PR introduce a user-facing change?:

NONE

/approve


[FSDP][Example] Fix FSDP example for use_orig_params=False

What does this PR do?

Fixes the FSDP example for use_orig_params=False. I recently started using FSDP via Accelerate and hit some roadblocks due to rough edges in documentation and examples. Some improvements in this PR:

use_orig_params=False should be the recommended route all the time (full param/ lora), since it's typically more efficient.
use_orig_params=False requires model preparation before optimizer instantiation. This is a silent failure - I noticed that loss didn't decrease in this case. I believe it is best if .prepare has extra validation for this and raise an Error to the user. (Might do this in a separate PR if I get time). The example prepares everything together because it assumes use_orig_params is True from this PR: https://github.com/huggingface/accelerate/pull/2177
Documentation has removed this caveat with use_orig_params. I found a note from an older version so I brought it back.
SHARD_GRAD_OP is a bit different from Zero Stage 2, this PR adds a tiny note.

Fixes # (issue)
Before submitting

[ ] This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).
[ ] Did you read the contributor guideline,
Pull Request section?
[ ] Was this discussed/approved via a Github issue or the forum? Please add a link
to it if that's the case.
[x] Did you make sure to update the documentation with your changes? Here are the
documentation guidelines, and
here are tips on formatting docstrings.
[ ] Did you write any new necessary tests?

Who can review?
Anyone in the community is free to review the PR once the tests have passed. Feel free to tag
members/contributors who may be interested in your PR.

cc @muellerzr

use_orig_params=False requires model preparation before optimizer instantiation. This is a silent failure - I noticed that loss didn't decrease in this case.

Nice catch, I didn't know about that.

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.


Add replace-by-fee-rbf review to bitcoin-explained

This PR adds replace-by-fee-rbf transcript review to the bitcoin-explained directory.

Thank you for your excellent first review! It's evident that you carefully listened to the original source, which is reflected in the thoughtful edits you made. Your ability to remove filler words and to catch and correct the AI's transcription errors has significantly improved the readability of the transcript.
Your effort to add punctuation marks and chapter titles is greatly appreciated. This is a valuable contribution that greatly enhances the structure and navigability of the content.
If you haven't already, I encourage you to join our Discord server here. It's a great place to connect with fellow contributors, ask questions, share insights, and stay updated on new transcripts available for review.
I hope this experience has been as educational for you as it has been beneficial for the project.
Looking forward to seeing more of your work, @varmur!

Thank you @kouloumos for your positive and useful feedback. I look forward to making more contributions.
Question : What is the correct way to make more edits to this merged transcript? I've noticed a few transcription errors I missed.

Thank you @kouloumos for your positive and useful feedback. I look forward to making more contributions.
Question : What is the correct way to make more edits to this merged transcript? I've noticed a few transcription errors I missed.

Question : What is the correct way to make more edits to this merged transcript? I've noticed a few transcription errors I missed.

Good question! Currently, our review platform doesn't support direct edits to merged transcripts. However, there's a workaround available.
You can utilize the GitHub.dev editor to make your edits manually and then commit the changes. To assist you further, I've recorded a demo video outlining the process, which you can watch here.
If you choose this approach, please feel free to reach out if you encounter any challenges or need further assistance along the way.

You can utilize the GitHub.dev editor to make your edits manually and then commit the changes. To assist you further, I've recorded a demo video outlining the process, which you can watch here.

Thank you for this, it was very helpful.


feat: Greets the new user

* It adds two labels GSSOC'21 and proposal.
* Adds the comment when the user creates a new issue or a PR

* Fix the issue #2364

Have you read the Contributing Guidelines on Pull Requests?
(Write your answer here.)
Description
(Write your answer here.)
Checklist

[x] I've read the contribution guidelines.
[x] I've checked the issue list before deciding what to submit.
[x] I've edited the README.md and link to my code.

Related Issues or Pull Requests
(Write your answer here.)

Why I am getting this error? @HarshCasper @anushkrishnav

@Karthik-Nayak98 Dont mind the error

Awesome Work !! Thanks for your contribution !!

@Karthik-Nayak98 sounds perfect open a new issue for it, lemme know if you need some help also I have a list of actions I am working on so if possible get this pr im by tomm we can more on more such PR.
Have you joined our Slack ?

I haven't joined the slack

I will ask if I need any kind of help

How can I join your slack channel?