MXNET 1.0.0 - marginal performance improvement Titan V (Volta) with half precision cuda 9.0 + cudnn 7.0.5

Description
Running the following script: example/image-classification/train_cifar10.py on MXNET v1.0.0, seems to have marginal performance improvements on Titan V (Volta) cards with half precision set and CUDA 9.0 / CUDNN 7.0.5
Experimenting with half precision and without half precision we’re seeing marginal performance improvements with half-precision, actually worse performance when half-precision is set (dtype = float16) set, also tried with Titan X (Pascal), although we didn’t expect half precision to work on Pascal architecture but it did, and did much better than on volta.
This was tested with release 1.0.0
Running on a machine with CUDA 9.0 + CUDNN 7.0.5
To reproduce, one epoch on resnet for CIFAR10 script:
time python2 train_cifar10.py --dtype float16 --network resnet --num-epochs 1 --num-layers 110 --batch-size 512 --gpus 0
for Titan V (Volta) we’re getting:
~2700 samples/sec with half precision on, and ~2900 samples/sec when off. Which I believe should be the opposite if anything.
Also we’re not getting a massive speed improvement between the Titan X (Pascal) and Titan V (Volta).
for Titan X (Pascal) we’re getting:
~2600 samples/sec with half precision on, and ~2228 samples/sec when off.
The performance improvement on the Titan X (Pascal) is much better.
Environment info (Required)
----------Python Info----------
('Version      :', '2.7.12')
('Compiler     :', 'GCC 5.4.0 20160609')
('Build        :', ('default', 'Nov 20 2017 18:23:56'))
('Arch         :', ('64bit', 'ELF'))
------------Pip Info-----------
('Version      :', '9.0.1')
('Directory    :', '/home/elie/.local/lib/python2.7/site-packages/pip')
----------MXNet Info-----------
('Version      :', '1.0.0')
('Directory    :', '/home/elie/mxnet/python/mxnet')
Hashtag not found. Not installed from pre-built package.
----------System Info----------
('Platform     :', 'Linux-4.10.0-42-generic-x86_64-with-Ubuntu-16.04-xenial')
('system       :', 'Linux')
('node         :', 'zeus')
('release      :', '4.10.0-42-generic')
('version      :', '#46~16.04.1-Ubuntu SMP Mon Dec 4 15:57:59 UTC 2017')
----------Hardware Info----------
('machine      :', 'x86_64')
('processor    :', 'x86_64')
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                12
On-line CPU(s) list:   0-11
Thread(s) per core:    2
Core(s) per socket:    6
Socket(s):             1
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 63
Model name:            Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz
Stepping:              2
CPU MHz:               1397.308
CPU max MHz:           4100.0000
CPU min MHz:           1200.0000
BogoMIPS:              6999.98
Virtualisation:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              15360K
NUMA node0 CPU(s):     0-11
Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm epb intel_ppin tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid cqm xsaveopt cqm_llc cqm_occup_llc dtherm ida arat pln pts
----------Network Test----------
Setting timeout: 10
Timing for MXNet: https://github.com/apache/incubator-mxnet, DNS: 0.0608 sec, LOAD: 0.9193 sec.
Timing for PYPI: https://pypi.python.org/pypi/pip, DNS: 0.0531 sec, LOAD: 0.3470 sec.
Timing for FashionMNIST: https://apache-mxnet.s3-accelerate.dualstack.amazonaws.com/gluon/dataset/fashion-mnist/train-labels-idx1-ubyte.gz, DNS: 0.0671 sec, LOAD: 0.4028 sec.
Timing for Conda: https://repo.continuum.io/pkgs/free/, DNS: 0.0546 sec, LOAD: 0.2149 sec.
Timing for Gluon Tutorial(en): http://gluon.mxnet.io, DNS: 0.3649 sec, LOAD: 0.3953 sec.
Timing for Gluon Tutorial(cn): https://zh.gluon.ai, DNS: 0.3955 sec, LOAD: 0.8753 sec.
Package used (Python/R/Scala/Julia):
Python 2.7
Build info (Required if built from source)
Compiler (gcc/clang/mingw/visual studio):
gcc
MXNet commit hash:
25720d0e3c29232a37e2650f3ba3a2454f9367bb
Build config:
#-------------------------------------------------------------------------------
Template configuration for compiling mxnet

If you want to change the configuration, please use the following
steps. Assume you are on the root directory of mxnet. First copy the this
file so that any local changes will be ignored by git

$ cp make/config.mk .

Next modify the according entries, and then compile by

$ make

or build in parallel with 8 threads

$ make -j8
#-------------------------------------------------------------------------------
#---------------------
choice of compiler
#--------------------
export CC = gcc
export CXX = g++
export NVCC = nvcc
whether compile with options for MXNet developer
DEV = 0
whether compile with debug
DEBUG = 0
whether compile with profiler
USE_PROFILER =
whether to turn on signal handler (e.g. segfault logger)
USE_SIGNAL_HANDLER =
the additional link flags you want to add
ADD_LDFLAGS =
the additional compile flags you want to add
ADD_CFLAGS =
#---------------------------------------------
matrix computation libraries for CPU/GPU
#---------------------------------------------
whether use CUDA during compile
USE_CUDA = 1
add the path to CUDA library to link and compile flag
if you have already add them to environment variable, leave it as NONE
USE_CUDA_PATH = /usr/local/cuda
USE_CUDA_PATH = /usr/local/cuda
whether use CuDNN R3 library
USE_CUDNN = 1
#whether to use NCCL library
USE_NCCL = 0
#add the path to NCCL library
USE_NCCL_PATH = NONE
whether use opencv during compilation
you can disable it, however, you will not able to use
imbin iterator
USE_OPENCV = 1
#whether use libjpeg-turbo for image decode without OpenCV wrapper
USE_LIBJPEG_TURBO = 0
#add the path to libjpeg-turbo library
USE_LIBJPEG_TURBO_PATH = NONE
use openmp for parallelization
USE_OPENMP = 1
MKL ML Library for Intel CPU/Xeon Phi
Please refer to MKL_README.md for details
MKL ML Library folder, need to be root for /usr/local
Change to User Home directory for standard user
For USE_BLAS!=mkl only
MKLML_ROOT=/usr/local
whether use MKL2017 library
USE_MKL2017 = 0
whether use MKL2017 experimental feature for high performance
Prerequisite USE_MKL2017=1
USE_MKL2017_EXPERIMENTAL = 0
whether use NNPACK library
USE_NNPACK = 0
choose the version of blas you want to use
can be: mkl, blas, atlas, openblas
in default use atlas for linux while apple for osx
UNAME_S := $(shell uname -s)
ifeq ($(UNAME_S), Darwin)
USE_BLAS = apple
else
USE_BLAS = atlas
endif
whether use lapack during compilation
only effective when compiled with blas versions openblas/apple/atlas/mkl
USE_LAPACK = 1
path to lapack library in case of a non-standard installation
USE_LAPACK_PATH =
by default, disable lapack when using MKL
switch on when there is a full installation of MKL available (not just MKL2017/MKL_ML)
ifeq ($(USE_BLAS), mkl)
USE_LAPACK = 0
endif
add path to intel library, you may need it for MKL, if you did not add the path
to environment variable
USE_INTEL_PATH = NONE
If use MKL only for BLAS, choose static link automatically to allow python wrapper
ifeq ($(USE_MKL2017), 0)
ifeq ($(USE_BLAS), mkl)
USE_STATIC_MKL = 1
endif
else
USE_STATIC_MKL = NONE
endif
#----------------------------
Settings for power and arm arch
#----------------------------
ARCH := $(shell uname -a)
ifneq (,$(filter $(ARCH), armv6l armv7l powerpc64le ppc64le aarch64))
USE_SSE=0
else
USE_SSE=1
endif
#----------------------------
distributed computing
#----------------------------
whether or not to enable multi-machine supporting
USE_DIST_KVSTORE = 0
whether or not allow to read and write HDFS directly. If yes, then hadoop is
required
USE_HDFS = 0
path to libjvm.so. required if USE_HDFS=1
LIBJVM=$(JAVA_HOME)/jre/lib/amd64/server
whether or not allow to read and write AWS S3 directly. If yes, then
libcurl4-openssl-dev is required, it can be installed on Ubuntu by
sudo apt-get install -y libcurl4-openssl-dev
USE_S3 = 0
#----------------------------
performance settings
#----------------------------
Use operator tuning
USE_OPERATOR_TUNING = 1
Use gperftools if found
USE_GPERFTOOLS = 1
Use JEMalloc if found, and not using gperftools
USE_JEMALLOC = 1
#----------------------------
additional operators
#----------------------------
path to folders containing projects specific operators that you don't want to put in src/operators
EXTRA_OPERATORS =
#----------------------------
other features
#----------------------------
Create C++ interface package
USE_CPP_PACKAGE = 0
#----------------------------
plugins
#----------------------------
whether to use caffe integration. This requires installing caffe.
You also need to add CAFFE_PATH/build/lib to your LD_LIBRARY_PATH
CAFFE_PATH = $(HOME)/caffe
MXNET_PLUGINS += plugin/caffe/caffe.mk
whether to use torch integration. This requires installing torch.
You also need to add TORCH_PATH/install/lib to your LD_LIBRARY_PATH
TORCH_PATH = $(HOME)/torch
MXNET_PLUGINS += plugin/torch/torch.mk
WARPCTC_PATH = $(HOME)/warp-ctc
MXNET_PLUGINS += plugin/warpctc/warpctc.mk
whether to use sframe integration. This requires build sframe
git@github.com:dato-code/SFrame.git
SFRAME_PATH = $(HOME)/SFrame
MXNET_PLUGINS += plugin/sframe/plugin.mk
Error Message:
None
Minimum reproducible example
time python2 train_cifar10.py --dtype float16 --network resnet --num-epochs 1 --num-layers 110 --batch-size 512 --gpus 0
vs
time python2 train_cifar10.py --network resnet --num-epochs 1 --num-layers 110 --batch-size 512 --gpus 0
Steps to reproduce
time python2 train_cifar10.py --dtype float16 --network resnet --num-epochs 1 --num-layers 110 --batch-size 512 --gpus 0
vs
time python2 train_cifar10.py --network resnet --num-epochs 1 --num-layers 110 --batch-size 512 --gpus 0
What have you tried to solve it?
Compared results between a Titan V (Volta) card and a Titan X (Pascal card). Tried with and without half precision set for the train_cifar10.py example on resenet, one epoch, 110 layers and 512 batch size.
Results for Volta (Titan V) with dtype float16 flag set:
INFO:root:start with arguments Namespace(batch_size=512, benchmark=0, data_nthreads=4, data_train='data/cifar10_train.rec', data_train_idx='', data_val='data/cifar10_val.rec', data_val_idx='', disp_batches=20, dtype='float16', gc_threshold=0.5, gc_type='none', gpus='0', image_shape='3,28,28', kv_store='device', load_epoch=None, lr=0.05, lr_factor=0.1, lr_step_epochs='200,250', max_random_aspect_ratio=0, max_random_h=36, max_random_l=50, max_random_rotate_angle=0, max_random_s=50, max_random_scale=1, max_random_shear_ratio=0, min_random_scale=1, model_prefix=None, mom=0.9, monitor=0, network='resnet', num_classes=10, num_epochs=1, num_examples=50000, num_layers=110, optimizer='sgd', pad_size=4, random_crop=1, random_mirror=1, rgb_mean='123.68,116.779,103.939', test_io=0, top_k=0, wd=0.0001)
[11:33:43] src/io/iter_image_recordio_2.cc:170: ImageRecordIOParser2: data/cifar10_train.rec, use 4 threads for decoding..
[11:33:47] src/io/iter_image_recordio_2.cc:170: ImageRecordIOParser2: data/cifar10_val.rec, use 4 threads for decoding..
[11:33:48] src/operator/././cudnn_algoreg-inl.h:107: Running performance tests to find the best convolution algorithm, this can take a while... (setting env variable MXNET_CUDNN_AUTOTUNE_DEFAULT to 0 to disable)
INFO:root:Epoch[0] Batch [20]	Speed: 2734.21 samples/sec	accuracy=0.142020
INFO:root:Epoch[0] Batch [40]	Speed: 2709.23 samples/sec	accuracy=0.202832
INFO:root:Epoch[0] Batch [60]	Speed: 2724.39 samples/sec	accuracy=0.233984
INFO:root:Epoch[0] Batch [80]	Speed: 2751.87 samples/sec	accuracy=0.268652
INFO:root:Epoch[0] Train-accuracy=0.303653
INFO:root:Epoch[0] Time cost=18.777
INFO:root:Epoch[0] Validation-accuracy=0.314453
real	0m26.451s
user	0m36.516s
sys	0m9.708s
Results for Volta (Titan V) without half-precision flag set:
time python2 train_cifar10.py --network resnet --num-epochs 1 --num-layers 110 --batch-size 512 --gpus 0
INFO:root:start with arguments Namespace(batch_size=512, benchmark=0, data_nthreads=4, data_train='data/cifar10_train.rec', data_train_idx='', data_val='data/cifar10_val.rec', data_val_idx='', disp_batches=20, dtype='float32', gc_threshold=0.5, gc_type='none', gpus='0', image_shape='3,28,28', kv_store='device', load_epoch=None, lr=0.05, lr_factor=0.1, lr_step_epochs='200,250', max_random_aspect_ratio=0, max_random_h=36, max_random_l=50, max_random_rotate_angle=0, max_random_s=50, max_random_scale=1, max_random_shear_ratio=0, min_random_scale=1, model_prefix=None, mom=0.9, monitor=0, network='resnet', num_classes=10, num_epochs=1, num_examples=50000, num_layers=110, optimizer='sgd', pad_size=4, random_crop=1, random_mirror=1, rgb_mean='123.68,116.779,103.939', test_io=0, top_k=0, wd=0.0001)
[11:30:53] src/io/iter_image_recordio_2.cc:170: ImageRecordIOParser2: data/cifar10_train.rec, use 4 threads for decoding..
[11:30:56] src/io/iter_image_recordio_2.cc:170: ImageRecordIOParser2: data/cifar10_val.rec, use 4 threads for decoding..
[11:30:58] src/operator/././cudnn_algoreg-inl.h:107: Running performance tests to find the best convolution algorithm, this can take a while... (setting env variable MXNET_CUDNN_AUTOTUNE_DEFAULT to 0 to disable)
INFO:root:Epoch[0] Batch [20]	Speed: 2855.89 samples/sec	accuracy=0.121931
INFO:root:Epoch[0] Batch [40]	Speed: 2933.23 samples/sec	accuracy=0.191406
INFO:root:Epoch[0] Batch [60]	Speed: 2944.27 samples/sec	accuracy=0.239551
INFO:root:Epoch[0] Batch [80]	Speed: 2871.48 samples/sec	accuracy=0.271289
INFO:root:Epoch[0] Train-accuracy=0.301356
INFO:root:Epoch[0] Time cost=17.768
INFO:root:Epoch[0] Validation-accuracy=0.340820
real	0m25.560s
user	0m34.052s
sys	0m9.416s
Results for Pascal (Titan X) with dtype float16 flag set:
time python2 train_cifar10.py --dtype float16 --network resnet --num-epochs 1 --num-layers 110 --batch-size 512 --gpus 0
INFO:root:start with arguments Namespace(batch_size=512, benchmark=0, data_nthreads=4, data_train='data/cifar10_train.rec', data_train_idx='', data_val='data/cifar10_val.rec', data_val_idx='', disp_batches=20, dtype='float16', gc_threshold=0.5, gc_type='none', gpus='0', image_shape='3,28,28', kv_store='device', load_epoch=None, lr=0.05, lr_factor=0.1, lr_step_epochs='200,250', max_random_aspect_ratio=0, max_random_h=36, max_random_l=50, max_random_rotate_angle=0, max_random_s=50, max_random_scale=1, max_random_shear_ratio=0, min_random_scale=1, model_prefix=None, mom=0.9, monitor=0, network='resnet', num_classes=10, num_epochs=1, num_examples=50000, num_layers=110, optimizer='sgd', pad_size=4, random_crop=1, random_mirror=1, rgb_mean='123.68,116.779,103.939', test_io=0, top_k=0, wd=0.0001)
[11:33:43] src/io/iter_image_recordio_2.cc:170: ImageRecordIOParser2: data/cifar10_train.rec, use 4 threads for decoding..
[11:33:47] src/io/iter_image_recordio_2.cc:170: ImageRecordIOParser2: data/cifar10_val.rec, use 4 threads for decoding..
[11:33:48] src/operator/././cudnn_algoreg-inl.h:107: Running performance tests to find the best convolution algorithm, this can take a while... (setting env variable MXNET_CUDNN_AUTOTUNE_DEFAULT to 0 to disable)
INFO:root:Epoch[0] Batch [20]	Speed: 2734.21 samples/sec	accuracy=0.142020
INFO:root:Epoch[0] Batch [40]	Speed: 2709.23 samples/sec	accuracy=0.202832
INFO:root:Epoch[0] Batch [60]	Speed: 2724.39 samples/sec	accuracy=0.233984
INFO:root:Epoch[0] Batch [80]	Speed: 2751.87 samples/sec	accuracy=0.268652
INFO:root:Epoch[0] Train-accuracy=0.303653
INFO:root:Epoch[0] Time cost=18.777
INFO:root:Epoch[0] Validation-accuracy=0.314453
real	0m26.451s
user	0m36.516s
sys	0m9.708s
Results for Pascal (Titan X) without half-precision flag set:
time python2 train_cifar10.py --network resnet --num-epochs 1 --num-layers 110 --batch-size 512 --gpus 2
INFO:root:start with arguments Namespace(batch_size=512, benchmark=0, data_nthreads=4, data_train='data/cifar10_train.rec', data_train_idx='', data_val='data/cifar10_val.rec', data_val_idx='', disp_batches=20, dtype='float32', gc_threshold=0.5, gc_type='none', gpus='2', image_shape='3,28,28', kv_store='device', load_epoch=None, lr=0.05, lr_factor=0.1, lr_step_epochs='200,250', max_random_aspect_ratio=0, max_random_h=36, max_random_l=50, max_random_rotate_angle=0, max_random_s=50, max_random_scale=1, max_random_shear_ratio=0, min_random_scale=1, model_prefix=None, mom=0.9, monitor=0, network='resnet', num_classes=10, num_epochs=1, num_examples=50000, num_layers=110, optimizer='sgd', pad_size=4, random_crop=1, random_mirror=1, rgb_mean='123.68,116.779,103.939', test_io=0, top_k=0, wd=0.0001)
[11:32:37] src/io/iter_image_recordio_2.cc:170: ImageRecordIOParser2: data/cifar10_train.rec, use 4 threads for decoding..
[11:32:41] src/io/iter_image_recordio_2.cc:170: ImageRecordIOParser2: data/cifar10_val.rec, use 4 threads for decoding..
[11:32:42] src/operator/././cudnn_algoreg-inl.h:107: Running performance tests to find the best convolution algorithm, this can take a while... (setting env variable MXNET_CUDNN_AUTOTUNE_DEFAULT to 0 to disable)
INFO:root:Epoch[0] Batch [20]	Speed: 2228.10 samples/sec	accuracy=0.141927
INFO:root:Epoch[0] Batch [40]	Speed: 2234.42 samples/sec	accuracy=0.199609
INFO:root:Epoch[0] Batch [60]	Speed: 2258.77 samples/sec	accuracy=0.235449
INFO:root:Epoch[0] Batch [80]	Speed: 2237.78 samples/sec	accuracy=0.266992
INFO:root:Epoch[0] Train-accuracy=0.286880
INFO:root:Epoch[0] Time cost=22.809
INFO:root:Epoch[0] Validation-accuracy=0.343164
real	0m31.823s
user	0m41.688s
sys	0m11.076s

CIFAR has really small images, which do not really stress the GPU. For benchmarking purposes ImageNet is much better.
Set env variable MXNET_CUDNN_AUTOTUNE_DEFAULT to 2 - it is possible that MXNet does not choose the best cudnn algo (TensorCore) for Titan V in your case.

Thanks for the suggestion. Unfortunately at this time the train_imagenet script gives an error.
Only options for MXNET_CUDNN_AUTOTUNE_DEFAULT are 1 (true) or 0 (false) I believe.
Here are the latest results with train_cifar10.py:
Titan X (Pascal) MXNET_CUDNN_AUTOTUNE_DEFAULT=0 --dtype float32 ==> ~2020 samples/second
Titan X (Pascal) MXNET_CUDNN_AUTOTUNE_DEFAULT=0 --dtype float16 ==> ~2330 samples/second
Titan X (Pascal) MXNET_CUDNN_AUTOTUNE_DEFAULT=1 --dtype float32 ==> ~2230 samples/second
Titan X (Pascal) MXNET_CUDNN_AUTOTUNE_DEFAULT=1 --dtype float16 ==> ~2600 samples/second
Titan V (Volta) MXNET_CUDNN_AUTOTUNE_DEFAULT=0 --dtype float32 ==> ~2200 samples/second
Titan V (Volta) MXNET_CUDNN_AUTOTUNE_DEFAULT=0 --dtype float16 ==> ~2400 samples/second
Titan V (Volta) MXNET_CUDNN_AUTOTUNE_DEFAULT=1 --dtype float32 ==> ~2900 samples/second
Titan V (Volta) MXNET_CUDNN_AUTOTUNE_DEFAULT=1 --dtype float16 ==> ~2740 samples/second
As you can see, when autotune is on, half-precision performance is worse on Volta.
That's not the case for Pascal.
Is there a way to enforce the use of the TensorCores?
Thanks

Here are some further results, again against the CIFAR10 script, but this time with the MXNET_CUDA_ALLOW_TENSOR_CORE env variable:
MXNET_CUDNN_AUTOTUNE_DEFAULT=0 MXNET_CUDA_ALLOW_TENSOR_CORE=0 float32
Speed: ~2210 samples/sec
MXNET_CUDNN_AUTOTUNE_DEFAULT=1 MXNET_CUDA_ALLOW_TENSOR_CORE=0 float32
Speed: ~2920 samples/sec
MXNET_CUDNN_AUTOTUNE_DEFAULT=0 MXNET_CUDA_ALLOW_TENSOR_CORE=1 float32
Speed: ~2190 samples/sec
MXNET_CUDNN_AUTOTUNE_DEFAULT=1 MXNET_CUDA_ALLOW_TENSOR_CORE=1 float32
Speed: ~2870 samples/sec
MXNET_CUDNN_AUTOTUNE_DEFAULT=0 MXNET_CUDA_ALLOW_TENSOR_CORE=0 float16
Speed: ~2440 samples/sec
MXNET_CUDNN_AUTOTUNE_DEFAULT=1 MXNET_CUDA_ALLOW_TENSOR_CORE=0 float16
Speed: ~1790 samples/sec
MXNET_CUDNN_AUTOTUNE_DEFAULT=0 MXNET_CUDA_ALLOW_TENSOR_CORE=1 float16
Speed: ~2430 samples/sec
MXNET_CUDNN_AUTOTUNE_DEFAULT=1 MXNET_CUDA_ALLOW_TENSOR_CORE=1 float16
Speed: ~2720 samples/sec
Best performance seems to be when float32 is set, autotune on, tensorcore off. So FP16 is no where near performing or leveraging TensorCores as it should.

What problem do you have with train_imagenet script? You can set the autotune env variable to 2. - the options are as follows: 0 does not do autotune, 1 does, but the chosen result is limited by the workspace size and 2 - choose the fastest algo no matter the workspace size.

Thanks Przemyslaw, I'll try another set with autotune set to 2 and I'll try with imagenet after I've resolved the imagenet download script issue.

@elabeca
Hi Elabeca, any update regarding to your benchmark of ImageNet data set with Titan V?
We are planning to do some benchmark and optimization work also on Volta architecture, so your experience may be helpful for us.
Thanks

@yangjunpro With imagenet it should be possible to see 50-80% speedup. Let us know if you have more questions.

@cjolivier01 Please add the label Question. Thanks!

just log on as me lol
On Mon, Mar 19, 2018 at 10:54 AM, Rahul Huilgol<EMAIL_ADDRESS>wrote:

@cjolivier01 https://github.com/cjolivier01 Please add the label
Question. Thanks!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/apache/incubator-mxnet/issues/9087#issuecomment-374306179,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AKts_Xa50cMxBfPWERF5oAYIJyUOXFflks5tf_DhgaJpZM4RDacq
.

@yangjunpro ran this w/ imagenet on a TitanV; am getting 500 samples/sec in fp16 VS 290 samples/sec in fp32.

Sorry @yangjunpro - I didn't get around in the end to do further testing. Based on @henripal 's results I'm happy to close this unless someone else has anything to add. Thanks again.


ols solver

I have added an ols solver  (CD + ISTSA / FISTA included), on the datasets: Boston + Simulated

Codecov Report

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

@@           Coverage Diff           @@
##           master      #34   +/-   ##
=======================================
  Coverage   53.85%   53.85%
=======================================
  Files           8        8
  Lines         635      635
  Branches       99       99
=======================================
  Hits          342      342
  Misses        263      263
  Partials       30       30

Anything else needed here @tomMoral?

can you merge with master and add OLS to readme.rst ?

success https://22-227720375-gh.circle-artifacts.com/0/dev/index.html
merging. We can improve later.


big picture view properties are not loading.

  "@ant-design/icons": "^4.7.0",
    "@antv/g2plot": "^2.4.16",
    "@antv/g6": "^4.7.10",
    "@antv/gi-assets-advance": "^2.0.0",
    "@antv/gi-assets-algorithm": "^1.0.0",
    "@antv/gi-assets-basic": "^2.0.1",
    "@antv/gi-assets-graphscope": "^2.0.3",
    "@antv/gi-assets-scene": "^1.0.0",
    "@antv/gi-assets-tugraph": "^2.0.0",
    "@antv/gi-sdk": "^2.0.2",
    "@antv/gi-theme-antd": "^0.3.0",
    "@antv/graphin": "^2.7.13",
    "@antv/graphin-components": "^2.4.0",
    "@antv/graphin-icons": "^1.0.0",
   "antd": "^4.24.8",

I just updated the dependencies above and the filter panel properties are not loading in the big picture overview. There was no such problem before updating the versions.

@pomelo-nwu

"@antv/gi-assets-basic": "^1.2.1",
The problem is fixed when I restore to the library
@pomelo-nwu

@RackweLLizm Just be consistent with the version of the exported SDK

The 2.0 assets must correspond to the 2.0 SDK to work，2.0 assets work with the 2.0 SDK, check out this PR to learn more：https://github.com/antvis/G6VP/pull/128/files
btw："big picture view" should be a machine translation, and its correct meaning should be "the display controller of large graph"


Not all packets in time range returned.

Or could be user error.
I am constructing a time based query that Stenographer is logging as: (after 2016-02-12T17:24:00Z and before 2016-02-12T17:27:00Z)
My goal is to get all packets between 17:24 and 17:27.  However, this will only return packets between 17:25:29 and 17:26:29.
To get packets right up to 17:27 I have to extend  my before to 2016-02-12T17:28:00Z.  Likewise, to get packets that occured at 17:24:00 to 17:25:00 I have to extend my after time to 17:23.

That's not lovely :)
Could you try running stenographer with flag --v=10 and, when you run the query, paste the logs it generates in here?

Ok, started a long running ping and with expanded out after and before parameters I know I have an echo/reply for every second in the time range I'm testing for.
Command:
stenoread 'icmp and after 2016-02-12T19:00:00Z and before 2016-02-12T19:02:00Z'
In this case I didn't get any packets returned. The output is attached as<PHONE_NUMBER>00.txt.  If I change the after time to 18:59, then I do get some packets in the 13:00:20 -> 13:01:19 range. That output is attached as<PHONE_NUMBER>00.txt
185900-190200.txt
190000-190200.txt
.

Okay, so making that into timestamps:
2016-02-12T19:00:00Z -><PHONE_NUMBER> unix secs
2016-02-12T19:02:00Z -><PHONE_NUMBER> unix secs
Looking at<PHONE_NUMBER>00.txt, here's the files that are processed (just the ones close to the range, just thread 0):
"/tmp/stenographer720013252/PKT0/1455303017142474"
"/tmp/stenographer720013252/PKT0/1455303078263457"
"/tmp/stenographer720013252/PKT0/1455303257367202"
"/tmp/stenographer720013252/PKT0/1455303319266933"
"/tmp/stenographer720013252/PKT0/1455303380526130"
"/tmp/stenographer720013252/PKT0/1455303560343195"
"/tmp/stenographer720013252/PKT0/1455303621976087"
"/tmp/stenographer720013252/PKT0/1455303803269305"
"/tmp/stenographer720013252/PKT0/1455303864590381"
"/tmp/stenographer720013252/PKT0/1455303925700711"
Of these files we skip due to the time range (again, just those near the range, just thread 0):
"/tmp/stenographer720013252/IDX0/1455303017142474"
"/tmp/stenographer720013252/IDX0/1455303078263457"
"/tmp/stenographer720013252/IDX0/1455303257367202"
"/tmp/stenographer720013252/IDX0/1455303319266933"
"/tmp/stenographer720013252/IDX0/1455303380526130"
"/tmp/stenographer720013252/IDX0/1455303560343195" SHOULD HAVE PROCESSED
"/tmp/stenographer720013252/IDX0/1455303621976087" SHOULD HAVE PROCESSED
"/tmp/stenographer720013252/IDX0/1455303803269305"
"/tmp/stenographer720013252/IDX0/1455303864590381"
"/tmp/stenographer720013252/IDX0/1455303925700711"
Hmm, I'm somewhat stumped, but I'll look through some code.


[move] Fix empty source mappings for scripts

A change to use BinaryIndexedView in SourceMapping (#8629 and #8655) resulted in a panic when attempting to create "dummy" source mappings for Move bytecode representing scripts. Fix the issue by preventing the mapping from attempting to access the script's name and address, which are only available on modules.
In addition, add a regression test for "dummy" source mappings.
This fixes an panic in the disassembler when disassembling script bytecode.

/land


What, if you had a "counter-divisor". To say the app, that only use the trigger, if button is pressed "counter-divisor" times...

What, if you had a "counter-divisor". To say the app, that only use the trigger, if button is pressed "counter-divisor" times...
Or would it be possible to use the time between push and release? For example: only use events with a timewindow of 0.1-0.4 seconds between push and release?
Originally posted by @baumrasen in https://github.com/photobooth-app/photobooth-app/discussions/280#discussioncomment-9680120

fixed in a29929c2bcf31b80c20b6df08f464d35945ff261


Convert remaining templates to new tabset helpers

coverage: 93.606% (-0.02%) from 93.621% when pulling 55a2f702ab89f4f6a1f6d79ed6017966987ceb0b on nimmo-refactor-tabs-helpers into d1300f49a76452ad27039ab07188cd3c67d1ff21 on main.


api docs: Document PATCH /settings/notifications.

Testing Plan: test-api, mypy and lint checks passed locally. Made sure that the docs display properly.

@YagoGG thanks for working on this!  I think the user settings ones are an interesting challenge, in that I'd rather not have us end up needing to duplicate all the labels and field names from every notification setting here, since we just finished a big project to stop doing that in the settings code itself.
@shubhamdhama may have thoughts on this, but one idea would be for us to extract the mapping that currently lives in setup_settings_label to instead live in Python code and be passed to the frontend from there.
We should also keep in mind the use case for this API endpoint, which is primarily the mobile apps.  It's possible we should just not bother documenting what each of the settings mean, and instead just point to the UI widget and docs on how to figure out which checkbox goes with which settings variable.

in that I'd rather not have us end up needing to duplicate all the labels and field names from every notification setting here, since we just finished a big project to stop doing that in the settings code itself.

@shubhamdhama may have thoughts on this, but one idea would be for us to extract the mapping that currently lives in setup_settings_label to instead live in Python code and be passed to the frontend from there.

This SGTM... I can go forward if we want this?

@shubhamdhama Can you take care of it?

@YagoGG I'm not merging this one at this time since it still needs work.  I'll let you and @shubhamdhama work out the path forward here.

I rebased and merged this; I'll open a follow-up issue for integrating the list of settings and their purposes.


No warnings when database connection can't be established

Gitea version (or commit ref): gitea-1.10.1-linux-amd64
Git version: 2.23.0
Operating system: Debian Sid
Database (use [x]):

[x] PostgreSQL
[ ] MySQL
[ ] MSSQL
[ ] SQLite

Can you reproduce the bug at https://try.gitea.io:

[ ] Yes (provide example URL)
[ ] No
[x] Not relevant

Log gist:

Description
Unbeknownst to me, my postgres crashed (probably out of disk space). This caused gitea to return 500 on any request in the web frontend. With no additional info on the gitea STDOUT, I decided to restart gitea.
It started up, gave the usual cli output, just like a normally running gitea process, without any indication that gitea was failing hard because it couldn't get a database connection.
This should really be visible error output, or even return the process because it can't start up correctly (it won't even start listening for network)

What's the output?

I think Gitea should consider database connection errors as error, not warning.

https://github.com/go-gitea/gitea/blob/2de8b27dd1a109e923af7e9026e541539ec054ed/routers/init.go#L57-L78
shows a lot of logging when there is errors...

@f0x52 maybe you mean to treat it as a fatal condition (i.e. shutdown the instance)? It's common for systems that the database is not yet ready when the instance starts (e.g. slow systems, remote systems), so Gitea performs many connection retries before failing.


How to adapt template script

We were checking with @Ducasse on how to generate an application with UI, and we would need to modify the following script:
https://github.com/tesonep/PharoApplicationGenerator/blob/master/templates/Darwin/build.sh.template
so it can retrieve the non-headless VM (in line 32):
curl --output vm.zip https://files.pharo.org/vm/pharo-spur64/$(uname -s)-$(uname -m)/stable10.zip
But would it be better to generate a new template file or to adapt the existing one?

There is a way of giving the VM to use as a parameter, we can set that or having a parameter that includes the interactive or the headless VM.


From ROMP output to metadata.json

@Dipankar1997161 I saw you successfully trained humannerf using ROMP output format and helped some people about it.
I'm trying to train a humannerf with an in-the wild monocular video.

There are multiple people on the picture, but I will just focus on 1 person, so I segment it to get the corresponding masks.

I already have the camera intrinsic matrix of the calibrated camera :
"cam_intrinsics": [
            [
                1552.2911465495156,
                0.0,
<PHONE_NUMBER>511921
            ],
            [
                0.0,
                1689.001362380511,
<PHONE_NUMBER>5747547
            ],
            [
                0.0,
                0.0,
                1.0
            ]
        ],

I used ROMP on the masked images to get the pose estimation :
romp --mode=video --calc_smpl --render_mesh -i=<input> -o=<output>

It outputs npz files for each picture with these keys : ['cam', 'global_orient', 'body_pose', 'smpl_betas', 'smpl_thetas', 'center_preds', 'center_confs', 'cam_trans', 'verts', 'joints', 'pj2d_org']
I then create the metadata.json file like this, taking only "smpl_thetas" and "smpl_betas" fields.
"000001": {
        "poses":  romp_out["smpl_thetas"][0],
        "betas": romp_out["smpl_betas"][0],
        "cam_intrinsics": [
            [
                1552.2911465495156,
                0.0,
<PHONE_NUMBER>511921
            ],
            [
                0.0,
                1689.001362380511,
<PHONE_NUMBER>5747547
            ],
            [
                0.0,
                0.0,
                1.0
            ]
        ],
        "cam_extrinsics":  np.eye(4)  (If I understood corectly , ROMP world origin is the camera origin)
    },

I have some questions that I can't figure out after looking at the code :

After training for 400k iterations, the model is blank, there is only a white background. Do you have a clue about what I did wrong here?
Maybe related to why this fails : the "poses" contain the relatives rotations of the body + the global pelvis rotation. How does humannerf know the SMPL body location on the picture ?

More precisely, I see in the paper that the body pose is represented by :

where Omega is the rotations ("poses"), but how and where do we get the joints position "J" from the input data ?

I managed to make the pre-preprocessing work with square images.
For those who got stuck on metadata.json, here is what I did :

Resize the image to 512x512 pixels
Extract the masks using Segment-anything (or an other tool)
Use Romp with the command above

If you have original extrinsics and instrinsics, they do not matter here. ROMP uses its own camera parameters and predicts shapes from its own camera model.
The "cam_trans" represents the translation from smpl body pose to camera.
Humannerf uses this parameter to recover the body translation from camera.
The rotation from camera to SMPL is in the first "pose" rotation parameter.
Therefore if you also use 512x512 images, you should use :
"poses":  romp_out["smpl_thetas"][0],
"betas": romp_out["smpl_betas"][0],
"cam_intrinsics": [
	[
	    443.4,
	    0.0,
	    256.0
	],
	[
	    0.0,
	    443.4,
	    256.0
	],
	[
	    0.0,
	    0.0,
	    1.0
	]
],
"cam_extrinsics": [
	[
	    1.0,
	    0.0,
	    0.0,
	    romp_out["cam_trans"][0][0]
	],
	[
	    0.0,
	    1.0,
	    0.0,
	    romp_out["cam_trans"][0][1]
	],
	[
	    0.0,
	    0.0,
	    1.0,
	    romp_out["cam_trans"][0][2]
	],
	[
	    0.0,
	    0.0,
	    0.0,
	    1.0
	]
]


2296 upgrade to apache httpclient 5

Description
Upgrade to httpclient5.

Relevant Issues : (2296)
Relevant PRs : (optional)
Type of change :

[ ] New feature
[ ] Bug fix for existing feature
[X] Code quality improvement
[ ] Addition or Improvement of tests
[ ] Addition or Improvement of documentation

tagging @mj11pyqe - if possible can you review the connection reuse strategy based on something you reported in #2114

@f-delahaye sorry to hold on this, I'm thinking of releasing 1.5.0 final without this to be safe and then merge this

Thanks for the update. It actually makes a lot of sense to wait until 1.6 to merge it.


knife-azure ssl bootstrap should create an ssl certificate

knife-azure ssl bootstrap should create an ssl certificate and store it in a location on the disk

rspec test looks good! Can we have expectation for certificate added to cloud service?

we should have validation for --cert-path option i.e specified file path doesn't exist!

Cherry-picked changes to https://github.com/opscode/knife-azure/pull/180 and merged it.


support for HOCON files

It would be great to have a support for HOCON format.
Spec
Reference Impl


Some minor issues encountered when running Spark 2

in /usr/bin/spark-shell or /usr/bin/spark-submit  I can not get  load-spark-env.sh
so I find this shell find-spark-home not found correct path
then I change is script.

SCRIPT_PATH=$(readlink -f "$0")

# obtain the folder path of the script
SCRIPT_DIR=$(dirname "$SCRIPT_PATH")

FIND_SPARK_HOME_PYTHON_SCRIPT="$(cd "$(dirname "$SCRIPT_PATH")"; pwd)/find_spark_home.py"

# Short circuit if the user already has this set.
if [ ! -z "${SPARK_HOME}" ]; then
   exit 0
elif [ ! -f "$FIND_SPARK_HOME_PYTHON_SCRIPT" ]; then
  # If we are not in the same directory as find_spark_home.py we are not pip installed so we don't
  # need to search the different Python directories for a Spark installation.
  # Note only that, if the user has pip installed PySpark but is directly calling pyspark-shell or
  # spark-submit in another directory we want to use that version of PySpark rather than the
  # pip installed version of PySpark.
  export SPARK_HOME="$(cd "$(dirname "$SCRIPT_PATH")"/..; pwd)"
else
  # We are pip installed, use the Python script to resolve a reasonable SPARK_HOME
  # Default to standard python interpreter unless told otherwise
  if [[ -z "$PYSPARK_DRIVER_PYTHON" ]]; then
     PYSPARK_DRIVER_PYTHON="${PYSPARK_PYTHON:-"python"}"
  fi
  export SPARK_HOME=$($PYSPARK_DRIVER_PYTHON "$FIND_SPARK_HOME_PYTHON_SCRIPT")
fi

runing  spark-submit  my spark program
It's show  message

Caused by: java.io.InvalidClassException: org.apache.commons.lang3.time.FastDateFormat; local class incompatible: stream classdesc serialVersionUID = 1, local class serialVersionUID = 2

I found that hive-exec-<IP_ADDRESS>.2.2.0-46.jar contains classes from commons-lang3, where the serialVersionUID for FastDateFormat is 1L. However, in the jars folder, commons-lang3-3.5.jar has serialVersionUID for FastDateFormat as 2L, which is causing the errors during execution.

Hi,
ODP <IP_ADDRESS>-46 is not an officially release version.
Please use the latest version
You should not use directly load-spark-env.sh
Clemlab Team

OS: Ubuntu 22.04
Updated to ODP-<IP_ADDRESS>-138
However, it still encounters the following error:
Firstly, when Spark is executed, /user/bin/load-spark-env.sh appears.
Therefore, I first adjusted the "find-spark-home" script so that it can run correctly.

Then, when I run the Spark program, I still encounter an error related to the serialVersionUID version of FastDateFormat.

Hi @loki-y-chen
Can you use the abosule path directly ?
 /usr/odp/current/spark-client/bin/spark-shell


Example: Adventuring the world of CrimbleTips in order to escape.

How to play your game?

Example  : Press WASD to move, J to observe, K to use items, and I to search.

Code
Check off the items that are true.

[x] The game was made using the Sprig editor.
[x] The game is placed in the in the /games directory.
[x] The code is significantly different from all other games in the Sprig gallery (except for games labeled "demo").
[x] The game runs without errors.
[x] The name of the file/game contains only alphanumeric characters, -s, or _s.
[x] The game name is not the same as the others from gallery

Image (If an image is used)

[x] The image is in the /games/img directory.
[x] The name of the image matches the name of your file. Example: sokoban_plus.js -> sokoban_plus.png.

Thanks for PR!

WOW reminded me of prompt games!
Could you write in a comment here in PR all the phrases of the game? would help me in the revision:)


merge package template from Kronos-Tools/npm-package-template-minimal

package.json

chore(devDependencies): update<EMAIL_ADDRESS>from template
chore(devDependencies): update<EMAIL_ADDRESS>from template
chore(engines): update<EMAIL_ADDRESS>from template

.travis.yml

chore(travis): merge from template .travis.yml

.npmignore

chore(npm): update .npmignore from template

Coverage decreased (-25.0%) to 75.0% when pulling 909186f41fad80174906a5e4ba8eb08d0e5bb665 on template-sync-1 into 1efae69ba153f1a7d0d1b0d24eaf6ce39bc6600d on master.


merlin-locate-expr

Hello,
Is there a merlin command to locate an expression the user would enter
interactively (instead of using the one under the cursor like with merlin-locate)?
If not, then that's a feature request for the excellent and amazing merlin.
Thanks for this incredible tool.

There is... in vim.
I'll update the emacs mode so it is supported as well.

Thanks a lot ! :+1:


Topology models

Description
This is a draft implementation of an MM-focused topology, which is intended to serve as a stripped down-version of other representations.

After some more digging and though, I think I had previously under-estimated how well the existing Topology classes in the OpenFF Toolkit can support some of the short-term needs (granting that support for things like biopolymers and solid does not exist yet). I'll try it out in a separate PR and may let this one stagnate for a few days.

After some more digging and though, I think I had previously under-estimated how well the existing Topology classes in the OpenFF Toolkit can support some of the short-term needs (granting that support for things like biopolymers and solid does not exist yet). I'll try it out in a separate PR and may let this one stagnate for a few days.

Closing in support of re-using toolkit models, which we've been doing for a few months now.


WIP: Bring smacss sort order configuration up to date with scss-lint's

Quoting the lastest comment (@JWess's) in #1166:

... sass-lint is behind scss-lint, as scss-lint has now added the grid properties:
https://github.com/brigade/scss-lint/blob/master/data/property-sort-orders/smacss.txt

I updated the smacss sort order file according to the reference.
It's a Work In Progress in the sense that I just dumped my updated file in here.
I will actually check out the source, try and compile, update the relevant test and complete the PR soon.
What do the changes you have made achieve?
Update smacss sort order to match that of other projects.
Are there any new warning messages?
Shouldn't be – will check out later on.
Have you written tests?
No. Will do it later on. I just pretty much did: s/^(?!#)(.*)$/  - '$1'/g.
Have you included relevant documentation
Deemed irrelevant.
Which issues does this resolve?
#1171 (sort of), once published. I didn't create an issue just for this.
<DCO 1.1 Signed-off-by: Eric NICOLAS<EMAIL_ADDRESS>

Woops. This was meant to go onto the sass-lint base repo. not on my own fork's develop branch.

Woops. This was meant to use sass-lint's repo as the base — not my own fork's develop branch.


Add data about supported RDS database engine versions

There's this table which contains data about each instance type and the RDS engine versions that support it.
https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html
It would be great to expose this data somehow in the UI, as well as in the instances.json file

Wow this table is quite extensive. Any thoughts on the preferred data format for this @cristim ?


Please review all the previous pull request from old repository

Please try to review 6 pull request to the remote repository it will be a great help for the developers how have done some good working for this repository and update the previous extension

Please try to review 6 pull request to the remote repository it will be a great help for the developers how have done some good working for this repository and update the previous extension

use \t instead of space next time will greatly help.
Regardless, I'll update it in 2 weeks once I finish check I didn't miss anything from 6 branches.
Btw, thanks

@Lakshmikanth2001 done. I have updated the extension, thanks for your help.
Also please help to rate in marketplace


Update 1.18

The smoke system seems to be broken with the new update of MSFS

As expected, will check tomorrow morning

As I can see after quick check - Pow is broken completely. luckily it can be replaced with BezierCurve


Can’t download some files with “downloadFile”

Sometimes I’m unable to download files from the cloud.  I tried different priorities, waited for 24h with no result.  I have 100% reproduciable case:
For user 82439953 I do downloadFile file_id=1648, it generates only single updateFile with is_downloading_active set to true.  And that is all, no futher updates.  I tried cancaling, deleting, etc, without success to download the file
In official telegram client for iOS this file downloads instantly
For other files I’ve tried to download there was no problems at all, downloads in couple of updateFile events
tdlib version: 1.2.0
How to track this problem down? thanks

Could you show the whole File object received from downloadFile? Between, file_id is not persistent, so file_id=1648 is a different file on every library launch.

Aha, I see the point about file_id
Here is the file object I've got from downloadFile:
{
  "@type": "file",
  "id": 1648,
  "size": 3537,
  "expected_size": 3537,
  "local": {
    "@type": "localFile",
    "path": "",
    "can_be_downloaded": true,
    "can_be_deleted": false,
    "is_downloading_active": true,
    "is_downloading_completed": false,
    "downloaded_prefix_size": 0,
    "downloaded_size": 0
  },
  "remote": {
    "@type": "remoteFile",
    "id": "BQADBAADsQcAAliioVBKhEf9cllOfAI",
    "is_uploading_active": false,
    "is_uploading_completed": true,
    "uploaded_size": 3537
  },
  "@extra": 1422
}

Everything is fine there, the file has begun to download.
It seems that you need a proxy/VPN to download this file from Russia.

Another user was able to download this file using same software from different country, so it looks like Russia related problem.  Though I was using same proxy as was used to download the file with official iOS client.

Finally was able to download the file via vpn, thanks


Added support for testing Colab notebooks.

Testing is done by running "jupyter nbconvert --to notebook" and
then parsing the resulting notebook to look for errors.
One can declare expected errors, and the test will fail if those
are missing.
In the process of doig this, found and fixed a bug in the autodiff_cookbook
notebook.
Issue: #81

Nice catch!
What about executing notebooks as part of the docs build, and simply verifying that the docs can build successfully on CI?
I think that could be as simple as switching nbsphinx_execute = 'always' on this line:
https://github.com/google/jax/blob/e3597384636e39800adf8abcd24091b810db4c90/docs/conf.py#L106
And adding the extra docs build running sphinx.

Currently failing with:
NoSuchKernel in notebooks/autodiff_cookbook.ipynb:
No such kernel named python3

I think that I am done now. I am using sphinx to test. It was a bit of a pain to get the Travis setup to work, and in the process I created several garbage commits. I would like to squash them and force-push, but I am not sure if the team is Ok with this.
There are now 2200+ sphinx warnings, which makes the Travis log unreadable. Filed #1433.
Getting the Travis and the local setup to work was a major pain, hopefully the documentation helps.


ensure DDC handles all AST nodes Analyzer produces

Some recent bugs (e.g. https://github.com/dart-lang/sdk/issues/27971#issuecomment-293100157) have been caused by new AST nodes that were not handled in DDC. We can check this at analysis time by changing CodeGenerator to implement AstVisitor<JS.Node> thus checking every visit method is implemented (it is okay to assert they are not reachable; this is true for some nodes that are directly visited from their parent).
As a related cleanup, ensure everything returns a js_ast Node. There are a few places we return other things because we know they will be inserted into the js_ast tree in a valid location, but that's not statically verifiable. I'm in the process of fixing those.

https://codereview.chromium.org/2822633003/


Container spec securityContext specifies privileged:true which is not supported on Windows

The documentation uses
spec:
      ...
      containers:
          ...
          securityContext:
            privileged: true

But according to the k8s documentation, privileged is not supported on Windows.

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

ID: 24ad7559-335d-43d6-24d4-0de3cf7db10b
Version Independent ID: 48597f05-bb8e-e8f2-c80f-05891e17b2a6
Content: Use Windows HostProcess containers - Azure Kubernetes Service
Content Source: articles/aks/use-windows-hpc.md
Service: container-service
GitHub Login: @MGoedtel
Microsoft Alias: juda

@wasker
Thanks for your feedback! We will investigate and update as appropriate.

Hi @wasker
You are right Container spec security Context specifies privileged: true which is not supported on Windows. In the doc itself it mentioned the same thing. Could you find the screenshot below.

For clarification you can find below link.
https://learn.microsoft.com/en-us/azure/aks/use-windows-hpc#:~:text=\\.\pipe\*.-,Run a HostProcess workload,AdminRights"
              while (%24true) { Start-Sleep -Seconds 2147483 }
      hostNetwork%3A true
      terminationGracePeriodSeconds%3A 0,-Use kubectl to

Yet your own document says: "To use HostProcess features with your deployment, set privilaged: true, hostProcess: true, and hostNetwork: true". This doesn't make sense.

@MGoedtel
Can you add your inputs on above query.

@wasker
I'm going to assign this to the document author so they can take a look at it accordingly.

Thank you for commenting on the documentation. This issue has been addressed, but the issue wasn't closed. Please reopen if you'd like additional fixes.
#please-close


[Visualization for functions] Log history and modify the visualization for the describe() call for a Series

Describe should work in a similar way as value_counts and unique, that is, whenever a describe is called for a child series, we should register this event to the parent dataframe. In this way, we won't lose track of the function call when the user writes codes like df["Cylinders"].describe() instead of df.describe().
Besides, for the function call df["Cylinders"].describe() , the resulted visualization is actually a histogram instead of a boxplot as expected.

Solved in the describe-improvement branch (which is based on the unit-test-implement branch). Waiting to be examined and merged.

See #12 for more details about this branch


Add pystan to conda env

Codecov Report

Merging #80 (8e45418) into main (4341f8b) will increase coverage by 0.00%.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##             main      #80   +/-   ##
=======================================
  Coverage   99.38%   99.38%
=======================================
  Files          20       20
  Lines         647      648    +1
=======================================
+ Hits          643      644    +1
  Misses          4        4

Flag
Coverage Δ

unittests
99.38% <100.00%> (+<0.01%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

...atabricks/automl_runtime/forecast/prophet/model.py
100.00% <100.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Consider removing describe and delete & possibly deploy and update

When we consider that this project's intent is to run as an inlined plugin in the kn CLI, the commands we use now as faas describe and faas delete become kn faas describe and kn faas delete. These are really no different than kn service describe and kn service delete. I don't think we should be duplicating this behavior that already exists in the target binary.
I think we should also discuss the implications of deploy and update. These commands are very similar to kn service create and kn service update, but actually do less. The deploy command does do add some annotations and labels to the deployment, so it may be necessary to keep. But certainly kn service update is hardly different than faas update.
/cc @boson-project/core

Agree on that.
Just a brain dump:
What if kn faas describe is just a wrapper around kn service describe + printing some additional (functions related) info. I am not sure if this is something, that's even possible in kn.

When we consider that this project's intent is to run as an inlined plugin in the kn CLI

If that is the intent, then yes these commands are redundant.  However, if we would like the faas client library to provide a platform-agnostic set of Function manipulation primitives, which can be used across multiple deployment platforms, then perhaps these individual command should be retained in the faas binary and not "plumbed" through kn.

This constant switch to kn faas to kn service could be very confusing and jarring.
I believe consistency for Function Author will be paramount given they might not be from dev background.
to create function I write kn faas init or kn faas create. but then to delete or describe I have to write  kn service describe etc.
Is there a way to wrap these kn commands in faas cli for better experience?

I agree with the point @lkingland  made here .
However, if we would like the faas client library to provide a platform-agnostic set of Function manipulation primitives, which can be used across multiple deployment platforms.
This should be our goal, platform agnostic in the long run.

This should be our goal, platform agnostic in the long run.

Why? What other platform do we realistically expect this to be running on any time before 2022?

Is there a way to wrap these kn commands in faas cli for better experience?

They already are in the faas CLI. I am proposing to remove them, because they are redundant. Certainly delete is, if not describe.

Yes, these are redundant if one's perspective is that the only purpose of the faas CLI is to be a plug-in for kn.  However, we might have a very nice opportunity to provide a simple option for Function developers who are being supported by a cluster administrator.
The kn command, while full featured and rich, is a much higher learning curve than the simple Create, Read, Update, Delete provided by the faas CLI.
It was my goal in creating these commands that we support the use cases needed by a Function developer who has access to a pre-configured cluster, without ever needing to install or use any other binary, while simultaneously creating a layer which is cluster agnostic.  In particular the first additional platform being localhost

See https://github.com/boson-project/faas/pull/128. I think I may close this issue.


Fix issue #327 busted --lpath isn't functioning

This fixes issue #327

The default .busted task was overriding the command-line argument for --lpath

Updated PR to rebase on top of PR #331 so the travis build would work.


Extended Protection driver support

Verifying this line of the documentation:
Extended Protection is fully supported by the SQL Server Native Client beginning with SQL Server 2008 R2 (10.50.x). Support for Extended Protection for other SQL Server client providers is not currently supported.
SQL Server Native Client support policy shows windows support ending with Microsoft Windows Server 2012:
https://learn.microsoft.com/en-us/sql/relational-databases/native-client/applications/support-policies-for-sql-server-native-client
So the question is, is this feature deprecated, or is it actually supported current drivers including msoledb, ado, and odbc?
Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: 91c33f77-bf00-293e-02cd-f8c7cc239246
Version Independent ID: c355401c-b995-fc92-67bc-fa51d959fb61
Content: Protocols for MSSQLSERVER Properties (Advanced Tab) - SQL Server
Content Source: docs/tools/configuration-manager/protocols-for-mssqlserver-properties-advanced-tab.md
Service: sql
Sub-service: tools-other
GitHub Login: @markingmyname
Microsoft Alias: maghan

@WHinDenver -- thank you for your feedback and question.  Please consider these resources:

SQL Server on Microsoft Q&A
DBA Stack Exchange
Stack Overflow

@markingmyname -- please look into this issue.

@WHinDenver
Apologies for the delayed response.
It is no longer supported.
We will remove that information.
thank you.

We will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion, and we will reopen the issue. To see what the community is wanting, please visit the SQL Server User Feedback site or the Q & A site.


wallet.

Hello! You have come up with a very unfortunate and bad system for accessing the wallet.
https://www.argent.xyz/faq/
I used your testnet wallet https://app.testnet.jediswap.xyz/
I spent about 1 month testing.
Today I turned on the computer and there is no access to the wallet.
Of course, I deleted the file a long time ago, but I have a password. But for some reason your wallet is not restored by password.
There is no such function, and requires the creation of a new wallet.
I uninstalled and installed a new wallet.
My old wallet address: 0x039f29f00b9df8cce5ca1db4568d22d23121090561b5c67e8def6067cf9cc822
What should I do to regain access to it???
I know the wallet address, I know the password.
https://www.argent.xyz/faq/
Sincerely, Anatoly Konstantinov.

7

Hi @AnatoliyKonstantinov777
This is not the ArgentX wallet repo.
Please submit your issue here:
https://github.com/argentlabs/argent-x


The naming convention for crate (strictly, package) names is no longer unclear

Also clarify the relation between package and crate names.
Signed-off-by: Daira Hopwood<EMAIL_ADDRESS>

Why the confused react? RFC 430 is pretty clear.

@daira My guess would be because there is an open discussion on this matter: https://github.com/rust-lang/api-guidelines/discussions/29 --- This PR doesn't mention that discussion and that discussion does not appear to have come to a consensus. RFC 430 is a factor, but de facto conventions matter too.

That discussion appears to be locked for me?

I don't know why it appears locked to you. All signs I can see point to it being unlocked.


[Feature request] Collapse

Hi,
What do you think about have a collapse plugin like Bootstrap ?
http://getbootstrap.com/javascript/#collapse
Or the segmented controls can do this work ?

This is a must have feature, no doubt.

Thank you, any other opinions on that feature ?
I want to work on that feature if they are some peoples who need it.
/cc @XhmikosR

Not sure if duplicating components is the target here. It's @connors decision.


Add missing delete from table commands

Without these, when running make for the 2nd time, it fails with lots of errors like
tables/minifigs.csv:1660: INSERT failed: UNIQUE constraint failed: minifigs.fig_num

Thank you!


Master->v10 merge-up

Please verify the following:

[x] yarn test jest tests pass with new tests, if relevant
[x] yarn lint eslint checks pass with new code, if relevant
[x] yarn format:check prettier checks pass with new code, if relevant
[x] README.md (or relevant documentation) has been updated with your changes

Describe your PR
Merging master -> v10.

:tada: This PR is included in version 10.0.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[MetalAdventure][New Feature] Additional skills to add them when asked from books

Submission Checklist
Required

[x] The pull request title clearly contains the name of the sheet I am editing.
[x] The pull request title clearly states the type of change I am submitting (New Sheet/New Feature/Bugfix/etc.).
[x] The pull request makes changes to files in only one sub-folder.
[x] The pull request does not contain changes to any json files in the translations folder (translation.json is permitted)

Changes / Description

In the MetalAdventures books, there are many skills that can be learned during the adventures.
However, the current sheet does not allow these skills to be added.
The paper sheets provide empty slots specifically for these cases.
Thus this pull request suggests adding 2 blank skills for each characteristic.
For years, we've been using extra lines for equipment, transfers and even specialities, but every time we have to think that we have a skill.
We often forget that we have an additional skill.

Character Sheet Info Roll20 Internal Use only.

Just to be clear I also removed some dead code
change:Jeux change:Seduction"


[Security concern] display-managers/sddm uses some fork instead of main repo as source

Hey guys,
I was browsing this repo and noticed, that
https://github.com/NixOS/nixpkgs/blob/master/pkgs/applications/display-managers/sddm/default.nix
uses https://github.com/benjarobin/sddm/ repo instead of https://github.com/sddm/sddm
This seems to me as malicious activity attempt or just a purely handled patching process.
Regards.

It only downloads the patch https://github.com/benjarobin/sddm/commit/7d05362e3c7c5945ad85b0176771bc1c5a370598 from that repo (which is upstream PR https://github.com/sddm/sddm/pull/573). Do you think there is a problem with that patch?
Ping @ttuegel, @abbradar.

This patch fixes the focus on the password field in SDDM on start. Should be harmless (I've reviewed it before adding) -- should I add a comment?

Indeed it looks like I've overreacted.
It looked to me yesterday as it was installable from fork, not a just using a specific patch.
Sorry.


Add Split .NET provider

This PR
Adds the Split .NET provider

Hey @joshsirota , the CNCF requires DCO checks on all commits. You can add yours with:
git commit --amend --signoff and force pushing to your fork/branch again.

The CNCF requires DCO checks on all commits. You can add yours with:

I knew I forgot something. Done.


Let pollInterval to be configurable

https://github.com/uber/cadence/blob/7670ab23e4199039eb1a5ad25020418bc664af52/docker/config_template.yaml#L286
60s is too long...and it's not configurable

@longquanzheng This is configurable in the config yamls: https://github.com/search?q=repo%3Auber%2Fcadence+"pollInterval%3A+"+path%3Aconfig%2F*.yaml&type=code
Or do you mean setting this template to read from an environment variable, like:
pollInterval: {{ default .Env.DYNAMIC_CONFIG_POLL_INTERVAL "60s" }}


Improve wording about re-assigning IP addresses

As requested at https://github.com/docker/docker/pull/19286#issuecomment-174633736
I tried to make it unambiguous what happens if the address is not available on restart.

Thanks @bboreham for the rewording. It's much clearer now.
ping @thaJeztah

Oh, see it's updated; thanks @bboreham
LGTM
ping @vdemeester @aboch for review/merge

LGTM 🐙


Maps are kind of low contrast

The maps are kind of low contrast which can make it hard to see roads.
E.g.

Finding a solution would be nice.
Here are some thoughts I had

Using different base tiles. The tiles are defined like this https://github.com/g-w1/road-mapper/blob/12f1e26e50f7b4feaee5d907c92097fd90faacb8/index.html#L205 so if you changed the url to a different set of base tiles that had better road contrast, that would work
Use some sort of filter. There is a package that allows you to apply css filters to leaflet maps that I used here https://github.com/g-w1/road-mapper/commit/a6415ba718354a0f2ace0e54b9962c0282131fa7 I ended up reverting it b/c it didn't totally solve the problem and kind of looked bad, but maybe I just didn't find the right css filters and they might exist to make the roads look better.
Apply some (non css filter) postprocessing step to the tiles after fetching them. I'm pretty sure this would work, and it would probably involve using some javascript image processing library to modify the highlights in each tile after it's fetched.

re: postprocessing, turning down the highlights worked pretty well on preview for me. see screenshots below:

i still think it could be a lot better than that, but i do think that's a substantial improvement.


Button text color doesn't change

react-native, react and native-base version
"react": "15.4.1",
"react-native": "^0.41.2",
"native-base": "2.0.10",
Expected behaviour
Text color of button to change according to the color value given in textStyle.
Actual behaviour
The color does not change and stays the default color.
Steps to reproduce (code snippet or screenshot)
<Button transparent textStyle={{color: '#595DB'}}>                             <Text>Send</Text>                         </Button>
Is the bug present in both ios and android or in any one of them?
It's present on Android. I'm not able to test on iOS.
Any other additional info which would help us debug the issue quicker.

Not sure if this is related to #613? If it is, feel free to close this issue.

This was a mistake by me. I imported Text from react-native, instead of nativebase. Once I used the Text component from nativebase, the text styling took affect.

There is no need to use textStyle, you can directly use style with the <Text> component.

looks like textStyle is removed from Button component. docs need to be updated accordingly.


Keyboard becomes unresponsive while playing World Of Tanks

VSCode Version: 1.10.2
OS Version: Windows 10 Home Version 1607 OS Build 14393.953

Steps to Reproduce:

Start up vscode
Start up World of Tanks and play a game.  I run this full screen in HD mode.

@SilverMountainSoftware Please consider opening this issue against Electron. We do not execute any code related to the keyboard unless we receive the keydown events from Electron.


Reimbursable - After reload on changing unit when you click outside the it goes back to the previous value reported by @puneet-here

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Go to URL https://staging.new.expensify.com/
Go to settings > Workspace > Reimburse expenses
Reload the page and change unit > now click outside to remove the focus

Expected Result:
The value shouldn't change
Actual Result:
The value changes
Workaround:
Unknown
Platform:

Where is this issue occurring?

Web
iOS
Android
Desktop App
Mobile Web

Version Number: <IP_ADDRESS>
Reproducible in staging?: Yes
Reproducible in production?: Yes
Email or phone of affected tester (no customers): any
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://user-images.githubusercontent.com/93399543/194879414-b16eb638-7eaa-4e8a-9b6d-c2fa7a799d25.mp4
https://user-images.githubusercontent.com/93399543/194879416-d36ffbce-3cbe-4f20-846c-dcc806006da5.mp4
https://user-images.githubusercontent.com/43996225/194890807-196e23df-a6fc-4494-9bb8-7396707d00d6.mov
Expensify/Expensify Issue URL:
Issue reported by: @Puneet-here and Applause internal team
Slack conversation: https://expensify.slack.com/archives/C01GTK53T8Q/p1665263408333949
View all open jobs on GitHub

This might be related to this PR

@kbecciv actually I was not able to simulate this again. Can you please try it again?

@danieldoglas  Checking, updating you shortly

Unable to reproduce it with build <IP_ADDRESS>
https://user-images.githubusercontent.com/93399543/196203117-12acf827-758c-4eb2-9ba9-1d64adeec647.mp4

Moving this to weekly but looks like we can't reproduce it anymore.

@kbecciv is this still not reproducible?

@danieldoglas Checking, update you shortly.

Unable to reproduce it with build <IP_ADDRESS>
https://user-images.githubusercontent.com/93399543/199020887-0ef9bfe3-a24a-49dc-8ebc-eb82dca9dde3.mp4

Ok, closing this issues since it was not reproducible for 2 weeks.


Exploit with calio:share_item

The way share_item is serialized make it easy to hijack with another mod to grant access to a version of the tellraw command.
The simplest way to fix this is to transmit the stack instead of the component.
Doing so will make sure that clients without operator privileges won't have access to those features.

Thanks! Will fix this ASAP.


Allow NO ACTION for foreign key references (in the dtd/xsd)

Codecov Report

Merging #1773 (aafd419) into master (c7baa7d) will decrease coverage by 14.54%.
The diff coverage is 100.00%.

@@              Coverage Diff              @@
##             master    #1773       +/-   ##
=============================================
- Coverage     87.89%   73.34%   -14.55%
- Complexity     7826     7827        +1
=============================================
  Files           267      267
  Lines         22544    22390      -154
=============================================
- Hits          19815    16423     -3392
- Misses         2729     5967     +3238

Flag
Coverage Δ

5-max
73.34% <100.00%> (-14.55%)
:arrow_down:

7.4
73.34% <100.00%> (-14.55%)
:arrow_down:

agnostic
73.34% <100.00%> (+<0.01%)
:arrow_up:

mysql
?

pgsql
?

sqlite
?

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

src/Propel/Generator/Model/ForeignKey.php
94.64% <100.00%> (+0.03%)
:arrow_up:

src/Propel/Runtime/ActiveQuery/PropelQuery.php
0.00% <0.00%> (-100.00%)
:arrow_down:

.../Propel/Generator/Command/templates/propel.yml.php
0.00% <0.00%> (-100.00%)
:arrow_down:

.../Propel/Generator/Command/templates/schema.xml.php
0.00% <0.00%> (-100.00%)
:arrow_down:

...el/Generator/Command/templates/propel.yml.dist.php
0.00% <0.00%> (-100.00%)
:arrow_down:

...el/Runtime/Validator/Constraints/DateValidator.php
0.00% <0.00%> (-100.00%)
:arrow_down:

...Generator/Manager/templates/migration_template.php
0.00% <0.00%> (-100.00%)
:arrow_down:

src/Propel/Generator/Manager/MigrationManager.php
0.00% <0.00%> (-95.59%)
:arrow_down:

.../Runtime/Validator/Constraints/UniqueValidator.php
0.00% <0.00%> (-92.86%)
:arrow_down:

src/Propel/Runtime/Collection/ArrayCollection.php
0.00% <0.00%> (-90.33%)
:arrow_down:

... and 101 more

Continue to review full report at Codecov.

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


Restrict app shortcuts support to Android

This PR fixes an issue brought by @firtman at https://twitter.com/firt/status/1286706328065511424.
App shortcuts have been available in Chrome 84 only on Android. See https://web.dev/app-shortcuts

:+1:


runningAccumulate function with reset key

Use case
We have runningAccumulate function to perform cumulative aggregations, for example: number of distinct users from the begginning up to each day. What if we want to reset accumulations for each month - to calculate number of distinct users from the first day of month up to each day of that month?
Describe the solution you'd like
Add a second parameter - "reset key". If it changes, reset the accumulator.

This is a great idea. Can it also be added to runningDifference* functions and the new neighbour function? https://github.com/yandex/ClickHouse/pull/5925.
I'd imagine in the neighbour function the behavior would be that if the key for the neighbouring value was not the same as the current row key then it would return NULL.

I'd imagine in the neighbour function the behavior would be that if the key for the neighbouring value was not the same as the current row key then it would return NULL.

Yes, great idea!

My PR on neighbour() function is not merged yet, so we may apply some additional logic here.
But it is not clear for me, what behavior you expect? Could you, please, provide an example of input-output?

Now:
SELECT
    *,
    runningDifference(x)
FROM
(
    SELECT
        number,
        arrayJoin([1, 2, 3, 5, 8]) AS x
    FROM numbers(3)
)

┌─number─┬─x─┬─runningDifference(x)─┐
│      0 │ 1 │                    0 │
│      0 │ 2 │                    1 │
│      0 │ 3 │                    1 │
│      0 │ 5 │                    2 │
│      0 │ 8 │                    3 │
│      1 │ 1 │                   -7 │
│      1 │ 2 │                    1 │
│      1 │ 3 │                    1 │
│      1 │ 5 │                    2 │
│      1 │ 8 │                    3 │
│      2 │ 1 │                   -7 │
│      2 │ 2 │                    1 │
│      2 │ 3 │                    1 │
│      2 │ 5 │                    2 │
│      2 │ 8 │                    3 │
└────────┴───┴──────────────────────┘

15 rows in set. Elapsed: 0.003 sec.

Should be:
SELECT
    number,
    runningDifference(x,number)
FROM
(
    SELECT
        number,
        arrayJoin([1, 2, 3, 5, 8]) AS x
    FROM numbers(3)
)

┌─number─┬─x─┬─runningDifference(x)─┐
│      0 │ 1 │                    0 │
│      0 │ 2 │                    1 │
│      0 │ 3 │                    1 │
│      0 │ 5 │                    2 │
│      0 │ 8 │                    3 │
│      1 │ 1 │                    0 │
│      1 │ 2 │                    1 │
│      1 │ 3 │                    1 │
│      1 │ 5 │                    2 │
│      1 │ 8 │                    3 │
│      2 │ 1 │                    0 │
│      2 │ 2 │                    1 │
│      2 │ 3 │                    1 │
│      2 │ 5 │                    2 │
│      2 │ 8 │                    3 │
└────────┴───┴──────────────────────┘

15 rows in set. Elapsed: 0.003 sec.

@filimonov , got it, we are going to implement some kind of OVER () section from window functions.

Have realized this isn't going to work because of processing per block. Is there any way to force consecutive blocks to synchronize?

It's implemented by @kononencheg in #8326

@zombiemonkey

Have realized this isn't going to work because of processing per block. Is there any way to force consecutive blocks to synchronize?

Yes, all "stateful" functions: runningDifference, runningAccumulate, neighbor are working semi-legally from architecture standpoint. It should be fixed in more fundamental way.


Unsubscribe doesn't work if passed an object with channel and topic

From your code: ln 551
if (topicSubs) {
var len = topicSubs.length;
idx = 0;
// remove SubscriptionDefinition from channel list
while (idx < len) {
if (topicSubs[idx] === subDef) {   <<<<<< this aint ever gonna work !!!!
topicSubs.splice(idx, 1);
break;
}
idx += 1;
}
subDef is a minimal object. topicSubs[idx] is the full sub defn. They can never point to the same object.
Consider:  if (topicSubs[idx].topic === subDef.topic)
Regards
Rob

@robvon  - please see https://github.com/postaljs/postal.js/wiki/postal.unsubscribe. postal.unsubscribe is not intended to take anything other than one or more SubscriptionDefinition instances. If you need the ability to pass a plain object with channel and topic in order to unsubscribe, please use https://github.com/postaljs/postal.js/wiki/postal.unsubscribeFor. Thanks!

I DID read the api doco first which although slightly ambiguous clearly states:
Quote:
// it's also possible to do this:
// (i.e. - not pass a SubscriptionDefinition)
//
postal.unsubscribe({
channel: "ui",

topic: "some.#.topic"

});
Anyway, why not just apply the patch I suggested and make it work?
Regards
Rob
From: Jim Cowart<EMAIL_ADDRESS>Sent: Tuesday, 7 July 2015 11:05 PM
To: postaljs/postal.js
Cc: Rob von Nesselrode
Subject: Re: [postal.js] Unsubscribe doesn't work if passed an object with channel and topic (#131)
@robvon https://github.com/robvon  - please see https://github.com/postaljs/postal.js/wiki/postal.unsubscribe. postal.unsubscribe is not intended to take anything other than one or more SubscriptionDefinition instances. If you need the ability to pass a plain object with channel and topic in order to unsubscribe, please use https://github.com/postaljs/postal.js/wiki/postal.unsubscribeFor. Thanks!
—
Reply to this email directly or view it on GitHub https://github.com/postaljs/postal.js/issues/131#issuecomment-119198205 .  https://github.com/notifications/beacon/AA9lRwQDRd9UmFNYJWfLHaaRnX6AQP1lks5oa8YWgaJpZM4FTPes.gif

@robvon That example is out of date, I will correct it. As far as why I won't just apply the suggested patch - I appreciate the suggestion, but it's the example that's incorrect (my bad for not catching that before it mislead you). I already have a method (unsubscribeFor) that covers the use case you describe. In addition I have a limited amount of time to devote to free open source work, and I don't consider this a high priority change given that the functionality is already covered. Thanks!

Fair enough. That explains the example.
It all works well enough.
R
From: Jim Cowart<EMAIL_ADDRESS>Sent: Wednesday, 8 July 2015 8:19 AM
To: postaljs/postal.js
Cc: Rob von Nesselrode
Subject: Re: [postal.js] Unsubscribe doesn't work if passed an object with channel and topic (#131)
@robvon https://github.com/robvon  That example is out of date, I will correct it. As far as why I won't just apply the suggested patch - I appreciate the suggestion, but it's the example that's incorrect (my bad for not catching that before it mislead you). I already have a method (unsubscribeFor) that covers the use case you describe. In addition I have a limited amount of time to devote to free open source work, and I don't consider this a high priority change given that the functionality is already covered. Thanks!
—
Reply to this email directly or view it on GitHub https://github.com/postaljs/postal.js/issues/131#issuecomment-119360259 .  https://github.com/notifications/beacon/AA9lRz9QCwVnI6mucPbksCBLpm32Bkulks5obEfmgaJpZM4FTPes.gif


Bug Fix and use of new GPUCompiler persistent caching (8x improvement to loading time)

Add functionality of GPUCompiler  https://github.com/JuliaGPU/GPUCompiler.jl/pull/425. Sees 8x improvement of cached loading times of the enzyme package.
Additionally latent bug found and fixed related to precompilation of Enzyme functions

Bug Found:
The following script will error out with a segfault in the current Enzyme implementation. This occurs because the generated functions for thunk and deferred_codegen do no retrigger GPUCompiler and instead use stale values. Simply dropping the generated tag fixes the segfault but we are no longer able to look up unique method instances as the returned world ages are incorrect. Instead we should switch to using GPUCompiler.methodinstance directly dropping the need to filter on world ages.
module EnzymeTest
using Enzyme

f1(x) = x*x

@show autodiff(Reverse, f1, Active(1.0))

function __init__()
    @show autodiff(Reverse, f1, Active(1.0))
end

end # module EnzymeTest

Can you split that last change out into a new PR?

Changing to new PR, cleaning


store import should return store_id, model_id, errors if tuples failed to write

When you run
fga store import --file store.fga.yaml, it always displays  {} as a result.
When there's no store configured, the fga store import command creates a new store first.
Later, the command writes a the model, and inserts the tuples.
The store_id is not returned, the model_id is not returned, and if an error happens when writing the tuples, the errors are not displayed either.
The command should display:

The store-id, when a new store is created
The model-id
The list of errors when writing tuples. We don't need to write the tuples that were successfully written, but maybe we should do it for consistency, as tuple write always does it.

I'm going to work on this one

Thanks @edwin-Marrima! I just assigned it to you

@edwin-Marrima I apologize, but this issue was a duplicate of this https://github.com/openfga/cli/issues/298, which was already fixed.

Closed as duplicated of https://github.com/openfga/cli/issues/298

@aaguiarz I was implementing a version that would provide to users tuples that were/weren't successfully imported.

Awese

Awesome! Let's do that then :)


Make regular expression capture groups available in the command that matches the path

Discussed in https://github.com/aler9/rtsp-simple-server/discussions/619
(NOTE: I did add this using the enhancement template, but it seems to have lost its label.)
If I use brackets in a regular expression path, I would like those capture groups to be available for use in the command (runOnDemand / runOnPublish / runOnRead) or source relating to that regular expression path.
For example:
paths:
  "~^small/([A-Za-z-]{36})$":
    source: rtsp://small-frames/cameras/$1

or
paths:
  "~^([0-9]{2,4})h/([A-Za-z-]{36})$":
    runOnDemand: ffmpeg -hide_banner -re -i "rtsp://user:pass@source-video/$2" -vcodec libx264 -filter "scale=w=-1:h=$1" -f rtsp rtsp://<IP_ADDRESS>:$RTSP_PORT/$RTSP_PATH

If $1 and $2 etc. aren't possible then $M1 and $M2 or similar could be used.

I was going to ask the same.

This has been implemented in main and will be added to the next release.

Thanks, I had a look at the result and I realized my use case is a bit different.
Basically what I need is this, which cannot work with subprocess environment variables:
paths:
  "~^([0-9]{2,4})h/([A-Za-z-]{36})$":
    source: redirect
    sourceRedirect: rtsp://other-server/{{g1}}-{{g2}}

added in v0.17.12

Thanks for implementing this.  I'm only just getting around to trying it out, but for some reason I can't make it work!  It seems that, for me, the $1 variable isn't set in the runOnDemand command, so it fails.   My path is e.g. "~^h([0-9]*)/7b50acef-bb8c-410a-8ccd-bf46e5dc6a06" (I included the double quotes in the YAML file as the examples I've seen do that too), the idea being that if I want a video stream that's, say, 200px high, I use the path h200/7b50acef-bb8c-410a-8ccd-bf46e5dc6a06.  A simplified version of my runOnDemand command is: ffmpeg -i rtsp://<IP_ADDRESS>:8554/full/7b50acef-bb8c-410a-8ccd-bf46e5dc6a06 -vcodec libx264 -filter scale=w=-1:h=$1 -f rtsp rtsp://<IP_ADDRESS>:$RTSP_PORT/$RTSP_PATH and from the output I see, it looks like $1 is unset.  Am I doing something stupid?  (I couldn't find any examples in the documentation, so I had to guess what to do from looking at the code.)

Hello, it turned out that variables like $1 and $2 are not available under Linux since they're reserved for command line arguments.
I renamed the variables into $G1 and $G2, in this way they won't be overridden.
This change will be available from the next release.

I did wonder if that might be the case.  Thanks for the fix! :-)

The fix has been added in v0.17.15

Many thanks for the fix.
I don't know if it's regexp-related, but one weird issue I have is that sometimes (connecting using VLC) I have to try multiple times (sometimes lots!) for it to work.  I don't have that problem with non-regexp paths, at least.  The log just keeps saying nothing is publishing to the path, but clearly eventually something does.  I initially thought that the problem was that I was using *s in my regexp, since ones with +s seemed to work all the time, but I've found that if I retry enough times, it usually eventually works.


The sequenceReadsPaired or sequenceReads is not filled out in

When exporting a workflow, there is an <inputs> section in the XML file:
  <inputs>
    <sequenceReadsPaired/>
    <requiresSingleSample>false</requiresSingleSample>
  </inputs>

Here, <sequenceReadsPaired> should correspond to the name given in the Galaxy workflow .ga file:
      "label" : "sequence_reads_paired",
      "id" : 0,
      "tool_state" : "{\"optional\": false, \"collection_type\": \"list:paired\"}",

That is, the XML file should contain <sequenceReadsPaired>sequence_reads_paired</sequenceReadsPaired> instead of being left empty.

I cannot reproduce this issue. It seems to work properly for everything I've tried.


refutation/denial detector

maybe trained on Deny stance data? could llm-generate some training examples here also

include a MustRefute detector (fail if there's no refutation)

fixed in e0cf30a878935cbe9ae41d54fa1d465664ba6baa


Teach DataBroker[key] about uids

The DataBroker[key] syntax supports only slices or scan_id integers which may not be unique.  Please, let it also digest the run_start_uid, run_stop_uid values of the document object, and ideally their partials strings.
from dataportal.broker import DataBroker as db
header = db[-1]
assert header == db[header.run_start_uid]
assert header == db[header.run_start_uid[:7]]

OK, that makes sense. Will do.


Fix mixed up german snippets.

1. Why is this change necessary?
Some of the german snippets for CMS block names were mixed up. Namely the numbers two and three.
2. What does this change do, exactly?
It fixes these mixed up snippets.
3. Describe each step to reproduce the issue or behaviour.
Set the admin language to german and edit a shopping experience. The blocks for two/three columns of text have their names mixed up. The three column image block also has a wrong name.
4. Please link to the relevant issues (if any).

5. Checklist

[ ] I have written tests and verified that they fail without my change
[x] I have squashed any insignificant commits
[] I have written or adjusted the documentation according to my changes
[] This change has comments for package types, values, functions, and non-obvious lines of code
[x] I have read the contribution requirements and fulfil them.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Hello,
thank you for creating this pull request.
I have opened an issue on our Issue Tracker for you. See the issue link: https://issues.shopware.com/issues/NEXT-9180
Please use this issue to track the state of your pull request.

Hello,
thank you for creating this pull request.
I have opened an issue on our Issue Tracker for you. See the issue link: https://issues.shopware.com/issues/NEXT-9200
Please use this issue to track the state of your pull request.

Thank you for your contribution @mjossdev :+1: :tada:


Dev 345/release upstream v0.11.1

Closing this until next tag, so that we'll have supported file structure for Sytest (cmd/dendrite).


Don't Merge! PR real time test for source branch full build

Docs Build status updates of commit 68052b0:
:clock10: Pending: waiting for processors (28 builds ahead of you)
:warning: Docs Build is busy, currently there are 28 builds ahead of this one, for more information you can view the Build queue graph on the Docs Portal.

Docs Build status updates of commit 68052b0:
:clock10: Full build: the average full build time is 7 min(s) 54 sec(s), this is based on the last 30 build(s) for this repository.

Docs Build status updates of commit 68052b0:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docfx.json
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


feat: allow to pass in round

Motivation
To more easily write tests, we need to be able to choose the round the certificate will be generated with.
Test Plan

(Write your test plan here)
Related PRs

https://github.com/AleoHQ/snarkOS/pull/2534

Superseded by https://github.com/AleoHQ/snarkVM/commit/ba140c39330ed630f43c70849637bd34c5f8b8c0


Fix attention caching to make transcription run 30% faster

For a dict.get(a, f()) call, f() is run even when the dict already has a. This is causing the bug in attention caching logic.
So making this change fixes the caching logic, and gets a sweet (expected) speedup of close to 30%.
For a close to 5 min test audio, on an Nvidia Quadro RTX 8000 gpu:

before this fix, the large model took 102.8s, and after this fix it takes 68.9s
before this fix, the medium.en model took 55.1s, and after this fix it takes 39.7s

Thanks for @ritheshkumar95 for finding this.

confirming that this really speed up the process, nice catch !
large model slovak language , 16min file on GTX1080 Ti
before change: ~22min
after change: ~12min

Can repro on my end as well
17:38 wav file
On Quadro RTX 5000  (with --condition_on_previous_text=True, small.en model)

Runtime

Original
01:42

With kv cache fixed
01:24

Really elegant catch! 🙌 learnt something about Python today 🙂

Thank you very much! This was an overlook when I was factoring out the caching part for the open source repo.

@vickianand @ritheshkumar95
Thank you very much!
I was getting around 0.88-1.1x for large models, now it 1.6x

Wow, this is great news, thank you to all involved. Title says 30% faster on GPU but the speed up is much more on CPU, at least for me.
Ryzen 5 4500U / 6 core laptop CPU. 6m30s youtube video, English (https://www.youtube.com/watch?v=GFu64hnqzVo):

Model
Before PR
After PR

tiny.en
6m19s
2m9s

base.en
15m39s
4m29s

small.en
60m45s
11m18s


[flutter_tools] use 1-based index for device selection

Description
The Flutter tool uses a 0-based index for device selection. Consequently, the first device is inconveniently on the other of the keyboard than the next device. This PR changes the device selection to use a 1-based index which is a) more convenient because the device selection keys are side-by-side and b) 1-based index is arguably more appropriate for a human interface.
Before
$ flutter run
Multiple devices found:
Linux (desktop) • linux  • linux-x64      • Linux
Chrome (web)    • chrome • web-javascript • Google Chrome 87.0.4280.88
[0]: Linux (linux)
[1]: Chrome (chrome)
Please choose one (To quit, press "q/Q"): 0

Launching lib/main.dart on Linux in debug mode...
[...]

After
$ flutter run
Multiple devices found:
Linux (desktop) • linux  • linux-x64      • Linux
Chrome (web)    • chrome • web-javascript • Google Chrome 87.0.4280.88
[1]: Linux (linux)
[2]: Chrome (chrome)
Please choose one (To quit, press "q/Q"): 1

Launching lib/main.dart on Linux in debug mode...
[...]

Related Issues
#64565
Tests
I updated the following tests:

test/general.shard/device_test.dart

Checklist
Before you create this PR, confirm that it meets all requirements listed below by checking the relevant checkboxes ([x]). This will ensure a smooth and quick review process.

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] I signed the CLA.
[x] I read and followed the Flutter Style Guide, including Features we expect every widget to implement.
[x] I read the Tree Hygiene wiki page, which explains my responsibilities.
[ ] I updated/added relevant documentation (doc comments with ///).
[x] All existing and new tests are passing.
[x] The analyzer (flutter analyze --flutter-repo) does not report any problems on my PR.
[x] I am willing to follow-up on review comments in a timely manner.

Breaking Change
At least both Android Studio and VS Code select the correct device. I'm a bit unsure if any automated scripts could fail, even though it would be a pretty fragile way to select the device...
Did any tests fail when you ran them? Please read Handling breaking changes.

[ ] No, no existing tests failed, so this is not a breaking change.
[ ] Yes, this is a breaking change. If not, delete the remainder of this section.

[ ] I wrote a design doc: https://flutter.dev/go/template Replace this with a link to your design doc's short link
[ ] I got input from the developer relations team, specifically from: Replace with the names of who gave advice
[ ] I wrote a migration guide: https://flutter.dev/go/breaking-changes-template Replace this with a link to a pull request that adds the migration guide to https://flutter.dev/docs/release/breaking-changes

This is the issue

This is the issue

Thanks! Apparently, my search-fu is not up to scratch. :man_facepalming:


async: uv_async_cb is not called

Version: 1.11.0
Platform: armv64

I used the uv_async_t to integrate 2 callback-based C/C++ libraries to Node.js, but a weird case is here, when I call uv_async_send between the 2 uv_async_ts, the callback of one uv_async_t doesn't get fired, the uv_async_send returns 0 before that.

For more details, take the following code:
uv_async_t a1;
uv_async_t a2;

uv_async_init(a1);
uv_async_init(a2);

uv_async_send(a1); // working
uv_async_send(a2); // working
uv_async_send(a1); // working
uv_async_send(a2); // working
uv_async_send(a1); // not working, the corresponding is not called
.....
.....
uv_async_send(a1); // working again, weird....

Are you getting tripped up by the fact that uv_async_send() can coalesce calls?  There won't be a callback for every call if the calls are close enough in time.

There won't be a callback for every call if the calls are close enough in time.

This is for all uv_async_t? Do we have another way without this effect?

Not directly in libuv but you can use e.g. a mutex-protected counter in addition to the uv_async_t handle.
I'm going to close this as working-as-intended but feel free to take it to libuv's help repo if you have further questions.

No, I think the calls are in least 5s.


tickets/DM-48170: Put user lab workload into its own pool

Segregate user lab workload.

Must not be merged until https://github.com/lsst/idf_deploy/pull/549 is merged (so pods have some place to go)


Set docs.yaml as the default file for Swagger to load

Steps to duplicate:

Start the server with sbt run.
Navigate to http://localhost:8080/docs/index.html

Observed behavior: The Swagger tool loads the default API information from https://petstore.swagger.io/v2/swagger.json
Expected behavior: It should automatically load the docs.yaml file (i.e. as if the user had navigated to http://localhost:8080/docs/index.html?url=docs.yaml)

It looks like this can be set via SwaggerInterpreter.yamlName:
https://github.com/softwaremill/tapir/blob/df70cc07f6b61460e8492dadf1ef0b6761ef54b4/docs/swagger-ui-bundle/src/main/scala/sttp/tapir/swagger/bundle/SwaggerInterpreter.scala#L65-L66

I've figured out the actual solution to this, which is:

http://localhost:8080/docs/ -> correctly redirects to http://localhost:8080/docs/index.html?url=docs.yaml
http://localhost:8080/docs/index.html -> displays the dummy Petstore API

So: as long as the user knows to navigate to http://localhost:8080/docs/, all should be fine. So the only necessary fix is:

[ ] Update the README to let people know how to access the docs locally.

For my own edification, I'm going to try to write a test for this before I close it.

@gaurav FYI the way I usually run the server is reStart within the sbt console.


Force rendering the overlay with renderer

This change is

This PR caused a regression. Try the first demo: the list gets new items every time it's opened


🪲[Bug]:  Login button missing in Home page

Describe the bug
Login button missing in Home page. There is login page in /login url.
Expected behavior
Add a login button on the navbar of home page

I would like to take up this issue @Abidsyed25

@vansh-sardana go on

@vansh-sardana  what is the status?


fix(gradle_build): version of gradle plugin org.springframework.boot is wrong in the complete project

Also bumping version to its current: 3.0.2.
Fixes: #47

Closed at the request of the author.


feat: filter __in

Pull Request Template for FastCRUD
Description
This PR adds support for in_ filtering in crud methods like FastCRUD.select(item_id__in=[1,2]).
Changes
Extended parse_filters method with addtional elif op == "in", mapping to sqlalchemy/sqlmodel or() filter.
Tests
Added a test to test_parse_filters for both sqlalchemy and sqlmodel.
Checklist

[x] I have read the CONTRIBUTING document.
[x] My code follows the code style of this project.
[x] I have added necessary documentation (if appropriate).
[x] I have added tests that cover my changes (if applicable).
[x] All new and existing tests passed.

Additional Notes
I was trying to acomplish something similar for or_() but it turned out to be too complex for now.

Hey, @JakNowy, thanks for another great PR🎉!
Could you please add an example using __in to a docstring somewhere? I think adding not_in would be good as well. How did you think about adding or?

@JakNowy did you get a chance to take a look at this?

Hey @igorbenav not yet, but I will definetely add some more docs and not_in support soon! For or, I was thinking about nesting the parse_filters() method in that case to produce something like or(parsed_filter1, parsed_filter2).

Added not_in support and tests. Although quite simple, looks decent to me. Added short docstring for each fastcrud method, would you like me to extend the docs somewhere else? @igorbenav

For or, I was thinking about nesting the parse_filters() method in that case to produce something like or(parsed_filter1, parsed_filter2).

I'll create another issue for the missing comparison operators, we can handle it there. Thanks for the pr!


Fonction decrypt an id token rs256

Hello everyone, is there a function to decrypt rs256? thank you

This is not a place for questions. Head to the forum instead.


Bluetooth problem

hello:
When I use the Bluetooth plug-in, it takes me a long time to connect to the Bluetooth device.
The program took tens of seconds at this step.    await bluetoothDevice.connect(); Why does this take a long time？
Sincerely waiting for your reply!!!!!
Thank you!!!!!!

have you put the connect code in a try on block to catch the timeout error?
like this
try {
      await device.connect(timeout: Duration(seconds: 10), autoConnect: false);
}  on TimeoutException {
   /// handle error here
}

await device.connect();=>await device.connect(autoConnect: false);
The connection speed is faster after this change
await device.connect();This statement takes a long time to execute
------------------ 原始邮件 ------------------
发件人<EMAIL_ADDRESS>发送时间: 2019年10月22日(星期二) 下午3:07
收件人<EMAIL_ADDRESS>抄送: "登顶珠峰"<283229485<EMAIL_ADDRESS>主题: Re: [pauldemarco/flutter_blue] Bluetooth problem (#409)
have you put the connect code in a try on block to catch the timeout error?
like this
try {       await device.connect(timeout: Duration(seconds: 10), autoConnect: false); }  on TimeoutException {    /// handle error here }
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.


Is this project dead？

Is this project dead？

Not actively maintained but accepting prs

Any alternatives

https://pro.dokku.com

Wow. No demo? Too expensive

Dokku is free, I don't blame the developers for creating a premium product people can buy to support it. Talk to @josegonzales he's a nice guy.

No, ofc they have all rights to sell their efforts. I mean, personally for me it's too expensive.

Please continue this promising project

This is well-needed, if dokku wants to compete against Caprover.

Is this project dead？

Looks like


problem with will.beLessThan

Came across this:
Given an NSArray *types where types has 12 elements and types is set in a completionHandler the following test passes:
expect([types count]).will.beLessThan(1);
This test correctly fails:
expect([types count]).willNot.beLessThan(13);

I think @modocache's explanation is good, a schrodingers test. Closing as resolved.


Adding SRAM5p0 table for GF180MCU DRC

Adding SRAM5p0 table for GF180MCU DRC
Fixes #43

@atorkmabrains can you review it first?

@proppy responded #65

@proppy I have answered all the questions you have mentioned above in another PR.