ImportError: cannot import name 'tutel_custom_kernel' from 'tutel.impls.jit_compiler'

It is usually due to environmental issue that Pytorch fails to find CUDA SDK.
Can you print the log of installation command below:
python3 -m pip install --verbose --user --upgrade git+https://github.com/microsoft/tutel@main

Using pip 23.0.1 from /home/ubuntu/anaconda3/envs/snerf/lib/python3.8/site-packages/pip (python 3.8)
Looking in indexes: https://mirrors.bfsu.edu.cn/pypi/web/simple/
Collecting git+https://github.com/microsoft/tutel@main
Cloning https://github.com/microsoft/tutel (to revision main) to /tmp/pip-req-build-f3vo8y7s
Running command git version
git version 2.25.1
Running command git clone --filter=blob:none https://github.com/microsoft/tutel /tmp/pip-req-build-f3vo8y7s
Cloning into '/tmp/pip-req-build-f3vo8y7s'...

Running command git show-ref main
1456b49e27d3aaef09be65da5b74a7be0239bdb4 refs/heads/main
1456b49e27d3aaef09be65da5b74a7be0239bdb4 refs/remotes/origin/main
Running command git symbolic-ref -q HEAD
refs/heads/main
Resolved https://github.com/microsoft/tutel to commit 1456b49e27d3aaef09be65da5b74a7be0239bdb4
Running command git rev-parse HEAD
1456b49e27d3aaef09be65da5b74a7be0239bdb4
Running command python setup.py egg_info
running egg_info
creating /tmp/pip-pip-egg-info-aiosqnkd/tutel.egg-info
writing manifest file '/tmp/pip-pip-egg-info-aiosqnkd/tutel.egg-info/SOURCES.txt'
writing manifest file '/tmp/pip-pip-egg-info-aiosqnkd/tutel.egg-info/SOURCES.txt'
Preparing metadata (setup.py) ... done
Building wheels for collected packages: tutel
Running command git rev-parse HEAD
1456b49e27d3aaef09be65da5b74a7be0239bdb4
Running command python setup.py bdist_wheel
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-x86_64-3.8
creating build/lib.linux-x86_64-3.8/tutel
copying tutel/system.py -> build/lib.linux-x86_64-3.8/tutel
copying tutel/net.py -> build/lib.linux-x86_64-3.8/tutel
copying tutel/jit.py -> build/lib.linux-x86_64-3.8/tutel
copying tutel/moe.py -> build/lib.linux-x86_64-3.8/tutel
copying tutel/init.py -> build/lib.linux-x86_64-3.8/tutel
creating build/lib.linux-x86_64-3.8/tutel/jit_kernels
copying tutel/jit_kernels/gating.py -> build/lib.linux-x86_64-3.8/tutel/jit_kernels
copying tutel/jit_kernels/sparse.py -> build/lib.linux-x86_64-3.8/tutel/jit_kernels
copying tutel/jit_kernels/init.py -> build/lib.linux-x86_64-3.8/tutel/jit_kernels
creating build/lib.linux-x86_64-3.8/tutel/parted
copying tutel/parted/patterns.py -> build/lib.linux-x86_64-3.8/tutel/parted
copying tutel/parted/spmdx.py -> build/lib.linux-x86_64-3.8/tutel/parted
copying tutel/parted/init.py -> build/lib.linux-x86_64-3.8/tutel/parted
copying tutel/parted/solver.py -> build/lib.linux-x86_64-3.8/tutel/parted
creating build/lib.linux-x86_64-3.8/tutel/examples
copying tutel/examples/moe_mnist.py -> build/lib.linux-x86_64-3.8/tutel/examples
copying tutel/examples/helloworld_from_scratch.py -> build/lib.linux-x86_64-3.8/tutel/examples
copying tutel/examples/helloworld.py -> build/lib.linux-x86_64-3.8/tutel/examples
copying tutel/examples/helloworld_amp.py -> build/lib.linux-x86_64-3.8/tutel/examples
copying tutel/examples/moe_cifar10.py -> build/lib.linux-x86_64-3.8/tutel/examples
copying tutel/examples/helloworld_ddp_tutel.py -> build/lib.linux-x86_64-3.8/tutel/examples
copying tutel/examples/helloworld_deepspeed.py -> build/lib.linux-x86_64-3.8/tutel/examples
copying tutel/examples/init.py -> build/lib.linux-x86_64-3.8/tutel/examples
copying tutel/examples/helloworld_ddp.py -> build/lib.linux-x86_64-3.8/tutel/examples
creating build/lib.linux-x86_64-3.8/tutel/experts
copying tutel/experts/ffn.py -> build/lib.linux-x86_64-3.8/tutel/experts
copying tutel/experts/init.py -> build/lib.linux-x86_64-3.8/tutel/experts
creating build/lib.linux-x86_64-3.8/tutel/checkpoint
copying tutel/checkpoint/scatter.py -> build/lib.linux-x86_64-3.8/tutel/checkpoint
copying tutel/checkpoint/init.py -> build/lib.linux-x86_64-3.8/tutel/checkpoint
copying tutel/checkpoint/gather.py -> build/lib.linux-x86_64-3.8/tutel/checkpoint
creating build/lib.linux-x86_64-3.8/tutel/custom
copying tutel/custom/init.py -> build/lib.linux-x86_64-3.8/tutel/custom
creating build/lib.linux-x86_64-3.8/tutel/launcher
copying tutel/launcher/run.py -> build/lib.linux-x86_64-3.8/tutel/launcher
copying tutel/launcher/execl.py -> build/lib.linux-x86_64-3.8/tutel/launcher
copying tutel/launcher/init.py -> build/lib.linux-x86_64-3.8/tutel/launcher
creating build/lib.linux-x86_64-3.8/tutel/gates
copying tutel/gates/cosine_top.py -> build/lib.linux-x86_64-3.8/tutel/gates
copying tutel/gates/top.py -> build/lib.linux-x86_64-3.8/tutel/gates
copying tutel/gates/init.py -> build/lib.linux-x86_64-3.8/tutel/gates
creating build/lib.linux-x86_64-3.8/tutel/impls
copying tutel/impls/fast_dispatch.py -> build/lib.linux-x86_64-3.8/tutel/impls
copying tutel/impls/jit_compiler.py -> build/lib.linux-x86_64-3.8/tutel/impls
copying tutel/impls/moe_layer.py -> build/lib.linux-x86_64-3.8/tutel/impls
copying tutel/impls/overlap.py -> build/lib.linux-x86_64-3.8/tutel/impls
copying tutel/impls/communicate.py -> build/lib.linux-x86_64-3.8/tutel/impls
copying tutel/impls/init.py -> build/lib.linux-x86_64-3.8/tutel/impls
copying tutel/impls/losses.py -> build/lib.linux-x86_64-3.8/tutel/impls
creating build/lib.linux-x86_64-3.8/tutel/parted/backend
copying tutel/parted/backend/init.py -> build/lib.linux-x86_64-3.8/tutel/parted/backend
creating build/lib.linux-x86_64-3.8/tutel/parted/backend/torch
copying tutel/parted/backend/torch/config.py -> build/lib.linux-x86_64-3.8/tutel/parted/backend/torch
copying tutel/parted/backend/torch/executor.py -> build/lib.linux-x86_64-3.8/tutel/parted/backend/torch
copying tutel/parted/backend/torch/init.py -> build/lib.linux-x86_64-3.8/tutel/parted/backend/torch
running build_ext
creating /tmp/pip-req-build-f3vo8y7s/build/temp.linux-x86_64-3.8
creating /tmp/pip-req-build-f3vo8y7s/build/temp.linux-x86_64-3.8/tutel
creating /tmp/pip-req-build-f3vo8y7s/build/temp.linux-x86_64-3.8/tutel/custom
Emitting ninja build file /tmp/pip-req-build-f3vo8y7s/build/temp.linux-x86_64-3.8/build.ninja...
Compiling objects...
Allowing ninja to set a default number of workers... (overridable by setting the environment variable MAX_JOBS=N)
[1/1] c++ -MMD -MF /tmp/pip-req-build-f3vo8y7s/build/temp.linux-x86_64-3.8/tutel/custom/custom_kernel.o.d -pthread -B /home/ubuntu/anaconda3/envs/snerf/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/home/ubuntu/.local/lib/python3.8/site-packages/torch/include -I/home/ubuntu/.local/lib/python3.8/site-packages/torch/include/torch/csrc/api/include -I/home/ubuntu/.local/lib/python3.8/site-packages/torch/include/TH -I/home/ubuntu/.local/lib/python3.8/site-packages/torch/include/THC -I/usr/local/cuda-11.6/include -I/home/ubuntu/anaconda3/envs/snerf/include/python3.8 -c -c /tmp/pip-req-build-f3vo8y7s/tutel/custom/custom_kernel.cpp -o /tmp/pip-req-build-f3vo8y7s/build/temp.linux-x86_64-3.8/tutel/custom/custom_kernel.o -Wno-sign-compare -Wno-unused-but-set-variable -Wno-terminate -Wno-unused-function -Wno-strict-aliasing -DUSE_GPU -DUSE_NCCL -DTORCH_API_INCLUDE_EXTENSION_H '-DPYBIND11_COMPILER_TYPE="_gcc"' '-DPYBIND11_STDLIB="_libstdcpp"' '-DPYBIND11_BUILD_ABI="_cxxabi1011"' -DTORCH_EXTENSION_NAME=tutel_custom_kernel -D_GLIBCXX_USE_CXX11_ABI=0 -std=c++14
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
g++ -pthread -shared -B /home/ubuntu/anaconda3/envs/snerf/compiler_compat -L/home/ubuntu/anaconda3/envs/snerf/lib -Wl,-rpath=/home/ubuntu/anaconda3/envs/snerf/lib -Wl,--no-as-needed -Wl,--sysroot=/ /tmp/pip-req-build-f3vo8y7s/build/temp.linux-x86_64-3.8/./tutel/custom/custom_kernel.o -L/usr/local/cuda/lib64/stubs -L/home/ubuntu/.local/lib/python3.8/site-packages/torch/lib -L/usr/local/cuda-11.6/lib64 -lcuda -lnvrtc -lnccl -lc10 -ltorch -ltorch_cpu -ltorch_python -lcudart -lc10_cuda -ltorch_cuda_cu -ltorch_cuda_cpp -o build/lib.linux-x86_64-3.8/tutel_custom_kernel.cpython-38-x86_64-linux-gnu.so
installing to build/bdist.linux-x86_64/wheel
running install
running install_lib
creating build/bdist.linux-x86_64
creating build/bdist.linux-x86_64/wheel
creating build/bdist.linux-x86_64/wheel/tutel
creating build/bdist.linux-x86_64/wheel/tutel/jit_kernels
creating build/bdist.linux-x86_64/wheel/tutel/parted
creating build/bdist.linux-x86_64/wheel/tutel/parted/backend
creating build/bdist.linux-x86_64/wheel/tutel/parted/backend/torch
creating build/bdist.linux-x86_64/wheel/tutel/examples
creating build/bdist.linux-x86_64/wheel/tutel/experts
creating build/bdist.linux-x86_64/wheel/tutel/checkpoint
creating build/bdist.linux-x86_64/wheel/tutel/custom
creating build/bdist.linux-x86_64/wheel/tutel/launcher
creating build/bdist.linux-x86_64/wheel/tutel/gates
creating build/bdist.linux-x86_64/wheel/tutel/impls
running install_egg_info
running egg_info
creating tutel.egg-info
writing manifest file 'tutel.egg-info/SOURCES.txt'
writing manifest file 'tutel.egg-info/SOURCES.txt'
Copying tutel.egg-info to build/bdist.linux-x86_64/wheel/tutel-0.1-py3.8.egg-info
running install_scripts
creating build/bdist.linux-x86_64/wheel/tutel-0.1.dist-info/WHEEL
creating '/tmp/pip-wheel-fsgwko7i/tutel-0.1-cp38-cp38-linux_x86_64.whl' and adding 'build/bdist.linux-x86_64/wheel' to it
adding 'tutel_custom_kernel.cpython-38-x86_64-linux-gnu.so'
adding 'tutel/init.py'
adding 'tutel/jit.py'
adding 'tutel/moe.py'
adding 'tutel/net.py'
adding 'tutel/system.py'
adding 'tutel/checkpoint/init.py'
adding 'tutel/checkpoint/gather.py'
adding 'tutel/checkpoint/scatter.py'
adding 'tutel/custom/init.py'
adding 'tutel/examples/init.py'
adding 'tutel/examples/helloworld.py'
adding 'tutel/examples/helloworld_amp.py'
adding 'tutel/examples/helloworld_ddp.py'
adding 'tutel/examples/helloworld_ddp_tutel.py'
adding 'tutel/examples/helloworld_deepspeed.py'
adding 'tutel/examples/helloworld_from_scratch.py'
adding 'tutel/examples/moe_cifar10.py'
adding 'tutel/examples/moe_mnist.py'
adding 'tutel/experts/init.py'
adding 'tutel/experts/ffn.py'
adding 'tutel/gates/init.py'
adding 'tutel/gates/cosine_top.py'
adding 'tutel/gates/top.py'
adding 'tutel/impls/init.py'
adding 'tutel/impls/communicate.py'
adding 'tutel/impls/fast_dispatch.py'
adding 'tutel/impls/jit_compiler.py'
adding 'tutel/impls/losses.py'
adding 'tutel/impls/moe_layer.py'
adding 'tutel/impls/overlap.py'
adding 'tutel/jit_kernels/init.py'
adding 'tutel/jit_kernels/gating.py'
adding 'tutel/jit_kernels/sparse.py'
adding 'tutel/launcher/init.py'
adding 'tutel/launcher/execl.py'
adding 'tutel/launcher/run.py'
adding 'tutel/parted/init.py'
adding 'tutel/parted/patterns.py'
adding 'tutel/parted/solver.py'
adding 'tutel/parted/spmdx.py'
adding 'tutel/parted/backend/init.py'
adding 'tutel/parted/backend/torch/init.py'
adding 'tutel/parted/backend/torch/config.py'
adding 'tutel/parted/backend/torch/executor.py'
adding 'tutel-0.1.dist-info/LICENSE'
adding 'tutel-0.1.dist-info/METADATA'
adding 'tutel-0.1.dist-info/WHEEL'
adding 'tutel-0.1.dist-info/top_level.txt'
adding 'tutel-0.1.dist-info/RECORD'
removing build/bdist.linux-x86_64/wheel
Building wheel for tutel (setup.py) ... done
Created wheel for tutel: filename=tutel-0.1-cp38-cp38-linux_x86_64.whl size=3818720 sha256=c9229a1d4450e51722ce8c3ee1ac1f168c52eb336f50cb8b74541f46db9908d6
Stored in directory: /tmp/pip-ephem-wheel-cache-8p0gi8d8/wheels/fd/b8/fb/efc186bf3c0931e42fd89af67fe0cfcdece6fb5b055e69ec0a
Successfully built tutel
Installing collected packages: tutel
Running command git rev-parse HEAD
1456b49e27d3aaef09be65da5b74a7be0239bdb4
Successfully installed tutel-0.1

Can you search where is the OS path of this file in your anaconda3 environment:
find /home/ubuntu/anaconda3 | grep tutel_custom_kernel.cpython

Your anaconda3 doesn't automatically add it to the PYTHON_PATH.

I sorry that I did follow the installation procedures, I still couldn't find the file 'tutel_custom_kernel', in the dist-packages. I'm not sure which part went wrong. I use CUDA11.6 and torch==1.10.0+cu113.
Another error that always shows up 'ImportError: libnvrtc.so.11.0: cannot open shared object file: No such file or directory'

I sorry that I did follow the installation procedures, I still couldn't find the file 'tutel_custom_kernel', in the dist-packages. I'm not sure which part went wrong. I use CUDA11.6 and torch==1.10.0+cu113. Another error that always shows up 'ImportError: libnvrtc.so.11.0: cannot open shared object file: No such file or directory'

OK, so the problem is not from anaconda's site location, but your Pytorch fails to detach CUDA library environment and related versioning.
You have several options:

find the location of libnvrtc.so.11.0 and put it to LD_LIBRARY_PATH.
find the location of libnvrtc.so.11.6 and create a symbolic link for it and name it as libnvrtc.so.11.0

Because those shared libraries fails to locate on the disk, so Pytorch C++ modules can't load at initialization.

Thanks for your patience, I did what you told me, the problem is still unsolved,. I think maybe something wrong with the ninja compiler while installing? I paste the installation log here.  And I use CUDA10.2, with torch version torch1.10.0+cu102
Thanks a lot!
running install
running bdist_egg
running egg_info
writing manifest file 'tutel.egg-info/SOURCES.txt'
running install_lib
running build_py
running build_ext
Emitting ninja build file /home/ubuntu/zcq/tutel/build/temp.linux-x86_64-3.8/build.ninja...
Compiling objects...
Allowing ninja to set a default number of workers... (overridable by setting the environment variable MAX_JOBS=N)
ninja: no work to do.
g++ -pthread -shared -B /home/ubuntu/anaconda3/envs/snerf/compiler_compat -L/home/ubuntu/anaconda3/envs/snerf/lib -Wl,-rpath=/home/ubuntu/anaconda3/envs/snerf/lib -Wl,--no-as-needed -Wl,--sysroot=/ /home/ubuntu/zcq/tutel/build/temp.linux-x86_64-3.8/./tutel/custom/custom_kernel.o -L/usr/local/cuda/lib64/stubs -L/home/ubuntu/.local/lib/python3.8/site-packages/torch/lib -L/usr/local/cuda-11.6/lib64 -ldl -lcuda -lnvrtc -lnccl -lc10 -ltorch -ltorch_cpu -ltorch_python -lcudart -lc10_cuda -ltorch_cuda -o build/lib.linux-x86_64-3.8/tutel_custom_kernel.cpython-38-x86_64-linux-gnu.so
creating build/bdist.linux-x86_64/egg
creating build/bdist.linux-x86_64/egg/tutel
creating build/bdist.linux-x86_64/egg/tutel/jit_kernels
creating build/bdist.linux-x86_64/egg/tutel/parted
creating build/bdist.linux-x86_64/egg/tutel/parted/backend
creating build/bdist.linux-x86_64/egg/tutel/parted/backend/torch
creating build/bdist.linux-x86_64/egg/tutel/examples
creating build/bdist.linux-x86_64/egg/tutel/custom
creating build/bdist.linux-x86_64/egg/tutel/launcher
creating build/bdist.linux-x86_64/egg/tutel/impls
byte-compiling build/bdist.linux-x86_64/egg/tutel/system.py to system.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/jit_kernels/gating.py to gating.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/jit_kernels/sparse.py to sparse.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/jit_kernels/init.py to init.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/net.py to net.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/jit.py to jit.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/parted/backend/init.py to init.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/parted/backend/torch/config.py to config.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/parted/backend/torch/executor.py to executor.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/parted/backend/torch/init.py to init.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/parted/patterns.py to patterns.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/parted/spmdx.py to spmdx.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/parted/init.py to init.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/parted/solver.py to solver.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/examples/helloworld_from_scratch.py to helloworld_from_scratch.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/examples/helloworld.py to helloworld.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/examples/helloworld_amp.py to helloworld_amp.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/examples/helloworld_deepspeed.py to helloworld_deepspeed.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/examples/init.py to init.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/examples/helloworld_ddp.py to helloworld_ddp.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/custom/init.py to init.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/moe.py to moe.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/launcher/run.py to run.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/launcher/execl.py to execl.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/launcher/init.py to init.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/init.py to init.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/impls/fast_dispatch.py to fast_dispatch.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/impls/jit_compiler.py to jit_compiler.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/impls/moe_layer.py to moe_layer.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/impls/communicate.py to communicate.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel/impls/init.py to init.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/tutel_custom_kernel.py to tutel_custom_kernel.cpython-38.pyc
creating build/bdist.linux-x86_64/egg/EGG-INFO
copying tutel.egg-info/PKG-INFO -> build/bdist.linux-x86_64/egg/EGG-INFO
copying tutel.egg-info/SOURCES.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
copying tutel.egg-info/dependency_links.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
copying tutel.egg-info/requires.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
copying tutel.egg-info/top_level.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
zip_safe flag not set; analyzing archive contents...
pycache.tutel_custom_kernel.cpython-38: module references file
removing 'build/bdist.linux-x86_64/egg' (and everything under it)
creating /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg
Extracting tutel-0.1-py3.8-linux-x86_64.egg to /home/ubuntu/.local/lib/python3.8/site-packages
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel_custom_kernel.py to tutel_custom_kernel.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/init.py to init.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/jit.py to jit.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/moe.py to moe.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/net.py to net.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/system.py to system.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/custom/init.py to init.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/examples/init.py to init.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/examples/helloworld.py to helloworld.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/examples/helloworld_amp.py to helloworld_amp.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/examples/helloworld_ddp.py to helloworld_ddp.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/examples/helloworld_deepspeed.py to helloworld_deepspeed.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/examples/helloworld_from_scratch.py to helloworld_from_scratch.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/impls/init.py to init.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/impls/communicate.py to communicate.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/impls/fast_dispatch.py to fast_dispatch.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/impls/jit_compiler.py to jit_compiler.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/impls/moe_layer.py to moe_layer.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/jit_kernels/init.py to init.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/jit_kernels/gating.py to gating.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/jit_kernels/sparse.py to sparse.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/launcher/init.py to init.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/launcher/execl.py to execl.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/launcher/run.py to run.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/parted/init.py to init.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/parted/patterns.py to patterns.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/parted/solver.py to solver.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/parted/spmdx.py to spmdx.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/parted/backend/init.py to init.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/parted/backend/torch/init.py to init.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/parted/backend/torch/config.py to config.cpython-38.pyc
byte-compiling /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg/tutel/parted/backend/torch/executor.py to executor.cpython-38.pyc
Adding tutel 0.1 to easy-install.pth file
Installed /home/ubuntu/.local/lib/python3.8/site-packages/tutel-0.1-py3.8-linux-x86_64.egg
Processing dependencies for tutel==0.1
Finished processing dependencies for tutel==0.1

Thanks! I reinstall CUDA and torch, update tutel to the latest version, and it works! Thanks for your patience, that really helps me a lot.

Thanks! I reinstall CUDA and torch, update tutel to the latest version, and it works! Thanks for your patience, that really helps me a lot.

Can you share your CUDA and Pytorch version? I have the same issue, and reinstall doesn't work

Thanks! I reinstall CUDA and torch, update tutel to the latest version, and it works! Thanks for your patience, that really helps me a lot.

Can you share your CUDA and Pytorch version? I have the same issue, and reinstall doesn't work.

Mostly it is related to Pytorch fails to import standard C++ extension due to improper/messed-up extension location.
Here are several possibilities.

user is the root-cause (e.g. root or non-root) because Pytorch is installed by an unknown else users.
Multiple C++ extension is found at different site locations (e.g. a version exists in root sites, and another version exists in user sites).
CUDA environment is not configured correctly, making C++ extension failed in setup procedure or library loading procedure. However, you can usually see those related error logs during installation, e.g. nvcc or libcuda.so is not found.


Making libentry thread safe

The present multithreading support in Triton is not yet in a ready state. For example, a simple use case is throwing a bunch of Python threads to run a model on multiple devices in parallel. However, this usage can easily break Triton as its runtime is not properly serialized. As a result, FlagGems using libentry is prone to race conditions when gems are called in parallel threads without proper locking. This PR brings jit serialization into libentry to enable race free invocations of all libentry wrapped functions.

Done.


The following NoSuchMethodError was thrown while handling a gesture

More details here
https://github.com/shamblett/xml2json/issues/11

The Xml2Json code is catching an exception and reading the exception's message field here:
https://github.com/shamblett/xml2json/blob/bce817c21622b5981f2acab5b9dc788330dc60af/lib/src/Xml2Json.dart#L55
But the exception that was thrown is a Dart CastError that does not have a message field.
I'd suggest patching that line to use e.toString() (as is done elsewhere in Xml2Json.dart)

Is there still something to do for the Flutter team?
Did the suggestion solve your problem?

currently i am not using xml2json package.
Thanks @zoechi  💯

Thanks for the update. Feel free to create a new issue.


Add gif showing off effect

Would be helpful. Not sure what a flutter is. 😄

I had added gif . if you want to know the effect,you also can run the demo code.


Update scalaz-zio to 0.3.0

Updates org.scalaz:scalaz-zio from 0.2.11 to 0.3.0.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention @scala-steward in the comments below.
Have a nice day!

Fixed by #89


Not an issue, a question

Unhandled exception at http://localhost/devbox/jsil/thhd/JSIL/lib/XNA/Content.js line 47:
Uncaught Microsoft.Xna.Framework.Content.ContentLoadException: The asset 'thunderhead_font_01' is not in the asset manifest.
how do i register the asset manifest?

this is my jsilconfig:
var jsilConfig = {
printStackTrace: false,
webgl2d: true,
xna: 4,
readOnlyStorage: true,
localStorage: true,
manifests: [
"Thunderhead.exe",
"Content/ThunderheadContent.contentproj"
],
    showProgressBar: true,
    showStats: true,

    scriptRoot: "",
    libraryRoot: "JSIL/lib/",
    fileRoot: "",
    contentRoot: "Content/"
  };

The manifest is produced when JSILc compiles your game. Make sure you compiled the solution file, not the exe file.

when i compile the solution file, i get msbuild errors, though it builds fine in VS2015 Community.

C:\Program Files (x86)\MSBuild\Microsoft\XNA Game Studio\v4.0\Microsoft.Xna.GameStudio.ContentPipeline.targets(78,5): error MSB4062: The "BuildContent" task could not be loaded from the assembly Microsoft.Xna.Framework.Content.Pipeline, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=842cf8be1de50553. Could not load file or assembly 'Microsoft.Xna.Framework.Content.Pipeline, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=842cf8be1de50553' or one of its dependencies. The system cannot find the file specified. Confirm that the  declaration is correct, that the assembly and all its dependencies are available, and that the task contains a public class that implements Microsoft.Build.Framework.ITask.

What can i run on JSIL other than XNA?
are Winforms/System.Drawing applications supported?

There's rough support for cross-compiling the FNA framework and using an emscripten-compiled version of SDL2:
https://github.com/sq/SampleFNA
That will provide most of what you would get out of using the regular XNA framework (and in fact, provides more functionality than the old XNA support does). But it's not completely ready for primetime...


unable to upgrade connection: Unauthorized

Output of helm version:
Client: &version.Version{SemVer:"v2.9.1", GitCommit:"20adb27c7c5868466912eebdf6664e7390ebe710", GitTreeState:"clean"}
Output of kubectl version:
Client Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.5", GitCommit:"32ac1c9073b132b8ba18aa830f46b77dcceb0723", GitTreeState:"clean", BuildDate:"2018-06-21T11:46:00Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"linux/amd64"}
Cloud Provider/Platform (AKS, GKE, Minikube etc.): null
[root@master helm]# kubectl -n kube-system get pod -l app=helm -o jsonpath='{.items[0].metadata.name}' -o wide
NAME                             READY     STATUS    RESTARTS   AGE       IP          NODE
tiller-deploy-5bfdbfd6f6-l77sn   1/1       Running   0          13m       <IP_ADDRESS>   master

[root@master helm]# kubectl -n kube-system port-forward  tiller-deploy-5bfdbfd6f6-l77sn 44134
error: error upgrading connection: unable to upgrade connection: Unauthorized

[root@master helm]# helm ls
Error: forwarding ports: error upgrading connection: unable to upgrade connection: Unauthorized

It appears that your kubectl user account is not allowed to port forward. You'll have to look into why your Kubernetes cluster is configured that way.

It appears that your kubectl user account is not allowed to port forward. You'll have to look into why your Kubernetes cluster is configured that way.

would you mind tell me how to check it ? I met the same problem.


Project Metadata Import

Basic information
Windows 11 Pro
MZmine 3.9.0
What happened
I wanted to import data files (mzML) and also import project metadata (tsv/csv) into MZmine. Unfortunately I cannot get the project metadata to import. I have even entered Sample Metadata  in MZmine and exported, then used this to import and it still fails to import. I don't know what to try next.

Hi,
thanks for reporting the bug, we will look into this. Can you share the log file when so we can check what fails when you try to import the meta data?

HI, i know it's a late reply, but the issue will be fixed in the next release. Basically the export is doing wierd stuff.

Thanks!


Intermittent ObjectDisposedException from AsyncContext

We're using AsyncContext to marshal between synchronous (legacy) code, and newer asynchronous code in lots of different places. Here's a rough example of the types of operations we're doing:
public double?[] GetValues(Guid identifier, int numberOfPeriods)
{
    var now = DateTime.UtcNow;

    // Work out the times that we want to query
    var utcEndTimes = Enumerable.Range(0, numberOfPeriods)
        .Select(delta => now.AddSeconds(-delta * _samplingRateSeconds))
        .ToArray();

    // Run queries asynchronously
    return AsyncContext.Run(() => GetValuesAsync(identifier, utcEndTimes));
}

private async Task<double?[]> GetValuesAsync(Guid identifier, DateTime[] utcEndTimes)
{
    var getValues = utcEndTimes
        // Some async operation that returns Task<double?> - code omitted for brevity
        .Select(utcEndTime => GetValueAsync(identifier, utcEndTime));

    return await Task.WhenAll(getValues);
}

Mostly this works perfectly, however, we have recently noticed quite a few of these exceptions cropping up:
System.AggregateException: A Task's exception(s) were not observed either by Waiting on the Task or accessing its Exception property. As a result, the unobserved exception was rethrown by the finalizer thread. ---> System.ObjectDisposedException: The collection has been disposed.
Object name: 'BlockingCollection'.
   at System.Collections.Concurrent.BlockingCollection`1.CheckDisposed()
   at System.Collections.Concurrent.BlockingCollection`1.CompleteAdding()
   at Nito.AsyncEx.AsyncContext.OperationCompleted()
   at Nito.AsyncEx.AsyncContext.<Enqueue>b__0(Task _)
   at System.Threading.Tasks.ContinuationTaskFromTask.InnerInvoke()
   at System.Threading.Tasks.Task.Execute()
   --- End of inner exception stack trace ---
---> (Inner Exception #0) System.ObjectDisposedException: The collection has been disposed.
Object name: 'BlockingCollection'.
   at System.Collections.Concurrent.BlockingCollection`1.CheckDisposed()
   at System.Collections.Concurrent.BlockingCollection`1.CompleteAdding()
   at Nito.AsyncEx.AsyncContext.OperationCompleted()
   at Nito.AsyncEx.AsyncContext.<Enqueue>b__0(Task _)
   at System.Threading.Tasks.ContinuationTaskFromTask.InnerInvoke()
   at System.Threading.Tasks.Task.Execute()<---

Unfortunately, we can't seem to reproduce it reliably - it feels a lot like a race condition. It also doesn't seem to matter where we try and guard against this, we can't obtain any more information about the exception.
I'm just wondering if you can help point me in the right direction for tracking this problem down? I've tried creating a simple project to exercise the issue but unfortunately haven't had any luck. I also tried looking through the AsyncContext source code, and from best I can tell, the exception occurs because AsyncContext is trying to call CompleteAdding() on a disposed queue (in the OperationCompleted) handler.
Thanks!

There's definitely a race condition - it's a bug in AsyncContext. I'll be fixing it in the new AsyncContext first.

Thanks for the reply @StephenCleary!

Started an issue for the new AsyncContext as well, to track in both repos.

@gerrod I did a pretty thorough code review, and it looks like an ObjectDisposedException could occur if an asynchronous task running in the AsyncContext first does at least one await and then throws (or propagates) an exception.
Does this match with what you're seeing? Or have you seen this happen when your code does not have exceptions?

Hmm, it certainly could be - I'll have a hunt through and check for unhandled exceptions that may be bubbling up to the AsyncContext. Thanks for the tip.

@gerrod Sorry, to be clear, the exception would be propagated from AsyncContext.Run, so it should be pretty obvious. That exception wouldn't be swallowed.
BTW, I've been assuming you're calling AsyncContext.Run and not disposing the AsyncContext manually, correct?

OK, first to answer the easy part of the question - yes, we are always using AsyncContext.Run!
In regards to the exceptions; we're not seeing any other exceptions in our logs around this one, however that could also just be that for some reason we're just not logging them.
I may also still not quite understand :-) -- it sounds like the following code block may cause the exception that we're seeing:
public void GetNumber()
{
    var number = AsyncContext.Run(GetNumberAsync);
    return number;
}

public async Task<int> GetNumberAsync()
{
    var number = await GenerateANumber();
    throw new Exception("No-one has handled this!");
}

However, how about this? Sure, it's stupid - but would this be "safe"?
public void GetNumber()
{
    var number = AsyncContext.Run(GetNumberAsync);
    return number;
}

public async Task<int> GetNumberAsync()
{
    var number = await GenerateANumber();

    try
    {
        throw new Exception("I am a pointless exception!");
    }
    catch (Exception ex)
    {
        _logger.Info($"Caught: {ex.Message}");
    }

    return number;
}

And if so, could we circumvent the exception by ensuring that we always catch any exceptions inside our AsyncContext blocks, ala:
public void GetNumber()
{
    var number = AsyncContext.Run(async () =>
    {
        try
        {
            return await GetNumberAsync();
        }
        catch (Exception ex)
        {
            _logger.Info($"Caught: {ex.Message}");
            return 0;
        }
    });

    return number;
}

public async Task<int> GetNumberAsync()
{
    var number = await GenerateANumber();
    throw new Exception("No-one has handled this!");
}

Thanks!

Just to add one more piece to the puzzle - we only get the exception reported from our TaskScheduler.UnobservedTaskException event:
TaskScheduler.UnobservedTaskException += (sender, excArgs) =>
{
    Logger.Error(excArgs.Exception.Flatten(), "Caught unhandled task exception in job processor.");
    excArgs.SetObserved();
};

@gerrod:
I expect the ObjectDisposedException to only be sent to UnobservedTaskException. And it is actually nothing to worry about - the code is working just fine except for this spurious exception.
Your first example may cause the unobserved ObjectDisposedException. It will also propagate Exception from GetNumber, though.
The second example would prevent both exceptions.
It's not necessary to modify your code; this is a spurious error that shouldn't cause any problems (other than taking up space in your logs).
If it's possible, could you try AsyncEx.Context v1.0.4? I put a change in that repo that may fix this.

Hi @StephenCleary - thanks for the reply, we've been busy with other production issues so I haven't had a chance to get back to this yet!
One of my co-workers - @pvsleeper - is going to switch our reference to v1.0.4 and try it out on our test server, we'll let you know how it goes.

Hi again @StephenCleary - we've tried updating to v1.0.4 as you suggested and the issue has disappeared. Thanks so much for your help!

Excellent. Thanks for letting me know!

Should be fixed in 4.0.1-pre.


NPE when creating proxy for a class type that cannot be loaded

I am getting the following NPE:
1) Failed to configure mappings

1 error
      at org.modelmapper.internal.Errors.throwConfigurationExceptionIfErrorsExist(Errors.java:241)
      at org.modelmapper.internal.ExplicitMappingBuilder.build(ExplicitMappingBuilder.java:213)
      at org.modelmapper.internal.TypeMapImpl.addMappings(TypeMapImpl.java:89)
      at org.modelmapper.internal.TypeMapStore.getOrCreate(TypeMapStore.java:103)
      at org.modelmapper.ModelMapper.addMappings(ModelMapper.java:94)
      ...
Caused by: java.lang.NullPointerException
      at org.modelmapper.internal.ExplicitMappingBuilder$ExplicitMappingInterceptor.access$000(ExplicitMappingBuilder.java:284)
      at org.modelmapper.internal.ExplicitMappingBuilder.createAccessorProxies(ExplicitMappingBuilder.java:267)
      at org.modelmapper.internal.ExplicitMappingBuilder.createProxies(ExplicitMappingBuilder.java:257)
      at org.modelmapper.internal.ExplicitMappingBuilder.visitPropertyMap(ExplicitMappingBuilder.java:236)
      at org.modelmapper.PropertyMap.configure(PropertyMap.java:382)
      at sun.reflect.GeneratedMethodAccessor812.invoke(Unknown Source) [:1.8.0_152]
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.8.0_152]
      at java.lang.reflect.Method.invoke(Method.java:498) [rt.jar:1.8.0_152]
      at org.modelmapper.internal.ExplicitMappingBuilder.build(ExplicitMappingBuilder.java:196)
      ... 48 more

Using the debugger I identified that ProxyFactory#proxyClassFor() line 68 throws NoClassDefFoundError,
because cglib cannot load the type - javax.xml.datatype.XMLGregorianCalendar in this case.
This is OK, since I run in an OSGi container and the class is indeed not loadable by the current bundle classloader.
However, I have defined an explicit mapping, i.e: modelMapper.getConfiguration().setImplicitMappingEnabled(false);
And the property who's type is javax.xml.datatype.XMLGregorianCalendar is not even part of the explicit mapping that I defined.
Therefore, I expect that ModelMapper should not even attempt to map it.
So a NPE is not ideal here.
I would say that skipping the type is better since it may not even be part of the explicit mapping

Closing this issue. Seems that ModelMapper is correctly setting the classloader in cglib's Enchancer but since the classloader is not able to load the type, proxying simply fails.
Unfortunately, there is nothing that ModelMapper can do in this case since the failure happens in cglib.
The client code must make sure that if it runs withing an OSGi container, the classloader of the weaved class must be able to load all properties within its own reflection hierarchy.
Not ideal though :/

Reopening the issue because of the NPE.
Instead of NPE the user should be able to see the original error that cglib threw - the NoClassDefFoundError in that case.
I noticed that the code:
private <T> T createProxy(Class<T> type) {
    ExplicitMappingInterceptor interceptor = new ExplicitMappingInterceptor();

    try {
      T proxy = ProxyFactory.proxyFor(type, interceptor, proxyErrors);
      proxyInterceptors.put(proxy, interceptor);
      return proxy;
    } catch (ErrorsException e) {
      return null;
    }
  }

simply swallows the ErrorsException that the proxy factory throw and returns null.
Seems this was changed recently.
Any idea why? I think we should throw the exception so that the user can see what actually got wrong.
Returning null simply results in a NPE later when the ExplicitMappingBuilder tries to access the source/destination proxies

Related to https://github.com/modelmapper/modelmapper/issues/287
The NPE still occurs, just at another location

Okay, I will take a look for this issue.

Hi @mdzhigarov, Can you provide reproducible code and stacktrace to me? Thank you.


Improve generated README

When generating some important part, like Maven, Sonar, etc... it would be nice to improve the generated README
I don't know where to put this new method
Solution 1:

add new method in InitService
generator/init, and change from business context to shared kernel
inject InitService each time we need

Solution 2:

add new method in ProjectRepository
projectRepository is already injected in each domainService

To do this:

1st pull request for adding method
other pull request to improve the README (Maven, Sonar, Spring Boot, PostgreSQL, MySQL, etc)

Can you assign me on this @pascalgrimaud please?

Here we go on this one @pascalgrimaud but before I have some questions!
In the solution 1 what do you expect for the second point? I'm sure sure to get this one.
I'm not a fan of the solution 2 because IMHO the ProjectRepository should have only one responsibility: handle projects (and so not READMEs). What do you think about that?

ok maybe a 3rd solution could be a new readme context (shared kernel), which will simply inject text in README


fix word spelling mistakes at README.md & src/../JsonKit/Program.cs

fix word spelling mistakes:

/src/OfficeJsonKit/JsonKit/Program.cs line 169
/README.md line 12

done


Llama3 Branch Still Suffers Segmentation Fault When Generating Datastore Using Qwen2.5

I'm trying building a datastore for Qwen2.5 series models using the DraftRetriever but encountered a Segmentation fault (core dumped) error when calling writer.finalize() in script get_datastore_chat.py Line 54. The dataset I used is ShareGPT_Vicuna_unfiltered, the same as the default option.
I'm using "llama3" branch (as it fixed the vocabulary size limit) with python3.9 and the prebuilt wheel. I'm not familiar with Rust, so I will be sincerely appreciated if there would be someone help me out.
For reproduce:
Just modify the get_datastore_chat.py Line 13, Line 45 and run it with no arguments.
parser.add_argument(
    "--model-path",
    type=str,
    default="Qwen/Qwen2.5-0.5B-Instruct",
    # default="lmsys/vicuna-7b-v1.5",
    help="The path to the weights. This can be a local folder or a Hugging Face repo ID.",
)

Line 45
    dataset_path = 'path/to/datasets/ShareGPT_Vicuna_unfiltered/ShareGPT_2023.05.04v0_Wasteland_Edition.json'

Output:
number of samples:  52052
100%|█████████████████████████████████████████████████████████████████████████████████████████████| 52052/52052 [05:09<00:00, 167.97it/s]
Segmentation fault (core dumped)

Thanks a lot.

After I changed to the main branch and tried the solution in https://github.com/FasterDecoding/REST/issues/19, it is successfully fixed. So there may be some problems in the llama3 branch (even through I do the same modification to it, code in llama3 branch still fails).

And I found that even though there is no core dumped or any other logged errors, the Reader still encounters OSError: failed to fill whole buffer when I loaded the datastore generated by modifying the main branch as following:

To fix the issue, you may change this line in writer from self.index_file.write_u16::(item as u16)?; to self.index_file.write_u32::(item as u32)?;
Besides, change this line this line in Reader from let int = LittleEndian::read_u16(&data_u8[i..i+2]) as i32; to let int = LittleEndian::read_u32(&data_u8[i..i+4]) as i32;).

I solved it by modifying Line 114 from
self.index_file.write_u32::<LittleEndian>((self.buffer.len() * 2) as u32)?;
to
self.index_file.write_u32::<LittleEndian>((self.buffer.len() * 4) as u32)?;
I'm not sure if other modifications in the https://github.com/FasterDecoding/REST/pull/23 are necessary. (As I don't understand Rust :( sorry)

Hi @csAugust - thanks so much for your work. Would you be willing to try the llama3 branch again with the newest changes from @zhenyuhe00 ? The setup as is- in the llama3 branch was working fine for me, at least for Llama models.
Is it possible that the Qwen tokenizer has additional added tokens? There seems to have been a second vocab size issue that could impact datastore writes, which the most recent commit may have fixed.

Hi @csAugust - thanks so much for your work. Would you be willing to try the llama3 branch again with the newest changes from @zhenyuhe00 ? The setup as is- in the llama3 branch was working fine for me, at least for Llama models. I'll also work to investigate when I get time, but do not have bandwidth at the moment.
Is it possible that the Qwen tokenizer has additional added tokens? There seems to have been a second vocab size issue that could impact datastore writes, which the most recent commit may have fixed.

Thank you for your help! I retry the newest llama3 branch and it works fine. It seems that additional tokens added by Qwen tokenizer cause these problems.


An error occurred while Rails/DeprecatedActiveModelErrorsMethods cop was inspecting

Expected behavior
After upgrading from Rails 6.0.5 environment to <IP_ADDRESS>, running Rubocop results in an error.
(ruby 3.1.2)
When running in a Rails 6.0.5 environment, no errors occur.
bundle exec rubocop

Actual behavior
An error occurred while Rails/DeprecatedActiveModelErrorsMethods cop was inspecting
Errors are usually caused by RuboCop bugs.
Please, report your problems to RuboCop's issue tracker.
https://github.com/rubocop/rubocop/issues

Mention the following information in the issue report:
1.29.1 (using Parser <IP_ADDRESS>, rubocop-ast 1.29.0, running on ruby 3.1.2 x86_64-darwin21)

The same error occurs when running on CircleCI
1.29.1 (using Parser <IP_ADDRESS>, rubocop-ast 1.29.0, running on ruby 3.1.2 x86_64-linux)
The error occurred with the following code
 errors.keys.any? { |key| ERROR_KEYS.include?(key) }

ERROR_KEYS is array.
Steps to reproduce the problem
This is extremely important! Providing us with a reliable way to reproduce
a problem will expedite its solution.
RuboCop version
$bundle exec rubocop -v
1.29.1
(using Parser <IP_ADDRESS>, rubocop-ast 1.29.0, running on ruby 3.1.2 x86_64-darwin21)

$bundle exec rubocop -v

The issue cannot be reproduced. Can you provide the output of rubocop -V instead of rubocop -v? Note that it is uppercase V.

I will close this due to a lack of information to reproduce. If the issue persists even after upgrading to the latest RuboCop Rails, please add more information and reopen the issue. Thank you.


Gerhard2017

FBrf0237057
Looks like only A09a and A09c are new - actually these are synonyms for Basins 2 and 4, respectively (added).
Subclasses and new classes added where needed (including supplementary)
Lots of description and comparison between L1 and L3 - this is actually in two different segments (A1 v A3) so comparisons not useful.
Added synapsed_by relationships where this is >=5% of cell's postsynapses (from class IV MD cells).
Other connectivity info available, but given as absolute numbers rather than proportion, no maybe we shouldn't add this.

Closing as all useful info now in ontology.


[Component] Scroll animations

Update component tokens to Carbon v11. Refer to migration docs here.

Hi, can I work on this?

Hi, can I work on this?

Sure!


checkdecls needs to be reenabled when lean4#6325 is merged

For reasons I don't understand (but many do), CI is currently failing because of
buzzard@buster:~/lean-projects/FLT$ leanblueprint checkdecls
uncaught exception: parser 'subscript' was not found
Command 'lake exe checkdecls blueprint/lean_decls' returned non-zero exit status 1.
buzzard@buster:~/lean-projects/FLT$

Apparently this will be fixed by https://github.com/leanprover/lean4/pull/6325 . Until that's merged, I have temporarily disabled checkdecls in #273 .

Closed by #297


Do you have any examples of what these nodes do?

basically the title

Another way to select latent image size base on pixel resolution.

Would this serve, for example, to standardize pixel size to generate pixel art?

Would this serve, for example, to standardize pixel size to generate pixel art?

Would be an interesting idea to try but for now it's just a simple size picker.


[tinytoml] Initial port

This is a port for https://github.com/mayah/tinytoml.

LGTM, thanks for the PR!


Porting to English/Global FFXIV + iOS/Android App

Hi there,
I was wondering if you would like some help to port this to English and also implement an iPhone/iOS and Android phone application with it so that you can see the status of DF/Fates on your mobile device and have it vibrate/notify you when your queue pops.
I can see this works already with the main English version of Final Fantasy and I've been wanting to make a phone notifier app for Duty Finder forever, so I thought it could be a cool addition?
I can develop and host the mobile application if you can setup the endpoints for it within the app. I should be able to translate all the korean to english as well.

Hi, Roxas.
Thanks for being willing to contribute!
Recently, some efforts has been made to support ffxiv 4.0 for Koreans who playing in global server (see #43, #44, #45, #46), so porting to global ffxiv should be done in short terms.
Translations of duty/fate name should be easy since it can be unpacked from the ffxiv data, so the program interface is the only thing need to be translated.
Creating mobile apps for this project would be awesome, though I though creating a native app for this might be too overkill. I though a simple web app with login feature would be enough. However, sending a push notification, which is an important feature, is not supported in web apps. In that case it would be good to create a native mobile app.
I can create a api endpoint for that so you can develop mobile app with that, but there are one restriction that I want to make: please make it open source. And of course, please do not make any profit of it (it is also a violation of Square Enix ToS).

Making it open source shouldn't be toooo difficult, i would have to omit any publishing info on it before pushing it up though. And of course it would be non-profit as well.

Hello.
I'm working on Global Server support. But, I won't work on Fate feature, so Fate notification support for Global Server can take a long time.

Hi!
I love that you did this :) I've been working on something as well; but it's not working anymore :(
https://github.com/Icehunter/machina
Maybe we could combine some ideas? :D I work on FFXIVAPP/Memory reading as well.

The new version that can be used with both Korean and Global server is released as v20170904.1
https://github.com/devunt/DFAssist/releases/tag/v20170904.1


[BUG/Feature Request] Unable to use Batteries in Powered Armor

If a powered armor is set to use Charges, when you hit the reload button it will split a stack of batteries, but won't slot the battery in the powered armor.
Steps to replicate:

Drag Sci-Shield Unit Powered armor from compendium
Set Powered armor to use charges
hit the "Reload" button on the powered armor while having an appropriate battery in your inventory
If the battery is in a stack, 1 will be separated, but battery will not be slotted into the armor

This is an issue with the item in the compendium, rather than a system bug. The item needs to be set to use charges AND have a container section added that accepts ammunition in order for it to work, but it looks like when it was entered that second part was missed.

Completed by #1421


[harfbuzz] Update to 8.5.0

[x] Changes comply with the maintainer guide.
[x] SHA512s are updated for each updated download.
[x] The "supports" clause reflects platforms that may be fixed by this new version.
[x] Any fixed CI baseline entries are removed from that file.
[x] Any patches that are no longer applied are deleted from the port's directory.
[x] The version database is fixed by rerunning ./vcpkg x-add-version --all and committing the result.
[x] Only one version is added to each modified port's versions file.

Feature test passed with following triplets:
x64-windows
x64-windows-static


Create new customers all the time when a subscription is created

I am trying out Stripe checkout client-only integration. I am facing an issue which actually creates a new customer after checkout even though a customer with the same email id exists. Is there a way to handle it in a way that if a customer already exists with the same name add the subscription to the existing customer or create a new customer and add the subscription to the new customer

Hi @lijoev! If you want to reuse a Stripe customer you need to use the client-server integration, e.g. https://stripe.com/docs/payments/checkout/subscriptions/starting#handling-existing-customers
The client-only integration will make a new customer for each transaction

Hi @adreyfus-stripe! Thanks for the help. Again saving card details for future purpose is having an issue. Card is getting saved but how can I use the saved card during checkout. I am using python client-server integration. I need to show the users their saved cards and if they enter another card details it should be saved. I need to list all the saved cards of the user if possible. Is there any way for that.

@lijoev This isn't perfect, but we have a sample that shows listing a couple saved cards in a dropdown and then charging it offline: https://github.com/stripe-samples/charging-a-saved-card
Basically you can list all the PaymentMethods saved to your Customer: https://stripe.com/docs/api/payment_methods/list
and then charge the PaymentMethod the Customer selects.
This sample talks about charging a customer when they are "off-session" aka not in your app and available to authenticate. In this case your customers are "on-session" and able to authenticate if the bank requires it, so be sure to check the status of the PaymentIntent and call confirmCardPayment if the PaymentIntent requires it.
If they want to pay with a new card, you can kick them into the Checkout flow and pass in their Customer.
Also sharing (to you and to anyone else reading this!) that we have an active IRC channel with developers ready to answer questions specific to your integration, I think they'll really help when you get in the weeds. The channel name is #stripe and an easy client to access it is available on the web at https://webchat.freenode.net/


s3: Use profiles when selecting credentials from ~/.aws/credentials

AWS tooling which reads credentials from ~/.aws/credentials also supports profile selection. This allows folks with multiple AWS accounts to select which account credentials they wish to use for particular tasks. This is usually specified by either configuration, with with the AWS_PROFILE or AWS_DEFAULT_PROFILE environment variables.
See http://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html#cli-multiple-profiles
It would be nice if the s3 section included a configuration option for profile, or the registry honored the AWS_PROFILE environment variable.

@leedm777 Most of this behavior is provided by AdRoll/goamz and most of it works. Did you try to provide the AWS_PROFILE environment variable and not have it work? Is that a standard variable?

Did you try to provide the AWS_PROFILE environment variable and not have it work?

Correct.

Is that a standard variable?

Yes, both AWS_PROFILE and AWS_DEFAULT_PROFILE, which apparently do the same thing.

@leedm777 Ok. Do you mind filing this over in AdRoll/goamz, referencing this issue? For proper support, it really needs to be implemented in the library.


Opened menu is cut off by parent

If the menu is too far to the end of the parent component, the menu will be cut off by the parent

Steps to reproduce:

Click on the + menu in PowerTransformer (for example).
It opens correctly
toggle the functions button a couple of times
Click on the + menu in PowerTransformer (for example)
It opens incorrectly (see screenshot above)

@pascalwilbrink Im not able to reproduce this. Can you check to see if this still happens to you?

https://github.com/openscd/open-scd/pull/1110#pullrequestreview-1222622481 Might be the solution


Run migrations in lexicographic order of filename + don't skip over previously failed migrations

Two improvements:

Run migrations in lexicographic order of filename, rather than in an unspecified order as before
Don't skip over previously executed migrations that failed before

Thanks for your contribution, I have release 0.6.0 with the change!


Disable references code lens

Environment data
dotnet --info output:
.NET Command Line Tools (2.0.0-preview1-005977)

Product Information:
 Version:            2.0.0-preview1-005977
 Commit SHA-1 hash:  414cab8a0b

Runtime Environment:
 OS Name:     linuxmint
 OS Version:  18.1
 OS Platform: Linux
 RID:         linuxmint.18.1-x64
 Base Path:   /usr/share/dotnet/sdk/2.0.0-preview1-005977/

Microsoft .NET Core Shared Framework Host

  Version  : 2.0.0-preview1-002111-00
  Build    : 1ff021936263d492539399688f46fd3827169983

VS Code version: 1.14.0-insider
C# Extension version: 1.10.0
Steps to reproduce
Open any file, see references code lens
Expected  behavior
I would like a way to disable the code lens.
Actual behavior
According to Microsoft/vscode#10238 there is no way to disable references from within vscode. Could this be an option in omnisharp.json so I can use the xunit codelens but not the references codelens?

Good request. Thanks!

+1

+1

+1


monitor_cert_days_remaining metrics

⚠ Please verify that this question has NOT been raised before.

[X] I checked and didn't find similar issue

🛡 Security Policy

[X] I agree to have read this project Security Policy

📝 Describe your problem
i am trying to get the monitor_cert_days_remaining metric to fetch from promenteus, but there is no such data in uptimekuma metrics nor in prometheus
📝 Error Message(s) or Log

🐻 Uptime-Kuma Version
Version: 1.22.1
💻 Operating System and Arch
Version: 1.23.12
🌐 Browser
brave
🖥 Deployment Environment
Docker

Cannot reproduce on my system (runnting uptime kuma 1.23.12):

[!TIP]
The metric is not avaliable if the certificate expiry has been disabled via either of these settings on each monitor:

About the version you reported: We don't support 1.22.1 anymore => please update
PS: You forgot to fill out Operating System/Arch and Deployment Environment

Cannot reproduce on my system (runnting uptime kuma 1.23.12):
Tip
The metric is not avaliable if the certificate expiry has been disabled via either of these settings on each monitor:
About the version you reported: We don't support 1.22.1 anymore => please update
PS: You forgot to fill out Operating System/Arch and Deployment Environment

I've turned on the feature you mentioned, but still no data is showing up in the metrics

Bit lost what is different.
Just to be sure:

The metrics page is cached for I think 1m or 5m. Did you wait before checking that metric does not exist?
Did you hit 'Safe' at the bottom of the edit page? Our UX is a bit bad on this one imo

I still don't get those metric values and I'm stuck here


Could you add your license details to Github?

Hi,
Could you add your license details to Github?
Thank you!

@kakaying thanks for bringing attention to this 👍


Optimize "Validating component" step.

Validation
 ✓  Validating component [6s]
 ✓  Checking component [916ms]

Configuration changes
 ✓  Applying configuration [937ms]

Pushing to component mynode of type local
 ✓  Waiting for component to start [113ms]
 ✓  Copying files to component [6s]
 ✓  Building component [846ms]
 ✓  Changes successfully pushed to component

I can't take 6s to perform basic validation.
There are multiple checks that are happening there.
I can see options on how to speed up checks if builder image exists, and if the version exists, those functions is using List calls, there are better ways to check (using just Get).
I'm sure that there will be more to speed this up.
We should get this under 1s

@kadel I see two exist calls during validation
https://github.com/openshift/odo/blob/ca5e619292a302855a7357dd8fa9905715ffc6e5/pkg/odo/cli/component/push.go#L133
and
https://github.com/openshift/odo/blob/ca5e619292a302855a7357dd8fa9905715ffc6e5/pkg/component/component.go#L513
I also two calls to the catalog list functions
https://github.com/openshift/odo/blob/ca5e619292a302855a7357dd8fa9905715ffc6e5/pkg/catalog/catalog.go#L78
and
https://github.com/openshift/odo/blob/ca5e619292a302855a7357dd8fa9905715ffc6e5/pkg/catalog/catalog.go#L58
Removing these can also speed up things.

component.Exists is being resolved here: https://github.com/openshift/odo/pull/1905


refactor: change all the println! to log

coverage: 86.331% (-0.4%) from 86.779%
when pulling 6d45cae5ec04212a66cdf00c305f35cf22da44b9 on log
into f4906df591b178c2d075a98c2a700e9d2b23ad66 on master.


Toc toggle not working on new version

I have a problem with my jupyter book html render where the headers on the side bar menu does not expand/collapse. I am having this issue with the chapters/sections.
Here is my _toc.yml:
format: jb-book
root: intro
parts:
- captions: Mathematical Concepts
  chapters:
  - file: index_m
    sections:
    - file: Probability
    - file: linear_algebra
  - file: index_ul
    sections:
    - file: libraries

I should have index_m wrapping the content from the sections probability and linear algebra but it does not expand or collapse.
I am using the latest version of Jupyter 1.0

I'm having the same issue


Result implementation

Typing need to be reviewed later (probably can be improved).
Based implementation should be completed.
Needs testing

Merging. The remaining thins will be fixed/implemented when Result #1 is merged


the index of child in the parent can change?

I found two strange phenomenon:
1.for the  new open Frame Notification Bar in IE, the element index in the bar can change.for example,when I inspect the save button, maybe the container is the first child of it's parent,but when I use FindAll  to find all it's parent's chilren ,maybe the container is not the first child。so ,I wan't to know why;
2.also when I inspect the element,I can get the element's Properties,but when I Running the process ,when the  Frame Notification Bar is ReOpen, Some properties lose， so I can't match the element .why?

Unfortunately it is up to the application on how it presents the controls to FlaUI/UIA. So if they have a random order, the order can change. Can you show an example (FlaUInspect screenshot) of the properties you loose?


Fix layout on share an Insight

Who is this PR for?
educators
What problem does this PR fix?
Layout bug in https://github.com/studentinsights/studentinsights/pull/1953.
What does this PR do?
Fixes it.
Screenshot (if adding a client-side feature)
After:

Checklists
This feature is isolated from production code.

selfie


Update Nylas N1 to Version 0.3.27-1c2a936

Thank you for the contribution. It was merged directly as e935c70574cb3583af9d9fb31bffe0c2f45a284a to keep commit history cleaner. Your contribution is still credited to you.


When using "centimeter scale" on UsdAsset, camera clipping planes are not scaled.

If I import a scene authored in centimeter scale, I expect the camera clipping planes (10,50000000) to be converted to (0.01,50000). They are not,

To create a test scene:

Import the USD Kitchen set (do NOT set the units)
Setup a camera with clipping planes
Place both the kitchen and the camera under a common parent GameObject
Tweak camera planes to fit to the kitchen set
Export the parent object
Import the newly exported USD scene
Set scale to centimeters
Note that the clipping planes do not match the original

With fix:


Support intellisense for es5 without hacks

I am working with es5 project without transpilers. When I want to use external library and use intellisense in Visual Studio Code I would need to use import (which would not work with es5).
Example: I want to use axios library so I install it with npm, add script tag reference to axios.js and write the application code in app.js. I can get intellisense when I do this
import axios from 'axios';
but it would fail with es5.
I did found a hacky workaround that gives me intellisense would and not fail with es5:
var axios = axios || require('axios').default;
But at least for me this looks too hacky to me just for intellisense :)
I also noticed that for example jquery intellisense also works without import and think the reason is that jquery type definition file does not use module syntax (export) and things are added into global scope. So I am also wondering would it be somehow possible to create my own type definition file to add things into global scope.

Thank you for the answer. Created new question to stackoverflow (https://stackoverflow.com/questions/53373960/how-to-get-intellisense-for-external-javascript-libraries-with-es5-and-visual-st). Also figured out how I can bring types into global context and created new issue for documentation improvement https://github.com/Microsoft/vscode/issues/63494


Move raw data to somewhere public

Currently all raw data used for processing in ndmg lives on brainstore. From bc1, this can be accessed at:
/brainstore/MR/data/{datasetname}/raw/
The public directory we host the graphs at is also on brainstore, and similarly can be accessed at:
/brainstore/mrocp/data/share/dti/{datasetname}/...
Move them at your leisure :)
@MrAE @jovo

@loftusa i doubt the raw data is still there, @falkben would know.
but we should keep track of where the raw data are.
i believe m2g.io does do that for all the public processed data.
we don't really have private data right now, so we don't need to worry about that for now,

@falkben would it be useful for @loftusa to make a list of all the data in that bucket?
(since apparently not all of it is available through that website?


Bug?:  Mimics aren't ambushing

Mimics aren't ambushing, they are pretending to be hidden.  May or may not be intended, but I feel like they have the advantage of numbers right now.

https://discord.com/channels/214523379766525963/257987178834034688/973851968617480263

Earlier on, when the mimics were behaving normally, clicking on hidden mimics resulted in clicking a copy of the ancient lamps.  Now, while the pawn is meleeing the mimics, I can select the mimics in addition to the ancient lamp under them.

The mimics didn't wake up when they had an unconcious body next to them, or when that body dropped dead.


Use enums instead of number constants

This adds a dependency on enumeratum to replace all "named number" types with enumerations. It also provides convenient serialization for Play JSON for the enum values.
Probably I missed some type, I will recheck tomorrow (they weren't all in types.scala).

Cool!
I'll take the opportunity to also promote my company's enum library https://github.com/buildo/enumero
It has way fewer features than Enuneratum, but it's way less boilerplatey.
I'm fine with Enuneratum by the way, just wanted to suggest a possible alternative

I ❤ this PR

This is ready. The more I read langserver code, the more I want to refactor it 😄 But I'm trying hard to keep PR changes focused.
@gabro nice! I'll take a closer look at this library. I'd vote though for staying with enumeratum here, because I think it just fits in with very minimal changes and "out of the box" serialization. I think there's almost no boilerplate added (diff says +206 −170 and most added lines are new scaladocs).
As far as I understand, with enumero (I like the name btw) we would need to use @indexedEnum which requires macro-paradise plugin, right?
What do @olafurpg and @ShaneDelmore think about it?

Sure, @laughedelic, I'm OK with Enumeratum. The boilerplate is not in addition, rather in potential reduction, but it's not really worth the effort right now ;)
And yes, indexedEnum would be what we need. Enumero is focused on syntax, so it requires a macro annotation. I also think it's better not to require an extra dependency on paradise.
Full force ahead, and nice refactor!

I prefer to avoid a dependency on scalamacros/paradise if possible, I'm still married to IntelliJ which can't expand those public members giving me red squigglies. I think enumeratum is a good fit 👍

I’m a big fan of enumeratum as well. Used it in the past with much success, it has a responsive maintainer, and integrates with everything I have wanted it too in the past like Json libs.


Compiler error/warning in duk_debug_macros.c

When I compile Duktape from source, my compiler (gcc 5.4.0) throws an error at the following line:
https://github.com/svaarala/duktape/blob/master/src-input/duk_debug_macros.c#L44
The text of the message is:
CC src/duktape.o
duk_debug_macros.c: In function 'duk_debug_log':
duk_debug_macros.c:44:31: error: left-hand operand of comma expression has no effect [-Werror=unused-value]
duk_debug_macros.c:44:41: error: left-hand operand of comma expression has no effect [-Werror=unused-value]
duk_debug_macros.c:44:51: error: left-hand operand of comma expression has no effect [-Werror=unused-value]
duk_debug_macros.c:44:61: error: left-hand operand of comma expression has no effect [-Werror=unused-value]
duk_debug_macros.c:44:21: error: statement with no effect [-Werror=unused-value]

I have worked around it with the following temporary change:
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wunused-value"
	DUK_USE_DEBUG_WRITE(arg_level, arg_file, arg_line, arg_func, arg_msg);
#pragma GCC diagnostic pop

Thanks @nkolban, these are sometimes a bit painful to eliminate :) There's already a configuration option DUK_USE_GCC_PRAGMAS in duk_config.h so making those pragmas conditional to GCC (and Clang) would be relatively straightforward.

I noticed these a while ago but forgot to report them.

There are a few other warnings that ocme out in specific configurations. I usually fix the known issues right before a release - but I'm also happy to fix them earlier if they annoy someone :-)

I'm getting a similar warning with duktape 2.0.0 release tag (with gcc 4.9.4, cross compiling to windows using MXE), I hope it's the right place to report it:
/path/to/duktape.h:444:23: warning: right-hand operand of comma expression has no effect [-Wunused-value]
  (duk_throw_raw((ctx)), (duk_ret_t) 0)

Should this have been fixed?

I'll open a separate issue for these - ultimately getting a 100% warning free compilation with all compilers is very difficult, so it's not a "release blocker" like target.

So the issue here is that duk_error() and duk_throw() have a technical return / result value so that you can do:
return duk_error(ctx, ...);

The duk_error_raw() and duk_throw_raw() functions are no-return because that allows better code to be generated. But that prevents adding a return value to their prototype because some compilers will warn about that; so they need to return void. To allow the return-error idiom to work they are implemented as comma expressions, which then causes an unreachable code warning with some compilers.
One way to eliminate these errors would be to remove the no-return attribute - but this leads to worse generated code and causes awkward issues in call sites where the compiler won't be able to determine that an error stops execution. This in turn may cause (unnecessary) warnings related to uninitialized variables and such.

These warnings are ultimately different from the original reported issue but similar enough to be covered by the same issue I think.

Just my two cents: Personally I'm not a big fan of the return duk_error(...) idiom: Looking at it from the POV of someone unfamiliar with Duktape, it implies that the error calls actually do return without throwing, e.g. by setting an error flag which gets picked up when the Duktape/C call returns.  At least SpiderMonkey actually does work this way for native calls; unsure about V8.

The reason this idiom is used is to signal to the compiler that execution won't continue after the error call. Not all compilers support "no-return" functions which then causes weird issues with incorrect warnings etc.
The idiom actually comes from Lua, where it is very commonly used, e.g. as:
if (something) {
    return luaL_error(L, "failed: %d", rc);
}

It's shorter than:
if (something) {
    luaL_error(L, "failed: %d", rc);
    return;  /* Needed to avoid warning with some compilers */
}

Skipping the return generates worse code and causes unnecessary warnings. For example:
int flag;
if (something) {
    luaL_error(L, "failed: %d", rc);
} else {
    flag = 0;
}

A compiler will usually report 'flag' as being used uninitialized which is incorrect because the error throw never returns. But if the compiler doesn't know it, it needs to handle the two control flow paths.
You can often rework the code to avoid the warnings, e.g. initialize the flag to 0 on declaration, but it still ultimately causes unnecessary code to be generated and requires unnecessary warning fixes in the call site.

@nkolban Regarding the original issue reported (issue description), DUK_USE_DEBUG_WRITE() is an application supplied macro so I think the problem may be related to how it is defined? The call site in Duktape is simply:
        arg_level = (long) level;
        arg_file = (const char *) file;
        arg_line = (long) line;
        arg_func = (const char *) func;
        arg_msg = (const char *) buf;
        DUK_USE_DEBUG_WRITE(arg_level, arg_file, arg_line, arg_func, arg_msg);

and the whole code block is only enabled when DUK_USE_DEBUG and DUK_USE_DEBUG_WRITE are both defined. Could you check your DUK_USE_DEBUG_WRITE definition?

Re: the other issue:
/path/to/duktape.h:444:23: warning: right-hand operand of comma expression has no effect [-Wunused-value]
  (duk_throw_raw((ctx)), (duk_ret_t) 0)

This is a rather thorny issue. It'd be easy to resolve by removing the noreturn attribute from error throw functions but that's not ideal. I tried resolving the issue with pragmas, but even _Pragma cannot portably appear inside an expression. For example, if the application call site is:
return duk_error(ctx, ...);

and duk_error() expands to a comma expression surrounded by _Pragmas, it will be rejected by GCC because the pragmas are inside an expression rather than between statements. So, not yet sure if/how to resolve the warning (beyond removing the noreturn which I find less than ideal).

@svaarala Regarding this error:

warning: right-hand operand of comma expression has no effect [-Wunused-value]

It seems that newer versions of gcc now produce this warning by default.    Needless to say, that's a major platform.  Not sure if anything can be done about it in practice though, as you say all the solutions to fix the warning are suboptimal. :(
IMO this is a lint-level warning and should not be shown by default.  Oh well.

@fatcerberus Yep, I'm aware of that and I get the warnings too when I updated to a newer Ubuntu version.

There are no -Wsign-conversion warnings in Duktape itself at present, the cases where they might occur are places where e.g. duk_error() is called without return duk_error(...);. These are silenced using:
(void) duk_error(...);


Reviews should specify the app version they apply to

Context:

As a user of an app, I want to have a sense of which reviews are relevant to me consuming the latest version of an app.
As an app author, when I fix a bug in an app and push a review to the app market, the pain of seeing bad reviews that no longer affect my users is diminished.
#54 requested newest-first as well as this feature; I'm splitting the version-number stuff into this separate issue since it requires some design input.

Proposal:

When a review is being submitted, a text field should appear asking the user what version of the app this review applies to.
This should be pre-filled with the appMarketingVersion that is current for this app in the app market. (IMHO it shouldn't be the versionNumber because the user never sees versionNumber in the Sandstorm shell.)
We should store this with a review.
When rendering reviews, if the appMarketingVersion in the review is not equal to the current appMarketingVersion, then we show a label such as "For an older version" indicating that this review isn't current.
When rendering reviews, we do not show the full version info that the person placed into that text field.

References:

I believe the app's current appMarketingVersion data is available to the app market based on https://github.com/sandstorm-io/sandstorm/blob/432be37489b210b19d9677f29befcd5c910a0f76/src/sandstorm/app-index/app-index.capnp
The Google Play Store permits someone surfing reviews to filter by "just the latest version". See this blog post for a screenshot
The Google Play Store shows that a review is "For an older version". Screenshot here; see context of that screenshot. See other similar article with similar screenshot if you want.

Next steps:

@neynah would need to make a mockup so that there is a visual design that is consistent with the app market, rather than my sort-of-random proposal above (which admittedly is based on the Google Play store).

Just an editable field of text. Perhaps we should allow users to submit it with an empty field (in the case where they may not know the version number)?

Does this need to be editable, or should it just use the current appMarketingVersion? People generally should not be submitting reviews on old versions of an app.

@ocdtrekkie i think in automatically add version, not editable. Copy from app manifest and places at review metadata.


Simplify SBI implementation using derive macro RustSBI

This pull request simplifies SBI implementation for struct VM by using Forward struct on latest RustSBI library. The Forward struct focuses to hypervisor development, where inner SBI calls can be forwarded to outer SBI environment. Reusing RustSBI Forward saves a lots of code on actual hypervisor development.

LGTM! Thank you for your contribution to the hypercraft project. This PR eliminates the need for RISC-V VMM developers to write repetitive SBI-related code. Below is a screenshot of Linux running on arceos + hypercraft:


Loading error

Game: 1.10.1-f3
Traffic Manager 1.10.11
Error message:
A Mod caused an error [System.Exception]
Details:
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.UnauthorizedAccessException: Access to the path "C:\Program Files (x86)\CorePack\Cities Skylines\Cities_Data\TMPE.log" is denied.
at System.IO.FileStream..ctor (System.String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, Boolean anonymous, FileOptions options) [0x00000] in :0
at System.IO.FileStream..ctor (System.String path, FileMode mode, FileAccess access, FileShare share) [0x00000] in :0
at (wrapper remoting-invoke-with-check) System.IO.FileStream:.ctor (string,System.IO.FileMode,System.IO.FileAccess,System.IO.FileShare)
at System.IO.StreamWriter..ctor (System.String path, Boolean append, System.Text.Encoding encoding, Int32 bufferSize) [0x00000] in :0
at System.IO.StreamWriter..ctor (System.String path, Boolean append) [0x00000] in :0
at (wrapper remoting-invoke-with-check) System.IO.StreamWriter:.ctor (string,bool)
at System.IO.File.AppendText (System.String path) [0x00000] in :0
at CSUtil.Commons.Log.LogToFile (System.String log, LogLevel level) [0x00000] in :0
at CSUtil.Commons.Log.Info (System.String s) [0x00000] in :0
at TrafficManager.TrafficManagerMod.OnEnabled () [0x00000] in :0
at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (object,object[],System.Exception

A Mod caused an error [System.Exception]
Details:
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.TypeInitializationException: An exception was thrown by the type initializer for TrafficManager.State.GlobalConfig ---> System.UnauthorizedAccessException: Access to the path "C:\Program Files (x86)\CorePack\Cities Skylines\Cities_Data\TMPE.log" is denied.
at System.IO.FileStream..ctor (System.String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, Boolean anonymous, FileOptions options) [0x00000] in :0
at System.IO.FileStream..ctor (System.String path, FileMode mode, FileAccess access, FileShare share) [0x00000] in :0
at (wrapper remoting-invoke-with-check) System.IO.FileStream:.ctor (string,System.IO.FileMode,System.IO.FileAccess,System.IO.FileShare)
at System.IO.StreamWriter..ctor (System.String path, Boolean append, System.Text.Encoding encoding, Int32 bufferSize) [0x00000] in :0
at System.IO.StreamWriter..ctor (System.String path, Boolean append) [0x00000] in :0
at (wrapper remoting-invoke-with-check) System.IO.StreamWriter:.ctor (string,bool)
at System.IO.File.AppendText (System.String path) [0x00000] in :0
at CSUtil.Commons.Log.LogToFile (System.String log, LogLevel level) [0x00000] in :0
at CSUtil.Commons.Log.Warning (System.String s) [0x00000] in :0
at TrafficManager.State.GlobalConfig.Load (System.DateTime

Can somebody help me?

Make sure the game can write to the log file. The error you're getting is saying that it's trying to write to a log file, but it doesn't have permission.

https://github.com/Sandroo84
Did you resolve this issue?  I have the same issue.

@Sandroo84 did you resolve this issue?  I have the same issue and would like help with it.

Check your file permissions. TMPE needs to be able to write to that file.


Creating a grid below you with FloorTileItemComponent crashes the client.

Because of a race condition. The client tries to parent you to the grid before the grid entity is even replicated on the client.

Can you link the relevent files?

It's just... FloorTileItemComponent.cs


Prepare for readthedocs

Ran prettier on all the JS and Markdown files
Fixed some gramatical errors
Update some of the documentation to point to new links
Add MkDocs, Readthedocs config

Okay, most of this should work fine. I do need someone to test it before this is merged though.
Documentation works great and looks awesome. You can test using python3 -m mkdocs serve on your machine after installing mkdocs.

Documentation now works! 🎉
https://pebblejs.readthedocs.io


t.same() and sparse arrays

@twada I think this is an issue of power-assert, but I don't know which package is responsible for it.
test(t => {
	const data = [];
	data[1] = 'unicorn';
	t.same(data, ['unicorn']);
	t.end();
});

Result:
  ✖ [anonymous]
  t.same(data, ['unicorn'])
         |
         ["unicorn"]

  1 test failed

What I expected:
  ✖ [anonymous]
  t.same(data, ['unicorn'])
         |
         [ , 'unicorn']

  1 test failed

@schnittstabil Thank you for reporting! I'll fix it ASAP.
Feel free to submit issue to top the level project power-assert when you are unsure where to report.

Just released stringifier 1.2.1 to fix this bug.
stringifier is a dependency of power-assert-formatter, which follows versionings to semver, so this bugfix is already applied to new installation of AVA.
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>
@schnittstabil Would you check the fix?

@twada Thanks a lot. Only the quotes does not match.

@schnittstabil Unfortunately, string does not have any information of its raw literal value such as quotes (single-quoted, double-quoted and template literals), it won't match. I'm using double quotes as the default stringify strategy that as same as JSON.

stringify strategy that as same as JSON

That's reasonable. Thanks again.


add OWNERS_ALIASES support

OWNERS_ALIASES groups are needed for fair blunderbuss review requests.

/cc @dtantsur @lentzi90

/approve


Feature/refactoring

Improved .gitignore
added analysis_options.yaml for lint
This pull request it preparation to new feature/shimmer_presentation_state that will be introduced in new commit

Cool, thanks for your contribution

I don't have experiences with analysis tools. Pardon my ignorance, could you explain the purpose of analysis_options.yaml you add?

I don't have experiences with analysis tools. Pardon my ignorance, could you explain the purpose of analysis_options.yaml you add?

Thx for your response). I'll trie to explain usage of analysis_options.yaml . From the box Dart/Flutter project has some basic linter. That make hints about  empty else code block or when you call a method without a required parameter.
And this is not enough. Cause with dart we can write bad code easily) Especially in open source projects. Thats why I decided to add linting tools. analysis_options.yaml - is a configuration file with default rules that linter can parse. This file is from official flutter  repo
Some resources that should make it more clear:

medium post
official dart doc
Hope I've provided enough information)

Cool


include "typings" field in package.json

Now that the TS compiler supports module resolution via node, it would be nice not to use TSD to install the typing but instead have them included with the npm package.

We don't have any typings. What would we put in the field?

@dougwilson I am trying to figure that out myself ... It should be documented somewhere in the Wiki for TypeScript.
No, you do not have typings, but the community has created them on TSD (DefinitelyTyped) to help with TS development. And it would be nice to provide that with your package.
I'll investigate further to see how do you actually do it.

Thanks! I haven't used TypeScript and have no idea how it works (and not really interested in learning it or even have the time to). I'm open to adding this, but it would have to be something completely contributed by you and part of the contribution would have to also update the CI to ensure that the typings are always correct and do not become out of date as we alter the API in some fashion.

Hi @rolandjitsu , I'm' going to close this for now, as there doesn't seem to be any interest in contributing these, as I have not seen a further response or a pull request.


Do not sanitzie secrets with 3 or less chars

as this secrets have to low entropy they can not be valid secrets and e.g. make log only unredable
just add a secret with value a to a repo an run a pipeline ...

Sponsored by Kithara Software GmbH

Codecov Report
Attention: 47 lines in your changes are missing coverage. Please review.

Comparison is base (aeb7bcb) 34.10% compared to head (aaeccde) 33.72%.
Report is 18 commits behind head on main.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2680      +/-   ##
==========================================
- Coverage   34.10%   33.72%   -0.38%
==========================================
  Files         205      212       +7
  Lines       13125    13454     +329
==========================================
+ Hits         4476     4538      +62
- Misses       8296     8565     +269
+ Partials      353      351       -2

Files
Coverage Δ

pipeline/backend/common/script.go
0.00% <ø> (ø)

pipeline/backend/common/script_posix.go
100.00% <100.00%> (ø)

pipeline/shared/replace_secrets.go
100.00% <100.00%> (ø)

server/forge/github/parse.go
89.07% <ø> (ø)

server/model/secret.go
49.01% <ø> (ø)

server/model/step.go
66.66% <ø> (+66.66%)
:arrow_up:

server/store/datastore/server_config.go
70.00% <100.00%> (+16.66%)
:arrow_up:

server/store/datastore/step.go
89.58% <ø> (+24.00%)
:arrow_up:

server/api/repo.go
0.00% <0.00%> (ø)

server/api/hook.go
0.00% <0.00%> (ø)

... and 2 more

... and 7 files with indirect coverage changes

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

Do we need security (it was and is kinda secure before and now) and breaking (what should the user change / be careful of) labels?

well it breaks with how it did behave in the past ... so we need that label at least - if we should add security ... well I'll go with your decision :)


Report durations

Show the time spent doing downloads
It can be useful to know how long it takes to do a download, and
similarly while we use this to track installs, to do installs.
Looking at this I identified that if no data is received for a second
the current code overestimates the download performance (the missing)
seconds are elided and not counted towards averages. I've made a note
but fixing it is a different, larger change.

This is a follow on branch to https://github.com/rust-lang/rustup.rs/pull/1836 - the output looks like
target\debug\rustup.exe install nightly
info: syncing channel updates for 'nightly-x86_64-pc-windows-msvc'
info: latest update on 2019-05-07, rust version 1.36.0-nightly (a19cf18c7 2019-05-06)
info: downloading component 'rustc'
 60.7 MiB /  60.7 MiB (100 %)   2.8 MiB/s in  23 s ETA:   0 s
info: downloading component 'rust-std'
 55.2 MiB /  55.2 MiB (100 %)   2.7 MiB/s in  21 s ETA:   0 s
info: downloading component 'cargo'
  2.9 MiB /   2.9 MiB (100 %)   2.7 MiB/s in   1 s ETA:   0 s
info: downloading component 'rust-docs'
 11.0 MiB /  11.0 MiB (100 %)   2.8 MiB/s in   4 s ETA:   0 s
info: installing component 'rustc'
 60.7 MiB /  60.7 MiB (100 %)   6.2 MiB/s in  10 s ETA:   0 s
info: installing component 'rust-std'
 55.2 MiB /  55.2 MiB (100 %)   7.5 MiB/s in   8 s ETA:   0 s
info: installing component 'cargo'
info: installing component 'rust-docs'
 11.0 MiB /  11.0 MiB (100 %) 294.4 KiB/s in  37 s ETA:   0 s

  nightly-x86_64-pc-windows-msvc installed - rustc 1.36.0-nightly (a19cf18c7 2019-05-06)

info: checking for self-updates

:umbrella: The latest upstream changes (presumably #1836) made this pull request unmergeable. Please resolve the merge conflicts.


Admin UI left side nav bugs

This might be a regression too, seen this on QA:

The white borders have been fixed (deployed on dev0)

Assigning to @Coenego to assess the remaining work

This seems to be fixed in latest master, closing


[cxx interoperability] Turn off non subscript templated operators

We've updated how CXX operators get imported into swift. We don't currently support templated operators aside from the subscript operator.

@swift-ci please smoke test

@swift-ci please smoke test


Remove duplicate keycode constant for Numpad Enter key (2.1)

Fixes #9843

Note that this is a breaking change, but we would like to keep such changes on the 2.1 branch to a minimum. Instead, you might consider just changing KP_ENTER to ENTER for OSX.

@bojidar-bg OK


Error: write EPIPE

Error: write EPIPE
    at WriteWrap.afterWrite (net.js:868:14)
[nodemon] app crashed - waiting for file changes before starting...

Can you provide more context?

After sometime nodemon crashes for no reason
 DB loaded and connected!
 Agenda injected into container
Dependency Injector loaded
Jobs loaded
Express loaded
 Kendrick Server listening on port:  3000
 Agenda index ensured
(node:7196) DeprecationWarning: collection.ensureIndex is deprecated. Use createIndexes instead.
Error: write EPIPE
    at WriteWrap.afterWrite (net.js:868:14)
[nodemon] app crashed - waiting for file changes before starting...

I tested if after some time it crashed for no reason and it didn't so I can't help you :/


new do_pipeline method for multiple scenarios

This PR does the following things:

Adds a do_pipeline method for ingesting multiple scenario pipelines and dispatching them sequentially.
Reduces the number of ndraws in EpiAwareExamplePipeline dispatch on make_inference_method to just 20.
Includes the pipeline function testing (which is now much faster).

The obvious caveat here is that EpiAwareExamplePipeline type is now aimed at checking code ability to run rather than inference correctness. This affects the purpose of the end-to-end tests and should be a new issue.
Closes #348

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 93.18%. Comparing base (adb0759) to head (8e83a30).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #349   +/-   ##
=======================================
  Coverage   93.18%   93.18%
=======================================
  Files          50       50
  Lines         528      528
=======================================
  Hits          492      492
  Misses         36       36

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Fix #6738: register all forked process

We used to register ForkTests processes with RunningProcesses.add but not the Run processes.
This PR fixes #6738 by registering all processes started with Fork.apply.

Could you back port it to 1.6.x please?


Simple API key auth

Is your feature request related to a problem? Please describe.
My team decided to rewrite our emails in mjml and use 'mailing' as preview and rendering engine that we'll self host. We do not plan to use any of the features requiring DB as we don't do mailing lists so we will be calling /api/render exclusively (also because we sometimes need to attach some files). We do, however, need an authentication system. One option is to deploy app inside AWS VPC, but that would prevent us from easily accessing preview frontend (I guess this is doable but would require filtering out /api calls at route table level and that's not easy). Other option is to use some simple auth we can control through API key in env or some API call.
Describe the solution you'd like
When calling /api/render or /api/sendMail API key in header or query is checked against value stored in env variable.
Describe alternatives you've considered
Best alternative would be to allow for modification of all api calls, some kind of middleware or something without the need for contributing to Your repo for changes.
Additional context
I'm aware of existence of 'mailing-standalone-app' but that has the same problem - it's impossible to directly modify api routes.
I prepared simple fix for this here (I don't know how to attach it to the issue)

Hey @Maxtremee that setup seems good, thanks for making the issue and sharing your code. I like this idea and your env variable solution in validateApiKey seems nice and simple.
One question... what's your reason to protect the render route?
We left it open on purpose because we thought:

it leaks the same level of sensitive info as previews, which are convenient to keep public
render is super fast so an attacker trying to drain your bank account by incurring serverless function calls is going to do the same damage with or without the key
given the above, leaving it open makes it easier to get started

Do you guys have sensitive info in the templates you need to protect? I'd like to understand the use case and general threat model.

I've created this issue after conversation with our BE developer. I guess the most important thing for him was to just have it protected in some way as it will be exposed to the internet. Biggest issue I can think of is impersonation. If someone figured out the props he needs to pass he could easily render templates, for example replace some links and send emails to users. Obviusly he could do the same with just one example of our emails, but this way would be way easier and would automatically reflect any changes we make to our templates. Now that I think about all this solution with CORS-like domain restrictions would be better but I'm not sure if this something that would have to be defined in code or somewhere in the architecture/deployment.

@Maxtremee I just release 0.9.2 which includes this option!  To use: set REQUIRE_API_KEY to "true" in your environment and then set MAILING_API_KEY to the api key / shared secret you'd like to use.  render will require that api key to be passed as a query string param or header.  See docs here: https://www.mailing.run/docs/rest-api#api-keys

@Maxtremee I just release 0.9.2 which includes this option! To use: set REQUIRE_API_KEY to "true" in your environment and then set MAILING_API_KEY to the api key / shared secret you'd like to use. render will require that api key to be passed as a query string param or header. See docs here: https://www.mailing.run/docs/rest-api#api-keys

Thank you so much!


Hitting a panic within constrained delauny triangulation

I'm hitting this unwrap panic here
https://github.com/dima634/baby_shark/blob/0fa4c986c6d2a2c70f4223bddf197af3d6e5faaf/src/triangulation/constrained_delaunay.rs#L304
with this setup of geometry

whenever I move one of the overlapping vertices slightly. I'm not really sure what to do here. I can provide additional information if that's needed.

Could you provide code that reproduces this issue?

Here is the panic
thread 'Compute Task Pool (22)' panicked at 'called `Option::unwrap()` on a `None` value', /home/aviac/work/repos/baby_shark/src/triangulation/delaunay.rs:452:89

and here is a simplified test case for it
use baby_shark::triangulation::constrained_delaunay::ConstrainedTriangulation2;
use nalgebra::Point2;

#[test]
fn baby_shark_panics() {

    let points = [
        [-100.0, 0.0],
        [-100.0, 100.0],
        [0.0, 100.0],
        [0.0, 0.0],
        [0.0, -100.0],
        [100.578125, 42.601563],
        [100.0, -100.0],
    ]
    .map(Point2::from);

    let _ = ConstrainedTriangulation2::from_points(&points);

    //let edges = [
    //    (0, 1),
    //    (1, 2),
    //    (2, 3),
    //    (3, 0),
    //    (4, 3),
    //    (3, 5),
    //    (5, 6),
    //    (6, 4),
    //];
    //
    //for (a, b) in edges {
    //    cdt.insert_constrained_edge(a, b);
    //}
    //
    //cdt.triangles();
}


Update siren.json

modify the secondary notification Length to -1 (line 75) as described in the Wink documentation for the siren.  255 is not within the assigned range. http://manuals-backend.z-wave.info/make.php?lang=en&sku=Wink Siren&cert=ZC10-17065664

PR description here

-1 (signed) is 0xff and 255 (unsigned) is also 0xff. Since the parameter is marked as unsigned, the current definition is correct.